徐州重型機械有限公司 (江蘇 221004) 李 云
近年來,隨著配置FANUC數(shù)控系統(tǒng)的機床在各行業(yè)的應用,用宏程序編程加工工件,已經(jīng)逐漸成為金屬切削加工行業(yè)的主潮流,運用宏程序編程不但能夠簡化程序,對于用戶擴展系統(tǒng)功能和掌握機床性能也有很大的幫助。
(1)變量的類型 具體如表1所示。
表 1
(2)轉移和循環(huán) 無條件循環(huán)(G O T O語句):轉移到標有順序號n的程序段。GOTO n;n:順序號(1~99999)。條件轉移(IF語句):IF(條件表達式)GOTOn,如果指定條件表達式滿足,轉移到標有順序號n的程序段;如果指定的條件表達式不滿足,執(zhí)行下個程序段。 IF[條件表達式]THEN。 如果條件表達式滿足,執(zhí)行預先定義的宏程序語句,而且只執(zhí)行一個宏程序語句。循環(huán)(WHILE),在WHILE后指定一個條件表達式,當指定條件滿足時,執(zhí)行從DO到END之間的程序。否則,轉移到END后的程序段。
(3)程序的調用 宏程序的調用有以下這幾種方法:①非模態(tài)調用G65。②模態(tài)調用(G66 G67)。③用G代碼調用宏程序。④用M代碼調用宏程序。⑤用M代碼調用子程序。⑥用T代碼調用子程序。本文中主要用到非模態(tài)調用G65和用M代碼調用宏程序兩種調用方法。當用G65調用時其格式如下:
G65 P〈p〉L〈I〉 〈自變量賦值〉
〈p〉: 要調用的程序號
〈I〉:重復次數(shù)(默認為1)
〈自變量賦值〉: 傳遞到宏程序的數(shù)據(jù)
使用G65調用時可以對變量賦值,其值被賦值給宏程序中相應的局部變量使用M98調用時,不能在調用中賦值,只能在程序中賦值。
筆者公司使用臥式雙面鏜銑加工中心來進行汽車起重機伸臂的機械加工。由于公司起重機產(chǎn)品型號較多,需要針對不同的工件編程(見圖1)。計算程序里的Z坐標時,需要考慮鏜桿(W軸)的伸出長度以及刀具的長度,這樣編程會比較繁瑣,而且容易出錯。調用下面的這條程序會使編程更加方便,直接按圖中的尺寸輸入程序里的Z軸坐標即可,不需要考慮鏜桿的長度,這樣就節(jié)省了編程的時間。
(1)設備 臥式雙面鏜銑加工中心 (帶有500mm長的鏜桿)。系統(tǒng):FANUC 16i Mate B 數(shù)控系統(tǒng)。相關參數(shù):Z軸行程350mm,W軸行程500mm。廠家/型號: 日本三菱重工/ M-HT13F。
宏程序主體:
O9010(Z/W WORK-OFFSET CHANGE)
IF [#23 GT 0]GOTO 99
IF [#23 LT -500]GOTO 99
IF [#23 EQ #0 ]THEN #3=#4014
IF [#3 LT 54 ]GOTO 99
IF [#3 GT 59 ]GOTO 99
#33=#3
#32=#33-54
#31=#32*20
#30=#4001
#29=#4003
#28=#[5223+#31]+#[5224+#31]
#27=#28-#23
#[5223+#31]=#27
#[5224+#31]=#23
G04 X0.1
G90 G00 G#3 W0
G#30 G#29
GOTO 100
N99 #3000=199(DATA INPUT MISS)
N100
M99
操作工只需在程序中調用 G65 P9010 C_ W_ 就可以較方便地完成編程。
(2)應用實例 加工圖1所示的某汽車起重機伸臂,加工部位材質為27SiMn,刀具為sandvik coromant R290mm面銑刀φ63mm,刀具長度儲存在地址H1里面,程序原點的位置如圖2所示,寄存在G54工件坐標系中。考慮該工件加工時的工況,以及Z軸滑枕的行程(避免超行程報警),鏜桿需要懸伸210mm。
圖1
工件加工程序:
O0100
T1 M06 (φ63mm面銑刀換刀)
G0 G54 X0 Y0 Z0 W0
G65 P9010 C54 W-210
G0 G54 W0
N10 G43 Z305.75 H1
M03 S600
M07
G01 X38.5 F200
G02 I-38.5 J0 (銑面)
GO G49 Z700
M05
M09
T2 M06 (φ97.6mm粗鏜刀換刀)
G0 G54 X0 Y0 Z0 W0
G65 P9010 C54 W-210
G0 G54 W0
N10 G43 Z505.75 H1
M03 S600
M07
G98 G85 X0 Y0 Z202.75 R5 F100 (鏜孔)
G80 G49 Z700
M05
M09
M00
(1)設備 立式動梁龍門加工中心。系統(tǒng):FANUC 16i Mate B 數(shù)控系統(tǒng)。
下面這段宏程序可以補償機床四個附件銑頭的水平、垂直方向的長度,操作工每次切換完附件銑頭之后,只需要調用一下O9020程序,就能實現(xiàn)工件的精密加工。經(jīng)機床廠商精確測量之后,加長立銑頭相對標準立銑頭多出來的長度(即圖2所示尺寸A),被寄存在公共變量#705中,并設置加長立銑頭代碼為M33,標準立銑頭代碼為M31,直角銑頭代碼為M32,窄直角銑頭代碼為M34。這段程序將各附件銑頭的長度差值寄存在EXT偏置坐標系中, 因此程序里調用完M100指令后,編程要注意W軸(橫梁)回零點。
圖2
宏程序主體:
O9020(M100 H**)
#126=#618
#130=10000
#131=11000
#132=#[#130+#11]+#[#131+#11]
IF[#610EQ34]GOTO99 (#610指附件銑頭的代碼)
IF[#610EQ31]GOTO31
IF[#610EQ33]GOTO33
#135=#132+#702
#136=#135*COS[#129]
#137=#135*SIN[#129]
G90 G10 L2 P0 X#136 y#137 Z0 W#703
GOTO 99
N31 G90 G10 L2 P0 X0 Y0 Z0 W#701
GOTO 99
N33 G90 G10 L2 P0 X0 Y0 Z0 W#705 (可編程參數(shù)輸入指令)
GOTO99
N99 M99
(2) M100的制定 按下[O F S/S E]—設定[SETTING]數(shù)據(jù)可輸入改為1
[SYSTEM]—[參數(shù)]—No:3202 NE9=0 使O9000后程序可讀寫,將O9020存入機床。
恢復NE9=1程序讀寫保護。
查找No:6080輸入100保存,利用宏程序M代碼調用宏程序。
FANUC數(shù)控系統(tǒng)提供給用戶的宏程序,為編程提供了便利,機床的一些基本功能例如換刀、切換附件頭也是用宏程序編程完成的。了解這些參數(shù)以及可編程參數(shù)輸入的方法,能起到簡化編程的作用。尤其對于擴展系統(tǒng)功能,有十分重要的作用。對用戶深入掌握FANUC數(shù)控系統(tǒng),也有很大的幫助。