高職《數(shù)控編程與操作》PPT電子課件
高職《數(shù)控編程與操作》PPT電子課件,數(shù)控編程與操作,高職,數(shù)控,編程,操作,PPT,電子,課件
第第9章用戶宏程序在數(shù)控編程中的應(yīng)用章用戶宏程序在數(shù)控編程中的應(yīng)用9.1.1用戶宏程序介紹用戶宏程序介紹1變量:使用用戶宏程序時(shí),數(shù)值可以直接指定或用變量指定,當(dāng)用變量時(shí),變量值程序可用MDI面板操作改變。2變量表示:一般編程方法允許對(duì)變量命名,但用宏程序不行。變量用變量符號(hào)(#)和后面的變量號(hào)指定。例如:#1:#1+#2-12。3變量類型:變量根據(jù)變量號(hào)可以分成四種類型。見表9-14限制:程序號(hào),順序號(hào)和任選取程序段跳轉(zhuǎn)號(hào)不能使用變量。5算術(shù)和邏輯運(yùn)算:表9-6中列出的運(yùn)算可以在變量中執(zhí)行。運(yùn)算符右邊的表達(dá)式可以是常量和/或由函數(shù)或運(yùn)算符組成的變量。表達(dá)式中的變量#J和#K可以用常數(shù)替換。左邊的變量也可以用表達(dá)式賦值。6自變量指定:自變量指定使用除了G,L,0,N,和P以外的字母,每個(gè)字母指定一次。9.1 概述概述7宏程序語(yǔ)句使用:轉(zhuǎn)移和循環(huán):在程序中,使用GOTO語(yǔ)句和IF語(yǔ)句可以改變控制的流向。有三種轉(zhuǎn)移和循環(huán)操作可供使用:(1)GOTO語(yǔ)句(無(wú)條件轉(zhuǎn)移)轉(zhuǎn)移到標(biāo)有順序號(hào)N的程序段。例如:GOTO1,GOTO#10,GOTON如果指定的條件表達(dá)式滿足時(shí),轉(zhuǎn)移到標(biāo)有順序號(hào)N的程序段。如果指定的條件表達(dá)式不滿足,執(zhí)行下一個(gè)程序段。(2)IF語(yǔ)句(條件轉(zhuǎn)移:IFTHEN)IF之后指定條件表達(dá)式。如果條件表達(dá)式滿足,執(zhí)行預(yù)先決定的程序語(yǔ)只執(zhí)行一個(gè)宏程序語(yǔ)句。(3)WHILE語(yǔ)(當(dāng)時(shí)循環(huán))說(shuō)明:1.條件表達(dá)式:條件表達(dá)式必須包括運(yùn)算符。運(yùn)算符插在兩個(gè)變量中間或變量和常數(shù)中間,并且用括號(hào)()封閉。表達(dá)式可以替代變量。2.運(yùn)算符:運(yùn)算符由2個(gè)字母組成,用于兩個(gè)變量比較,以決定它們是相等還是一個(gè)值小于或大于另一個(gè)值。注意,不能使用不等號(hào)。例:試計(jì)算110的總和9.1 概述概述例:試計(jì)算110的總和O0001;#1=0;存儲(chǔ)和的變量初值#2=1;被加數(shù)變量初值N1 IF#2GE10GOTO2;當(dāng)被加數(shù)大于10時(shí)轉(zhuǎn)移到N2#1=#1+#2;計(jì)算和#2=#2+#1;下一個(gè)被加數(shù)GOTO1;轉(zhuǎn)到N1N2M30;程序結(jié)束(3)循環(huán)(WHILE語(yǔ)句)在WHILE后指定一個(gè)條件表達(dá)式。當(dāng)指定條件滿足時(shí),執(zhí)行從DO到END之間的程序。否則,轉(zhuǎn)到END后面的程序段。說(shuō)明:1)與IF語(yǔ)句的指令格式相同。DO后的數(shù)和END后的數(shù)為指定程序執(zhí)行范圍的標(biāo)號(hào),標(biāo)號(hào)值為1,2,3。若用1,2,3以外的值會(huì)產(chǎn)生報(bào)警。2)當(dāng)指定DO而沒有指定WHILE語(yǔ)句時(shí),產(chǎn)生從DO到END的無(wú)限循環(huán)9.1 概述概述例:下面的程序計(jì)算110總和O0002;#1=0;存儲(chǔ)和的變量初值#2=1;被加數(shù)變量初值WHILE#2LE10DO1;當(dāng)被加數(shù)10時(shí)循環(huán)D01到END1之間的程序#1=#1+#2;計(jì)算和#2=#2+#1;下一個(gè)被加數(shù)END1;M30;程序結(jié)束9.1 概述概述9.1.2用戶宏程序的特點(diǎn)及應(yīng)用用戶宏程序的特點(diǎn)及應(yīng)用1.高效2.經(jīng)濟(jì)1)無(wú)需成形刀,一把刀可加工各種斜率的斜面。(2)形位公差能保證(3)簡(jiǎn)化編程3.應(yīng)用范圍廣9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程9.2.19.2.1宏程序基礎(chǔ)知識(shí)宏程序基礎(chǔ)知識(shí)1.1.變量變量一個(gè)普通的零件加工程序指定G碼并直接用數(shù)字值表示移動(dòng)的距離,例:G01 X100。利用用戶宏,既可以直接使用數(shù)字值也可以使用變量號(hào)。當(dāng)使用變量號(hào)時(shí),變量值既可以由程序改變,也可以用MDI面板改變。如:#1=#2+100G01 X#1 F3002 2變量的格式變量的格式當(dāng)指定一個(gè)變量時(shí),在#后指定變量號(hào)。個(gè)人計(jì)算機(jī)允許賦名給變量,宏沒有此功能。例如:#13 3變量分類變量分類根據(jù)變量號(hào)將變量分為四類,見表9-1:9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程變量號(hào)變量類型功能#0“空”這個(gè)變量總是空的,不能賦值。#1#33局部變量局部變量只能在宏中使用,以保持操作的結(jié)果,關(guān)閉電源時(shí),局部變量被初始化成“空”。宏調(diào)用時(shí),自變量分配給局部變量。#100#199#500#999公共變量公共變量在不同的宏程序中的意義相同(即公共變量對(duì)于主程序和從這些主程序調(diào)用的每個(gè)宏程序來(lái)說(shuō)是公用的)斷電時(shí),#100#199清除(初始化為空),通電時(shí)復(fù)位到“O”;而#500#999數(shù)據(jù),即使在斷電時(shí)也不清除#1000以上系統(tǒng)變量系統(tǒng)變量用于讀寫各種NC數(shù)據(jù)項(xiàng),如當(dāng)前位置、刀具補(bǔ)償值。9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程4.系統(tǒng)變量系統(tǒng)變量能用來(lái)讀寫內(nèi)部NC數(shù)據(jù),如刀具補(bǔ)償值和當(dāng)前位置數(shù)據(jù)。然而有些系統(tǒng)變量是只讀變量。對(duì)于擴(kuò)展自動(dòng)化操作和一般的程序,系統(tǒng)變量是必須的。在本章僅對(duì)系統(tǒng)變量的部分內(nèi)容做介紹下面對(duì)系統(tǒng)變量進(jìn)行詳細(xì)說(shuō)明。(1)接口(輸入輸出)信號(hào)接口信號(hào)是可編程機(jī)床控制器(PMC)和用戶宏程序之間交換的信號(hào)(2)刀具補(bǔ)償值用系統(tǒng)變量可以讀、寫刀具補(bǔ)償值。通過(guò)對(duì)系統(tǒng)變量賦值,可以修改刀具補(bǔ)償值9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程(3)宏程序報(bào)警宏程序報(bào)警的系統(tǒng)變量是#3000。它的功能是當(dāng)變量#3000值為O200時(shí),CNC停止運(yùn)行且報(bào)警。可在表達(dá)式后指定不超過(guò)26個(gè)字符的報(bào)警信息。CRT屏幕上顯示報(bào)警號(hào)和報(bào)警信息,其中報(bào)警號(hào)為變量#3000的值加上3000例:#3000=l(TOOLNOTFOUND)一報(bào)警屏幕上顯示“300lTOOLNOTFOUND”(刀具未找到)。(4)停止和信息顯示停止和信息顯示的系統(tǒng)變量是#3006,它的功能是在宏程序中指令“#3006=l(MESSAGE);”時(shí),程序在執(zhí)行完前一程序段后停止??稍谕怀绦蚨沃兄付ㄗ疃?6個(gè)字符的信息,由控制輸入“(”和控制輸出“)”括住,相應(yīng)信息顯示在外部操作信息畫面。9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程5算術(shù)和邏輯算術(shù)和邏輯在下表中列出的操作可以用變量進(jìn)行。操作符右邊的表達(dá)式,可以含有常數(shù)和由一個(gè)功能塊或操作符組成的變量。表達(dá)式中的變量#J和#K可以用常數(shù)替換。左邊的變量也可以用表達(dá)式替換。見表9-6:表表9-6 FANUC 0i 算術(shù)和邏輯符號(hào)算術(shù)和邏輯符號(hào)9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程功能格式注釋賦值#i=#j加減乘除#i=#j+#k#i=#j#k#i=#j*#k#i=#j/#k正弦余弦正切#i=SIN#j#i=COS#j#i=TAN#j角度以度為單位,如:90度30分表示成90.5度平方根絕對(duì)值進(jìn)位下進(jìn)位上進(jìn)位#i=SQRT#j#i=ABS#j#i=ROUND#j#i=FIX#j#i=FUP#jOR(或)XOR(異或)AND(與)#i=#jOR#k#i=#jXOR#k#i=#jAND#k用二進(jìn)制數(shù)按位進(jìn)行邏輯操作。將BCD碼轉(zhuǎn)換成BIN碼將BIN碼轉(zhuǎn)換成BCD碼#i=BIN#j#i=BCD#j用于與PMC間信號(hào)的交換。9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程6 6分支和循環(huán)語(yǔ)句分支和循環(huán)語(yǔ)句(1)GOTO語(yǔ)句(無(wú)條件分支);功能:向程序的第N句。當(dāng)指定的順序號(hào)在19999以外時(shí),出現(xiàn)128號(hào)報(bào)警,順序號(hào)可以用表達(dá)式。格式:GOTO n;n是順序號(hào)(19999)(2)IF語(yǔ)句(條件分支:if,then);功能:在IF后面指定一個(gè)條件表達(dá)式,如果條件滿足,轉(zhuǎn)向第N句,否則執(zhí)行下一段。格式:IF 條件表達(dá)式 GOTO n;操作符意義EQ=;NE;GT;GE;LT;LE.(3)WHILE語(yǔ)句(循環(huán)語(yǔ)句while)。功能:在WHILE后指定一個(gè)條件表達(dá)式,條件滿足時(shí),執(zhí)行DO到END之間的語(yǔ)句,否則執(zhí)行END后的語(yǔ)句。格式WHILE條件表達(dá)式DOm;(m=1,2,3)9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程ENDm;m只能在1、2、3中取值,否則出現(xiàn)126號(hào)報(bào)警。1)嵌套:在DOEND循環(huán)中的標(biāo)號(hào)13可以多次使用。但是當(dāng)程序有交叉重復(fù)循環(huán)(D0范圍重疊)時(shí),出現(xiàn)P/S報(bào)警No.124。見表9-7循環(huán)嵌套表。2)無(wú)限循環(huán)當(dāng)指定DO而沒有指定WHILE語(yǔ)句時(shí),產(chǎn)生從D0到END的無(wú)限循環(huán)。3)處理時(shí)間在處理有標(biāo)號(hào)轉(zhuǎn)移的GOTO語(yǔ)句時(shí),進(jìn)行順序號(hào)檢索。反向檢索的時(shí)間要比正向檢索長(zhǎng)。用WHILE語(yǔ)句實(shí)現(xiàn)循環(huán)可減少處理時(shí)間。4)未定義的變量在使用EQ或NE的條件表達(dá)式中,和零有不同的效果。在其他形式的條件表達(dá)式中,被當(dāng)作零。9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程9.2.2用戶宏程序功能用戶宏程序功能1用戶宏指令用戶宏指令(用戶宏程序調(diào)用指令用戶宏程序調(diào)用指令)首先說(shuō)明用戶宏程序調(diào)用(G65)與子程序調(diào)用(M98)之間的差別:(1)G65可以進(jìn)行自變量賦值,即指定自變量(數(shù)據(jù)傳送到宏程序),M98則不能。(2)當(dāng)M98程序段包含另一個(gè)NC指令(例如,G01X200M98P)時(shí),在執(zhí)行完這種含有非N、P或L的指令后可調(diào)用(或轉(zhuǎn)移到)子程序。相反,G65則只能無(wú)條件地調(diào)用宏程序。(3)當(dāng)M98程序段包含有O、N、P、L以外的地址的NC指令時(shí),(例如G01X200M98P,在單程序段方式中,可以單程序段停止(即停機(jī))。相反,G65則不行(即不停機(jī))。(4)G65改變局部變量的級(jí)別。M98不改變局部變量的級(jí)別。9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程2宏程序非模態(tài)調(diào)用宏程序非模態(tài)調(diào)用(G65)當(dāng)指定G65時(shí),調(diào)用以地址P指定的用戶宏程序,數(shù)據(jù)(自變量)能傳遞到用戶宏程序中,指令格式如下所示。G65PL;:要調(diào)用的程序號(hào):重復(fù)次數(shù)(默認(rèn)值為1):傳遞到宏程序的數(shù)據(jù)其具體調(diào)用過(guò)程如圖9-1:圖9-1用戶宏指令是調(diào)用過(guò)程說(shuō)明:(1)在G65之后,用地址P指定用戶宏程序的程序號(hào)。(2)當(dāng)要求重復(fù)時(shí),在地址L后指定從19999的重復(fù)次數(shù)。省略L值時(shí),認(rèn)為L(zhǎng)等于1。(3)使用自變量指定,其值被賦值到相應(yīng)的局部變量。9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程3.自變量指定(賦值)自變量指定(賦值)自變量指定可用兩種形式的自變量指定。自變量指定I使用除了G、L、0、N和P之外的字母,每個(gè)字母指定一次。自變量指定使用A、B、C和Ii;、Ji;、Ki;(i為1l0)。根據(jù)使用的字母,自動(dòng)決定自變量指定的類型自變量指定I。地址變量號(hào)地址變量號(hào)地址變量號(hào)A#1I#4T#20B#2J#5U#2lC#3K#6V#22D#7M#13w#23E#8Q#17X#24F#9R#18Y#25H#11S#19Z#269.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程說(shuō)明:1)地址G、L、N、0和P不能在自變量中使用。2)不需要指定的地址可以省略,對(duì)應(yīng)于省略地址的局部變量為空。3)地址不需要按字母順序指定,但應(yīng)符合字母地址的格式。I、J和K需要按字母順序指定。例:BADJK正確BADJK不正確(2)自變量指定II自變量指定使用A、B和C各1次,I、J、K各10次。自變量指定用于傳遞諸如三維坐標(biāo)值。I、J、K的下標(biāo)用于確定自變量指定的順序,在實(shí)際編程中不寫。9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程地址變量號(hào)地址變量號(hào)地址變量號(hào)A#1K3#12J7#23B#2I4#13K7#24C#3J4#14I8#25I1#4K4#15J8#26J1#5I5#16K8#27K1#6J5#17I9#28I2#7K5#18J9#29J2#8I6#19K9#30K2#9J6#20I10#31I3#10K6#21J10#32J3#11J7#22K10#339.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程(3)格式任何自變量前必須指定G65。(4)自變量指定I、混合使用CNC內(nèi)部自動(dòng)識(shí)別自變量I和自變量。如果自變量指定I和自變量指定混合使用,后指定的自變量類型有效。(5)小數(shù)點(diǎn)的位置不帶小數(shù)點(diǎn)的自變量,其數(shù)據(jù)單位為各地址的最小設(shè)定單位。傳遞不帶小數(shù)點(diǎn)的自變量,其值會(huì)根據(jù)機(jī)床實(shí)際的系統(tǒng)配置變化。在宏程序調(diào)用中,使用小數(shù)點(diǎn)可使程序兼容性好。(6)調(diào)用嵌套調(diào)用可以嵌套4級(jí),包括非模態(tài)代碼調(diào)用(G65)和模態(tài)代碼調(diào)用(G66),但不包括子程序調(diào)用(M98)。(7)局部變量的級(jí)別1)局部變量嵌套從0到4級(jí)。見圖9-22)主程序是0級(jí)。3)宏程序每調(diào)用1次(用G65或G66),局部變量級(jí)別加l。前l(fā)級(jí)的局部變量值保存在CNC中。9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程4.宏程序模態(tài)調(diào)用與取消(G66、G67)當(dāng)指定G66時(shí),則指定宏程序模態(tài)調(diào)用,即指定沿移動(dòng)軸移動(dòng)的程序段后調(diào)用宏程序,G67取消宏程序模態(tài)調(diào)用。指令格式與非模態(tài)調(diào)用(G65)相似。G66PL;:要調(diào)用的程序號(hào):重復(fù)次數(shù)(默認(rèn)值為1):傳遞到宏程序的數(shù)據(jù)說(shuō)明:(1)在G66之后,用地址P指定用戶宏程序的程序號(hào)。(2)任何自變量前必須指定G66。(3)當(dāng)要求重復(fù)時(shí),在地址L后指定從19999的重復(fù)次數(shù),省略L值時(shí),默認(rèn)L值等于1。(4)與非模態(tài)調(diào)用(G65)相同,使用自變量指定(賦值),其值被賦值給宏程序中相應(yīng)的局部變量。9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程(5)指定G67時(shí),取消G66,即其后面的程序段不再執(zhí)行宏程序模態(tài)調(diào)用。G66和G67應(yīng)該成對(duì)使用。(6)可以調(diào)用四級(jí)嵌套,包括非模態(tài)調(diào)用(G65)和模態(tài)調(diào)用(G66)。但不包括子程序調(diào)用(M98)。(7)在模態(tài)調(diào)用期間,指定另一個(gè)G66代碼,可以嵌套模態(tài)調(diào)用。(8)限制:1)在G66程序段中,不能調(diào)用多個(gè)宏程序。2)在只有諸如輔助功能(M代碼),但無(wú)移動(dòng)指令的程序段中不能調(diào)用宏程序。3)局部變量(自變量)只能在G66程序段中指定,注意,每次執(zhí)行模態(tài)調(diào)用時(shí),不再設(shè)定局部變量。例:用宏程序編制G8l固定循環(huán)的操作(圖9-4)。加工程序使用模態(tài)代碼調(diào)用,為了簡(jiǎn)化程序,使用絕對(duì)值指定全部的鉆孔數(shù)據(jù)。9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程圖9-4G81固定循環(huán)9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程調(diào)用格式G65P9100XxYyZzRrFfL1;X:孔的x坐標(biāo)(由絕對(duì)值指定)(#24)Y:孔的Y坐標(biāo)(由絕對(duì)值指定)(#25)Z:Z點(diǎn)坐標(biāo)(由絕對(duì)值指定)(#26)R:R點(diǎn)坐標(biāo)(由絕對(duì)值指定)(#18)F:切削進(jìn)給速度(#9)L:重復(fù)次數(shù)2)宏程序調(diào)用程序00001;G28G91X0Y0Z0;G92X0Y0Z50.0;G00G90X100.0Y50.0;G66P9100Z-20.0R5.0F500:9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程G90X20.0Y20.0;X50.0;Y50.0;X70.0Y80.0;G67:M30;宏程序(被調(diào)用的程序):09100;#1=#4001;儲(chǔ)存G00G01#2=#4003;儲(chǔ)存G90G91#3=#4109;儲(chǔ)存切削進(jìn)給速度#5=#5003;儲(chǔ)存鉆孔開始的Z坐標(biāo)G00G90Z#18;定位在R點(diǎn)G01Z#26F#9;切削進(jìn)給到Z點(diǎn)9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程IF#4010EQ98GOTO1;返回到I點(diǎn)G00Z#18;定位在R點(diǎn)GOT02;N1G00Z5;定位在I點(diǎn)N2G#1G#3F#4;恢復(fù)模態(tài)信息M99;9.2.3數(shù)控車床數(shù)控車床FANUC0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程(試對(duì)下圖編程)試對(duì)下圖編程)9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程9.2.4數(shù)控銑床數(shù)控銑床FANUC0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程本小節(jié)將用實(shí)例對(duì)下圖(圖9-6)FANUC0i系統(tǒng)進(jìn)行程序編制,后面也將對(duì)本圖進(jìn)行SIEMENS802D系統(tǒng)、華中HNC-21M系統(tǒng)程序編制,分析三者編程的優(yōu)點(diǎn)和相同之處。R50的半球中心為G54原點(diǎn)工件上表面為Z0,刀具:8mm鍵槽刀D01=4.19.3 SIEMENS 802D系統(tǒng)宏程序編程系統(tǒng)宏程序編程1.變量變量范圍:R0=到R299=計(jì)算參數(shù)賦值:(0.000000199999999)2.變量的格式變量的格式賦值例如:R1=10給其它的地址賦值例如:G0X=R2;給X軸賦值9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程功能格式注釋正弦余弦正切反正弦反余弦反正切2 SIN COSTANASIN ACOSATAN2矢量和的角度是由兩個(gè)垂直矢量計(jì)算得出的。定義的第2 矢量始終用作角度參考。角度范圍為:-180 到180度平方根 平方值SQRTPOT絕對(duì)值A(chǔ)BS取整TRUNC自然對(duì)數(shù)LN3.算術(shù)與邏輯算術(shù)與邏輯9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程標(biāo)記符或程序段號(hào)用于標(biāo)記程序中所跳轉(zhuǎn)的目標(biāo)程序段,用跳轉(zhuǎn)功能可以實(shí)現(xiàn)程序運(yùn)行分支。標(biāo)記符可以自由選取,但必須由2-8個(gè)字母或數(shù)字組成,其中開始兩個(gè)符號(hào)必須是字母或下劃線。跳轉(zhuǎn)目標(biāo)程序段中標(biāo)記符后面必須為冒號(hào)。標(biāo)記符位于程序段段首。如果程序段有段號(hào),則標(biāo)記符緊跟著段號(hào)。在一個(gè)程序段中,標(biāo)記符不能含有其它意義例如:MARKE1:G1X20;MARKE1MARKE1為標(biāo)記符,跳轉(zhuǎn)目標(biāo)程序段9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程5.絕對(duì)跳轉(zhuǎn)絕對(duì)跳轉(zhuǎn)NC程序在運(yùn)行時(shí)以寫入時(shí)的順序執(zhí)行程序段。程序在運(yùn)行時(shí)可以通過(guò)插入程序跳轉(zhuǎn)指令改變執(zhí)行順序。跳轉(zhuǎn)目標(biāo)只能是有標(biāo)記符或一個(gè)程序段號(hào)的程序段。此程序段必須位于該程序之內(nèi)。絕對(duì)跳轉(zhuǎn)指令必須占用一個(gè)獨(dú)立的程序段。其跳轉(zhuǎn)指令見下:操作符意義GOTOF向前跳轉(zhuǎn)(向程序結(jié)束的方向跳轉(zhuǎn))GOTOB向后跳轉(zhuǎn)(向程序開始的方向跳轉(zhuǎn))例如:N30GOTOFMARKE0N60MARKE0:R1=R2+R36有條件跳轉(zhuǎn)有條件跳轉(zhuǎn)用IF-條件語(yǔ)句表示有條件跳轉(zhuǎn)。如果滿足跳轉(zhuǎn)條件(也就是值不等于零),則進(jìn)行跳轉(zhuǎn)。跳轉(zhuǎn)目標(biāo)只能是有標(biāo)記符或程序段號(hào)的程序段。該程序段必須在此程序之內(nèi)。有條件跳轉(zhuǎn)指令要求一個(gè)獨(dú)立的程序段。在一個(gè)程序段中可以有許多個(gè)條件跳轉(zhuǎn)指令。使用了條件跳轉(zhuǎn)后有時(shí)會(huì)使程序得到明顯的簡(jiǎn)化。其跳轉(zhuǎn)指令見下:9.2 FANUC 0i系統(tǒng)宏程序編程系統(tǒng)宏程序編程IFGOTOF跳轉(zhuǎn)條件向前跳轉(zhuǎn)(向程序結(jié)束的方向跳轉(zhuǎn))IFGOTOB跳轉(zhuǎn)條件向后跳轉(zhuǎn)(向程序開始的方向跳轉(zhuǎn))例如:N10IFR1GOTOFLABEL1N60LABEL19.3.1數(shù)控車床數(shù)控車床SIEMENS 802D系統(tǒng)宏程序編程系統(tǒng)宏程序編程本小節(jié)將對(duì)(圖本小節(jié)將對(duì)(圖9-5)實(shí)例進(jìn)行)實(shí)例進(jìn)行SIEMENS 802D系統(tǒng)程序編制。系統(tǒng)程序編制。9.3.2數(shù)控銑床數(shù)控銑床SIEMENS 802D系統(tǒng)宏程序編程系統(tǒng)宏程序編程本小節(jié)將對(duì)(圖本小節(jié)將對(duì)(圖9-6)實(shí)例進(jìn)行)實(shí)例進(jìn)行SIEMENS 802D系統(tǒng)數(shù)控銑床程序系統(tǒng)數(shù)控銑床程序編制。編制。加工程序如下:加工程序如下:9.4 華中華中HNC-21/22T系統(tǒng)宏程序編程系統(tǒng)宏程序編程1變量和變量的格式變量和變量的格式 華中HNC-21/22T系統(tǒng)的用戶宏程序變量和變量格式基本上和FANUC 0i系統(tǒng)一樣。2 2系系統(tǒng)變統(tǒng)變量量變量號(hào)功能變量號(hào)功能#0#49當(dāng)前局部變量#1110#1119G28中間點(diǎn)位置#50#199全局變量#1120#1129鏡像點(diǎn)位置#200#599局部變量#1130#1133旋轉(zhuǎn)軸#600#699刀具長(zhǎng)度寄存器H0 H99#1135#1139縮放軸#700#799刀具半徑寄存器D0 D99#1140#1142坐標(biāo)變換代碼#800#899刀具壽命寄存器#1144刀具長(zhǎng)度補(bǔ)償號(hào)#1000#1008機(jī)床當(dāng)前位置#1145刀具半徑補(bǔ)償號(hào)#1010#1018程編機(jī)床位置#1146#1147當(dāng)前平面軸#1020#1028程編工件位置#1149進(jìn)給速度指定#1030#1038當(dāng)前工件零點(diǎn)#1150#1170G代碼模態(tài)值#1040#1098G54G55零點(diǎn)9.4 華中華中HNC-21/22T系統(tǒng)宏程序編程系統(tǒng)宏程序編程3賦值語(yǔ)句賦值語(yǔ)句把常數(shù)或表達(dá)式的值送給一個(gè)宏變量稱為賦值。格式:宏變量=常數(shù)或表達(dá)式例如:#4=SQRT#1*#1-#3*#3/404.條件判別語(yǔ)句條件判別語(yǔ)句條件判別語(yǔ)句有IF、ELSE、ENDIF格式:IF條件表達(dá)式ELSEENDIF5.循環(huán)語(yǔ)句循環(huán)語(yǔ)句循環(huán)語(yǔ)句有WHILE、ENDW格式:WIIILE條件表達(dá)式ENDW9.4 華中華中HNC-21/22T系統(tǒng)宏程序編程系統(tǒng)宏程序編程操作符意義EQ=NEGTGELT=R21GOTOBMARKEl;如果R20D大于或等于R21,則跳轉(zhuǎn)到N010程序段N030TRANS取消局部工件坐標(biāo)系偏置N035RET程序結(jié)束并返回主程序9.5宏程序編程實(shí)例宏程序編程實(shí)例例:試編制圖9-8所示橢圓過(guò)渡類零件的宏程序。N10M03S600T01D01主軸正轉(zhuǎn)600rmin,調(diào)用粗車刀N20G00X50.0Z100.0M07快速運(yùn)行到刀具起刀點(diǎn),打開切削液N30R1=10R2=20R19=15R20=35R21=16.7R6=0.5R9=0.35R24=25.0R26=35.0參數(shù)設(shè)置N40L31調(diào)用橢圓粗加工宏程序N45G00X50.0Z100.0刀具退回到起刀點(diǎn)假如是精加工只要把R6K和R9值減小就可,如R6=0.2R9=0.9.5宏程序編程實(shí)例宏程序編程實(shí)例3.HNC-2122T華中世紀(jì)星數(shù)控系統(tǒng)車削橢圓曲線類零件的用戶宏程序華中世紀(jì)星數(shù)控系統(tǒng)車削橢圓曲線類零件的用戶宏程序局部變量含義:#23=X0X0一橢圓對(duì)稱中心X絕對(duì)坐標(biāo)值#25=Z0Z0一橢圓對(duì)稱中心Z絕對(duì)坐標(biāo)值#0=aaX向橢圓短半軸長(zhǎng)度#1=bbZ向橢圓短半軸長(zhǎng)度#18=X2X2一橢圓輪廓的起始點(diǎn)工件X坐標(biāo)值#19=Z2Z2一橢圓輪廓的起始點(diǎn)工件Z坐標(biāo)值#20=UU一橢圓輪廓的終點(diǎn)工件Z坐標(biāo)值#6=KK一遞變量(凹橢圓為負(fù),凸橢圓為正)#5=FF一切削速度9.5宏程序編程實(shí)例宏程序編程實(shí)例用戶宏子程序如下:31宏程序名N005G68X#23Z#25P0以橢圓對(duì)稱中心設(shè)定為工件坐標(biāo)系旋轉(zhuǎn)中心N010WHILE#19GE#20如果#19,bT#20,則跳轉(zhuǎn)到N030程序段N015#18=#0*SQRT1一#19*#19#1*#1橢圓上任一點(diǎn)X坐標(biāo)值計(jì)算N020G01X#23+#18Z#25+#19F#5線插補(bǔ)橢圓N025#19=#19一#10步距軸向疊減N030ENDW返回循環(huán)體N035G69取消工件坐標(biāo)系旋轉(zhuǎn)N040M99子程序結(jié)束并返回主程序例:試編制圖9-8所示橢圓過(guò)渡類零件的宏程序。9.5宏程序編程實(shí)例宏程序編程實(shí)例N10M03S600T0l01主軸正轉(zhuǎn)600rmin,調(diào)用粗車刀N20G00X50.0Z100.0M07刀具到起刀點(diǎn),打開切削液N30M98P3lX25.0Z35.0A10.0B20.0S15.0T35.0U16.7K0.5F.35調(diào)用橢圓粗加工宏程序N40G00X50.0Z100.0刀具退回到起刀點(diǎn)假如是精加工只要把K和F值減小就可,如K=0.2F=0.1。9.5.2雙曲線過(guò)渡類零件的宏程序雙曲線過(guò)渡類零件的宏程序 1.FANUC Oi數(shù)控系統(tǒng)車削橢圓曲線類零件的用戶宏程序數(shù)控系統(tǒng)車削橢圓曲線類零件的用戶宏程序編制一個(gè)車削加工如圖9-9所示帶有雙曲線過(guò)渡類零件的通用程序,假設(shè)工件最終加工大外圓外徑為X2,小外圓外徑為X1,過(guò)渡雙曲線方程為X2/a2一Z2/b2=l,雙曲線實(shí)半軸長(zhǎng)為a,虛半軸長(zhǎng)為b;使用變量(或參數(shù))編制此類零件的宏程序。9.5宏程序編程實(shí)例宏程序編程實(shí)例#24=X0X0一雙曲線對(duì)稱中心的工件坐標(biāo)橫向絕對(duì)坐標(biāo)值#26=Z0Z0一雙曲線對(duì)稱中心的工件坐標(biāo)縱向絕對(duì)坐標(biāo)值#l=aa一雙曲線實(shí)半軸長(zhǎng)#2=bb一雙曲線虛半軸長(zhǎng)#19=SS一雙曲線起點(diǎn)離開對(duì)稱中心的Z向距離值#20=TT一雙曲線終點(diǎn)離開對(duì)稱中心的Z向距離值#21=UU一雙曲線起點(diǎn)的X向半徑坐標(biāo)值(U=X1/2)#6=KK一Z向遞變量#9=FF一切削速度9.5宏程序編程實(shí)例宏程序編程實(shí)例9.5宏程序編程實(shí)例宏程序編程實(shí)例用戶宏子程序:032;子程序名N010G52X#24Z#26;以雙曲線對(duì)稱中心設(shè)定局部工件坐標(biāo)系N015G01X#21Z#19F#9;沿著雙曲線作直線插補(bǔ)N020#19=#19一#6;Z向步距均值疊減N025#21=#l半*SQRT1+#19*#19#2*#2;雙曲線上任一點(diǎn)X坐標(biāo)值計(jì)算N030IF#19GE#20GOT015;如果#19大于或等于#20,則跳轉(zhuǎn)到N015程序段N035G52X0Z0;取消局部工件坐標(biāo)系偏置N040M99;子程序返回9.5宏程序編程實(shí)例宏程序編程實(shí)例例:在數(shù)控車床上加工如圖9-10所示一雙曲線過(guò)渡類零件,工件最終加工大外圓外徑為36,小外圓外徑為30,過(guò)渡雙曲線方程為X2102一Z2/132=l,雙曲線實(shí)半軸長(zhǎng)為10,虛半軸長(zhǎng)為13。使用變量(或參數(shù))編制此類零件的宏程序。N20G00X50.0Z100.0M07;刀具到起刀點(diǎn),打開切削液N30G65P32X0Z30.456U15A10.0B13.0S14.543T-14.543K0.5F0.35調(diào)用雙曲線加工宏程序N40G00X50.0Z100.0刀具退回到起刀點(diǎn)假如是精加工只要把K和F值減小就可,如K=0.2F=0.19.5宏程序編程實(shí)例宏程序編程實(shí)例9.5宏程序編程實(shí)例宏程序編程實(shí)例2西門子西門子802D數(shù)控系統(tǒng)對(duì)車削雙曲線類零件的用戶數(shù)控系統(tǒng)對(duì)車削雙曲線類零件的用戶R參數(shù)程序參數(shù)程序R參數(shù)含義:R24=X0X0一雙曲線對(duì)稱中心的工件坐標(biāo)橫向絕對(duì)坐標(biāo)值R26=Z0Z0一雙曲線對(duì)稱中心的工件坐標(biāo)縱向絕對(duì)坐標(biāo)值Rl=aa一雙曲線實(shí)半軸長(zhǎng)R2=bb一雙曲線虛半軸長(zhǎng)R19=SS一雙曲線起點(diǎn)離開對(duì)稱中心的Z向距離值R20=TT一雙曲線終點(diǎn)離開對(duì)稱中心的Z向距離值R21=UU一雙曲線起點(diǎn)的X向半徑坐標(biāo)值(U=X1/2)R6=KK一Z向遞變量R9=FF一切削速度R參數(shù)子程序:9.5宏程序編程實(shí)例宏程序編程實(shí)例L32.SPFR參數(shù)子程序名N010TRANSX=R24Z=R26;以雙曲線對(duì)稱中心設(shè)定局部工件坐標(biāo)系N015MARKEl:G01X=R21Z=R19F=R9;沿著雙曲線作直線插補(bǔ)N020R19=R19一R6;Z向步距均值疊減N025R21=R1*SQRT1+R19*R19R2*R2;雙曲線上任一點(diǎn)X坐標(biāo)值計(jì)算N030IFR19=R20GOTOBMARKE1;如果R19大于或等于R20,跳轉(zhuǎn)到MARKEl程序段N035TRANS取消局部工件坐標(biāo)系偏置N040RET子程序結(jié)果并返回主程序例:試編制圖9-10所示雙曲線過(guò)渡類零件的宏程序。9.5宏程序編程實(shí)例宏程序編程實(shí)例N20G00X50.0Z100.0M07快速運(yùn)行到刀具起刀點(diǎn),打開切削液N30R24=0R26=30.456R21=15R1=10R2=13R19=14.543R20=-14.543R6=0.5R9=0.35參數(shù)設(shè)置N40L32調(diào)用雙曲線加工宏程序N45G00X50.0Z100.0刀具退回到起刀點(diǎn)假如是精加工只要把R6K和R9值減小就可,如R6=0.2R9=0.1。3.HNC-2122T華中世紀(jì)星數(shù)控系統(tǒng)車削雙曲線類零件的用戶宏程序華中世紀(jì)星數(shù)控系統(tǒng)車削雙曲線類零件的用戶宏程序局部變量含義:#23=X0X0一雙曲線對(duì)稱中心的工件坐標(biāo)橫向絕對(duì)坐標(biāo)值#25=Z0Z0一雙曲線對(duì)稱中心的工件坐標(biāo)縱向絕對(duì)坐標(biāo)值#0=aa一雙曲線實(shí)半軸長(zhǎng)9.5宏程序編程實(shí)例宏程序編程實(shí)例N020#18=#18-#10Z向步距均值疊減N025#20=#0*SQRT1+#18*18#1*#1雙曲線上任一點(diǎn)X坐標(biāo)值計(jì)算N030ENDW返回循環(huán)體N035G69取消工件坐標(biāo)系旋轉(zhuǎn)N040M99子程序返回例:試編制圖9-10所示雙曲線過(guò)渡類零件的宏程序。N20G00X50.0Z100.0M07;刀具到起刀點(diǎn),打開切削液N30M98P32X0Z30.456U15A10.0B13.0S14.543T-14.543K0.5F.35調(diào)用雙曲線加工宏程序N40G00X50.0Z100.0刀具退回到起刀點(diǎn)9.5宏程序編程實(shí)例宏程序編程實(shí)例9.5宏程序編程實(shí)例宏程序編程實(shí)例1FANUC 0i數(shù)控系統(tǒng)對(duì)拋物線曲線類零件精車削的用戶宏程序數(shù)控系統(tǒng)對(duì)拋物線曲線類零件精車削的用戶宏程序自變量含義:#24=X0X0一拋物線頂點(diǎn)的工件坐標(biāo)橫向絕對(duì)坐標(biāo)值#26=Z0Z0一拋物線頂點(diǎn)的工件坐標(biāo)縱向絕對(duì)坐標(biāo)值#17=QQ一拋物線焦點(diǎn)坐標(biāo)在Z軸上絕對(duì)值的2倍(P)#22=VV一拋物線的開口距離#6=KKX向遞減均值#9=FF一切削速度用戶宏程序如下:02313;宏子程序名N010G00X#24Z#26+5刀具快速接近拋物線頂點(diǎn)處N020G01Z#26F2*#9以工進(jìn)速度直線插補(bǔ)到拋物線頂點(diǎn)N030#24=#24-#6X向步距均值遞減9.5宏程序編程實(shí)例宏程序編程實(shí)例N040#26=#24*#242*#17由X值計(jì)算拋物線上任一點(diǎn)Z坐標(biāo)值N050G01X#24Z#26F#9沿著拋物線作直線插補(bǔ)N060IF#24LT#22/2GOTO30如果#24小于#22/2,則跳轉(zhuǎn)到N030程序段N070G01X#22Z#26F3*#9斜線退到工件右端面外N080M99子程序結(jié)束并返回主程序例:在數(shù)控車床上加工如圖2所示一拋物線形狀的零件,拋物線的開口距離為42mm,拋物線方程為X2=一10Z,試編寫此零件的數(shù)控加工程序。9.5宏程序編程實(shí)例宏程序編程實(shí)例9.5宏程序編程實(shí)例宏程序編程實(shí)例N60G00X90.0Z100.0刀具退回到起刀點(diǎn)N75G65P2313X0Z0Q5.0V42.0K0.1F0.1調(diào)用拋物線形狀輪廓精車削的用戶宏程序N80G00X90.0Z1000M09;刀具退離零件,切削液停止假如是粗加工只要把K和F值增大就可,如K=0.5F=0.30。2.西門子西門子802D數(shù)控系統(tǒng)對(duì)拋物線曲線類零件精車削的用戶數(shù)控系統(tǒng)對(duì)拋物線曲線類零件精車削的用戶R參數(shù)程序參數(shù)程序R參數(shù)含義:R24=X0X0一拋物線頂點(diǎn)的工件坐標(biāo)橫向絕對(duì)坐標(biāo)值R26=Z0Z0一拋物線頂點(diǎn)的工件坐標(biāo)縱向絕對(duì)坐標(biāo)值R17=QQ一拋物線焦點(diǎn)坐標(biāo)在Z軸上絕對(duì)值的2倍(P)R22=VV一拋物線的開口距離R6=KKX向遞減均值R9=FF一切削速度R參數(shù)子程序如下:L2313SPFR參數(shù)子程序名9.5宏程序編程實(shí)例宏程序編程實(shí)例N010G00X=R24Z=R26+5刀具快速接近拋物線頂點(diǎn)處N020G01Z=R26F=2*R9以工進(jìn)速度直線插補(bǔ)到拋物線頂點(diǎn)N030MARKEl:R24=R24一R6X向步距均值遞減N040R26=R24*R242*R17由X值計(jì)算拋物線上任一點(diǎn)Z坐標(biāo)值N050G01X=R24Z=R26F=R9沿著拋物線作直線插補(bǔ)N060IFR24R222GOTOBMARKE1如果R24小于R22/2,則跳轉(zhuǎn)到MARKEl標(biāo)志符程序段N070G01X=R22Z=R26F=3*R9斜線退到工件右端面外N080RET9.5宏程序編程實(shí)例宏程序編程實(shí)例例:試編制圖9-12所示拋物線過(guò)渡類零件的宏程序。N20G00X90.0Z100.0快速運(yùn)行到刀具起刀點(diǎn)N30R24=0R26=0R17=5.0R22=42.0R6=0.1R9=0.1參數(shù)設(shè)置N40L2313調(diào)用拋物線形狀輪廓精車削的宏程序加工N45G00X90.0Z100.0刀具退回到起刀點(diǎn)假如是粗加工只要把R6K和R9值增大就可,如R6=0.5R9=0.30。3HNC2122T華中世紀(jì)星數(shù)控系統(tǒng)對(duì)拋物線曲線類零件精車削的用戶宏程序華中世紀(jì)星數(shù)控系統(tǒng)對(duì)拋物線曲線類零件精車削的用戶宏程序局部變量含義:#23=X0X0一拋物線頂點(diǎn)的工件坐標(biāo)橫向絕對(duì)坐標(biāo)值#25=Z0Z0一拋物線頂點(diǎn)的工件坐標(biāo)縱向絕對(duì)坐標(biāo)值#16=QQ一拋物線焦點(diǎn)坐標(biāo)在Z軸上絕對(duì)值的2倍(P)#21=VV一拋物線的開口距離#10=KKX向遞減均值#5=FF一切削速度9.5宏程序編程實(shí)例宏程序編程實(shí)例用戶宏子程序2313;用戶宏子程序號(hào)N010G00X#23Z#25+5刀具快速接近拋物線頂點(diǎn)處N020G01Z#25F2*#5以工進(jìn)速度直線插補(bǔ)到拋物線頂點(diǎn)N030WHILE#23GT#21/2如果#23小于或等于#2l/2,則跳轉(zhuǎn)到N070程序段N040#23=#23一#6X向步距均值遞減N050#25=一#23*#23/2*#17由X值計(jì)算拋物線上任一點(diǎn)Z坐標(biāo)值N060G01X#23Z#25F#5沿著拋物線作直線插補(bǔ)N070ENDW返回循環(huán)體N080G01X#21Z#25F3*#5斜線退到工件右端面外N090M99子程序結(jié)束并返回主程序例:試編制圖9-12所示拋物線過(guò)渡類零件的宏程序。N20G00X90.0Z100.0M07;刀具到起刀點(diǎn),打開切削液N30M98P2313X0Z30Q5.0V42.0K0.1F.1調(diào)用拋物線精加工宏程序N40G00X90.0Z100.0刀具退回到起刀點(diǎn)假如是粗加工只要把K和F值增大就可,如K=0.5F=0.3。9.5宏程序編程實(shí)例宏程序編程實(shí)例9.5宏程序編程實(shí)例宏程序編程實(shí)例9.5宏程序編程實(shí)例宏程序編程實(shí)例9.5宏程序編程實(shí)例宏程序編程實(shí)例9.5宏程序編程實(shí)例宏程序編程實(shí)例#1=bb一雙曲線虛半軸長(zhǎng)#18=SS一雙曲線起點(diǎn)離開對(duì)稱中心的Z向距離值#19=TT一雙曲線終點(diǎn)離開對(duì)稱中心的Z向距離值#20=UU一雙曲線起點(diǎn)的X向半徑坐標(biāo)值(U=X1/2)#10=KK一Z向遞變量#5=FF一切削速度用戶宏子程序:32;宏子程序名N010G68X#23Z#25P0以雙曲線對(duì)稱中心設(shè)定為工件坐標(biāo)系旋轉(zhuǎn)中心N015WHILE#18LE#19如果#18大于#19,則程序跳轉(zhuǎn)到N030程序段N020G01X#20Z#18F#5沿著雙曲線作直線插補(bǔ)
收藏
編號(hào):64230534
類型:共享資源
大?。?span id="mzebxcnn0" class="font-tahoma">5.86MB
格式:ZIP
上傳時(shí)間:2022-03-21
35
積分
- 關(guān) 鍵 詞:
-
數(shù)控編程與操作
高職
數(shù)控
編程
操作
PPT
電子
課件
- 資源描述:
-
高職《數(shù)控編程與操作》PPT電子課件,數(shù)控編程與操作,高職,數(shù)控,編程,操作,PPT,電子,課件
展開閱讀全文
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
裝配圖網(wǎng)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學(xué)習(xí)交流,未經(jīng)上傳用戶書面授權(quán),請(qǐng)勿作他用。