謝玉寶
摘 要:FANUC系統宏程序的編制是學習者的一個難點,主要是有變量的存在。掌握變量概念和變量的基本演算方法以及變量的賦值方法非常重要。宏程序分A/B類,手柄A類宏程序、正弦曲線B類宏程序、橢圓B類直角坐標宏程序分別實例講解,學習者可根據實際機床新舊程度以及編程難易程度掌握自己的編程方法。
關鍵詞:FANUC系統;數控車床;宏程序;橢圓;雙曲線
中圖分類號:TG519.1 文獻標志碼:A 文章編號:2095-2945(2018)09-0192-03
Abstract: The programming of macro programs in FANUC system is a difficult point for learners, mainly because of the existence of variables. It is very important to master the concept of variables, the basic calculus of variables and the assignment methods of variables. Macro program is divided into A/B types, handle A macro program, sine curve B macro program and elliptical B rectangular coordinate macro program. Learners can master their own programming methods according to the new and old degrees of actual machine tools and the degree of difficulty in programming.
Keywords: FANUC system; CNC lathe; macro program; ellipse; hyperbola
1 基礎知識
在程序編制過程中,我們對含有變量的程序稱之為用戶宏程序。如果在主程序中調用了用戶宏程序的指令,稱之為用戶宏程序指令。使用代碼G65表示。
用戶宏程序一般分為A、B兩種類型。一般情況下,FANUC-0TD系統會采用A類宏程序編程,而FANUC-0i系統則采用B類宏程序編程。
2 程序編制
2.1 手柄A類型宏程序編程
編程編制說明:
如圖1手柄圖所示,橢圓的方程為X2/12.52+(Z+25)2/252=1,該橢圓方程式的另一種表達式為“X=12.5sinα,Z=25cosα-25”,即使用極坐標方式表示零件輪廓上的點的坐標。橢圓上各點坐標分別是(X12.5sinα,Z25cosα-25),點的坐標值隨著角度的變化而發生變化,“α”稱為自變量,而坐標“X”和“Z”是應變量。我們規定每次角度的增量為0.1°。
注意:使用極坐標編寫該橢圓加工程序時,應注意編程點處的極角不等于圖樣上已知的平面角146.3°,需經換算后得到該點的極角為126.86°才能使用。
#100:為該橢圓X向短半軸A的長度。
#101:為該橢圓Z向長半軸B的長度。
#102:橢圓上的各點對應的角度α。
#103:賦值A sinα。
#104:賦值B sinα。
#105:橢圓輪廓上的點在坐標系中的X坐標值。
#106:橢圓輪廓上的點在坐標系中的Z坐標值。
零件參考程序:
O0001;(主程序)
N10 G98 G40 G21 F100; 程序開始部分
N20 T0101; 換刀
N30 M03 S1300; 主軸啟動,轉速為1300 rpm
N40 G00 X0.0 Z5.0; 起刀點定位
N50 M98 P0002; 宏程序調用
N60 G02 X20,0 Z-70.0 R40.0; 圓弧加工
N70 G01 Z-85.0;
N80 G00 X100.0 Z100.0; 返回參考點
N90 M30; 程序結束
Q0002;(宏程序)
N10 G65 H01 P#100 Q12500; 給半軸A賦值 A=12.5
N20 G65 H01 P#101 Q25000; 給半軸B賦值 B=25
N30 G65 H01 P#102 Q0; 給角度α賦值 α=0°
N40 G65 H31 P#103 Q#100 R#102; #103=#100sin [#102]
N50 G65 H32 P#104 Q#101 R#102; #104=#101cos[#102]
N60 G65 H04 P#105 Q#103 R2; 給X坐標賦變量值 #105=2#103
N70 G65 H03 P#106 Q#104 R25000; 給Z坐標賦變量值 #106=#104-25.0
N80 G01 X#105 Z#106 F100; 使用直線擬合
N90 G65 H02 P#102 Q#102 R100; 設定角度增量值為0.1°
N100 G65H86 P40 Q#102 R126.860; 條件判斷語句,限定極角α小于或等于126.86°
N110 M99; 返回主程序
2.2 正弦曲線B類宏程序編程
編程編制說明:
如圖2曲線輪,這個零件的正弦曲線是由兩個循環周期構成,角度和為720°級從-630°到90°結束。現在,沿Z軸方向將該正弦線分為1000條線段,每條線線段直線在Z軸方向的間距設定為0.04mm,那么對應其正弦線的角度增加720°/1000。根據計算公式,得出該正弦曲線上每一段線上終點的X軸的坐標值為X=34+6sinα。
#100為在局部坐標系編程中的X坐標變量賦值,
#101為正弦線角度的變量賦值,
#102為零件輪廓正弦線上各點x坐標賦值,
#103為零件輪廓正弦線上各點z坐標賦值。
零件的參考程序:
主程序示例:
O0001;
N10 G98 G40 G21 F200; 程序開始部分
N20 T0101; 使用1號刀具1號補償
N30 M03 S800; 啟動主軸,轉速為800 rpm
N40 G00 X42.0 Z-13.0; 起刀點定位
N50 #100=10.0; 給局部坐標系X變量賦值
N60 G52 X#100 Z0; 程序中局部坐標系設定
N70 M98 P0002; 用M98調用宏程序指令
N80 #100=#100-2.0; 設定每次直徑方向切削深度2mm
N90 IF[#100 GE 0] GOTO 200; 為條件判斷語句,大于等于就轉到N200
N100 G00 X100.0 Z 100.0; 返回參考點
N110 M30; 程序結束
子程序示例:
O0002;
N10 G01 X40.0 Z -15.0; 首先是直線段加工
N20 Z-20.0; 繼續直線段加工部分
N30 #101=90.0; 給正弦線的角度賦值(初值)
N40 #103=-20. 給正弦線的Z坐標賦值
N50 #102=34+6*SIN[#101]; 正弦線的X坐標值
N60 G01 X#102 Z#103 F100;使用直線插補指令擬合加工正弦線
N70 #101=#101-0.72; 設定的角度增量值為-0.72°
N80 #103=#103-0.04; 設定長軸Z坐標的增量值為-0.04mm
N90 IF [#101 GE -630.0] GOTO 300 條件判斷語句,大于或者等于
N100 G01 X40,0 Z-67.0; 加工直線部分線段
N110 X42.0; 繼續加工直線部分線段
N120 G00 Z-13.0; 刀具退出
N130 M99 子程序結束并返回到主程序
2.3 橢圓B類直角坐標指令宏程序編程方法
O0001;
N10 M03 S700; 主軸正轉,700r/min
N20 T0101; 1號刀1號補償,粗加工刀具
N30 G00 X51.0 Z2.0; 定位至循環起點
N40 G73 U25.0 R16; 退刀量與粗加工次數
N50 G73 P60 Q140 U0.5 W0.1 F0.2 循環起始與終止程序段號與加工余量及進給量
N60 G00 X0; 輪廓加工起始點
N70 G01 Z0 F0.1;
N80 #1=40.0; 將橢圓長軸設為自變量,賦初值為40
N90 WHILE [#1 GE 0] DO1; 判斷句,當#1≥0順序執行,否則跳至END1下面語句
N100 #2=24.0*SQRT[40.0*40.0-#1*#1]; 參數方程中橢圓X方向短軸值
N110 G01 X[2*#2] Z[#1-40.0] F0.1; 加工橢圓
N120 #1=#1-0.1; 自變量橢圓長軸每次增量為-0.1
N130 END1;
N140 G01 X51.0; 輪廓加工結束,提刀
N150 G00 X200.0 Z200.0; 退刀
N160 T0202; 2號刀2號補償,精加工刀具
N170 G42 G00 X51.0 Z2.0; 刀尖圓弧右補償,定位至循環起點
N180 G70 P60 Q140 S1200; 輪廓精加工,提升轉速1200r/min
N190 G40 G00 X200.0 Z200.0; 取消刀補,退刀
N200 M30; 程序結束,并返回至開頭位置
3 結束語
在使用宏程序編制零件加工程序過程中,由于允許使用變量賦值、算數、邏輯等運算以及使用條件轉換轉移等,從而使編制程序變得方便和簡單,但是學習起來比較抽象,很難學好并吃透。尤其是使用G65變量賦值在編制A類宏程序過程中非常容易出錯。所以,建議使用M98調用指令,使用G73指令,在直角坐標系或極坐標系中編制程序。
參考文獻:
[1]孫建東,袁鋒.數控機床加工技術[M].高等教育出版社,2004.
[2]唐英謙,羅萬達,等.數控加工工藝學[M].中國勞動社會保障出版社,2012.
[3]FANUC Seris 0i Mate-TC操作說明書[Z].北京發那科機電有限公司.
[4]曲海霞,董玉杰.數控車床Fanuc系統編程加工軸類零件[J].河南科技,2016(23):76-77.
[5]李金龍,孫永超.FANUC系統配置LCD手持單元在數控車床的應用[J].齊齊哈爾大學學報(自然科學版),2012,28(04):20.
[6]李紅,劉明璽.西門子系統數控車床橢圓曲線回轉曲面加工參數化編程探索[J].現代制造技術與裝備,2016(05):43-44.
[7]高繼江.FANUC系統數控車床故障維修四例[J].電世界,2009,50(03):34-35.