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