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