宏程序在高次曲線加工中的應(yīng)用
2018-4-18 來源:福建水利電力職業(yè)技術(shù)學(xué)院 作者:蘭嵩
摘要:雖然各種各樣的自動編程軟件層出不窮,但手工編程仍有它不可替代的地方。本文基于FANUC-0i-mate數(shù)控系統(tǒng)B類宏程序的編程指令,有條理地分析了在編制高次非圓曲線時遇到的困難以及解決問題的方法,為宏程序其他場合的應(yīng)用提供了思路。
關(guān)鍵詞:數(shù)控機(jī)床;宏程序;高次非圓曲線
隨著產(chǎn)品的不斷改進(jìn),機(jī)械零件的輪廓不再是只由直線段和圓弧段構(gòu)成,出現(xiàn)了二次非圓曲線包括橢圓、雙曲線、拋物線、正弦曲線等。如果用自動編程軟件編程,會出現(xiàn)程序可讀性差、程序冗繁、程序靈活性不夠好等缺陷,而宏程序就能克服這些缺陷。
1、問題提出
數(shù)控系統(tǒng)通過準(zhǔn)備功能指令 G 代碼控制數(shù)控車床的移動部件 (刀架) 運(yùn)動。在 G 代碼中,能夠使得車床動作的指令有 G01 直線插補(bǔ)、G02 順時針圓弧插補(bǔ)、G03 逆時針圓弧插補(bǔ),以及其它循環(huán)功能指令。但是,無論使用哪個 G 代碼,刀架的運(yùn)動軌跡從肉眼上看去走出的是直線或者圓弧。
從原理上對運(yùn)動控制進(jìn)行分析:數(shù)控系統(tǒng)是按照插補(bǔ)算法來控制移動部件運(yùn)動,不同的插補(bǔ)算法走出的軌跡是不一樣的,但都是通過折線來逼近直線或圓弧 (見圖 1 和圖 2)。我們把數(shù)控系統(tǒng)統(tǒng)發(fā)送一個脈沖,機(jī)床移動部件運(yùn)動的距離稱為脈沖當(dāng)量,可達(dá)到 1μm。因此,逼近的折線幾乎就是直線或圓弧,能夠達(dá)到零件輪廓精度的要求。

圖1 逐點(diǎn)比較插補(bǔ)法

圖2 數(shù)字積分插補(bǔ)法
遇到走刀軌跡是非圓高次曲線,我們可以參考上述插補(bǔ)原理,采用將曲線分割成若干條直線段來逼近 (見圖3)。而要讓數(shù)控系統(tǒng)控制刀架走出一段直線,編程人員需要計算出直線段的終點(diǎn)坐標(biāo)值、編寫一行程序來實(shí)現(xiàn)。如果分割的線段越少,編程的計算量就大大減少、程序簡潔,但是零件的加工精度無法保證;反之,分割的線段越密集,確實(shí)能夠保證加工精度,但缺點(diǎn)是坐標(biāo)的計算量大,程序冗繁。因此,如何利用系統(tǒng)自動計算坐標(biāo)和簡化程序這兩個問題需要我們解決。

圖3 折線逼近橢圓
2、問題解決
2.1 坐標(biāo)計算
如果將曲線分割成 10000 段,我們就需要計算 10000 個點(diǎn)的坐標(biāo)值。如果只靠人工計算,工作的效率太低,且容易出現(xiàn)錯誤。目前大多數(shù)數(shù)控系統(tǒng)都有提供宏程序功能,與普通的數(shù)控程序相比較更具有靈活性。在宏程序中,字可以使用變量,通過讓變量執(zhí)行賦值、運(yùn)算等操作來控制機(jī)床移動部件走出有規(guī)律的軌跡。宏程序有 A 類和B 類兩種,F(xiàn)ANUC-0i- mate 系統(tǒng)常采用B 類宏程序進(jìn)行編程,下面我們將說明如何利用 B 類宏程序解決坐標(biāo)計算問題。
2.1.1 變量
1) 變量表達(dá):一個變量可用#K (K=1,2,3……) 來表達(dá),如#28。2) 變量分類:系統(tǒng)提供了三種變量,全局變量、局部變量和系統(tǒng)變量。
2.1.2 變量運(yùn)算
變量運(yùn)算包括賦值數(shù)學(xué)運(yùn)算和函數(shù)運(yùn)算。
1) 賦值使用符號“=”,作用是將“=”右邊的數(shù)值存放至“=”左邊的變量中。
例如:#28=50。
2) 數(shù)值運(yùn)算符號包括“+、-、*、/”,可以數(shù)值和數(shù)值間運(yùn)算,也可以數(shù)值和變量間運(yùn)算,還可以變量和變量間運(yùn)算。例如:#28=#29*#30,含義為將變量#29 中存放的數(shù)值和變量#30中存放的數(shù)值相乘,得到的結(jié)果存放在變量#28中。
3) 常用的函數(shù)運(yùn)算符號有:
SQRT (平方根)、ABS (絕對值)、SIN (正弦)、COS (余弦)、TAN (正切)、ATAN (余切) 等。例如:#28=SQRT[#29],含義為將變量#29 中存放的數(shù)值開平方根,得到的結(jié)果存放在變量#28
中。
2.1.3 運(yùn)用宏程序解決坐標(biāo)計算
假設(shè)要控制機(jī)床移動部件走出橢圓軌跡,已知橢圓的長半軸為a,短半軸為b,我們可以得到軌跡的方程為相比較更具有靈活性。在宏程序中,字可以使用
變量,通過讓變量執(zhí)行賦值、運(yùn)算等操作來控制機(jī)床移動部件走出有規(guī)律的軌跡。宏程序有 A 類和B 類兩種,F(xiàn)ANUC-0i- mate 系統(tǒng)常采用B 類宏程序進(jìn)行編程,下面我們將說明如何利用 B 類宏程序解決坐標(biāo)計算問題。
2.1.1 變量
1) 變量表達(dá):一個變量可用#K (K=1,2,3……) 來表達(dá),如#28。
2) 變量分類:系統(tǒng)提供了三種變量,全局變量、局部變量和系統(tǒng)變量。
Z2/ a2+ X2/ b2=1 (1)因此,我們可以得到 X 坐標(biāo)關(guān)于 Z 坐標(biāo)的方程:

表1 變量類型
X =baa?a - Z?Z (2)當(dāng)給定軌跡上某個點(diǎn)M的Zm坐標(biāo)值,就能通過上面的公式計算出該點(diǎn)的Xm坐標(biāo),而這個運(yùn)算過程可以讓數(shù)控系統(tǒng)的宏程序來實(shí)現(xiàn)。我們選用#100和#101兩個變量,用#100來存放Xm坐標(biāo),用#101來存放Zm坐標(biāo),因此得到:#101=Zm;(將M點(diǎn)的Z坐標(biāo)存放到#101)#100=b/a*SQRT[a*a-#101*#101];(計算出 M點(diǎn)X坐標(biāo))G01 X#100 Z#101 F0.2;(運(yùn)動到該點(diǎn))
2.2 程序簡化
移動部件從軌跡起點(diǎn)運(yùn)動到終點(diǎn),Z 坐標(biāo) Z2則從 a 連續(xù)變化到 0。如果將軌跡分割成 1000段,則賦值、計算和運(yùn)動各需要 1000 行程序段,因此程序非常冗繁。要解決這個問題,需要用到程序的控制指令功能。

表2 條件式格式
2.2.2 程序跳轉(zhuǎn)語句
1) IF<條件式>=GOTO n (n為程序段號)當(dāng)<條件式>成立時,程序跳轉(zhuǎn)到段號為 n 的程序段往下執(zhí)行;當(dāng)<條件式>不成立時,程序不執(zhí)行跳轉(zhuǎn),繼續(xù)往下執(zhí)行。
2) WHILE< 條 件 式 >DO m (m=1, 2,3……)……END m當(dāng)<條件式>成立時,程序重復(fù)執(zhí)行 DO m 到END m 之間的程序,直到<條件式>不成立;當(dāng)<條件式>不成立時,程序從 END m 這一段往下執(zhí)行。
3) 兩種方法比較用IF語句控制程序跳轉(zhuǎn)時,系統(tǒng)必須從程序頭開始逐段掃描程序段號,直到符合語句中的段號 n 時 , 才 開 始 執(zhí) 行 程 序 , 效 率 較 低 ; 而 用WHILE 語句時,系統(tǒng)只需循環(huán) DO m 到 END m 之間的程序,效率高。因此推薦使用WHILE語句進(jìn)行控制。
2.2.3 程序編制取變量
#102 存放 Z 方向遞減的步長。Z 坐標(biāo)從軌跡起點(diǎn) a 開始,每次遞減步長,計算出軌跡上新點(diǎn)的 X 坐標(biāo),控制刀具運(yùn)動到新點(diǎn)。系統(tǒng)重復(fù)以上步驟,直到刀具運(yùn)動到軌跡終點(diǎn),從而走出曲線輪廓。輪廓加工的精度取決于步長值的大小,步長越小,軌跡被分割成的線段就越多,那么與輪廓的相似度就越高。設(shè)置橢圓圓心為編程原點(diǎn),加工的宏程序如下:

從上面程序我們可以看出:采用宏程序編程,不僅能夠簡化編程結(jié)構(gòu),并且對提高編程和加工的效率也有重要的作用。
3 、宏程序的其他應(yīng)用
數(shù)控機(jī)床的編程方式包括手工編程和自動編程,隨著各種各樣的編程軟件不斷出現(xiàn),大大提高了編程效率,但在某些場合中并不能完全取代手工編程。手工編程,特別是宏程序編程仍具有自己的優(yōu)勢。
1) 通過改變對變量賦值,可以加工不同尺寸但形狀類似的零件。例如需加工多個不同零件,每個零件上都有橢圓輪廓,但尺寸、橢圓圓心與編程原點(diǎn)相對位置不同。我們可以先確定出橢圓的非標(biāo)準(zhǔn)式方程 (通式),編制橢圓宏程序并作為一個子程序,然后根據(jù)要加工橢圓的參數(shù)將方程中的所有常數(shù) (包括:長半軸、短半軸、起點(diǎn)坐標(biāo)、終點(diǎn)坐標(biāo)、橢圓圓心相對編程原點(diǎn)的距離、步長等) 賦值給變量,最后用調(diào)用子程序的方法走出軌跡。
2) 數(shù)控系統(tǒng)中有專門用來存放刀具補(bǔ)償?shù)淖兞浚梢越鉀Q因刀具磨損造成的精度誤差。當(dāng)加工多個零件后,刀具會產(chǎn)生磨損,若使用原有的程序繼續(xù)加工,那么零件的尺寸會超出公差允許范圍。這時,我們只要在程序中加一行將刀具磨損的值賦給磨耗變量的程序段,使得刀具軌跡偏離一個磨損量,就能夠保證加工合格。除此之外,宏程序還在其他場合廣泛使用。比如特殊螺紋的加工、用同一個程序進(jìn)行粗精加工等。
4、結(jié)束語
宏程序和普通程序相比較最主要的區(qū)別在于宏程序可以使用變量,并給變量賦值,變量之間可以進(jìn)行運(yùn)算,程序可以控制跳轉(zhuǎn);而普通程序中只能使用常量,常量之間不能運(yùn)算,程序只能按順序執(zhí)行。做為一名優(yōu)秀的數(shù)控編程人員,不能只會使用CAD/CAM軟件出后置處理程序,要根據(jù)企業(yè)的實(shí)際情況合理地選擇程序編制方法。因此,掌握宏程序的編制方法是非常有必要的。
投稿箱:
如果您有機(jī)床行業(yè)、企業(yè)相關(guān)新聞稿件發(fā)表,或進(jìn)行資訊合作,歡迎聯(lián)系本網(wǎng)編輯部, 郵箱:skjcsc@vip.sina.com
如果您有機(jī)床行業(yè)、企業(yè)相關(guān)新聞稿件發(fā)表,或進(jìn)行資訊合作,歡迎聯(lián)系本網(wǎng)編輯部, 郵箱:skjcsc@vip.sina.com
更多相關(guān)信息
業(yè)界視點(diǎn)
| 更多
行業(yè)數(shù)據(jù)
| 更多
- 2025年4月 新能源汽車銷量情況
- 2025年4月 新能源汽車產(chǎn)量數(shù)據(jù)
- 2025年4月 基本型乘用車(轎車)產(chǎn)量數(shù)據(jù)
- 2025年4月 軸承出口情況
- 2025年4月 分地區(qū)金屬切削機(jī)床產(chǎn)量數(shù)據(jù)
- 2025年4月 金屬切削機(jī)床產(chǎn)量數(shù)據(jù)
- 2025年1月 新能源汽車銷量情況
- 2024年12月 新能源汽車產(chǎn)量數(shù)據(jù)
- 2024年12月 基本型乘用車(轎車)產(chǎn)量數(shù)據(jù)
- 2024年12月 軸承出口情況
- 2024年12月 分地區(qū)金屬切削機(jī)床產(chǎn)量數(shù)據(jù)
- 2024年12月 金屬切削機(jī)床產(chǎn)量數(shù)據(jù)
- 2024年11月 金屬切削機(jī)床產(chǎn)量數(shù)據(jù)
博文選萃
| 更多
- 機(jī)械加工過程圖示
- 判斷一臺加工中心精度的幾種辦法
- 中走絲線切割機(jī)床的發(fā)展趨勢
- 國產(chǎn)數(shù)控系統(tǒng)和數(shù)控機(jī)床何去何從?
- 中國的技術(shù)工人都去哪里了?
- 機(jī)械老板做了十多年,為何還是小作坊?
- 機(jī)械行業(yè)最新自殺性營銷,害人害己!不倒閉才
- 制造業(yè)大逃亡
- 智能時代,少談點(diǎn)智造,多談點(diǎn)制造
- 現(xiàn)實(shí)面前,國人沉默。制造業(yè)的騰飛,要從機(jī)床
- 一文搞懂?dāng)?shù)控車床加工刀具補(bǔ)償功能
- 車床鉆孔攻螺紋加工方法及工裝設(shè)計
- 傳統(tǒng)鉆削與螺旋銑孔加工工藝的區(qū)別