隨著新產品研製的發展,許(xǔ)多(duō)新產品的形狀采用了特殊曲線,如橢圓、雙曲線和高斯曲線等,而如何加工這些特殊曲線就成了機加人員的新課(kè)題。
從多年的實踐來(lái)看,采用宏程序編程,然後在數控(kòng)車床上車削是(shì)較為簡單、經濟和方(fāng)便的(de)一種方法(fǎ)。
但是這種(zhǒng)方法對於編程者要(yào)求較高,這是因為宏(hóng)程序的編製要求程序員不僅具有豐富的數學知識,還(hái)要熟悉數控車(chē)床的編程指令,對(duì)於宏程序更應是了如指掌。
宏程序分為A類和B類兩種:A類宏程序通常采用H代碼編製,B類宏程序通常用賦值語句和數學公式進行編製,易(yì)為大家接受,FANUC0i型數控係統的宏程序就是B類。
▽長按愛(ài)心,添加小編,技術交流▽
一、FANUC0i型數控係統宏程序
在FANUC0i型數控係統中變量分為(wéi)4種類型,即空變量、局部變量、公共變量和係統變量。空變量的變量號為#0,該變量(liàng)總(zǒng)為(wéi)空,沒有值能賦給該(gāi)變量;局部變量的(de)變量號為#1~#33,該類變量隻能用於在宏程序中存儲(chǔ)數據,當斷電時(shí)局部(bù)變量初始化為空,調(diào)用宏程序時,給局部變量賦值。公共變量的變量號為#100~#199、#500~#999,公共變量在不同的宏程序中(zhōng)的意義相同。當斷電時,變量#100~#199初始化為空,變(biàn)量#500~#999中的數據保存,即使斷電也不丟失。係統變量的變量號為(wéi)#1000~,係統(tǒng)變量用於(yú)讀和寫(xiě)CNC的各種數據,例如刀具的當前位置和刀具補償值等。我們在(zài)編(biān)寫宏程序(xù)時可以引用局部變量和公共變量,在引用變量,特別是公共變量時,為消(xiāo)除(chú)變量內原(yuán)有數據的(de)影響(xiǎng),一定要給變量重新賦(fù)值後(hòu)再引用。
宏程序是(shì)用戶實現機床功能擴展的一種(zhǒng)方法。在宏程序中可以使用變量,給變量賦(fù)值,變量間可進行運算和程序跳轉。此外,宏程序還提供了循環語句、分支語句和子程序調用語句(jù),一層宏(hóng)循環裏還可以嵌套多層循環。所以(yǐ)可以應用宏程序指令編製(zhì)出簡潔合理的小容量加(jiā)工程序,擴(kuò)展(zhǎn)數控機床功能,提高(gāo)加工效率(lǜ),充分發揮數控機床的作用。
二(èr)、高斯曲線的方程
高斯曲線在直角坐標係下的方程是
,其中x是自變量,y是因變量。但此(cǐ)方(fāng)程我們(men)還(hái)不能直接(jiē)應用於數控車床,因為在數控車床上,坐標係是這樣規
定的:Z軸與主軸軸線平行,正方向是遠離工件(jiàn)方向,X軸與主軸軸線垂直,正方向(xiàng)是遠離主軸軸線方向。因(yīn)此我們需要把直(zhí)角坐標係(xì)的方程轉換為數控車床坐標係(xì)下的(de)方程,同時(shí)數控車床不(bú)能識(shí)別指數函數和平方等數學符號,這就需要用宏程序中的算術和邏(luó)輯運算符號替換其中(zhōng)的數學符號,變成數控車床可識別的公式。
經(jīng)變換後高斯曲線在數控坐標(biāo)下的方程如下。
X=140.6/EXP(((z-620)/1339)*((z-620)/1339))+9.358/
EXP(((z+251.5)/351.8)*((z+251.5)/351.8))+24.58/EXP(((z+740.4)/464.1)*((z+740.4)/464.1))
三、數控車床(chuáng)加工特殊曲線的方法(fǎ)
數控車床可通過G01、G02等G代碼直接加工直線、圓(yuán)弧,但並沒有專門(mén)的G代碼來加工橢圓、雙曲(qǔ)線和(hé)高(gāo)斯曲線等特殊曲線。在加工此類曲線時(shí)一般(bān)采用直線逼近法,即在Z方向上(shàng)依次(cì)遞減或遞增,以0.05mm~0.5mm為一(yī)個步距,每遞減或(huò)遞增一個步距得到一個Z值。然後,通過曲(qǔ)線(xiàn)方程(chéng)計算求出對應的X值,再將(jiāng)刀具直線插補至計(jì)算得出的(X,Z)值所確定的點,依次插補便(biàn)可(kě)完成特殊曲線的加工。
四、編製加工高斯曲線的宏程序
現以一個簡單的零件為例,說明(míng)高(gāo)斯(sī)曲線的宏程序編(biān)製過程。如圖1所示,在(zài)Φ260mm的毛坯棒料上(shàng)加(jiā)工一段(duàn)長100mm的高斯(sī)曲線外輪(lún)廓。圖1是直(zhí)角坐標係下(xià)的零件圖樣,圖2是數控坐標下的零件圖樣。
1490873504692141.png1490873504561622.png
在高斯曲線數控坐標方程中,我們用#101表示自變量z,用#102表示(z-620)/1339,用#103表(biǎo)示(z+251.5)/351.8,用#104表示(z+740.4)/464.1,用#105表(biǎo)示因變量x,則高斯曲線的方程(chéng)可表示為:
#105=14.6/EXP(#102*#102)+9.358/EXP(#103*#103)+24.58/EXP(#104+#104)
編(biān)製精加工程序如(rú)下:
O0001
N10#101=0;(自變量初值)N20#102=(#101-620)/1339;
N30#103=(#101+251.5)/351.8;N40#104=(#101+740.4)/464.1;
N50#105=14.6/EXP(#102*#102)+9.358/EXP(#103*#103)+24.58/EXP(#104*#104);
N60G01X[2*#105]Z[-#101]F0.2;(直線逼近法加(jiā)工高斯曲線)
N70#101=#101+0.1;(z值遞增一個(gè)步距)
N80IF[#101LE100.0]GOTO20;N90G01X265.0;
N90G00X100.0Z100.0;N100M30;
以上程序為最後一刀的精加工程序,在實際加工中要考慮到毛坯的餘量,這就需要先粗車,再(zài)精車。粗車同樣也是沿輪廓車削,可采用G71或者(zhě)G73指令(lìng)粗車,然後用G70指令精車,編製完整的程序(xù)如下。
O0002
N10G40G21G97G99;N20M03S800;
N30T0101;
N40G00X262.0Z2.0;N50G73U9.0R9.0;
N60G73P70Q150U0.3W0.0F0.2;N70#101=0;(自變量初值)
N80#102=(#101-620)/1339;N90#103=(#101+251.5)/351.8;
N100#104=(#101+740.4)/464.1;
N110#105=14.6/EXP(#102*#102)+9.358/EXP(#103*#103)+24.58/EXP(#104*#104);
N120G01X[2*#105]Z[-#101]F0.1S1000;(直線逼近法加工高斯曲線)
N130#101=#101+0.1;(z值遞增一個(gè)步距)N140IF[#101LE100.0]GOTO80;
N150G01X265.0;N160G70P70Q150;
N170G00X100.0Z100.0;N180M30;
雖然隨著CAD/CAM軟件的應用(yòng),手工編(biān)程、宏程序應(yīng)用空間日(rì)趨縮小,但是在某些情況下PC機也無能為力,這就要求我們深挖手工編程,發揮數控機床潛(qián)力。