FANUC宏程序編程方法,教你如何進行刀具補償

@ 2016-05-06

FANUC宏程序編程方法,教你如何進行刀具補償

宏程序作為數控編程的一種方法,具有編程簡單、修改方便及程序量小等優點。宏程序分為A類和B類,在一些較老的FANUC系統中採用A類宏程序,現在較先進的系統中則採用B類宏程序。B類宏程序是使用變量進行編程的,變量分為局部變量(#1~#33)、公共變量(#100~#149、#500~#549)和系統變量(#1000~)。對於局部變量和公共變量的使用,經過短期的學習很容易掌握,而系統變量一般不會輕易地使用和更改,但是如果能夠掌握好,使用系統變量可以實現一些特殊的功能。

在加工時,當刀具發生磨損需要改變磨損值時,為了及時提醒操作者進行換刀以及防止操作者更改錯誤,可以通過在程序中的設定,使刀具半徑補償的磨損量控制在一定的範圍,超出這個範圍時程序就會產生報警而無法執行程序。

用系統變量可以讀寫刀具補償值,通過對系統變量賦值,可以設定刀具補償值範圍。在FANUC0i系統中,刀具補償分為幾何補償和磨損補償,刀具補償號可達400個。當補償號小於等於200時,刀具長度補償也可以使用#2001~#2400,補償號與刀具長度補償值(H)和刀具半徑補償值(D )的對應關係如附表所示。

下面以刀具半徑磨損補償系統變量為例進行說明。當加工某個零件的輪廓時,如果想要將刀具補償的磨損值控制在-0.2~0mm的範圍內,通過編程設定可以對該刀具的磨損值進行判斷,如果磨損值在-0.2~0mm範圍內繼續執行程序,超出範圍則工具機報警,顯示報警信息。假設使用1號刀具T1,刀具半徑補償號為1,它所對應的刀具半徑磨損補償系統變量號為#12001。具體程序如下:

O1200

N10 T1 M6

N20 G90 G54 G00 G40 Z100.

N30 S2000 M03

N40 G43 H5 Z30. M08

N50 G00 X__ Y__ (刀具到達下刀位置)

N60 G00 Z-5.0

N70 #1=#12001 (將補償號1的磨損補償值賦值給#1)

N80 IF[#1 LE -0.2] GOTO 110

(判斷#12001的值,如果≤-0.2,轉到程序段110)

N90 IF[#1 GE 0.0] GOTO 110 (判斷#12001的值,如果≥0,轉到程序段110)

N100 GOTO 120

N110 #3000=80 (range error)

(顯示報警號為3080,內容為range error的報警信息)

N120 G01 G41 X__ Y__ D1 F200

N200 G01G40 X__ Y__ (N120~N200 輪廓軌跡程序略)

N210 Z100.

N220 M05

N230 M30

當刀具較多時的編程方法(以兩把刀具為例):

O1000

T5 M6

G90 G54 G0 G40.

S2000 M03

G43 H5 Z100. M08

G00 X__ Y__ (刀具到達下刀位置)

Z2.

G0 Z-5. F1000

#30=5 (等於刀具號數)

M98 P10

G01 G41 X__ Y__ D5F200

G01G40 X__ Y__

G0 Z100.

T6 M6

G90 G54 G0 G40 X-60. Y-60.

S2000 M03

G43 H6 Z100. M08

#30=6 (等於刀具號數)

M98 P10

G01 G41 X__ Y__ D6F200

M05

M30

%

O10

#1=12000

#2=#[#1+#30] (確定刀具半徑磨損補償系統變量號)

IF[#2 LE -0.2] GOTO 60 (判斷#2的值,如果≤-0.2,轉到程序段60)

IF[#2 GE 0.0] GOTO 60 (判斷#2的值,如果≥0,轉到程序段60)

GOTO 70

N60 #3000=80(range error)

N70 M99

同理,也可以像上述一樣控制刀具長度補償值。

採用該方法的好處有以下兩個方面:

①可以避免修改磨損值時的誤操作。現在很多企業工具機編程和工具機操作人員是分開的,不允許操作者修改程序,但可以修改刀具磨損補償值,當刀具磨損或工件尺寸變化需要修改刀具磨損補償值時,為了防止操作者在修改刀具磨損補償值時輸入錯誤,造成工件的報廢和刀具的損壞,可以將磨損值限定在一定的範圍內,如果超出範圍程序會停止執行並產生報警信息。

②可以保證工件的尺寸精度和表面粗糙度值,當刀具的切削刃磨損到一定程度,就需要更換刀具。也就是補償值達到一定值時,產生報警,從而提醒或強制操作者更換刀具,避免操作者一味地去改變刀具磨損補償值。


相关文章