第一篇:數(shù)控銑床橢圓形加工宏程序的編程實例
數(shù)控銑床橢圓形加工宏程序的編程實例
實際應(yīng)用中經(jīng)常會遇到各種各樣的橢圓形加工特征。在現(xiàn)今的數(shù)控系統(tǒng)中,無論硬件數(shù)控系統(tǒng),還是軟件數(shù)控系統(tǒng),其插補的基本原理是相同的,只是實現(xiàn)插補運算的方法有所區(qū)別。常見的是直線插補和圓弧插補,沒有橢圓插補,手工常規(guī)編程無法編制出橢圓加工程序,常需要用電腦逐一編程,但這有時受設(shè)備和條件的限制。這時可以采用擬合計算,用宏程序方式,手工編程即可實現(xiàn),簡捷高效,并且不受條件的限制。加工橢圓形的半球曲面,刀具為R8的球銑刀。利用橢圓的參數(shù)方程和圓的參數(shù)方程來編寫宏程序。
橢圓的參數(shù)方程為:X=A*COS&;
其中,A為橢圓的長軸,B為橢圓的短軸。
編制參考宏程序如下:
%00518
#1=0
#2=20
#3=30
#4=1
#5=90
WHILE #5 GE #1 DO1
#6=#3*COS[#5*PI/180]+4
#7=#2*SIN[#5*PI/180]
G01X[#6]F800
Z[#7]
#8=360
#9=0
WHILE #9 LE #8 DO2
#10=#6*COS[#9*PI/180]
#11=#6*SIN[#9*pi/180]*2/3
G01X[#10]Y[#11]F800
#9=#9+1(計數(shù)器)
END1
#5=#5-#4(計數(shù)器)
END2
M99
Y=B*COS&;
第二篇:數(shù)控銑床宏程序編程 經(jīng)典
變量
普通加工程序直接用數(shù)值指定G代碼和移動距離;例如,GO1和X100.0。使用用戶宏程序時,數(shù)值可以直接指定或用變量指定。當(dāng)用變量時,變量值可用程序或用MDI面板上的操作改變。#1=#2+100 G01 X#1 F300 說明:
變量的表示
計算機允許使用變量名,用戶宏程序不行。變量用變量符號(#)和后面的變量號指定。例如:#1 表達(dá)式可以用于指定變量號。此時,表達(dá)式必須封閉在括號中。例如:#[#1+#2-12]
變量的類型
變量根據(jù)變量號可以分成四種類型
變量號 變量類型 功能
#0 空變量 該變量總是空,沒有值能賦給該變量.#1-#33 局部變量局部變量只能用在宏程序中存儲數(shù)據(jù),例如,運算結(jié)果.當(dāng)斷電時,局部變量被初始化為空.調(diào)用宏程序時,自變量對局部變量賦值, #100-#199 #500-#999 公共變量公共變量在不同的宏程序中的意義相同.當(dāng)斷電時,變量#100-#199初始化為空.變量#500-#999的數(shù)據(jù)保存,即使斷電也不丟失.#1000 系統(tǒng)變量 系統(tǒng)變量用于讀和寫CNC運行時各種數(shù)據(jù)的變化,例如,刀具的當(dāng)前位置和補償值.變量值的范圍
局部變量和公共變量可以有0值或下面范圍中的值:-1047到-10-29或-10-2到-1047 如果計算結(jié)果超出有效范圍,則發(fā)出P/S報警NO.111.小數(shù)點的省略
當(dāng)在程序中定義變量值時,小數(shù)點可以省略。
例:當(dāng)定義#1=123;變量#1的實際值是123.000。
變量的引用
為在程序中使用變量值,指定后跟變量號的地址。當(dāng)用表達(dá)式指定變量時,要把表達(dá)式放在括號中。
例如:G01X[#1+#2]F#3;被引用變量的值根據(jù)地址的最小設(shè)定單位自動地舍入。例如: 當(dāng)G00X#/;以1/1000mm的單位執(zhí)行時,CNC把123456賦值給變量#1,實際指令值為G00X12346.改變引用變量的值的符號,要把負(fù)號(-)放在#的前面。例如:G00X-#1 當(dāng)引用未定義的變量時,變量及地址都被忽略。
例如:當(dāng)變量#1的值是0,并且變量#2的值是空時,G00X#1 Y#2的執(zhí)行結(jié)果為G00X0。
雙軌跡(雙軌跡控制)的公共變量
對雙軌跡控制,系統(tǒng)為每一軌跡都提供了單獨的宏變量,但是,根據(jù)參數(shù)N0.6036和6037的設(shè)定,某些公共變量可同時用于兩個軌跡。
未定義的變量
當(dāng)變量值未定義時,這樣的變量成為空變量。變量#0總是空變量。它不能寫,只能讀。
引用
當(dāng)引用一個未定義的變量時,地址本身也被忽略。當(dāng)#1=<空> 當(dāng)#1=0 G90 X100 Y#1 G90 X100 G90 X100 Y#1 G90 X100 Y0
(b)運算
除了用<空>賦值以外,其余情況下<空>與0相同。
當(dāng)#1=<空>時 當(dāng)#1=0時
#2=#1 #2=<空> #2=#1 #2=0
#2=#*5 #2=0 #2=#*5 #2=0
#2=#1+#1 #2=0 #2=#1+#1 #2=0
(c)條件表達(dá)式
EQ和NE中的<空>不同于0。當(dāng)#1=<空>時 當(dāng)#1=0時
#1EQ#0 成立 #1EQ#0 不成立
#1 NE #0 成立 #1 NE #0 不成立
#1 GE #0 成立 #1 GE #0 不成立
#1 GT #0 不成立 #1 GT #0 不成立
限制
程序號,順序號和任選程序段跳轉(zhuǎn)號不能使用變量。例:下面情況不能使用變量: 0#1;
/#2G00X100.0;N#3Y200.0;
二 算術(shù)和邏輯運算
下面表中列出的運算可以在變量中執(zhí)行。運算符右邊的表達(dá)式可包含常量和或由函數(shù)或運算符組成的變量。表達(dá)式中的變量#j和#k可以用常數(shù)賦值。左邊的變量也可以用表達(dá)式賦值。
功能 格式 備注 定義 #i=#j 加法
減法
乘法
除法 #i=#j+#k;
#i=#j-#k;
#i=#j*#k;
#i=#j/#k;正弦
反正弦
余弦
反余弦
正切
反正切 #i=sin[#j;
#i=asin[#j];
#i=cos[#j];
#i=acos[#j];
#i=tan[#j]
#i=atan[#j]/[#k] 角度以度指定,90o30'表示為90.5度。平方根
絕對值
舍入
上取整
下取整
自然對數(shù)
指數(shù)函數(shù) #i=SQRT[#j];
#i=ABS[#j];
#i=ROUNG[#j];
#i=FIX[#j];#i=FUP[#j];
#i=LN[#j];
#i=EXP[#j];或
異或
與
#i=#jOR#k;
#i=#jXOR#k;
#i=#jAND#k;邏輯運算一位一位地按二進(jìn)制數(shù)執(zhí)行。從BCD轉(zhuǎn)為BIN
從BIN轉(zhuǎn)為BCD #i=BIN[#j];
#i=BCD[#j];用于與PMC的信號交換。
說明:
角度單位
函數(shù)SIN ,COS,ASIN,ACOS,TAN和ATAN的角度單位是度。如90°30’表示為90.5度。ARCSIN # i= ASIN[#j](1)取值范圍如下:
當(dāng)參數(shù)(NO.6004#0)NAT位設(shè)為0時,270°~90° 當(dāng)參數(shù)(NO.6004#0)NAT位設(shè)為1時,-90°~90°
(2)當(dāng)#j超出-1到1的范圍時,發(fā)出P/S報警NO.111.(3)常數(shù)可替代變量#j
ARCCOS #i=ACOS[#j] 取值范圍從180°~0° 當(dāng)#j超出-1到1的范圍時,發(fā)出P/S報警NO.111.常數(shù)可替代變量#j
三 程序舉例
銑橢圓:
軌跡:
橢圓程序代碼如下:
N10 G54 G90 G0 S1500 M03 N12 X0 Y0 Z20.N14 G0 Z1 N16 G1 Z-5.F150.N18 G41 D1 N20 #1=0 N22 #2=34 N24 #3=24 N26 #4=#2*COS[#1] N28 #5=#3*SIN[#1] N30 #10=#4*COS[45]-#5*SIN[45] N32 #11=#4*SIN[45]+#5*COS[45] N34 G1 X#10 Y#11 N36 #1=#1+1 N38 IF [#1 LT 370] GOTO26 N40 G40 G1 X0 Y0 N42 G0 Z100 N44 M30
銑矩形槽:
銑矩形槽代碼如下: #102=0.N3#100=0.#101=0.#103=200.#104=400.G91G28Z0.G0G90G54X0.Y0.G43H1Z20.M3S2000.N4G0X#100Y#101 G01Z#102F200.#102=#102-2.IF[#102EQ-50.]GOTO1 GOTO2 N2 N4X#104F500.Y#103 X#100 Y#101 #100=#100+10.#101=#101+10.#103=#103-10.#104=#104-10.IF[#100EQ100.]GOTO3 GOTO4 N3 N1 M5 M9 G91G28Z0.G28Y0.M30
銑傾斜3度的面:
軌跡:
銑傾斜3度的面的代碼如下: O0001 #[#1+1*2]=1 G65P9012L1A0B0.1C4I100J3K0 M30
宏程序O9012代碼如下: G54 G90 G00 X[#3] Y0 Z100 S500 M3 G01 Z0 F300 WHILE[#1LE10]DO1 #7= #1/TAN[#5]+#3 G1Z-#1 X#7 #8=#6/2-ROUND[#6/2] IF[#8EQ0]GOTO10 G1Y0 GOTO20 N10 Y#4 N20#1=#1+#2 #6=#6+1 END1 G0 Z100
銑半球:
軌跡:
銑半球代碼如下:
G90G0G54X-10.Y0M3S4500 G43Z50.H1M8 #1=0.5 WHILE[#1LE50.]DO1 #2=50.-#1 #3=SQRT[2500.-[#2*#2]] G1Z-#1F20 X-#3F500 G2I#3 #1=#1+0.5 END1 G0Z50.M5 M30
銑喇叭:
銑喇叭代碼如下: M03 S500 M06 T01 #1=0 #2=0 G0 Z15 X150 Y0 N11 #2=30*SIN[#1] #3=30+30*[1-COS[#1]] G01 Z-#2 F40 G41 X#3 D01 G03 I-#3 G40 G01 X150 Y0 #1=#1+1 IF [#1 LE 90] GOTO 11 G0 Z30 M30
第三篇:數(shù)控銑床加工編程,作業(yè)一含答案
數(shù)控加工編程與操作作業(yè)
學(xué)號:姓名:班級:
作業(yè)一數(shù)控銑削加工工藝習(xí)題
一判斷題
1.在臥式銑床上加工表面有硬皮的毛坯零件時,應(yīng)采用逆銑切削。()
2.執(zhí)行程序銑削工件前,宜依程序內(nèi)容將刀具移至適當(dāng)位置。()
3.銑削速度=π×銑刀直徑×每分鐘回轉(zhuǎn)數(shù)。()
4.較硬工件宜以低速銑削。()
5.銑削中發(fā)生緊急狀況時,必須先按緊急停止開關(guān)。()
6.在可能情況下,銑削平面宜盡量采用較大直徑銑刀。()
7.T槽銑刀在銑削時,只有圓外圍的刃口與工件接觸。()
8.銑刀材質(zhì)一般常用高速鋼或碳鋼。()
9.順銑削是銑刀回轉(zhuǎn)方向和工件移動方向相同。()
10.切削液之主要目的為冷卻與潤滑。()
11.精銑削時,在不考慮螺桿背隙情況下,順銑削法較不易產(chǎn)生振動。()
12.銑刀壽命與每刃進(jìn)給量無關(guān)。()
13.逆銑削法較易得到良好的加工表面。()
14.銑刀的材質(zhì)優(yōu)劣是影響銑削效率的主要因素之一。()
15.銑削中產(chǎn)生振動,其可能原因為虎鉗或工件未固定好。()
16.選用面銑刀的切削條件時,必須考慮工件的材質(zhì)及硬度。()
17.欲得較佳的加工表面時,宜選用刃數(shù)多的銑刀。()
18.銑削平面如有異常振動時,減少進(jìn)給量可以改善。()
19.粗銑一般采用逆銑削為佳。()
20.銑床上鉆小孔宜先鉆中心孔為佳。()
21.向下銑削亦稱順銑,是指銑刀的回轉(zhuǎn)方向與床臺移動方向相反。()
22.在長方體工件上銑削T槽時,可用T槽銑刀直接銑切。()
23.工作圖注明25±0.02㎜ 之孔則鉆頭選用ψ25。()
二填空題
1.銑削過程中所選用的切削用量稱為銑削用量,銑削用量包括銑削寬度、銑削深
度、、進(jìn)給量。
2.粗銑平面時,因加工表面質(zhì)量不均,選擇銑刀時直徑要一些。精銑時,銑刀
直徑要,最好能包容加工面寬度。
3.在數(shù)控銑床上加工整圓時,為避免工件表面產(chǎn)生刀痕,刀具從起始點沿圓弧表面的進(jìn)入,進(jìn)行圓弧銑削加工;整圓加工完畢退刀時,順著圓弧表面的退出。
4.銑削平面輪廓曲線工件時,銑刀半徑應(yīng)工件輪廓的凹圓半徑。
5.走刀路線是指加工過程中,相對于工件的運動軌跡和方向。
三選擇題
1.數(shù)控銑床能夠()
(A)車削工件(B)磨削工件(C)刨削工件(D)銑、鉆工件
2.周銑時用()方式進(jìn)行銑削,銑刀的耐用度較高,獲得加工面的表面粗糙度值也較小。
(A)對稱銑(B)逆銑(C)順銑(D)立銑
3.粗銑時選擇切削用量應(yīng)先選擇較大的(),這樣才能提高效率。
(A)F(B)ap;(C)V(D)F和V
4.下列敘述中,除()外,均適于在數(shù)控銑床上進(jìn)行加工。
(A)輪廓形狀特別復(fù)雜或難于控制尺寸的零件(B)大批量生產(chǎn)的簡單零件
(C)精度要求高的零件(D)小批量多品種的零件
5.精細(xì)平面時,宜選用的加工條件為()。
(A)較大切削速度與較大進(jìn)給速度(B)較大切削速度與較小進(jìn)給速度
(C)較小切削速度與較大進(jìn)給速度(D)較小切削速度與較小進(jìn)給速度
6.銑削寬度為100mm之平面切除效率較高的銑刀為()。
(A)面銑刀(B)槽銑刀(C)端銑刀(D)側(cè)銑刀
7.以直徑12mm的端銑刀銑削5mm深的孔,結(jié)果孔徑為12.55mm,其主要原因是
(A)工件松動(B)刀具松動
(C)虎鉗松動(D)刀具夾頭的中心偏置。
8.精銑的進(jìn)給率應(yīng)比粗銑()。
(A)大(B)?。–)不變(D)無關(guān)
9.在銑削鑄鐵等脆性金屬時,一般()。
(A)加以冷卻為主的切削液(B)加以潤滑為主的切削液
(C)不加切削液
10.數(shù)控銑床上進(jìn)行手動換刀時最主要的注意事項是()。
(A)對準(zhǔn)鍵槽(B)檫干凈連接錐柄
(C)調(diào)整好拉釘(D)不要拿錯刀具
四、問答題
數(shù)控銑床由哪些部分組成?數(shù)控裝置的作用是什么?
2)。(答案:
一 判斷題
1、×
2、√
3、√
4、×
5、√
6、√
7、×
8、√
9、√
10、√
11、√
12、√
13、√
14、×
15、√
16、×
17、×
18、√
19、√20、√
21、√
22、√
23、×
24、×
25、√
26、√
27、√
28、×
29、×30、√
31、√
32、√
33、√
34、√
35、√
36、√
37、×
38、×
39、×40、√
41、√
42、√
43、√
44、×
45、×
46、√
47、×
48、√
49、×50、×
二 填空題
1、銑削速度
2、機械夾固式
3、乳化液
4、固定
5、小、大
6、切線方向、切線方向
7、小于、最小
8、刀具刀位點
三 選擇題
1、D
2、B
3、A
4、A
5、A
6、B
7、B
8、B
9、B
10、B
11、A
12、B
13、B
14、B
15、A
16、C
17、B
四 問答題
1、答:應(yīng)采取如下改善措施:
選擇合適的、切削性能好的刀具材料;
選擇合理的銑刀幾何參數(shù);
采用合適的切削液;
(4)選擇合理的銑削用量。對一些塑性變形大、熱強度高的冷硬程度嚴(yán)重的材料,盡可能采用順銑。端銑也盡量采用不對稱順銑。
2、答:數(shù)控銑床一般由控制介質(zhì)、數(shù)控裝置、伺服系統(tǒng)、機床本體四部分組成。數(shù)控裝置的作用是把控制介質(zhì)、數(shù)控裝置、伺服系統(tǒng)、機床本體四部分組成。數(shù)控裝置的作用是把控制介質(zhì)存儲的代碼通過輸入和讀帶,轉(zhuǎn)換成代碼信息,用來控制運算器和輸出裝置,由輸出裝置輸出放大的脈沖來驅(qū)動伺服系統(tǒng),使機床按規(guī)定要求運行。
3、答:進(jìn)給路線的確定與工件表面狀況、要求的零件表面質(zhì)量、機床進(jìn)給機構(gòu)的間隙、刀具耐用度以及零件輪廓形狀等用關(guān)。
4、答:圖樣分析主要內(nèi)容有:數(shù)控銑削加工內(nèi)容的選擇、零件結(jié)構(gòu)工藝分析、零件毛坯的工藝性分析、加工方案分析等。
5、答: 應(yīng)遵循一般的工藝原則并結(jié)合數(shù)控銑削的特點認(rèn)真而詳細(xì)地制訂好零件的數(shù)控工藝銑削加工工藝。其主要內(nèi)容有:分析零件圖紙、確定工件在銑床上的裝夾方式、各輪廓曲線和曲面的加工順序、刀具的進(jìn)給路線以及刀具、夾具和切削用量的選擇等。
6、答:數(shù)控銑削加工中進(jìn)給路線對零件的加工精度和表面質(zhì)量有直接的影響,因此,確定好進(jìn)給路線是保證銑削加工精度和表面質(zhì)量的工藝措施之一。進(jìn)給路線的確定與工件表面狀況、要求的零件表面質(zhì)量、機床進(jìn)給機構(gòu)的間隙、刀具耐用度以及零件輪廓形狀有關(guān)。
第四篇:數(shù)控編程--宏程序教案
華中數(shù)控加工中心編程---宏程序
教案
一、組織教學(xué)
檢查學(xué)生出勤情況
二、復(fù)習(xí)提問
1、畫圖,橢圓怎么加工
2、舉例,一個任意形狀的工件,如何在邊上倒圓角
三、相關(guān)專業(yè)理論基礎(chǔ)
1、看、畫圖零件
2、加工工藝分析與編寫數(shù)控加工工藝卡
3、裝夾方法與定位方法的分析
4、華中系統(tǒng)編程規(guī)則
5、刀具的選擇
6、檢驗方法與檢測技巧
三、課題訓(xùn)練思路
采用綜合例題方式,按上述要求逐一分組進(jìn)行,加工前教師進(jìn)行加工講評,對程序驗證后進(jìn)行加工,加工完教師進(jìn)行總結(jié)講評,指出加工過程中的錯誤和不合格項。
四、課題內(nèi)容 用數(shù)控加工中心銑床加工出如下圖所示零件,材料為鋁,毛坯為75*75mm,按圖樣要求完成零件的加工。
五、新授課
如何使加工中心這種高效自動化機床更好地發(fā)揮效益,其關(guān)鍵之一,就是開發(fā)和提高數(shù)控系統(tǒng)的使用性能。宏程序的應(yīng)用,是提高數(shù)控系統(tǒng)使用性能的有效途徑。下面就宏程序的應(yīng)用。
(一)什么是宏程序?
什么是數(shù)控加工宏程序?簡單地說,宏程序是一種具有計算能力和決策能力的數(shù)控程序。宏程序具有如下些特點: 1.使用了變量或表達(dá)式(計算能力),例如:(1)G01X[#3+#5];有表達(dá)式#3+#5(2)G00X4F[#1];有變量#1(3)G01Y[50*SIN[#3]];有函數(shù)運算
2.使用了程序流程控制(決策能力),例如:(1)WHILE有條件循環(huán)命令
(二)用宏程編程有什么好處?
1.宏程序引入了變量和表達(dá)式,還有函數(shù)功能,具有實時動態(tài)計算能力,可以加工非圓曲線,如拋物線、橢圓、雙曲線、三角函數(shù)曲線等; 2.宏程序可以完成圖形一樣,尺寸不同的系列零件加工; 3.宏程序可以完成工藝路徑一樣,位置不同的系列零件加工; 4.宏程序具有一定決策能力,能根據(jù)條件選擇性地執(zhí)行某些部分; 5.使用宏程序能極大地簡化編程,精簡程序。適合于復(fù)雜零件加工的編程。
(三)宏變量及宏常量 1.宏變量
先看一段簡單的程序: G00X25.0 上面的程序在X軸作一個快速定位。其中數(shù)據(jù)25.0是固定的,引入變量后可以寫成: #1=25.0;#1是一個變量 G00X[#1];#1就是一個變量 宏程序中,用“#”號后面緊跟1~4位數(shù)字表示一個變量,如#1,#50,#101,變量有什么用呢?變量可以用來代替程序中的數(shù)據(jù),如尺寸、刀補號、G指令編號變量的使用,給程序的設(shè)計帶來了極大的靈活性。
使用變量前,變量必需帶有正確的值。如 #1=25 G01X[#1];表示G01X25 #1=-10;運行過程中可以隨時改變#1的值 G01X[#1];表示G01X-10 用變量不僅可以表示坐標(biāo),還可以表示G、M、F、D、H、M、X、Y、??等各種代碼后的數(shù)字。如: #2=3 G[#2]X30;表示G03X30 例1使用了變量的宏子程序。%1000#50=20;先給變量賦值 M98P1001;然后調(diào)用子程序 #50=350;重新賦值 M98P1001;再調(diào)用子程序 M30 %1001 G91G01X[#50];同樣一段程序,#50的值不同,X移動的距離就不同 M99 2.局部變量
編號#0~#49的變量是局部變量。局部變量的作用范圍是當(dāng)前程序(在同一個程序號內(nèi))。如果在主程序或不同子程序里,出現(xiàn)了相同名稱(編號)的變量,它們不會相互干擾,值也可以不同。例 %100 N10#3=30;主程序中#3為30 M98P101;進(jìn)入子程序后#3不受影響 #4=#3;#3仍為30,所以#4=30 M30 %101 #4=#3;這里的#3不是主程序中的#3,所以#3=0(沒定義),則:#4=0 #3=18;這里使#3的值為18,不會影響主程序中的#3 M993.全局變量
編號#50~#199的變量是全局變量(注:其中#100~#199也是刀補變量)。全局變量的作用范圍是整個零件程序。不管是主程序還是子程序,只要名稱(編號)相同就是同一個變量,帶有相同的值,在某個地方修改它的值,所有其它地方都受影響。例 %100 N10#50=30;先使#50為30 M98P101;進(jìn)入子程序
#4=#50;#50變?yōu)?8,所以#4=18 M30 %101 #4=#50;#50的值在子程序里也有效,所以#4=30 #50=18;這里使#50=18,然后返回 M99 為什么要把變量分為局部變量和全局變量?如果只有全局變量,由變量名不能重復(fù),就可能造成變量名不夠用;全局變量在任何地方都可以改變它的值,這是它的優(yōu)點,也是它的缺點。說是優(yōu)點,是因為參數(shù)傳遞很方便;說是缺點,是因為當(dāng)一個程序較復(fù)雜的時候,一不小心就可能在某個地用了相同的變量名或者改變了它的值,造成程序混亂。局部變量的使用,解決了同名變量沖突的問題,編寫子程序時,不需要考慮其它地方是否用過某個變量名。什么時候用全局變量?什么時候用局部變量?在一般情況下,你應(yīng)優(yōu)先考慮選用局部變量。局部變量在不同的子程序里,可以重復(fù)使用,不會互相干擾。如果一個數(shù)據(jù)在主程序和
子程序里都要用到,就要考慮用全局變量。用全局變量來保存數(shù)據(jù),可以在不同子程序間傳遞、共享、以及反復(fù)利用。
(四)常量 PI:圓周率π
角度用弧度表示:1°對應(yīng) PI/180弧度
(五)運算符
1、算數(shù)運算符 +-* /
2、條件運算符
EQ(=)NE(≠)GT(>)GE(≥)LT(<)LE(≦)
3、邏輯運算符
AND(與)OR(或)NOT(異或)
(六)函數(shù)
SIN[正弦] COS[余弦] TAN[正切] EXP[指數(shù)] ATAN[反正切] ABS[絕對值] INT[取整] FIX[上取整] FUP[下取整] SQRT[開方]
(六)循環(huán)語句(WHILE語句)(七)宏指令編程
%O0001 #1=20(定義a值)#2=10(定義b值)
#4=5(定義刀具補償半徑R值)#5=0(定義步距角初始值)
G90G54G0X0Y0S1500M3 G43X#1Y#2D01 G01Z-5F30 G01Y0F100 WHILE[#5LE360] G01X[#1*COS[#5*PI/180]]Y-[#2*SIN[#5*PI/180]] #5=#5+2 ENDW GOG40Z100 M30 %
六、結(jié)束語
宏程序是數(shù)控加工必不可少的編程方法,只要我們掌握了宏程序的編程原理,對規(guī)則幾何圖形建立數(shù)學(xué)模型,就能解決實際加工中各種幾何形狀規(guī)則零件的加工和“疑難雜癥”,同時宏程序編制簡單,通用性強,加工效率高,在數(shù)控加工中有著廣泛的應(yīng)用。
第五篇:數(shù)控銑床編程概述
5.1.1數(shù)控編程的定義
為了使數(shù)控機床能根據(jù)零件加工的要求進(jìn)行動作,必須將這些要求以機床數(shù)控系統(tǒng)能識別的指令形式告知數(shù)控系統(tǒng),這種數(shù)控系統(tǒng)可以識別的指令稱為程度,制作程序的過程稱為數(shù)控編程。
數(shù)控編程的過程不僅僅指編寫數(shù)控加工指令代碼的過程,它還包括從零件分析到編寫加工指令代碼,再到制成控制介質(zhì)以及程序校核的全過程。在編程前首先要進(jìn)行零件的加工工藝分析,確定加工藝路線、工藝參數(shù)、刀具的運動軌跡、位移量、切削參數(shù)(切削速度、進(jìn)給量、背吃刀量)以及各項輔助功能(換刀、主軸正反轉(zhuǎn)、切削液開關(guān)等);接著根據(jù)數(shù)控機床規(guī)定的指令代碼及程序格式編寫加工程序單;再把這一程序單中的內(nèi)容記錄在控制介質(zhì)上(如軟盤、移動存儲器、硬盤等),檢查正確無誤后采用手工輸人方式或計算機傳輸方式輸入數(shù)控機床的數(shù)控裝置中,從而指揮機床加工零件。
5.2.1數(shù)控編程的內(nèi)容與步驟
數(shù)控編程步驟如圖5-1所示,主要有以下幾個方面的內(nèi)容:
(a)分析圖樣 包括零件輪廓分析,零件尺寸精度、形位精度、表面粗糙度、技術(shù)要求的分析,零件材料、熱處理等要求的分析。
(b)確定加工藝 包括選擇加工方案,確定加工路線,選擇定位與夾緊方式,選擇刀具,選擇各項切削參數(shù),選擇對刀點、換刀點。
(c)數(shù)值計算 選擇編程原點,對零件圖形各基點進(jìn)行正確的數(shù)學(xué)計算,為編寫程序單做好準(zhǔn)備。
(d)編寫程序單 根據(jù)數(shù)控機床規(guī)定的指令代碼及程序格式編寫加工程序單。
(e)制作控制介質(zhì) 簡單的數(shù)控程序直接采用手工輸入機床,當(dāng)程序自動輸入機床時,必須制作控制介質(zhì)?,F(xiàn)在大多數(shù)程序采用軟盤、移動存儲器、硬盤作為存儲介質(zhì),采用計算機傳輸來輸入機床。目前,除了少數(shù)老式的數(shù)控機床仍在采用穿孔紙帶外,現(xiàn)代數(shù)控機床均不再采用此種控制介質(zhì)了。
(f)程序校驗 程序必須經(jīng)過校驗正確后才能使用。一般采用機床空運行的方式進(jìn)行校驗,有圖形顯示卡的機床可直接在CRT顯示屏上進(jìn)行校驗,現(xiàn)在有很多學(xué)校還采用計算機數(shù)控模擬進(jìn)行校驗。以上方式只能進(jìn)行數(shù)控程序、機床動作的校驗,如果要校驗加工精度,則要進(jìn)行首件試切校驗。
5.3數(shù)控編程的分類
數(shù)控編程可分為手工編程和自動編程兩種。
5.3.1.手工編程
手工編程是指所有編制加工程序的全過程,即圖樣分析、工藝處理、數(shù)值計算、編寫程序單、制作控制介質(zhì)、程序校驗都是由手工來完成。
手工編程不需要計算機、編程器、編程軟件等輔助設(shè)備,只需要有合格的編程人員即可完成。手工編程具有編程快速及時的優(yōu)點,其缺點是不能進(jìn)行復(fù)雜曲面的編程。手工編程比較適合批量較大、形狀簡單、計算方便、輪廓由直線或圓弧組成的零件的加工。對于形狀復(fù)雜的零件,特別是具有非圓曲線、列表曲線及曲面的零件,采用手工編程則比較困難,最好采用自動編程的方法進(jìn)行編程。
5.3.2.自動編程
自動編程是指用計算機編制數(shù)控加工程序的過程。自動編程的優(yōu)點是效率高,正確性好。自動編程由計算機代替人完成復(fù)雜的坐標(biāo)計算和書寫程序單的工作,它可以解決許多手工編制無法完成的復(fù)雜零件編程難題,但其缺點是必須具備自動編程系統(tǒng)或自動編程軟件。自動編程較適合形狀復(fù)雜零件的加工程序編制,如:模具加工、多軸聯(lián)動加工等場合。
實現(xiàn)自動編程的方法主要有語言式自動編程和圖形交互式自動編程兩種。前者通過高級
語言的形式表示出全部加工內(nèi)容;計算機運行時采用批處理方式,一次性處理、輸出加工程序。后者是采用人機對話的處理方式,利用CAD/CAM功能生成加工程序。
CAD/CAM軟件編程加工過程為:圖樣分析、零件分析、三維造型、生成加工刀具軌跡;后置處理生成加工程序、程序校驗、程序傳輸并進(jìn)行加工。
5.4常用CAD/CAM軟件介紹
5.4.1.UG(Unigraphics)
UG起源于麥道飛機制造公司,是由EDS公司開發(fā)的集成化CAD/CAE/CAM系統(tǒng),是當(dāng)前國際、國內(nèi)最為流行的工業(yè)設(shè)計平臺。其龐大的模塊群為企業(yè)提供了從產(chǎn)品設(shè)計、產(chǎn)品分析、加工裝配、檢驗,到過程管理、虛擬動作等全系列的支持,其主要模塊有數(shù)控造型、數(shù)控加工、產(chǎn)品裝配等通用模塊和計算機輔助工業(yè)設(shè)計、鈑金設(shè)計加工、模具設(shè)計加工、管路設(shè)計布局等專用模塊。該軟件的容量較大,對計算機的硬件配置要求也較高,所以早期版本在我國使用不很廣泛,但隨著計算機配置的不斷升級,該軟件在國際、國內(nèi)的CAD/CAE/CAM市場上已占有了很大的份額。
5.4.2.Pro/Engineer
Pro/Engineer是由美國PTC(參數(shù)科技公司)于1989年開發(fā)的,它開創(chuàng)了三維CAD/CAM參數(shù)化的先河,采用單一數(shù)據(jù)庫的設(shè)計,是基于特征、全參數(shù)、全相關(guān)性的CAD/CAE/CAM系統(tǒng)。它包含零件造型、產(chǎn)品裝配、數(shù)控加:工、模具開發(fā)、鈑金件設(shè)計、外形設(shè)計、逆向工程、機構(gòu)模擬、應(yīng)力分析等功能模塊,因而廣泛應(yīng)用于機械、汽車、模具、工業(yè)設(shè)計、航天、家電、玩具等行業(yè),在國內(nèi)外尤其是制造業(yè)發(fā)達(dá)的地區(qū)有著龐大的用戶群。
5.4.3SolidWorks
SolidWorks是一個在微機平臺上運行的通用設(shè)計的CAD軟件,它具有高效方便的計算機輔助該軟件有極強的圖形格式轉(zhuǎn)換功能,幾乎所有的CAD/CAE/CAM軟件都可以與SolidWorks軟件進(jìn)行數(shù)據(jù)轉(zhuǎn)換,美中不足的是其數(shù)控加工功能不夠強大而且操作也比較煩瑣,所以該軟件常作為數(shù)控自動化編程中的造型軟件,再將造型完成的三維實體通過數(shù)據(jù)轉(zhuǎn)換到UG、Masteream、Cimatron軟件中進(jìn)行自動化編程。
5.4.4Mastercam
Mastercam是由美國CNCSoftware公司推出的基于PC平臺,集二維繪圖、三維曲面設(shè)計、體素拼合、數(shù)控編程、刀具路徑模擬及真實感模擬為一身的CAD/CAM軟件,該軟件尤其對于復(fù)雜曲面的生成與加工具有獨到的優(yōu)勢,但其對零件的設(shè)計、模具的設(shè)計功能不強。由于該軟件對運行環(huán)境要求較低、操作靈活易掌握、價格便宜,所以受到我國中小數(shù)控企業(yè) 的歡迎。
5.4.5Cimatron
Cimatron系統(tǒng)是源于以色列為了設(shè)計開發(fā)噴氣式戰(zhàn)斗機所發(fā)展出來的軟件。它由以色列的Cimatron公司提供的一套集成CAD/CAE/CAM的專業(yè)軟件,它具有模具設(shè)計、三維造型、生成工程圖、數(shù)控加工等功能。該軟件在我國得到了廣泛的使用,特別是在數(shù)控加工方面更是占有很大的比重。
5.4.6CAXA制造工程師
CAXA制造工程師是我國北航海爾軟件有限公司研制開發(fā)的全中文、面向數(shù)控銑床與加工中心的三維CAD/CAM軟件,它既具有線框造型、曲面造型和實體造型的設(shè)計功能,又具有生成二至五軸的加工代碼的數(shù)控加工功能,可用于加工具有復(fù)雜三維曲面的零件。由于該軟件是我國自行研制的數(shù)控軟件,采用了全中文的操作界面,學(xué)習(xí)與操作都很方便,而且價格也較低,所以該軟件近幾年在國內(nèi)得到了較大程度的推廣。另外,CAXA系列軟件中的“CAXA線切割”也是一種方便實用的線切割自動編程軟件。
5.5 數(shù)控銑床編程的基礎(chǔ)知識
5.5.1程序的結(jié)構(gòu)與格式
每一種數(shù)控系統(tǒng),根據(jù)系統(tǒng)本身的特點與編程的需要,都有一定的程序格式。對于不同的機床,其程序格式也不同,因此,編程人員必須嚴(yán)格按照機床說明書的格式進(jìn)行編程。但程序的常規(guī)格式卻是相同的。
a、程序的組成一個完整的程序由程序號、程序內(nèi)容和程序結(jié)束三部分組成:
%0001零件程序號(%1~4294967295)
N10 G90 G80 G40 G49 G17程序內(nèi)容
N20 G00 G54 X0 Y0 Z50 F300程序段
N30 M03 S500
N260 M05
N270 M30程序結(jié)束
(1)程序號
每一個儲存在零件存儲器中的程序都需要指定一個程序號來加以區(qū)別,這種用于區(qū)別零件加工程序代號稱為程序號,同一機床的程序號不能重復(fù)。
程序號寫在程序的最前面,必須單獨占用一行。
(2)程序內(nèi)容
程序內(nèi)容是整個程序的核心,它由許多程序段組成,每個程序段由一個或多個指令構(gòu)成,它表示數(shù)控機床的全部動作。
在數(shù)控銑床的程序中,子程序的調(diào)用也作為主程序內(nèi)容的一部分,主程序中只完成換刀、調(diào)轉(zhuǎn)速、工件定位等動作,其余加工動作都由子程序來完成。
(3)程序結(jié)束
程序結(jié)束通過M代碼來實現(xiàn),它必須寫在程序的最后??梢宰鳛槌绦蚪Y(jié)束標(biāo)記的M代碼有M02和M30,它們代表零件加工主程序的結(jié)束。為了保證最后程序段的正常執(zhí)行,通常要求M02(M30)也必須單獨占一行。
此外,子程序結(jié)束有專用的結(jié)束標(biāo)記,HNC—21M系統(tǒng)中用M99來表示子程序結(jié)束后返回主程序。
5.5.2.程序段的組成(1)程序段基本格式
程序段是程序的基本組成部分,每個程序段由若干個數(shù)據(jù)字構(gòu)成,而數(shù)據(jù)字又由表示地址的英文字母、特殊文字和數(shù)字構(gòu)成。如X30、G90等。
程序段格式是指一個程序段中字、字符、數(shù)據(jù)的排列、書寫方式和順序。通常情況下,程序段格式有字—地址程序段格式、使用分隔符的程序段格式、固定程序段格式三種。字—地址程序段格式如下:
N50 C01 X30 Y30 Z30 F100 S800 TO1 M03;
(2)程序段號與程序段結(jié)束
程序段由程序段號NXX開頭,以程序段結(jié)束標(biāo)記CR(或IJ)結(jié)束,實際使用時,常用符號“;”或“*”表示CR(或LP)。程莊段的中間部分是程序段的內(nèi)容,主要包括準(zhǔn)備功能字、尺寸功能字、進(jìn)給功能字、主軸功能字、刀具功能字、輔助功能字等,但并不是所有程序段都必須包含所有功能字,有時一個程序段內(nèi)可僅包含其中一個或幾個功能字,如下列程序段都是正確的程序段。
N10 C01 X100 F100;
N10 M05;
NXX為程序段號,由地址N和后面的若干位數(shù)字表示。在大部分系統(tǒng)中,程序段號僅作為“跳轉(zhuǎn)”或“程序檢索”的目標(biāo)位置指示,因此,它的大小順序可以顛倒,也可以省略,程序段在存儲器內(nèi)以輸入的先后順序排列,而程序的執(zhí)行是嚴(yán)格按信息在存儲器內(nèi)的先后順序一段一段地執(zhí)行,也就是說執(zhí)行的先后次序與程序段號無關(guān)。但是,當(dāng)程序段號省略時,該程序段將不能作為“跳轉(zhuǎn)”或“程序檢索”的目標(biāo)程序段。
程序段號也可以由數(shù)控系統(tǒng)自動生成,程序段號的遞增量可以通過“機床參數(shù)”進(jìn)行設(shè)置,一般可設(shè)定增量值為10。
(3)程序的斜杠跳躍
有時,在程序段的前面有“/”符號,該符號稱為斜杠跳躍符號,該程序段稱為可跳躍程序段。如下列程序段:
/N10 G00 X100;
這樣的程序段,可以由操作者對程序段和執(zhí)行情況進(jìn)行控制。若操作機床使系統(tǒng)的“跳過程序段”信號生效,程序執(zhí)行時將跳過這些程序段;若“跳過程序段”信號無效,程序段照常執(zhí)行,該程序段和不加“/”符號的程序段相同。
(4)程序段注釋
為了方便檢查、閱讀數(shù)控程序,在許多數(shù)控系統(tǒng)中允許對程序進(jìn)行注釋,注釋可以作為對操作者的提示顯示在屏幕上,但注釋對機床動作沒有絲毫影響。程序的注釋應(yīng)放在程序的最后,并用“()”括起來,不允許將注釋插在地址和數(shù)字之間。如下程序段所示:
%0000;(PROGRAMNAME—M1)
G21 G17 G40 C49 G80 G90;
5.6數(shù)控常用系統(tǒng)功能
數(shù)控系統(tǒng)常用的系統(tǒng)功能有準(zhǔn)備功能、輔助功能、其他功能三種,這些功能是編制數(shù)控程序的基礎(chǔ)。
5.6.1.準(zhǔn)備功能
1、準(zhǔn)備功能也叫G功能或G代碼,是用于數(shù)控機床做好某些操作準(zhǔn)備動作的指令。它由地址G和后面的兩位數(shù)字組成,從G00~G99共100種,如G01、G41等。目前,隨著數(shù)控系統(tǒng)功能的不斷提高,有的系統(tǒng)已采用三位數(shù)的功能代碼,如SIEMENS系統(tǒng)中的G450、G451等。
2、G功能以組區(qū)別可以分為兩大類。屬于“00”組別者,為非續(xù)效指令,即該指令的功能只在該程序段執(zhí)行時發(fā)揮效用,其功能不會延續(xù)到下面的程序段。屬于“非00”組別者,為續(xù)效指令,即該指令的功能除在該程序段執(zhí)行時發(fā)生效用外,如下一程序段仍使用相同功能,則不需要再指令一次,其功能會延續(xù)到下一程序段,直到被同組別的指令取代為止。
3、不同組別的G功能可以在同一程序段中執(zhí)行。但若是同一組別的G功能,在同一程序段中出現(xiàn)兩個或以上時,則以最后的G功能為有效。例如G00 G01 X50 Y60;則此程序?qū)⒁灾本€插補(G01)方式移至X50 Y60位置,G00指令將被忽略。
4、雖然從G00到G99共有100種G代碼,但并不是每種代碼都有實際意義,實際上有些代碼在國際標(biāo)準(zhǔn)(1SO)或我國原機械工業(yè)部標(biāo)準(zhǔn)中并沒有指定其功能,這些代碼主要用于將來修改標(biāo)準(zhǔn)時指定新功能。還有一些代碼,即使在修改標(biāo)準(zhǔn)時也永不指定其功能,這些代碼可由機床設(shè)計者根據(jù)需要定義其功能,但必須在機床的出廠說明書中予以說明。
5.7.1、輔助功能
輔助功能也叫M功能或M代碼。它由地址M和后面的兩位數(shù)字組成,從M00~M99共100種。
1、輔助功能是主要控制機床或系統(tǒng)的開、關(guān)等輔助動作的功能指令,如開、停冷卻泵,控制主軸正反轉(zhuǎn),控制程序的結(jié)束等。
同樣地,由于數(shù)控系統(tǒng)的不同,以及機床生產(chǎn)廠家的不同,其M代碼的功能也不盡相同,甚至有些M代碼與ISO標(biāo)準(zhǔn)代碼的含義也不相同,如:表5-1如M00、M02、M30、M98、M99用于控制零件程序的走向,不由機床制造設(shè)計商設(shè)計決定。其余代碼由機床制造單位自行指定。使用者要參考機床編程說明書。因此,一方面我們迫切需要對數(shù)控代碼進(jìn)行標(biāo)準(zhǔn)化;另一方面,我們在進(jìn)行數(shù)控編程時,一定要按照機床說明書的規(guī)定進(jìn)行。
在同一程序段中,既有M代碼又有其他指令代碼時,M代碼與其他代碼執(zhí)行的先后次序由機床系統(tǒng)參數(shù)設(shè)定。因此,為保證程序以正確的次序執(zhí)行,有很多M代碼,如M30、M02、M98等最好以單獨的程序段進(jìn)行編程。
坐標(biāo)功能M功能有非模態(tài)M功能和模態(tài)M功能二種形式。非模態(tài)M功能(當(dāng)段有效代碼):只在書寫了該代碼的程序段中有效;模態(tài)M功能(續(xù)效代碼):一組可相互注銷的M功能,這些功能在被同一組的另一個功能注銷前一直有效。模態(tài)M功能組中包含一個缺省功能,系統(tǒng)上電時將被初始化為該功能(M05、M09)。另外,M功能還可分為前作用M功能和后作用M功能二類。前作用M功能:在程序段編制的軸運動之前執(zhí)行;后作用M功能:在程序段編制的軸運動之后執(zhí)行。
5.7.3 F、S、T功能介紹
1、F(進(jìn)給速度)功能
F功能用于控制刀具移動時的進(jìn)給速度,進(jìn)給功能分為每分鐘進(jìn)給量mm/min(G94)和每轉(zhuǎn)進(jìn)給量mm/r(G95)。
a、每分鐘進(jìn)給量mm/min
G94 G01 X20 F200——表示進(jìn)給速度為200mm/min(G94為續(xù)效代碼,開機默認(rèn));
當(dāng)工作在G01、G02或G03方式下,編程的F一直有效,直到被新的F值所取代,而工作在G00, G60方式下,快速定位的速度是各軸的最高速度,與所編F無關(guān)。
借助操作面板上的倍率按鍵, F 可在一定范圍內(nèi)進(jìn)行倍率修調(diào)。
進(jìn)給速度Vf的計算公式:
Vf=fz z n
fz——銑刀每齒進(jìn)給量(mm/齒);
z——銑刀的刀刃數(shù);
n——刀具的轉(zhuǎn)速(r/min);
b、每轉(zhuǎn)進(jìn)給量mm/r
G95 G01 X20 F0.2 ——表示進(jìn)給速度為0.2mm/r;
在加工螺紋(攻絲循環(huán)G84、螺紋切削G33)、鏜孔過程中常使用每轉(zhuǎn)進(jìn)給量mm/r來指定進(jìn)給速度。倍率開關(guān)失效,進(jìn)給倍率固定在100%。
注:編程時,進(jìn)給速度不允許用負(fù)值來表示。
2.S(主軸功能)
主軸功能S控制主軸轉(zhuǎn)速,其后的數(shù)值表示主軸速度,單位為轉(zhuǎn)/每分鐘(r/min)。S是模態(tài)指令,S功能只有在主軸速度可調(diào)節(jié)時有效。
借助操作面板上的倍率按鍵, S可在一定范圍內(nèi)進(jìn)行倍率修調(diào)。
3、T功能
T功能是指系統(tǒng)進(jìn)行換刀或選刀的功能指令,其后的數(shù)值表示選擇的刀具號,T代碼與刀具的關(guān)系是由機床制造廠規(guī)定的。
在加上中心上執(zhí)行T指令,刀庫轉(zhuǎn)動選擇所需的刀具,然后等待,直到M06指令作用時自動完成換刀。
T指令同時調(diào)入刀補寄存器中的刀補值(刀補長度和刀補半徑)。T指令為非模態(tài)指令,但被調(diào)用的刀補值一自有效,直到再次換刀調(diào)入新的刀補值。