宏程序在數(shù)控加工的應(yīng)用

時(shí)間:2022-03-14 10:37:45

導(dǎo)語:宏程序在數(shù)控加工的應(yīng)用一文來源于網(wǎng)友上傳,不代表本站觀點(diǎn),若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。

宏程序在數(shù)控加工的應(yīng)用

摘要:宏程序在生產(chǎn)實(shí)踐中應(yīng)用廣泛,靈活性強(qiáng),特別在手工編寫加工曲線輪廓及監(jiān)測刀具磨損換刀進(jìn)行中斷處理等更是常用。用宏程序編寫出的程序簡潔、嚴(yán)密,且機(jī)床執(zhí)行該程序迅速、高效。因此,掌握宏程序加工產(chǎn)品是數(shù)控技術(shù)的重要組成部分。以FANUC系統(tǒng)為例,闡述宏程序及其參數(shù)在加工和中斷處理功能中的應(yīng)用。

關(guān)鍵詞:數(shù)控加工;宏程序;變量

數(shù)控編程是數(shù)控加工中一項(xiàng)關(guān)鍵的技術(shù),程序的質(zhì)量決定了加工零件的精度和工作的效率。隨著數(shù)控行業(yè)不斷向高精密和高效發(fā)展,對編程的要求越來越高。目前,在數(shù)控機(jī)床上常用的編程方式為手工編程和自動編程,但這兩種編程方式已經(jīng)無法滿足數(shù)控行業(yè)的飛速發(fā)展,宏程序指令應(yīng)運(yùn)而生。運(yùn)用宏程序可以簡化程序,縮短編程時(shí)間,提高工作效率。本文以FANUC數(shù)控系統(tǒng)為例,結(jié)合具體實(shí)例,介紹宏程序在數(shù)控加工中的應(yīng)用。

1宏程序概念

以一組子程序的形式存儲并帶有變量的程序稱為用戶宏程序,簡稱宏程序。調(diào)用宏程序的指令稱為“用戶宏程序指令”,或“宏程序調(diào)用指令”(簡稱宏指令),常態(tài)下,宏指令通常作為子程序放在存儲器中,如果主程序有需要,通過調(diào)用子程序指令進(jìn)行運(yùn)用,宏程序可以實(shí)現(xiàn)變量運(yùn)算、判斷和條件裝換的作用,使程序更靈活更方便[1]。

2宏程序的變量與格式

在常規(guī)的主程序和子程序內(nèi),總是將一個(gè)具體的數(shù)值賦給一個(gè)地址。為了使程序更具通用性、更加靈活,在宏程序中設(shè)置了變量,即將變量賦給一個(gè)地址。在宏程序里,可以根據(jù)實(shí)際需要,設(shè)置多個(gè)變量,以符號來判別關(guān)系。

2.1變量的類型

變量一般分為空變量、局部變量、全局變量和系統(tǒng)變量(如表1所示)[2]。(1)全局變量是指在主程序和主程序調(diào)用的各用戶宏程序內(nèi)部都有效的變量。(2)局部變量只能在宏程序內(nèi)部使用,用于保存數(shù)據(jù),如運(yùn)算結(jié)果等,當(dāng)電源關(guān)閉時(shí),局部變量被清空,而當(dāng)宏程序被調(diào)用時(shí),調(diào)用參數(shù)被賦值給局部變量。(3)系統(tǒng)變量是系統(tǒng)固定用途的變量,可被任何程序使用,有些是只讀變量,有些可以賦值或修改。(4)空變量總為空。

2.2變量的運(yùn)算

變量的算術(shù)運(yùn)算或邏輯運(yùn)算同于計(jì)算機(jī)中高級編程語言,如:賦值:#i=#j;減:#i=#j-#k。變量的運(yùn)算次序依次為:(1)函數(shù);(2)乘、除類運(yùn)算(*、/、AND);(3)加、減類運(yùn)算(+、-、OR、XOR)。

2.3轉(zhuǎn)移和循環(huán)

轉(zhuǎn)移和循環(huán)在程序中,使用GOTO語句和IF語句可以改變控制的流向。有3種轉(zhuǎn)移和循環(huán)操作可供使用:(1)無條件轉(zhuǎn)移(GOTO語句)執(zhí)行完GOTO語句后,使程序轉(zhuǎn)移到標(biāo)有順序號為n的程序段;例如:GOTO90、GOTO#6。(2)條件轉(zhuǎn)移(IF語句)IF之后指定條件表達(dá)式。如果指定的條件表達(dá)式滿足時(shí),轉(zhuǎn)移到標(biāo)有順序號n的程序段。如果指定的條件表達(dá)式不滿足,則執(zhí)行下個(gè)程序段。(3)循環(huán)(WHILE語句)在WHILE后指定一個(gè)條件表達(dá)式,當(dāng)指定條件滿足時(shí),執(zhí)行從DO到END之間的程序,否則,轉(zhuǎn)到END后的程序段。2.4宏程序的調(diào)用(1)非模態(tài)調(diào)用G65格式G65P-L-〈自變量賦值〉;其中:P為指定宏程序號;L為重復(fù)調(diào)用次數(shù)(1~9999,1次時(shí)L可省略);自變量賦值是由地址及數(shù)值構(gòu)成,用以對宏程序中的局部變量賦值。(2)模態(tài)調(diào)用G66、G67一旦指定G66,那么在以后的含有軸移動命令的段執(zhí)行之后,地址P所指定的宏被調(diào)用,直到發(fā)出G67命令,該方式被取消。格式G66P-L-〈自變量賦值〉,含義同G65。

3宏程序的應(yīng)用

3.1進(jìn)行參數(shù)化加工

在宏程序中通過指定變量替代給出的數(shù)值,實(shí)現(xiàn)加工。如圖1所示加工一螺旋槽,它在旋轉(zhuǎn)的過程中,從起點(diǎn)開始螺旋線到圓心的距離時(shí)刻在變化,每一點(diǎn)的坐標(biāo)很難計(jì)算,運(yùn)用宏程序就十分簡單。宏程序如下:OXXXXG41D1G1X-24Y0F100;(起點(diǎn)位置)#1=24(起點(diǎn)到原心的距離)#2=-180(起始角)#3=20(終點(diǎn)到圓心距離與起點(diǎn)到圓心距離之差)#4=44(終點(diǎn)到原點(diǎn)距離)#5=#3/450(每轉(zhuǎn)1度相對于原點(diǎn)的變化量)N10#6=#1*COS[#2](螺旋線參數(shù)方程)#7=#1*sin[#2](螺旋線參數(shù)方程)G1X#6Y#7(更新角度)#1=#1+#5(新點(diǎn)到原點(diǎn)的距離)#2=#2+1(角度的變化值)IF[#1GE#4]GOTO20(條件判斷)GOTO10M99在一個(gè)零件加工過程中,若要加工螺旋槽,只要在主程序中調(diào)用語句G65OXXXX,當(dāng)加工參數(shù)發(fā)生變化時(shí),如起點(diǎn)、終點(diǎn)、位置等,只要改變調(diào)用程序中相應(yīng)的參數(shù)就可以滿足要求。這就說明加工一組同類零件,我們可以通過編制宏程序,把同類零件中變化參數(shù)用變量表達(dá),調(diào)用程序時(shí),根據(jù)實(shí)際值賦給相對應(yīng)的變量,從而實(shí)現(xiàn)同類零件的加工,使程序簡化。

3.2實(shí)現(xiàn)中斷處理功能

3.2.1中斷型用戶宏程序在數(shù)控機(jī)床里,執(zhí)行加工程序時(shí),需要輸入一個(gè)中斷信號來調(diào)用另一程序,這個(gè)功能稱為中斷型宏程序。使用中斷型宏程序,在用戶執(zhí)行任何一個(gè)程序時(shí),都可以調(diào)用另一個(gè)程序,滿足即時(shí)需要[3]。3.2.2中斷型程序應(yīng)用格式M96PXXXX(用戶宏程序中斷生效)M97(用戶宏程序中斷取消)當(dāng)加工程序中出現(xiàn)M96PXXXX時(shí),輸入中斷信號(UINT),轉(zhuǎn)而執(zhí)行PXXXX程序,當(dāng)出現(xiàn)M97,中斷信號的輸入被忽略,回到原程序,并且在中斷程序執(zhí)行期間,不得輸入中斷信號,如圖2所示。圖2中斷型用戶宏程序功能加工時(shí)刀具與工件接觸會產(chǎn)生磨擦,刀具產(chǎn)生磨損或破損,直接導(dǎo)致零件質(zhì)量下降,加工效率降低。通過刀具的監(jiān)測系統(tǒng)進(jìn)行跟蹤,并運(yùn)用宏指令中斷功能可以及時(shí)發(fā)現(xiàn)問題。當(dāng)發(fā)現(xiàn)刀具出現(xiàn)問題,無法繼續(xù)加工時(shí),刀具監(jiān)測系統(tǒng)首先發(fā)出信號,接著執(zhí)行中斷程序功能實(shí)現(xiàn)換刀,再加工,程序如下:OXXXX#501=#5043(存儲中斷處的Z坐標(biāo))G28G91Z0(返回參考點(diǎn))#503=#503+1(刀具更新)M06T#503(換刀)#504=#4119(讀取主軸轉(zhuǎn)速)M03S#504(轉(zhuǎn)動主軸)G90G43G01Z#501F200H#503(刀具經(jīng)長度補(bǔ)償后回到原處)M99

4結(jié)語

由于宏程序是運(yùn)用變量作為參數(shù)進(jìn)行編程,并能對變量進(jìn)行讀取,因此利用宏程序可以提高加工效率,完善和擴(kuò)展機(jī)床的功能,可解決一些用常規(guī)編程方法無法解決的問題。

參考文獻(xiàn):

[1]程禮勇.宏程序在數(shù)控加工中的應(yīng)用[J].四川冶金,2018(5):49-52.

[2]章勇.FANUC系統(tǒng)宏程序在橢圓類零件數(shù)車加工中的運(yùn)用[J].內(nèi)燃機(jī)與配件,2019(20):2.

[3]王勇.FANUC中斷型用戶宏程序的應(yīng)用[J].金屬加工(冷加工),2012(20):57-58.

作者:姜廣美 單位:鎮(zhèn)江高等職業(yè)技術(shù)學(xué)校