第六節(jié) B類用戶宏程序_第1頁
第六節(jié) B類用戶宏程序_第2頁
第六節(jié) B類用戶宏程序_第3頁
第六節(jié) B類用戶宏程序_第4頁
第六節(jié) B類用戶宏程序_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第六節(jié)B類用戶宏程序

一組以子程序的形式存儲并帶有變量的程序稱為用戶宏程序,簡稱宏程序;調(diào)用宏程序的指令稱為“用戶宏程序指令”,或宏程序調(diào)用指令(簡稱宏指令)。用戶宏程序分為A、B

兩種。一般情況下,在一些較老的FANUC系統(tǒng)(如FANUC0TD)中采用A類宏程序,而在較為先進(jìn)的系統(tǒng)(如FANUC0i)中則采用B類宏程序。一、B類宏程序編程1.宏程序中的變量(1)變量的種類1)局部變量。2)公共變量。3)系統(tǒng)變量。(2)變量的表示一個變量由符號#和變量序號組成,如:#I(I=1、2、3…)。例

#100、#500、#5等此外,B類宏程序的變量還可以用表達(dá)式進(jìn)行表示,但其表達(dá)式必須全部寫入方括號“[]”中。程序中的圓括號“(

)”僅用于注釋。例

#[#1+#2+10]當(dāng)#1=10,#2=100時(shí),該變量表示#120。(3)變量的引用將跟隨在地址符后的數(shù)值用變量來代替的過程稱為變量引用。例

G01X#100Y-#101F#102;當(dāng)#100=100.0,#101=500.0,#102=80時(shí),上式即表示為:G01X100.0Y-50.0F80;此外,B類宏程序的變量引用也可以采用表達(dá)式。例G01X[#100-30.0]Y-#101F[#101+#103];當(dāng)#100=100.0,#101=50.0,#103=80.0時(shí),上式即表示為:G01X70.0Y-50.0F130;2.變量的賦值變量的賦值方法有兩種,即直接賦值和引數(shù)賦值。(1)直接賦值變量可以在操作面板上用MDI方式直接賦值,也可在程序中以等式方式賦值,但等號左邊不能用表達(dá)式。例#100=100.

0;#100=30.0+20.0;(2)引數(shù)賦值宏程序以子程序方式出現(xiàn),所用的變量可在宏程序調(diào)用時(shí)賦值。例G65P1000X100

.0Y30.0Z20.

0F0.

1;該處的X、Y、Z不代表坐標(biāo)字,F(xiàn)也不代表進(jìn)給字,而是對應(yīng)于宏程序中的變量號,變量的具體數(shù)值由引數(shù)后的數(shù)值決定。引數(shù)宏程序體中的變量對應(yīng)關(guān)系有兩種,這兩種方法可以混用,其中G、L、N、O、P不能作為引數(shù)代替變量賦值。引數(shù)變量引數(shù)變量引數(shù)變量引數(shù)變量A#1I3#10I6#19I9#28B#2J3#11J6#20J9#29C#3K3#12K6#21K9#30I1#4I4#13I7#22I10#31J1#5J4#14J7#23J10#32K1#6K4#15K7#24K10#33I2#7I5#16I8#25J2#8J5#17J8#26K2#9K5#18K8#27變量賦值方法Ⅰ引數(shù)變量引數(shù)變量引數(shù)變量引數(shù)變量A#1H#11R#18X#24B#2I#4S#19Y#25C#3J#5T#20Z#26D#7K#6U#21E#8M#13V#22F#9Q#17W#23變量賦值方法Ⅱ例變量賦值方法ⅠG65P0030A50.

0I40.

0J100.

0K0I20.

0J10.

0K40.

0;經(jīng)賦值后,#1=50.

0,#4=40.

0,#5=100.

0,#6=0,#7=20.

0,#8=10.

0,#9=40.

0。例變量賦值方法ⅡG65P0020A50.

0X40.

0F100.

0;經(jīng)賦值后,#1=50.

0,#24=40.

0,#9=100.

0。例變量賦值方法Ⅰ和Ⅱ混合使用G65P0030A50.

0D40.

0I100.

0K0I20.

0;經(jīng)賦值后,I20.

0與D40.

0同時(shí)分配給變量#7,則后一個#7有效,所以變量#7=20.

0,其余同上。例

G65P0504A12.

5B25.

0C0.

0D126.

86F100.

0;賦值后,#1=12.5,#2=25.

0,#3=0.

0,#7=126.

86,#9=100.

0。3.變量的運(yùn)算功

能格式備注與示例定義、轉(zhuǎn)換#i=#j#100=#1,#100=30.0加法減法乘法除法#i=#j+#k#100=#1+#2#100=100.0-#2#100=#1*#2#100=#1/30#i=#j-#k#i=#j*#k#i=#j/#k正弦#i=SIN[#j]#100=SIN[#1]#100=COS[36.3+#2]#100=ATAN[#1]/[#2]反正弦#i=ASIN[#j]余弦#i=COS[#j]反余弦#i=ACOS[#j]正切#i=TAN[#j]反正切#i=ATAN[#j]/[#k]續(xù)表功

能格式備注與示例平方根#i=SQRT[#j]#100=SQRT[#1*#1-100]#100=EXP[#1]絕對值#i=ABS[#j]舍入#i=ROUND[#j]上取整#i=FIX[#j]下取整#i=FUP[#j]自然對數(shù)#i=LN[#j]指數(shù)函數(shù)#i=EXP[#j]或#i=#jOR#k邏輯運(yùn)算一位一位地按二進(jìn)制執(zhí)行異或#i=#jXOR#k與#i=#jAND#kBCD轉(zhuǎn)BIN#i=BIN[#j]用于與PMC的信號交換BIN轉(zhuǎn)BCD#i=BCD[#j]關(guān)于運(yùn)算指令的說明如下:(1)

函數(shù)SIN、COS等的角度單位是度,分和秒要換算成帶小數(shù)點(diǎn)的度。如90°30′表示為90.

5°,30°18′表示為30.

3°。(2)

宏程序數(shù)學(xué)計(jì)算的次序依次為:函數(shù)運(yùn)算(SIN、COS、ATAN等),乘和除運(yùn)算(*、/、AND等),加和減運(yùn)算(+、–、OR、XOR等)。例#1=#2+#3*SIN[#4];運(yùn)算次序?yàn)椋?)函數(shù)SIN[#4]2)乘和除運(yùn)算#3*SIN[#4]3)加和減運(yùn)算#2+#3*SIN[#4](3)函數(shù)中的括號用于改變運(yùn)算次序,允許嵌套使用,但最多只允許嵌套5層。例#1=SIN[[[#2+#3]*4+#5]/#6];(4)CNC處理數(shù)值運(yùn)算時(shí),若操作產(chǎn)生的整數(shù)大于原數(shù)時(shí)為上取整,反之則為下取整。例設(shè)#1=1.

2,#2=-1.

2。執(zhí)行#3=FUP[#1]時(shí),2.

0賦給#3。執(zhí)行#3=FIX[#1]時(shí),1.

0賦給#3。執(zhí)行#3=FUP[#2]時(shí),-2.

0賦給#3。執(zhí)行#3=FIX[#2]時(shí),-1.

0賦給#3。4.控制指令控制指令起到控制程序流向的作用。(1)分支語句格式一GOTOn;例

GOTO1000;該例為無條件轉(zhuǎn)移。當(dāng)執(zhí)行該程序段時(shí),將無條件轉(zhuǎn)移到N1000程序段執(zhí)行。格式二IF[條件表達(dá)式]GOTOn;例

IF[#1GT#100]GOTO1000;條件意

義示例#iEQ#j等于(=)IF[#5EQ#6]GOTO100;#iNE#j不等于(≠)IF[#5NE100]GOTO100;#iGT#j大于(>)IF[#5GT#6]GOTO100;#iGE#j大于等于(≥)IF[#5GE100]GOTO100;#iLT#j小于(<)IF[#5LT#6]GOTO100;#iLE#j小于等于(≤)IF[#5LE100]GOTO100;條件表達(dá)式的種類(2)循環(huán)指令WHILE[條件表達(dá)式]DOm(m=1、2、3…);

…ENDm;當(dāng)條件滿足時(shí),就循環(huán)執(zhí)行WHILE與END之間的程序段m次;當(dāng)條件不滿足時(shí),就執(zhí)行ENDm的下一個程序段。5.B類宏程序編程實(shí)例例試用B類宏程序編寫如圖所示曲線輪廓的數(shù)控車加工程序。程序例試用B類宏程序編寫圖所示燈罩模具內(nèi)曲面的粗、精加工程序。程序二、宏程序在坐標(biāo)變換編程中的應(yīng)用1.坐標(biāo)平移指令指令格式:G52X_Z_;(設(shè)定局部坐標(biāo)系)G52X0Z0;(取消局部坐標(biāo)系)指令說明:X_Z_為局部坐標(biāo)系的原點(diǎn)在原工件坐標(biāo)系中的位置,該值用絕對坐標(biāo)值加以指定,且此處的X值為直徑量。坐標(biāo)平移2.坐標(biāo)平移指令編程實(shí)例例1試采用手工編程方式編寫如圖所示工件內(nèi)凹外輪廓的數(shù)控車加工程序。程序例2加工如圖所示工件的螺旋線,螺旋線的螺距為2mm,總切深為1.

3mm(直徑量為2.

6mm),試編寫其FANUC系統(tǒng)數(shù)控車加工程序。程序3.坐標(biāo)平移指令使用注意事項(xiàng)(1)采用坐標(biāo)平移指令時(shí),指令中的X坐標(biāo)是指直徑量。另外,在數(shù)控車床上一般不進(jìn)行Z向坐標(biāo)平移。(2)采用坐標(biāo)平移指令后,注意及時(shí)進(jìn)行坐標(biāo)平移指令的

溫馨提示

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

最新文檔

評論

0/150

提交評論