宏程序在高次曲線(xiàn)加工中的應用
2018-4-18 來源:福(fú)建水利電力職業技術學院(yuàn) 作者:蘭嵩(sōng)
摘要:雖然各種各樣的自(zì)動編(biān)程(chéng)軟件(jiàn)層出不窮,但手工編程(chéng)仍有它不可替代的地方。本文基於FANUC-0i-mate數控係統B類宏(hóng)程序的編程指令(lìng),有條理地分析了(le)在編製(zhì)高次非圓曲(qǔ)線時遇到的困難(nán)以及解決問題的方法,為宏程(chéng)序其他場合(hé)的應用提供了思路(lù)。
關鍵詞:數控機床;宏程序;高次非圓曲線
隨著產品的不斷改(gǎi)進,機械(xiè)零件的輪廓不再是隻由直線段(duàn)和圓弧段構成,出現了二次非圓曲線包括橢圓、雙曲線、拋物線、正弦曲線等。如果用自動編程軟件編程,會出現程序可讀性差、程序冗繁、程(chéng)序靈活性不夠好等缺陷,而宏(hóng)程序就能克服這些缺陷。
1、問題提出
數控係統通(tōng)過準(zhǔn)備功能指令 G 代碼(mǎ)控製數控車床(chuáng)的(de)移動部件 (刀架) 運動。在 G 代碼中,能夠(gòu)使得(dé)車床動作(zuò)的指令有 G01 直線插(chā)補、G02 順時針圓弧插補、G03 逆時針圓弧插補,以(yǐ)及(jí)其它循環功能指令。但是,無論使用(yòng)哪個 G 代碼,刀架的運動軌跡從肉眼上看去走出的是直線或者圓弧。
從原理上對運動控製進行分(fèn)析(xī):數控係統是按照插補算法來控製移動部件運動,不同的插補算法走出的軌跡是不一樣的,但都是通過折線來逼(bī)近直線或圓弧 (見圖 1 和圖 2)。我們把數控係統統發送(sòng)一個脈衝,機床移動部件運動的距離(lí)稱為脈衝當量,可達到 1μm。因此,逼(bī)近的折線幾乎就是直線或圓弧,能夠(gòu)達到零件輪廓精度的(de)要(yào)求。
圖1 逐點比較插補法
圖2 數字積分插補法
遇到走刀軌跡是非圓高次曲線(xiàn),我們可以參考上述插補原理,采用將曲線(xiàn)分割(gē)成若幹條直線段來(lái)逼近 (見圖3)。而要讓數控係統控製刀架走出一段直線,編(biān)程人員需要計算出直線段的終點坐標值、編寫(xiě)一行程序來實現。如果分割的線段越少,編程的計算量(liàng)就(jiù)大大減少(shǎo)、程序簡潔,但是零件的加工精度無法保證;反之(zhī),分割的線段越密集,確實(shí)能夠(gòu)保證加工精度,但缺(quē)點是坐標的(de)計算量大,程序冗繁。因此,如何利用係統自動計算坐標和簡化程序這兩個問題需要我們解(jiě)決。
圖3 折線逼近橢圓
2、問題解決
2.1 坐標(biāo)計算
如果(guǒ)將曲線分割成 10000 段,我們就需要(yào)計算 10000 個點的坐標(biāo)值。如果隻靠人工(gōng)計算,工作的效率太低,且容易出現錯誤。目前(qián)大多數數控係統都有提(tí)供宏程序功(gōng)能(néng),與(yǔ)普通(tōng)的數控程序相比較更具有靈活(huó)性。在宏程序中,字可以使用變量,通過讓變量執行賦值、運(yùn)算等(děng)操(cāo)作來控製(zhì)機床移(yí)動部件走出有規律的(de)軌跡。宏程序有(yǒu) A 類和B 類兩種,FANUC-0i- mate 係統常采用B 類宏程序進行編程,下麵(miàn)我們(men)將(jiāng)說明如何利用 B 類(lèi)宏程序解決坐標計算問題。
2.1.1 變量
1) 變量表達:一個變量可用#K (K=1,2,3……) 來表達,如#28。2) 變量分(fèn)類:係統提供了三種變量,全局(jú)變量、局部(bù)變量和係統變量。
2.1.2 變量運算
變量運算包括賦值數學運算和函數運算。
1) 賦值使用符號“=”,作用是將“=”右邊的數(shù)值存(cún)放至“=”左邊的變量中。
例如:#28=50。
2) 數值運算符號包括“+、-、*、/”,可以數值和數值間(jiān)運算,也可以數值和變量間運算,還可以變量和變量(liàng)間運算。例(lì)如:#28=#29*#30,含(hán)義為將變量#29 中存放的數值和(hé)變量#30中存放的數值相乘,得到的結果存放在變(biàn)量#28中。
3) 常用的函數運算符號有:
SQRT (平方根)、ABS (絕對值)、SIN (正弦(xián))、COS (餘弦)、TAN (正切)、ATAN (餘切) 等。例如:#28=SQRT[#29],含義為將變(biàn)量#29 中存放(fàng)的數值開平方根,得到(dào)的結果存放在(zài)變量#28
中。
2.1.3 運用宏程序解決坐標計(jì)算
假設要控製機床移動部件走出橢圓軌跡,已知橢圓的長半(bàn)軸為a,短半軸為(wéi)b,我們可以得到軌跡的方(fāng)程為相比較更具有靈活性。在宏程序中,字可以使用
變量,通過讓變量執行賦值、運算等操作來控製機床移動(dòng)部件(jiàn)走出有規律的軌跡。宏程序有 A 類(lèi)和B 類兩種,FANUC-0i- mate 係統(tǒng)常采用B 類(lèi)宏程序(xù)進行編程,下麵我們將(jiāng)說明如何利用 B 類宏程序解決坐標(biāo)計算問題。
2.1.1 變量
1) 變量表(biǎo)達:一個變量可用#K (K=1,2,3……) 來表達,如#28。
2) 變量分類:係統提供了三種變量(liàng),全(quán)局變量、局部變量和係統變量。
Z2/ a2+ X2/ b2=1 (1)因此(cǐ),我們可以得到 X 坐標關於 Z 坐標的(de)方程:
表1 變量類型
X =baa?a - Z?Z (2)當給定軌跡上某個點M的Zm坐標值(zhí),就能通過上麵的公式計算出(chū)該點(diǎn)的Xm坐標,而(ér)這個運算過程可以讓數控係統的宏程序來實現。我們選用#100和#101兩個變量(liàng),用#100來存放(fàng)Xm坐標,用#101來存放Zm坐標(biāo),因此得到:#101=Zm;(將M點的Z坐標存放到#101)#100=b/a*SQRT[a*a-#101*#101];(計算出 M點X坐標)G01 X#100 Z#101 F0.2;(運(yùn)動到該(gāi)點)
2.2 程(chéng)序簡化
移(yí)動部件從軌跡(jì)起點運動到終(zhōng)點,Z 坐標 Z2則從(cóng) a 連續變化到 0。如果(guǒ)將軌跡(jì)分割成 1000段,則賦值、計算和運動(dòng)各需要 1000 行程序段(duàn),因此程序非常(cháng)冗(rǒng)繁。要解決這個問(wèn)題(tí),需要(yào)用到程序的控製指令功能。
表2 條件式格式(shì)
2.2.2 程序跳轉語句
1) IF<條件式>=GOTO n (n為程(chéng)序段號)當<條件式>成立時(shí),程序跳轉到段號為(wéi) n 的程序段往下執(zhí)行;當<條件式>不成立時,程序不執行(háng)跳轉,繼續往(wǎng)下執行。
2) WHILE< 條 件 式 >DO m (m=1, 2,3……)……END m當<條件式>成(chéng)立時,程序重(chóng)複執行 DO m 到END m 之間的程序,直到<條件(jiàn)式>不成立;當(dāng)<條件式>不成立時,程序從 END m 這一段往下執行。
3) 兩(liǎng)種方法比較用IF語句控製(zhì)程序跳轉時,係統必須從程序頭開始逐段掃描程序段號,直到符合語句中的段號 n 時 , 才 開 始 執 行 程 序 , 效 率 較 低 ; 而 用(yòng)WHILE 語句時,係統(tǒng)隻需循環 DO m 到 END m 之間的程(chéng)序,效率高。因此推薦使用WHILE語句進(jìn)行控製。
2.2.3 程(chéng)序編製取變量(liàng)
#102 存(cún)放 Z 方向遞減的步長。Z 坐標從軌跡(jì)起點 a 開始,每次遞(dì)減步長,計算出軌(guǐ)跡上新點的 X 坐標,控製刀具運動到新(xīn)點。係統重複以上步驟,直到刀具運動到(dào)軌跡終點,從而走出曲線輪廓。輪廓加工的(de)精(jīng)度(dù)取決於步長值的大小,步長越小,軌跡被(bèi)分割成的線(xiàn)段(duàn)就越多,那麽與輪廓的相似度就越高。設置橢圓圓心為編程原點,加工的(de)宏程序如下:
從上麵程序我們可以看出:采用宏程序編程,不僅能(néng)夠簡化編(biān)程結構,並且對提高編程和加工的效率也(yě)有重要(yào)的作用。
3 、宏程序(xù)的其他應用
數(shù)控機床的編(biān)程方式包括手工編程和自動編程,隨著各(gè)種各樣的編程軟件不斷出現,大大提高了編程效率,但在某些場合(hé)中並不能(néng)完全取代手工編程。手工編程,特別是宏程序編程仍(réng)具有自己的優勢。
1) 通過改變對變量(liàng)賦值,可以加工不同尺寸但形狀類(lèi)似的零件。例如(rú)需加工多個不同(tóng)零件,每個零件上都有橢圓輪廓,但尺寸、橢圓圓心與編程原點相對位置不同。我們可以先確定出橢圓的非標準式方程 (通式),編製橢圓(yuán)宏程序並作為一個子程序,然後根據要加工橢圓的參數將方程中的所有常數 (包括:長半軸、短半軸、起點坐標、終(zhōng)點坐標、橢圓(yuán)圓心相對編程原點的距離、步長等) 賦值給變量(liàng),最後用調用子程(chéng)序的方法走出軌跡。
2) 數控係統中有(yǒu)專門用(yòng)來存放(fàng)刀具(jù)補償的變(biàn)量,可以解決因刀具磨損造成(chéng)的精度誤差(chà)。當加工多個零件(jiàn)後,刀具會產生磨損,若使(shǐ)用原有的程序繼續加工,那麽零件的尺寸會超(chāo)出公差允許範圍。這時,我們隻要在程序中加一行(háng)將(jiāng)刀具磨(mó)損的值賦給磨耗變量的(de)程序段,使得刀具軌跡偏離一個磨損量,就能夠保證加(jiā)工合格。除此之外,宏程序還在其他場合廣泛(fàn)使用。比如特殊螺紋的加工、用同一個程序進行粗精加工等。
4、結(jié)束語
宏程序和普通程序(xù)相比(bǐ)較最(zuì)主(zhǔ)要(yào)的區別在於宏程序(xù)可以使用變量,並給變量賦值,變量之間(jiān)可以進行運算,程序可以控製跳轉;而普通程序中隻能使(shǐ)用常量,常量之間不能運(yùn)算(suàn),程序隻能按順序執行。做為一名優秀的數控編程人員,不能隻會使用CAD/CAM軟件出後置處理程序,要根據企業的實際情況合(hé)理地選擇程序編製方法。因(yīn)此,掌握宏程序的編製方法是非常有必要的。
投稿箱:
如果您有(yǒu)機床行業、企業相關新聞(wén)稿(gǎo)件發表,或進行資(zī)訊合作,歡迎聯係(xì)本網編輯部, 郵(yóu)箱:skjcsc@vip.sina.com
如果您有(yǒu)機床行業、企業相關新聞(wén)稿(gǎo)件發表,或進行資(zī)訊合作,歡迎聯係(xì)本網編輯部, 郵(yóu)箱:skjcsc@vip.sina.com
更多相關信息
業界視點(diǎn)
| 更多(duō)
行業數據
| 更多
- 2024年11月 金屬切削機床產(chǎn)量數據
- 2024年11月 分地區金屬切削機床產量(liàng)數據
- 2024年11月 軸承出口情(qíng)況
- 2024年(nián)11月 基本型乘(chéng)用車(轎車)產量數(shù)據
- 2024年11月 新能源汽車(chē)產量數據
- 2024年11月 新能源汽車銷量情況
- 2024年10月 新能源汽車產量數據
- 2024年10月 軸承出(chū)口情(qíng)況
- 2024年10月 分地區金屬切削機床產量數據
- 2024年10月(yuè) 金屬切削機床產量數據
- 2024年9月 新(xīn)能源汽車銷量情況
- 2024年(nián)8月 新能源汽車產量數(shù)據
- 2028年8月 基本型乘用車(轎車(chē))產量(liàng)數據
博文選萃
| 更多
- 機械加工過程圖示
- 判(pàn)斷一台加工中心精度的幾種辦法
- 中走絲線切割機床的發展趨勢
- 國產數控係統和數控(kòng)機床何去何從(cóng)?
- 中國的技術工人都(dōu)去哪(nǎ)裏了?
- 機械老板做了十(shí)多年,為何還是小作坊?
- 機械行業最新(xīn)自(zì)殺性營銷(xiāo),害人害(hài)己!不倒閉才
- 製造業大逃亡
- 智能時代(dài),少談點智造,多談點(diǎn)製造
- 現(xiàn)實(shí)麵前,國人(rén)沉默。製造業的騰飛,要從機床
- 一文搞懂數控車床加工刀具補償功能
- 車床鑽孔攻螺紋加工(gōng)方法及工裝設計
- 傳統(tǒng)鑽削(xuē)與螺旋銑孔(kǒng)加工工藝的區別