《零件的加工工藝與編程》 課件 8.1.1 用戶宏程序_第1頁
《零件的加工工藝與編程》 課件 8.1.1 用戶宏程序_第2頁
《零件的加工工藝與編程》 課件 8.1.1 用戶宏程序_第3頁
《零件的加工工藝與編程》 課件 8.1.1 用戶宏程序_第4頁
《零件的加工工藝與編程》 課件 8.1.1 用戶宏程序_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

項目8橢圓蓋的編程與加工三維目標素質目標能力目標知識目標1.以橢圓蓋生產流程為主線,培養(yǎng)安全生產與責任意識,養(yǎng)成安全文明生產的職業(yè)素養(yǎng)。2.「“微米”時代」學思交融,追求品質卓越,心系企業(yè)發(fā)展。3.「共話空間·工匠」學思交融,感悟匠人之心,篤行匠人之事。1.了解非圓曲線零件的特點。2.掌握常用宏程序的基礎知識。3.掌握使用宏程序編寫加工橢圓曲面零件程序的方法和技巧。4.掌握橢圓曲面零件量具的使用方法。1.會編制橢圓蓋零件的加工工藝文件。2.會使用宏程序配合G73和G70指令編寫橢圓曲面的加工程序。項目八橢圓蓋的編程與加工任務8.1知識準備項目八018.1.1用戶宏程序

在實際生產中,會遇到橢圓、雙曲線、拋物線等非圓曲線輪廓的加工內容,可以用宏程序功能簡化編程,使復雜程序結構明晰,程序簡短,通用性好。1.用戶宏程序的定義用戶宏程序是把一組實現某種功能的指令,以子程序的形式預先存入存儲器中,用一個總指令來代表,使用時只需給出這個總指令就能執(zhí)行其功能,所存入的這一系列指令稱為用戶宏程序本體,這個總指令稱為用戶宏程序調用指令。計算1﹢2﹢…﹢99﹢100的和參考程序程序段號程

序程序說明

O0811;程序號

#1=0;被加數變量的初值

#2=1;存儲和的變量初值N10#1=#1﹢1;下一個被加數

#2=#1﹢#2;計算和

IF[#1LT100]GOTO10;當被加數小于10時轉移到N10N20M00;結果查詢:按下【OFS/SET】→?→【MACRO】,顯示計算結果5050

M30;程序結束2.宏程序的分類

宏程序分為A、B兩類,在實際生產中B類宏程序應用比較廣泛。在FANUC-0I及其后的系統(tǒng)中,在面板上添加了“+、-、*、/、=、[]”這些符號后,就可運用這些符號進行賦值和數學運算。計算1﹢2﹢…﹢99﹢100的和參考程序程序段號程

序程序說明

O0811;程序號

#1=0;被加數變量的初值

#2=1;存儲和的變量初值N10#1=#1﹢1;下一個被加數

#2=#1﹢#2;計算和

IF[#1LT100]GOTO10;當被加數小于10時轉移到N10N20M00;結果查詢:按下【OFS/SET】→?→【MACRO】,顯示計算結果5050

M30;程序結束3.宏程序的變量(1)變量的表示方法1

變量由符號“#”及其后的變量號(數字)指定,即#i(i=1,2,3…)。2

變量用“#[表達式]”的形式指定,此時表達式必須全部寫入方括號“[]”中,如#[#100]、#[#1﹢#2﹣5]等。(2)變量的類型變量號變量類型功能#0空變量空變量是初始化為空的變量。該變量總是空,沒有任何值能賦給該變量,空變量只能讀,不能寫入,如“#0”總是空變量。#1~#33局部變量局部變量只能用在宏程序中存儲數據,僅在主程序和當前宏程序中有效,如運算結果。同一代號的局部變量服務于不同的宏程序,可賦予不同的值。系統(tǒng)斷電時,局部變量初始化為空。#100~#199公共變量

公共變量在主程序和宏程序中通用的變量,在不同的宏程序中意義相同。系統(tǒng)斷電時,#100~#199初始化為空;而#500~#999保持數據不變。#500~#999#1000以上系統(tǒng)變量系統(tǒng)變量是固定用途的變量,必須按規(guī)定使用,它的值決定系統(tǒng)的狀態(tài),用于讀和寫CNC運行時的各種數據,如刀具的當前位置和補償值等。FANUC系統(tǒng)局部變量賦值(部分)對照表如下:地址變量號

地址變量號

地址變量號A#1I#4T#20B#2J#5U#21C#3K#6V#22D#7M#13W#23E#8Q#17X#24F#9R#18Y#25H#11S#19Z#26

局部變量和公共變量的取值范圍。取值范圍為-1047~-10-29或10-29~1047。如果計算結果無效,發(fā)出111號報警。(3)變量的取值范圍(4)

變量的賦值

“#1=5”表示將數值5賦給變量“#1”。賦值有如下要求:

①賦值號“=”左邊只能是變量,右邊可以是表達式、數值或變量。

②一個賦值語句只能給一個變量賦值。

③可以多次給一個變量賦值,新變量值將取代原變量值。

④當“=”右邊是表達式時,賦值語句具有運算功能,其運算順序與數學運算順序相同。(5)

變量的引用

在程序中引用(使用)變量時,在地址后面指定變量號;當用表達式指定變量時,表達式必須全部寫入方括號“[

]”中。

如“G01Z﹣#102

F#103;”,當#102=30.0,#103=0.2時,此語句等同于“G01Z﹣30.0

F0.2;”。變量引用時的注意事項:除了地址G、L、N、O、P和跳段符號“/”外,其它功能字都可以引用變量。被引用變量的值不能超過各地址的最大允許值。被引用變量的值根據地址的最小設定單位自動圓整成有效位數。如“G00

X#1;”,將34.5678賦值給變量#1,當CNC最小輸入增量為1/1000㎜,則實際命令為G00X34.568。

若要改變被引用變量的符號,只需將負號“﹣”放在#的前面。如“G01Z﹣#1”。

在程序中定義變量值時,小數點可以省略。如“#1=123”時,#1的實際值為123.000。

當引用一個未定義的變量時,忽略變量及引用變量的地址。若#1=10.0,#2=“空”,則“G00X#1

Y#2;”的執(zhí)行結果為“G00X10.0;”。4.變量的算術和邏輯運算

變量運算包括算術運算、函數運算和邏輯運算。變量可進行各種運算,通用表達式為#i=<表達式>。運算指令右邊的表達式可以是常數、變量、函數和運算符的組合,左邊的變量也可以用表達式賦值。功能格式備注與實例定義或轉換#i=#j#100=#1#100=30.0加法#i=#j﹢#k#100=#1+#2減法#i=#j﹣#k#100=100.0-#2乘法#i=#j*#k#100=#1*#2除法#i=#j/#k#100=#1/30.0正弦#i=SIN[#j]角度以度(°)為單位指定#100=SIN[#1]#100=COS[30.5+#2]#100=TAN[#1]/[#2]

余弦#i=COS[#j]正切#i=TAN[#j]反正切#i=ATAN[#j]/[#k]平方根#i=SQRT[#j]

絕對值#i=ABS[#j]

舍入(取整)#i=ROUND[#j]

上取整#i=FUP[#j]

下取整#i=FIX[#j]

自然對數#i=LN[#j]

指數對數#i=EXP[#j]

與#i=#jAND#k邏輯運算按二進制執(zhí)行或#i=#jOR#k異或#i=#jXOR#k將BCD碼轉換成BIN碼#i=BIN[#j]二進制轉換為十進制將BIN碼轉換成BCD碼#i=BCD[#j]十進制轉換為二進制(1)

運算次序(2)

括號嵌套例如“#1=#2﹢#3*SIN[#4]”的運算次序依次為:

①函數;

②乘、除(*、/、AND);

③加、減(﹢、﹣、OR、XOR)。

括號用于改變運算次序。最多可嵌套5層(包括函數內部使用的括號),最里層的[]優(yōu)先運算。5.用戶宏程序控制指令

控制指令可起到控制程序流向的作用。B類宏程序中有三種轉移和循環(huán)語句可供使用。(1)無條件轉移語句(GOTO語句)

該語句無條件轉移到標有程序段號n的程序段。格式:GOTOn;

其中n表示程序段號(順序號),范圍1~99999。例如:“GOTO10;”

當執(zhí)行該程序時,無條件轉移到N10程序段。當指定1~99999以外的順序號時,會出現報警信號。(2)條件轉移語句(IF語句)

①IF

[條件表達式]

GOTOn

當指定的條件表達式滿足時,程序轉移到標有程序段號n的程序段,否則,執(zhí)行下一個程序段。

例如:“IF[#1LE10]GOTO100;”表示如果變量#1的值≤10,即轉移到程序段號為N100的程序段,否則,執(zhí)行下一個程序段。

②IF[條件表達式]THEN

當條件表達式滿足時,則執(zhí)行預先指定的THEN后面的宏語句,而且只執(zhí)行一個宏程序語句,否則,繼續(xù)往下執(zhí)行。

例如:“IF[#1EQ#2]THEN#3=10.0;”表示如果變量#1與#2的值相同時,10.0賦給#3。運算符意義條件表達式示例EQ等于(=)#iEQ#jIF[#1EQ#2]GOTO100NE不等于(≠)#iNE#jIF[#1NE#2]GOTO100GT大于(>)#iGT#jIF[#1GT#2]GOTO100GE大于等于(≥)#iGE#jIF[#1GE#2]GOTO100LT小于(<)#iLT#jIF[#1LT#2]GOTO100LE小于等于(≤)#iLE#jIF[#1LE#2]GOTO100條件轉移語句(IF語句)中條件表達式必須含有運算符(3)循環(huán)語句(WHILE語句)

用來有條件地重復執(zhí)行某些程序段的數控程序。格式:WHILE[條件表達式]DOm;(m=1,2,3)

……

ENDm;其中:DO與END后面的m是指定程序執(zhí)行范圍的標號,標號值為1,2,3。WHILE與END之間的程序段叫做循環(huán)體,當條件表達式滿足時,重復執(zhí)行循環(huán)體;當條件表達式不滿足時,則執(zhí)行END后面的程序段。循環(huán)語句(WHILE語句)的使用說明:DO與END后面的數字要一致,且只能是1,2,3。WHILE和[條件表達式]不可省略,否則程序會進入無限循環(huán)。DOm和ENDm必須成對使用,而且DOm一定要在ENDm指令之前,且識別號m可重復使用。循環(huán)體不可交叉??捎裳h(huán)體內轉出循環(huán)體外,但不能由循環(huán)體外轉入循環(huán)體內。用跳轉語句和重復語句編程時,一般重復語句執(zhí)行的時間短。從DOm-ENDm內部可以調用用戶宏程序或子程序,可嵌套三重。例如:WHILE[#1

LE

10]DO2;

……

END2;

表示當條件表達式滿足時,執(zhí)行DO到END之間的程序,否則,執(zhí)行END后面的程序段。DO后面的號是指程序執(zhí)行范圍的標號,標號值為1,2,3。如果使用了1,2,3以外的值,會發(fā)出報警。

6.宏程序的編程步驟

變量賦初值,也就是將變量初始化。01

編寫加工程序,列出關系式(公式)。02

走程序加工。03

條件判斷。如果指定的條件滿足,則程序結束,否則,繼續(xù)執(zhí)行加工程序。05

設置步進量。047.宏程序編程“IF[條件表達式]GOTOn;”舉例

例8-1試編寫宏程序,計算1﹢2﹢…﹢99﹢100的和。程序段號程序程序說明

O0811;程序號

#1=0;被加數變量的初值

#2=1;存儲和的變量初值N10#1=#1﹢1;下一個被加數

#2=#1﹢#2;計算和

IF[#1LT100]GOTO10;當被加數小于10時轉移到N10N20M00;結果查詢:按下【OFS/SET】→?→【MACRO】,顯示計算結果5050

M30;程序結束

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論