結(jié)加甲
(三門峽市高級(jí)技工學(xué)校,河南 三門峽 472000)
車削橢圓在數(shù)控車床高級(jí)工學(xué)習(xí)中是很重要的一個(gè)課題。 在普通車床學(xué)習(xí)中我們常采用小圓弧逼近的加工方法,但在數(shù)控車床上這種方法顯然不符合精度和尺寸的要求;常見的數(shù)控系統(tǒng)又沒有相對(duì)應(yīng)的非圓曲線插補(bǔ)功能,使手工編程難度大大增加;雖然現(xiàn)在有計(jì)算機(jī)輔助編程,但是一方面購(gòu)置電腦和軟件、招聘獨(dú)立軟件員會(huì)使加工成本增加,另一方面計(jì)算機(jī)輔助編程程序繁瑣冗長(zhǎng),不易修改,不便于同類別零件的批量加工。 宏程序可以使用變量進(jìn)行算術(shù)運(yùn)算、邏輯運(yùn)算和函數(shù)的混合運(yùn)算,減少了手工編程時(shí)的繁瑣運(yùn)算;采用循環(huán)語(yǔ)句、分支語(yǔ)句和子程序調(diào)用等語(yǔ)句,精簡(jiǎn)了程序量,又能夠用修改個(gè)別字符的方法改變整個(gè)程序,利于同類別零件的批量加工。 本文以橢圓加工為例,采用B 類宏程序,利用橢圓標(biāo)準(zhǔn)方程計(jì)算方法,詳細(xì)說(shuō)明宏程序在橢圓加工中的優(yōu)勢(shì)和特點(diǎn)。
宏程序就是數(shù)控系統(tǒng)根據(jù)用戶提供的計(jì)算公式, 自動(dòng)識(shí)別、計(jì)算、插補(bǔ)完成公式曲線的加工。 宏程序包含算術(shù)運(yùn)算、邏輯運(yùn)算、條件轉(zhuǎn)移等內(nèi)容,通過局部變量的改變、條件或非轉(zhuǎn)移,達(dá)到不斷修正插補(bǔ)路線、滿足公式曲線要求,完成非圓曲線、有規(guī)律變化圖形的加工。 宏程序的最大特點(diǎn)就是程序段精簡(jiǎn)、實(shí)用,具有易讀性和易修改性。 能夠在最短時(shí)間內(nèi)編制出簡(jiǎn)捷實(shí)用的加工程序,加工出合格的零件,是數(shù)控車工不斷的追求。
1)算術(shù)運(yùn)算主要是指加、減、乘、除、三角函數(shù)等。 在宏程序中經(jīng)常使用的算術(shù)運(yùn)算有:
?
常見格式有:#1=#2+#3;#1=SQRT[#1*#1-#2/600]。
2) 邏輯運(yùn)算通常是指兩個(gè)數(shù)值的相互比較或者對(duì)應(yīng)關(guān)系。 在數(shù)控車工宏程序中,主要是兩個(gè)數(shù)值的大小比較,常用的運(yùn)算有:
?
常見格式有:IF[#1GT0]GOTO060。
3)宏程序中的常用條件轉(zhuǎn)移語(yǔ)句有:
?
1)變量是指在一個(gè)程序段內(nèi)數(shù)值可以變化的量。 變量主要分為三種類型:一是空變量,指賦值為空或永遠(yuǎn)為空的變量。比如#0 就是空變量, 或者其他不具體設(shè)置數(shù)據(jù)的變量也稱為空變量。 二是局部變量,編程常用的變量,用于宏程序中的數(shù)據(jù)記憶,斷電時(shí)清空,比如#1=10,在這個(gè)執(zhí)行程序中有效,程序執(zhí)行完畢后數(shù)值清空,再執(zhí)行另一個(gè)程序時(shí),如果不賦值,即使寫了#1 也是一個(gè)空變量,不起任何作用。 三是系統(tǒng)變量,用于識(shí)別、記憶、改變CNC 系統(tǒng)設(shè)置數(shù)據(jù)的變化。 比如#1173 為“備用緩沖區(qū)”。
2)賦值是指將一個(gè)數(shù)值賦予給一個(gè)變量。 如:#1=10,則表示#1 的值是10。 其中#1 代表變量,10 就是給變量#1 賦的值。這里的“=”號(hào)是賦值符號(hào),起定義性作用。 賦值有幾項(xiàng)規(guī)定:一是賦值號(hào)左邊只能是變量,右邊只能是常數(shù)或表達(dá)式;二是一句賦值語(yǔ)句只能給一個(gè)變量賦值;三是可以多次給同一個(gè)變量賦值,新的變量值取代舊的變量值;四是賦值運(yùn)算中,表達(dá)式可以為變量自身和其它數(shù)值的運(yùn)算結(jié)果, 如:#1=#1+10, 則表示#1 的值為#1 再加上10, 它的運(yùn)算順序與數(shù)學(xué)運(yùn)算順序相同;五是變量號(hào)所對(duì)應(yīng)的變量,對(duì)每個(gè)地址來(lái)說(shuō),都有具體數(shù)值范圍,比如#1=1000,那么M#1 顯然是不合理的;六是變量號(hào)也可以重新賦值, 比如# [#1], 如果#1=30, 那么這個(gè)表達(dá)式就是#30。
圖示為一個(gè)長(zhǎng)半軸30 短半軸20 的一個(gè)正橢圓, 在數(shù)控車工的加工中,主要有以下幾個(gè)加工內(nèi)容:1)從點(diǎn)A 車至點(diǎn)D,點(diǎn)A 坐標(biāo)值為(X0.Z0.);2)從點(diǎn)A 車至點(diǎn)C,點(diǎn)A 坐標(biāo)值為(X 0.Z0.);3)從點(diǎn)B 車至點(diǎn)D,點(diǎn)B 坐標(biāo)值為(X30.24Z0.);4)從點(diǎn)B 車至點(diǎn)D,點(diǎn)B 坐標(biāo)值為(X30.24Z-15.)。
數(shù)學(xué)課程中這樣表達(dá):當(dāng)焦點(diǎn)在X 軸時(shí)橢圓標(biāo)準(zhǔn)方程為:x2/a2+y2/b2=1(a>b>0)。 對(duì)應(yīng)數(shù)控車床的工件坐標(biāo)系,我們可以改為x2/a2+z2/b2=1(b>a>0)。G73 指令加工時(shí),重點(diǎn)使用G01 進(jìn)行仿形加工,在公式計(jì)算時(shí),已知Z 值求X 值,那么公式就換成了只要使用宏程序的格式轉(zhuǎn)換即可。
先從第一個(gè)加工內(nèi)容開始,從點(diǎn)A 車至點(diǎn)D,點(diǎn)A 坐標(biāo)值為(X0.Z0.),使用G73,只寫主要加工程序:
N0010 #1=20
N0020 #2=30
N0030 #3=#1*SQRT[1-#2*#2/900]
N0040 G01 X[2*#3] Z[#2-30] F0.1
N0050 #2=#2-0.5
N0060 IF [#2 GE -20] GOTO 030
N0070 M30
程序說(shuō)明:N40 段X 值為2 倍的短半軸值(以橢圓角度考慮),主要是直徑編程,Z 值只所以#2-30,只是為了符合工件坐標(biāo)系, 后面的-30 可以根據(jù)情況而定 (下例說(shuō)明);N20 和N60段的Z 值是橢圓中的20 和-20,這個(gè)要和坐標(biāo)系的值區(qū)分開。
第二個(gè)加工內(nèi)容,從點(diǎn)A 車至點(diǎn)C,點(diǎn)A 坐標(biāo)值為(X0.Z 0.), 只需要將上例中的N0060IF [#2GE-20]GOTO 030 改為N0060 IF[#2GE0] GOTO 030 即可。
第三個(gè)加工內(nèi)容, 從點(diǎn)B 車至點(diǎn)D, 點(diǎn)B 坐標(biāo)值為(X30.24Z0.) 只需要將上例N0020#2=30 中的#2=30 換為#2=20,N0040G01X[2*#3]Z[#2-30]F0.1 中的Z[#2-30]換為Z[#2-20]即可。如果B 點(diǎn)加直徑變?yōu)闄E圓弧度時(shí),將所加半徑加上#3 再乘以2 即可。
第四個(gè)加工內(nèi)容, 從點(diǎn)B 車至點(diǎn)D, 點(diǎn)B 坐標(biāo)值為(X30.24 Z-15.),只需要將上例N0020 #2=30 中的#2=30 換為#2=20,N0040 G01 X[2*#3] Z[#2-30] F0.1 中的Z[#2-30]換為Z[#2-35]即可。
宏程序在車削橢圓時(shí)有它獨(dú)到的一面,簡(jiǎn)捷實(shí)用、易讀易改,比小圓弧法精確,比計(jì)算機(jī)輔助編程簡(jiǎn)捷易改,是手工編程中很有必要掌握的一種編程方法。 在實(shí)際應(yīng)用中對(duì)操作工數(shù)學(xué)基礎(chǔ)和邏輯思維能力要求較高, 宏程序不僅僅能夠車削橢圓,還能夠車削拋物線、正弦曲線、雙曲線,更能車削圓弧、錐度、螺紋,關(guān)鍵是操作工如何去理解、使用的問題。 在具體的加工中,粗精加工要分開,變量的大小關(guān)乎尺寸和精度,要合理應(yīng)用。 宏程序不拘泥于某一個(gè)加工指令,只存在是否合適、合理的問題,能夠巧妙的利用宏程序,在最短時(shí)間內(nèi)編制出簡(jiǎn)捷實(shí)用的加工程序是我們不變的目標(biāo)。