發(fā)那科用戶宏程序資料_第1頁
發(fā)那科用戶宏程序資料_第2頁
發(fā)那科用戶宏程序資料_第3頁
發(fā)那科用戶宏程序資料_第4頁
發(fā)那科用戶宏程序資料_第5頁
已閱讀5頁,還剩67頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

優(yōu)質(zhì)文檔精選發(fā)那科用戶宏程(Cheng)序資料1第一頁,共七十二頁。2(最(Zui)多999次)第二頁,共七十二頁。3第三頁,共七十二頁。4第四頁,共七十二頁。5一(Yi)、變量1、變量使用用戶宏程序時(shí),數(shù)值可以直接指定或用變量指定。當(dāng)用變量時(shí),變量值可用程序或用MDI面板上的操作改變。

#1=#2+100;G01X#1F300;2、變量的表示計(jì)算機(jī)允許使用變量名,用戶宏程序不行。變量用變量符號(#)和后面的變量號指定。表達(dá)式可以用于指定變量號。此時(shí),表達(dá)式必須封閉在括號中。例如:#1#[#1+#2-12]第五頁,共七十二頁。63、變量(Liang)的類型第六頁,共七十二頁。74、變量值得范圍局部變量和公共變量可以有0值或下面范圍中的值:-1047至-10-29

或10-29至10475、變量的引用為(Wei)在程序中使用變量值,指定后跟變量號的地址。當(dāng)用表達(dá)式指定變量時(shí),把表達(dá)式放在括號中。例如:G01X#1F#[#2+#3]第七頁,共七十二頁。8

被引用變量的值根據(jù)地址的最小設(shè)定單位自動(dòng)地舍入。例如:G00X#1,以1/1000mm的單位執(zhí)行時(shí),CNC把(Ba)12.3456賦值給變量#1,實(shí)際指令值為G00X12.346;。改變引用變量的值的符號,要把負(fù)號(一)放在#的前面。例如:G00X-#1;當(dāng)引用未定義的變量時(shí),變量及地址字都被忽略。例如:當(dāng)變量#1的值是0,并且變量#2的值是空時(shí),G00X#1Y#2的執(zhí)行結(jié)果為:G00X0;第八頁,共七十二頁。96、未定義的變量變量值未定義時(shí)(Shi),這樣的變量成為“空”變量。變量#0總是空變量。它不能寫,只能讀。(1)引用第九頁,共七十二頁。10(2)運(yùn)(Yun)算第十頁,共七十二頁。11(3)條(Tiao)件表達(dá)式第十一頁,共七十二頁。127、限制程序號(Hao)、順序號(Hao)和程序跳轉(zhuǎn)號(Hao)不能使用變量例如:O#1;N#2G00X100.0/#3Y200.0第十二頁,共七十二頁。13二、系統(tǒng)(Tong)變量1、刀具補(bǔ)償值第十三頁,共七十二頁。142、時(shí)間(Jian)信息第十四頁,共七十二頁。153、自(Zi)動(dòng)運(yùn)行控制可以改變自動(dòng)運(yùn)行的控制狀態(tài)第十五頁,共七十二頁。16●當(dāng)電源接通時(shí),該變量的值為0。●當(dāng)單程序段停止無效時(shí),即使單程序段開關(guān)設(shè)為ON,也不執(zhí)行單程序段停止。●當(dāng)不指定等待輔助功能(M,S和T功能)完成時(shí),在輔助功能完成之前,程序執(zhí)行到下列(Lie)程序段。而且分配完成信號DEN不輸出。第十六頁,共七十二頁。17第十七頁,共七十二頁。18●當(dāng)電源接通時(shí),該變量的值為0。●當(dāng)進(jìn)給暫(Zan)停無效時(shí):(1)當(dāng)進(jìn)給暫停按鈕被按下時(shí),機(jī)床在單段停止方式停止。但是。當(dāng)用變量#3003使單程序段方式無效時(shí),單程序段停止不執(zhí)行。(2)當(dāng)進(jìn)給暫停按鈕壓下又松開時(shí),進(jìn)給暫停燈亮,但是,機(jī)床不停止;程序繼續(xù)執(zhí)行,并且機(jī)床停在進(jìn)給暫停有效的第一個(gè)程序段。●當(dāng)進(jìn)給速度倍率無效時(shí),總是100%的倍率,而不管機(jī)床操作面板上的進(jìn)給速度倍率開關(guān)的設(shè)置?!癞?dāng)準(zhǔn)確停止檢測無效時(shí),即使那些不執(zhí)行切削的程序段也不進(jìn)行準(zhǔn)確停止檢測(位置檢測)。第十八頁,共七十二頁。19攻絲循環(huán)中使用變量(Liang)3004的例子N5N7第十九頁,共七十二頁。204、已加工的零(Ling)件數(shù)第二十頁,共七十二頁。215、當(dāng)前位置(只(Zhi)讀)第二十一頁,共七十二頁。22●圖中第1位代表軸號(從1到4)?!褡兞?5081—#5084存儲(chǔ)的刀具長度偏置值是當(dāng)前的執(zhí)行值,不是后面的程序段的處理值。●在G31(跳轉(zhuǎn)功能)程序段中跳轉(zhuǎn)信號接通時(shí)的刀具位置貯存在變量#5061到#5068中。當(dāng)G31程序段中的跳轉(zhuǎn)信號不接通時(shí),這些變量中貯存指定程序段的終點(diǎn)值?!褚苿?dòng)期間不能讀是指由(You)于緩沖(預(yù)讀)功能的原因,不能讀期望值.第二十二頁,共七十二頁。236、工件坐標(biāo)系補(bǔ)償值(工件零點(diǎn)(Dian)偏移值)第二十三頁,共七十二頁。24第二十四頁,共七十二頁。25三、算(Suan)術(shù)和邏輯運(yùn)算(Suan)

下列的運(yùn)算可以在變量中執(zhí)行。運(yùn)算符右邊的表達(dá)式可包含常量和/或由函數(shù)或運(yùn)算符組成的變量。表達(dá)式中的變量#j和#k可以用常數(shù)賦值。左邊的變量也可以用表達(dá)式賦值。1、(定義)賦值:#i=#j;2、加法:#i=#j+#k3、減法:#i=#j-#k4、乘法:#i=#j*#k5、除法:#i=#j/#k第二十五頁,共七十二頁。266、正弦:#i=SIN[#j];7、反正弦:#i=ASIN[#j];8、余弦:#i=COS[#j];角度以度指定9、反余弦:#i=ACOS[#j];90°30′表示為(Wei)10、正切:#i=TAN[#j];90.5度11、反正切:#i=ATAN[#j]/[#K];12、平方根:#i=SQRT[#j];13、絕對值:#i=ABS[#j];14、舍入:#i=ROUND[#j];15、上取整:#i=FUP[#j];16、下取整:#i=FIX[#j];17、自然對數(shù):#i=LN[#j];y=lnx18、指數(shù)函數(shù):#i=EXP[#j];y=ex第二十六頁,共七十二頁。2719、或:#i=#jOR#k;20、異或:#i=#jXOR#k;按位執(zhí)行21、與:#i=#jAND#k;22、從BCD轉(zhuǎn)(Zhuan)為BIN#i=BIN[#j];23、從BIN轉(zhuǎn)為BCD#i=BCD[#j];注:①ARCSIN#i=ASIN[#j]取值范圍當(dāng)No.6004.0=0時(shí):270°~90°No.6004.0=1時(shí):-90°~90°②ARCCOS#I=ACOS[#j]取值范圍

180°~0°第二十七頁,共七十二頁。28π/20-π/21-1π3π/2π/20-111-10π/2π第二十八頁,共七十二頁。29③ARCTAN#i=ATAN[#j]/[#K];取(Qu)值范圍當(dāng)No.6004.0=0時(shí):0°~360°No.6004.0=1時(shí):-180°~180°3π/2π/22ππ0π/2-π/2π-π0第一象限第二象限第四象限第一象限第二象限第三象限第三象限第四象限0~-π0~π0~2π第二十九頁,共七十二頁。30④ROUND函數(shù)●在邏輯運(yùn)算指令I(lǐng)F、WHILE中,ROUND函數(shù)在第一個(gè)小數(shù)位四舍五入(Ru)。例如#2=1.2345;#1=ROUND[#2];變量1的值是1.0●在NC語句地址中,ROUND函數(shù)根據(jù)地值得最小設(shè)定單位指定四舍五入。例如#1=1.2345;#2=2.3456;G00G91X-#1;G01X-#2F300;G00X[#1+#2];1.2345+2.3456=3.5801=3.580不返回到初始位置或G00X-[ROUND[#1]+ROUND[#2]]1.235+2.346=3.581刀具返回到初始位置第三十頁,共七十二頁。31⑤上取整和下取整CNC處理數(shù)值運(yùn)算時(shí),若操作后產(chǎn)(Chan)生的整數(shù)絕對值大于原數(shù)的絕對值時(shí)為上取整,小于原數(shù)的絕對值時(shí)為下取整。設(shè):#1=1.2,#2=-1.2#3=FUP[#1];則2.0賦給#3#3=FIX[#1];則1.0賦給#3#3=FUP[#2];則-2.0賦給#3#3=FIX[#2];則-1.0賦給#3第三十一頁,共七十二頁。32⑥運(yùn)算次序函數(shù)→乘、除(*、/、AND)→加、減(+、-、OR、XOR)⑦括號嵌套(方括號[],圓括號用于說明)括號用于改變運(yùn)算次序,可以(Yi)使用5級。第三十二頁,共七十二頁。33四、宏程序語(Yu)句和NC下面的程序段為宏程序語句:●包含算術(shù)或邏輯運(yùn)算(=)的程序段?!癜刂普Z句(例如,GOTO,DO,END)的程序段。●包含宏程序調(diào)用指令(例如,用G65,G66,G67或其它G代碼,M代碼調(diào)用宏程序)的程序段。除了宏程序語句以外的任何程序段都為

NC語句。第三十三頁,共七十二頁。34說明●與NC語句的不同①即使置于單程序段運(yùn)行方式,機(jī)床也不停止。但是,當(dāng)參數(shù)No.6000.5SBM設(shè)定為1時(shí),在單程序段方式中,機(jī)床停止。②在刀具(Ju)半徑補(bǔ)償方式中宏程序語句段不做為不移動(dòng)程序段處理。第三十四頁,共七十二頁。35●

與宏程序語句有相同性質(zhì)的NC語句①含有子程序調(diào)用指令(Ling)(例如,用M98或其它M代碼或用T代碼調(diào)用子程序)句②不包含O.N.P或L以外的指令地址的程序段其性質(zhì)與宏程序語句相同。第三十五頁,共七十二頁。36五(Wu)、轉(zhuǎn)移和循環(huán)

使用GOTO語句和IF語句可以改變控制的流向。有三中轉(zhuǎn)移和循環(huán)可供使用。

GOTO無條件轉(zhuǎn)移

IF條件轉(zhuǎn)移

WHILE當(dāng)型循環(huán)1、無條件轉(zhuǎn)移

GOTOn;n為順序例如:GOTO1;GOTO#10;第三十六頁,共七十二頁。372、條件轉(zhuǎn)移

IF[<條件表達(dá)式>]GOTOn

例如:IF[#1GT10]GOTO2

程序(Xu)

N2G00G91X10.0IF[<條件表達(dá)式>]THEN<表達(dá)式>

例如:IF[#1EQ#2]THEN#3=0

運(yùn)算符:EQ等于(=)NE不等于(≠)GT大于(>)GE大于等于(≥)LT小于(<)LE小于等于(≤)

條件不滿足條件滿足第三十七頁,共七十二頁。38例:求1~10的總(Zong)和。

O9000;#1=0;

#2=1;N1IF[#2GT10]GOTO2;#1=#1+#2;#2=#2+1;GOTO1;N2M30;第三十八頁,共七十二頁。393、循環(huán)

WHILE[<條件表(Biao)達(dá)式>]DOm;程序;

ENDm;

程序;說明:①m=1,2,3,可以多次使用。②最多嵌套三層。③省略WHILE,則產(chǎn)生從DO到END的無限循環(huán)。④WHILE比GOTO處理快。條件滿足條件不滿足第三十九頁,共七十二頁。40標(biāo)號可(Ke)以多次使用:WHILE[…]DO1;

程序;END1;﹕WHILE[…]DO1;

程序;END1;可以嵌套3層:WHILE[…]DO1;﹕WHILE[…]DO2;﹕WHILE[…]DO3;

程序;END3;﹕END2;﹕END1;可以跳到循環(huán)外邊:WHILE[…]DO1;IF[…]GOTOn;END1;N1第四十頁,共七十二頁。41DO的范圍不能交(Jiao)叉:WHILE[…]DO1;

程序;WHILE[…]DO2;﹕END1;

程序;END2;轉(zhuǎn)移不能進(jìn)入循環(huán)區(qū):IF[…]GOTOn;﹕WHILE[…]DO1;N1…;END1;第四十一頁,共七十二頁。42六、宏程(Cheng)序調(diào)用宏程序調(diào)用方法:①非模態(tài)調(diào)用(G65)②模態(tài)調(diào)用(G66、G67)③用G代碼調(diào)用宏程序④用M代碼調(diào)用宏程序⑤用M代碼調(diào)用子程序⑥用T代碼調(diào)用子程序第四十二頁,共七十二頁。431、非模態(tài)調(diào)用(G65)格式:G65PpLl<自變量指定>

其中:p:要調(diào)用的程序號

l:重復(fù)次數(shù)(默認(rèn)值為1)自變量:數(shù)據(jù)傳遞到宏程序,其值被賦值到相應(yīng)(Ying)的局部變量,有兩種指定形式。第四十三頁,共七十二頁。44

地址變量號

地址變量號

地址變量號ABCDEFH#1#2#3#7#8#9#10IJKMQRS#4#5#6#13#17#18#19TUVWXYZ#20#21#22#23#24#25#26自變(Bian)量指定Ⅰ注:每個(gè)字母只指定一次,可以不按順序,但I(xiàn)、J、K需按順序指定。第四十四頁,共七十二頁。45

地址變量號

地址變量號

地址變量號ABCI1J1K1I2J2K2I3J3#1#2#3#4#5#6#7#8#9#10#11K3I4J4K4I5J5K5I6J6K6I7#12#13#14#15#16#17#18#19#20#21#22J7K7I8J8K8I9J9K9I10J10K10#23#24#25#26#27#28#29#30#31#32#33自變量指(Zhi)定Ⅱ第四十五頁,共七十二頁。46

自變量指定Ⅰ、Ⅱ混合。CNC內(nèi)部能夠(Gou)自動(dòng)識別自變量指定Ⅰ、Ⅱ,后指定的有效。例如:G65A1.0B2.0I-3.0I4.0D5.0P1000;

則#1=1.0#2=2.0#3#4=-3.0#5=#6#7=4.0#7=5.0第四十六頁,共七十二頁。47調(diào)用(Yong)嵌套和局部變量的級別:可以嵌套4級。主程序局部變量(0級)1﹕

#1#33(1級)2﹕

#1#33(2級)3﹕

#1#33(3級)4﹕

#1#33(4級)5﹕

#1#33O001;﹕#1=1;G65P2A2;﹕﹕M30;O002;﹕#1=2;G65P3A3;﹕﹕M99;O003;﹕#1=3;G65P4A4;﹕﹕M99;O004;﹕#1=4;G65P5A5;﹕﹕M99;O005;﹕#1=5;﹕﹕M99;(0級)宏程序(1級)宏程序(2級)宏程序(31級)宏程序(4級)第四十七頁,共七十二頁。48例:如圖所示,編制一個(gè)宏(Hong)程序加工圓上的孔,孔深為Z。圓周的半徑為I,起始角為A,間隔為B,鉆孔數(shù)為H,圓的中心是(X,Y)。(X,Y)1000BBBB50YX第四十八頁,共七十二頁。49調(diào)用格式:

G65P9100XxYyZzRrIiAaBbHh;X:圓心的X坐(Zuo)標(biāo)(#24)Y:圓心的Y坐標(biāo)(#25)Z:孔深(#26)R:快速趨近點(diǎn)坐標(biāo)(#18)F:切削進(jìn)給速度(#9)I:圓半徑(#4)A:第一孔的角度(#1)B:增量角(指定負(fù)值時(shí)為顧時(shí)針)(#2)H:孔數(shù)(#11)第四十九頁,共七十二頁。50主(Zhu)程序:O002;G90G92X0Y0Z100;G65P9100X100Y50R30Z-50F500I100A0B45H5;M30;第五十頁,共七十二頁。51宏(Hong)程序:

O9100;

#3=#4003;儲(chǔ)存03組G代碼

G81Z#26R#18F#9K0;鉆孔循環(huán),也可以使用L0IF[#3EQ90]GOTO1;在G90方式轉(zhuǎn)移到N1#24=#5001+#24;計(jì)算圓心的X坐標(biāo)

#25=#5002+#25;計(jì)算圓心的Y坐標(biāo)

N1WHILE[#11GT0]DO1;直到剩余孔數(shù)為0#5=#24+#4COS[#1];計(jì)算X軸上的孔位

#6=#25+#4SIN[#1];計(jì)算Y軸上的孔位

G90X#5Y#6;移動(dòng)到目標(biāo)位置之后執(zhí)行鉆孔

#1=#1+#2;更新角度

#11=#11-1;孔數(shù)-1END1;

G#3G80;返回原始狀態(tài)的G代碼

M99;第五十一頁,共七十二頁。522、模態(tài)調(diào)用(G66)格式:G66PpLl<自變量指定>

其中:p:要調(diào)用的程序號

l:重復(fù)次數(shù)(Shu)(默認(rèn)值為1)自變量:數(shù)據(jù)傳遞到宏程序

G67取消模態(tài)調(diào)用。注:嵌套可以4級;在G66程序段中,不能調(diào)用多個(gè)宏程序在只有輔助功能無移動(dòng)指令的程序段中不能調(diào)用宏程序;局部變量只能在G66程序段中指定,每次執(zhí)行模態(tài)調(diào)用時(shí),不再指定局部變量。第五十二頁,共七十二頁。53O0001;﹕G66P9100L2A1.0B2.0;G00G90X100.0;Y200.0X150Y300;G67;﹕M30;O9100;﹕G00Z-#1;G01Z-#2F300;﹕﹕M99;第五十三頁,共七十二頁。54例:用宏程序編制G81固(Gu)定循環(huán)的操作第1步第2步第3步第4步Z=0R點(diǎn)ZR初始平面I點(diǎn)第五十四頁,共七十二頁。55G65P9110XxYyZzRrFfL1X:孔的X坐標(biāo)(由絕對值指定)(#24)Y:孔的Y坐標(biāo)(由絕對值指定)(#25)Z:Z點(diǎn)坐標(biāo)(由絕對值指定)(#26)R:R點(diǎn)坐標(biāo)(由絕對值指定)(#18)F:切削進(jìn)給速(Su)度(#9)L:重復(fù)次數(shù)第五十五頁,共七十二頁。56主(Zhu)程序:O001;G92X0Y0Z50;G00G90X100Y50;G66P9110Z-20R1F500;G90X20Y20;X50;Y50;X0Y80;G67;M30;第五十六頁,共七十二頁。57宏程序:O9110;#1=#4001;儲(chǔ)存G00/G01#2=#4003;儲(chǔ)存G90/G91#3=#4019;儲(chǔ)存切削進(jìn)給速度#5=#5003;儲(chǔ)存鉆孔開始的Z坐標(biāo)G00G90Z#18;定位在R點(diǎn)G01Z#26F#9;切削進(jìn)給到Z點(diǎn)IF[4010EQ98]GOTO1;返回(Hui)到I點(diǎn)G00#18;定位在R點(diǎn)GOTO2;N1G00Z#5;定位在I點(diǎn)N2G#1G#2G#3;恢復(fù)模態(tài)信息。M99;第五十七頁,共七十二頁。583、用G代碼調(diào)用宏程序在參數(shù)(Shu)(No.6050到No.6059)中設(shè)置調(diào)用用戶宏程序(O9010到O9019)的G代碼號(從1到9999),調(diào)用方法同G65.

注:不能嵌套!第五十八頁,共七十二頁。59程序號參數(shù)號O9010O9011O9012O9013O9014O9015O9016O9017O9018O90196050605160526053605460556056605760586059參數(shù)號(Hao)和程序號(Hao)之間的對應(yīng)關(guān)系:第五十九頁,共七十二頁。60O0001;﹕G81X10Y20Z-10﹕M30;O9010;﹕﹕M99;參(Can)數(shù)No.6050=81第六十頁,共七十二頁。614、用M代碼調(diào)用宏程序在參數(shù)(No.6080到No.6089)中(Zhong)設(shè)置調(diào)用用戶宏程序(O9021到O9029)的M代碼號(從1到9999),調(diào)用方法同G65.

注:不能嵌套!第六十一頁,共七十二頁。62程序號參數(shù)號O9020O9021O9022O9023O9024O9025O9026O9027O9028O90296080608160826083608460856086608760886089參數(shù)號和程序(Xu)號之間的對應(yīng)關(guān)系:第六十二頁,共七十二頁。63O0001;﹕G50A1B2;﹕M30;O9020;﹕﹕M99;參(Can)數(shù)No.6080=50第六十三頁,共七十二頁。645、用M代(Dai)碼調(diào)用子程序在參數(shù)(No.6071到No.6079)中設(shè)置調(diào)用用戶宏程序(O9001到O9009)的M代碼號(從1到9999),調(diào)用方法同M98.

第六十四頁,共七十二頁。65程序號參數(shù)號O9001O9002O9003O9004O9005O9006O9007O9008

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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

提交評論