王 彬,楊建芳,郭 妍,王振龍,遲關(guān)心
(1.北京市電加工研究所,北京100191;2.哈爾濱工業(yè)大學(xué)機(jī)電工程學(xué)院,黑龍江哈爾濱150001)
電火花加工是一個(gè)非常耗時(shí)的過(guò)程,這就要求系統(tǒng)具有在長(zhǎng)時(shí)間加工中保持穩(wěn)定的能力。同時(shí),為了保證電火花加工數(shù)控系統(tǒng)軟件的實(shí)時(shí)性,理想的開(kāi)發(fā)平臺(tái)應(yīng)該是實(shí)時(shí)多任務(wù)的操作系統(tǒng),如Vx-Works、pSOS和NT+RTX等。但這些操作系統(tǒng)都是商業(yè)化產(chǎn)品,大多較昂貴且開(kāi)放性較差。雖然Windows操作系統(tǒng)應(yīng)用很廣,但它屬于非實(shí)時(shí)操作系統(tǒng)且實(shí)時(shí)擴(kuò)展性能不是很理想,制約了自身在高性能數(shù)控領(lǐng)域中的應(yīng)用。近年來(lái),一些基于 Linux操作系統(tǒng)的實(shí)時(shí)改造方案的誕生,為數(shù)控系統(tǒng)軟件的實(shí)時(shí)開(kāi)發(fā)平臺(tái)提供了很多更好的選擇,并得到了廣泛的應(yīng)用。另外,系統(tǒng)的開(kāi)放性可使功能擴(kuò)展變得簡(jiǎn)單,使其能及時(shí)地滿(mǎn)足新的技術(shù)要求[1]。
開(kāi)放式數(shù)控系統(tǒng)采用模塊化設(shè)計(jì)方案,根據(jù)不同的功能類(lèi)型將系統(tǒng)劃分為各功能模塊,模塊間通過(guò)特定的通信方式進(jìn)行彼此間的通信,使各模塊既獨(dú)立又能形成統(tǒng)一的整體,增強(qiáng)整個(gè)EDM數(shù)控系統(tǒng)的開(kāi)放性、可移植性和可擴(kuò)展性等[2]。
電火花加工數(shù)控系統(tǒng)中的任務(wù)可理解為完成特定功能的程序模塊。
按功能可劃分為加工控制任務(wù)和輔助管理任務(wù)。直接與數(shù)控程序運(yùn)行有關(guān)的任務(wù)稱(chēng)為加工控制任務(wù),其他任務(wù)為輔助管理任務(wù),負(fù)責(zé)數(shù)控代碼的準(zhǔn)備及其他一些程序的管理功能。
按任務(wù)激活的時(shí)機(jī)可劃分為隨機(jī)任務(wù)和周期任務(wù)。隨機(jī)任務(wù)包括外部事件觸發(fā)的隨機(jī)任務(wù)(如:鍵盤(pán)的輸入、命令的選擇、遠(yuǎn)程通訊等)以及內(nèi)部事件觸發(fā)的隨機(jī)任務(wù)(如:故障診斷、錯(cuò)誤處理、緊急狀態(tài)處理等)。周期任務(wù)主要是指在加工控制過(guò)程中的插補(bǔ)任務(wù)、搖動(dòng)控制、抬刀控制、伺服控制等按一定的規(guī)律周期性發(fā)生的任務(wù)。
按任務(wù)處理的優(yōu)先級(jí)別可分為實(shí)時(shí)任務(wù)和非實(shí)時(shí)任務(wù)。實(shí)時(shí)任務(wù)在系統(tǒng)中的優(yōu)先級(jí)別要求高,在任務(wù)觸發(fā)時(shí),要求系統(tǒng)能做到即時(shí)的響應(yīng)。這類(lèi)任務(wù)是數(shù)控加工中的關(guān)鍵任務(wù),必須保證它的優(yōu)先處理。如:加工控制中的插補(bǔ)任務(wù)、伺服任務(wù)及錯(cuò)誤處理等任務(wù)都屬于實(shí)時(shí)任務(wù)的范疇。非實(shí)時(shí)任務(wù)對(duì)任務(wù)實(shí)時(shí)性的要求不高,只要保證在某一時(shí)間間隔內(nèi)能處理即可。如:系統(tǒng)加工的輔助工作和系統(tǒng)管理工作,像大部分的界面操作任務(wù)、各種裝備狀態(tài)的顯示任務(wù)及代碼的解釋和預(yù)處理任務(wù)等。
數(shù)控系統(tǒng)控制軟件是實(shí)時(shí)多任務(wù)的大型軟件。依據(jù)開(kāi)放式數(shù)控系統(tǒng)的結(jié)構(gòu)框架和對(duì)實(shí)時(shí)性的要求,可將系統(tǒng)劃分為三部分(圖1)。
圖1 數(shù)控系統(tǒng)軟件結(jié)構(gòu)圖
用戶(hù)層包括文件管理、系統(tǒng)參數(shù)管理、編輯器及各種功能(如:坐標(biāo)設(shè)定、定位、移動(dòng)、加工等)的參數(shù)輸入等人機(jī)交互部分。其中,系統(tǒng)參數(shù)管理包括數(shù)控系統(tǒng)配置參數(shù)、電機(jī)配置參數(shù)、機(jī)床配置參數(shù)、電源配置參數(shù)、進(jìn)給與快進(jìn)速度設(shè)定參數(shù)、螺距誤差與反向間隙補(bǔ)償參數(shù)等。
編譯層包括NC程序編譯解碼、插補(bǔ)準(zhǔn)備、坐標(biāo)旋轉(zhuǎn)、坐標(biāo)鏡像、坐標(biāo)平移、軸交換等的計(jì)算,以及數(shù)據(jù)初始化(包括加工前電源數(shù)據(jù)、錯(cuò)誤狀態(tài)監(jiān)測(cè)數(shù)據(jù)等)。
控制層包括電機(jī)運(yùn)動(dòng)(如:手控盒移動(dòng)、自動(dòng)移動(dòng)、找極限移動(dòng)、定位移動(dòng)等),加工中的插補(bǔ)伺服控制、搖動(dòng)、抬刀,以及狀態(tài)監(jiān)測(cè)(如:電火花放電狀態(tài)、螺距補(bǔ)償、反向間隙補(bǔ)償、極限、電機(jī)運(yùn)行狀態(tài)、機(jī)床狀態(tài)如液位浮子、加工液溫度、電阻箱溫度及各種錯(cuò)誤情況)和狀態(tài)顯示(如:電源參數(shù)、坐標(biāo)位置、運(yùn)動(dòng)加工狀態(tài)等)。
系統(tǒng)軟件的工作過(guò)程是:由用戶(hù)層獲得加工程序、系統(tǒng)參數(shù)和工作方式等數(shù)據(jù)信息,并將其存入程序公共數(shù)據(jù)緩沖區(qū);編譯層(代碼處理層)從程序公共數(shù)據(jù)緩沖區(qū)取得數(shù)據(jù)后,對(duì)NC加工程序(包括宏程序和子程序)進(jìn)行解碼展開(kāi)并進(jìn)行數(shù)據(jù)計(jì)算處理,將結(jié)果存入插補(bǔ)公共數(shù)據(jù)緩沖區(qū);控制層從程序公共數(shù)據(jù)緩沖區(qū)取得數(shù)據(jù)后,完成插補(bǔ)、加減速、位置控制、補(bǔ)償?shù)鹊挠?jì)算,將獲得的位置脈沖數(shù)據(jù)量輸入到驅(qū)動(dòng)單元去驅(qū)動(dòng)電機(jī)的運(yùn)動(dòng)。同時(shí)也要控制電源和機(jī)床的其他參數(shù),并實(shí)時(shí)完成狀態(tài)監(jiān)測(cè)和狀態(tài)顯示。該軟件結(jié)構(gòu)模塊化強(qiáng)、層次和調(diào)用關(guān)系清楚。
電火花加工數(shù)控系統(tǒng)軟件的實(shí)時(shí)任務(wù)需要系統(tǒng)軟件實(shí)時(shí)部分來(lái)執(zhí)行,非實(shí)時(shí)任務(wù)則不需要。系統(tǒng)軟件在運(yùn)行時(shí),每當(dāng)用戶(hù)向用戶(hù)管理模塊發(fā)送一個(gè)任務(wù)命令,用戶(hù)管理模塊首先判斷這個(gè)任務(wù)是實(shí)時(shí)任務(wù)還是非實(shí)時(shí)任務(wù)。若該任務(wù)是實(shí)時(shí)任務(wù),用戶(hù)管理模塊通過(guò)模塊間通信將其傳遞給實(shí)時(shí)控制模塊,由實(shí)時(shí)控制模塊來(lái)處理。若該任務(wù)需要和外部硬件進(jìn)行交互,則由實(shí)時(shí)控制模塊與驅(qū)動(dòng)模塊進(jìn)行通信來(lái)完成;若該任務(wù)是非實(shí)時(shí)任務(wù),用戶(hù)管理模塊將其交與Linux內(nèi)核進(jìn)行處理。實(shí)時(shí)任務(wù)的優(yōu)先級(jí)大于任何非實(shí)時(shí)任務(wù)。當(dāng)一個(gè)實(shí)時(shí)任務(wù)到達(dá)時(shí),所有運(yùn)行中的非實(shí)時(shí)任務(wù)必須交出中央處理器的使用權(quán),處理器轉(zhuǎn)而去處理該實(shí)時(shí)任務(wù)。當(dāng)該實(shí)時(shí)任務(wù)處理完畢后,中央處理器再接著處理剛才中斷的非實(shí)時(shí)任務(wù)。
根據(jù)信息來(lái)源的不同,可分為外部信息和內(nèi)部信息。外部信息來(lái)源于硬件,需要從硬件收集。EDM數(shù)控裝備專(zhuān)用硬件將外部信息依次通過(guò)驅(qū)動(dòng)模塊、實(shí)時(shí)控制模塊、模塊間通信傳遞給用戶(hù)管理模塊。PC通用硬件則通過(guò)RT-Linux內(nèi)核和Linux內(nèi)核將外部信息傳遞給用戶(hù)管理模塊。內(nèi)部信息來(lái)源于系統(tǒng)軟件自身。用戶(hù)管理模塊負(fù)責(zé)收集系統(tǒng)軟件中的內(nèi)部信息,在需要的時(shí)候加以整理。
雙核控制三模塊串聯(lián)結(jié)構(gòu)(圖2),其結(jié)構(gòu)清晰,功能分類(lèi)簡(jiǎn)單明了,功能運(yùn)行機(jī)制和數(shù)據(jù)流走向明確,實(shí)時(shí)性強(qiáng),協(xié)調(diào)性好,可移植性強(qiáng),后期維護(hù)、升級(jí)簡(jiǎn)單方便。
圖2 雙核控制三模塊串聯(lián)結(jié)構(gòu)
數(shù)控系統(tǒng)軟件以GUI形式面向用戶(hù),供用戶(hù)進(jìn)行操作。GUI分為主功能界面與若干個(gè)子功能界面(圖3)。
圖3 數(shù)控系統(tǒng)軟件主功能界面
主功能界面在裝備開(kāi)機(jī)后便面向用戶(hù),包含三大模塊:信息顯示模塊、電參數(shù)顯示及調(diào)整模塊、功能按鍵模塊。子功能界面通過(guò)主界面上的功能按鍵調(diào)用,包括坐標(biāo)移動(dòng)子界面、定位子界面、手動(dòng)加工子界面、文件加工子界面、加工履歷子界面、裝備參數(shù)子界面、加工條件子界面、網(wǎng)絡(luò)設(shè)置子界面。
多軸聯(lián)動(dòng)插補(bǔ)算法是數(shù)控系統(tǒng)軟件實(shí)現(xiàn)所有運(yùn)動(dòng)軸彼此配合聯(lián)動(dòng)運(yùn)行的基礎(chǔ)。多軸聯(lián)動(dòng)插補(bǔ)算法采用運(yùn)動(dòng)矢量分配技術(shù),在各軸之間分配脈沖,達(dá)到多軸聯(lián)動(dòng)的目標(biāo)。
矢量分配技術(shù)是基于兩軸聯(lián)動(dòng)插補(bǔ)實(shí)現(xiàn)的,因?yàn)閮奢S聯(lián)動(dòng)插補(bǔ)可實(shí)現(xiàn)直線(xiàn)、二次曲線(xiàn),甚至更高次曲線(xiàn)的插補(bǔ)。
五軸聯(lián)動(dòng)運(yùn)動(dòng)插補(bǔ)是多軸聯(lián)動(dòng)插補(bǔ)的一種特例,本節(jié)首先介紹多軸聯(lián)動(dòng)插補(bǔ)運(yùn)動(dòng)矢量分配技術(shù),然后確定五軸聯(lián)動(dòng)運(yùn)動(dòng)的矢量分配。多軸聯(lián)動(dòng)插補(bǔ)運(yùn)動(dòng)矢量分配技術(shù)可理解為:任何多軸聯(lián)動(dòng)插補(bǔ)都可由兩軸聯(lián)動(dòng)插補(bǔ)通過(guò)矢量分配方法實(shí)現(xiàn)。如:四軸XYZU聯(lián)動(dòng)插補(bǔ)可視為由兩個(gè)二軸聯(lián)動(dòng)插補(bǔ)XY和ZU組成,XY和ZU再視為兩個(gè)軸,運(yùn)用平面二軸聯(lián)動(dòng)插補(bǔ)方法進(jìn)行插補(bǔ),便可得到XYZU四軸聯(lián)動(dòng)插補(bǔ)。
假設(shè)四軸聯(lián)動(dòng)的4個(gè)軸的增量分別為:a1、a2、a3、a4,將這 4個(gè)軸分成兩組,其中 a1、a2是一個(gè)組,a3、a4是另一個(gè)組。兩軸聯(lián)動(dòng)插補(bǔ)算法有很多,應(yīng)用最小偏差法就可分別實(shí)現(xiàn)2個(gè)組中2個(gè)軸的聯(lián)動(dòng)插補(bǔ)。要實(shí)現(xiàn)四軸聯(lián)動(dòng),還要求在2個(gè)組之間實(shí)現(xiàn)聯(lián)動(dòng)。在第一組中,插補(bǔ)到終點(diǎn)時(shí),2個(gè)軸總的進(jìn)給次數(shù)是s1=|a1|+|a2|;同樣,第二組到終點(diǎn)時(shí),總進(jìn)給次數(shù)是 s2=|a3|+|a4|。為了在 2個(gè)組之間均勻地分配進(jìn)給脈沖,利用s1和s2兩個(gè)值和兩軸聯(lián)動(dòng)插補(bǔ)算法就可實(shí)現(xiàn)。具體做法是:首先插補(bǔ)由s1和s2組成的直線(xiàn),如結(jié)果是進(jìn)給 s1方向,則說(shuō)明應(yīng)該由第一組的兩個(gè)軸進(jìn)給,接下來(lái)插補(bǔ)第一組由a1、a2組成的直線(xiàn),插補(bǔ)的結(jié)果驅(qū)動(dòng)實(shí)際的a1軸或a2軸。同理,如插補(bǔ)s1和s2的結(jié)果是進(jìn)給s2方向,則說(shuō)明應(yīng)該由第二組的兩個(gè)軸進(jìn)給,接下來(lái)插補(bǔ)第二組由 a3、a4組成的直線(xiàn),插補(bǔ)的結(jié)果驅(qū)動(dòng)實(shí)際的a3軸或a4軸。
同理,六軸聯(lián)動(dòng)可視為由一個(gè)二軸聯(lián)動(dòng)和一個(gè)四軸聯(lián)動(dòng)組成,八軸聯(lián)動(dòng)可視為由兩個(gè)四軸聯(lián)動(dòng)組成,依此類(lèi)推,便可靈活地得到任意偶數(shù)個(gè)軸的聯(lián)動(dòng)插補(bǔ)算法。當(dāng)軸數(shù)為奇數(shù)個(gè)時(shí),可增加一個(gè)軸,并將其插補(bǔ)距離視為零,便可運(yùn)用偶數(shù)個(gè)軸的插補(bǔ)算法進(jìn)行聯(lián)動(dòng)插補(bǔ)(圖4)。
為驗(yàn)證五軸聯(lián)動(dòng)電火花加工數(shù)控系統(tǒng)的性能,將該系統(tǒng)裝備于五軸聯(lián)動(dòng)電火花加工機(jī)床上,進(jìn)行帶冠整體式雙極渦輪盤(pán)的加工實(shí)驗(yàn)。
圖4 矢量分配六軸聯(lián)動(dòng)插補(bǔ)
渦輪盤(pán)是航天航空發(fā)動(dòng)機(jī)的核心部件,它在高溫、高轉(zhuǎn)速工況下運(yùn)行,工作狀況極為惡劣[3]。為此,國(guó)內(nèi)外新型航天航空發(fā)動(dòng)機(jī)的渦輪盤(pán)均已采用先進(jìn)的帶葉冠式整體結(jié)構(gòu)。帶葉冠整體式渦輪盤(pán)結(jié)構(gòu)形狀復(fù)雜,為半封閉結(jié)構(gòu),甚至采用兩級(jí)輪盤(pán)連體結(jié)構(gòu),空間局限性強(qiáng);其葉片數(shù)量多,相鄰葉片間通道小(最小可達(dá)1.67 mm)、葉片葉型扭曲;且?guī)缀纬叽缇雀?形位公差要求嚴(yán)。傳統(tǒng)的機(jī)械加工很難完成這類(lèi)零件的加工任務(wù),目前國(guó)際上已普遍采用五軸聯(lián)動(dòng)電火花加工技術(shù)加工此類(lèi)零件[4]。本文加工的樣件為兩級(jí)輪盤(pán)連體結(jié)構(gòu),頂徑140 mm,擁有45個(gè)流道,葉片具有強(qiáng)烈的扭曲變形,空間極為狹窄。為完成加工,采用左右兩個(gè)電極進(jìn)行加工,左電極和右電極分別從不同的方向蝕除,最終成形為一個(gè)通道,電極形狀見(jiàn)圖5、圖6。
圖5 左電極
圖6 右電極
雙極帶冠渦輪盤(pán)加工過(guò)程分為粗加工與精加工。粗加工用來(lái)去除加工余量,精加工用來(lái)拷貝葉片形狀。加工開(kāi)始,首先在油槽內(nèi)安裝B旋轉(zhuǎn)軸與基準(zhǔn)球。測(cè)量基準(zhǔn)球中心與B軸中心之間各個(gè)方向的距離。后期更換電極依據(jù)基準(zhǔn)球定位對(duì)刀。加工過(guò)程使用左電極16支,右電極11支,合計(jì)27支。加工時(shí)間合計(jì)約239 h。
圖7是渦輪盤(pán)加工樣件,從圖7可看出,利用本文開(kāi)發(fā)的數(shù)控系統(tǒng)加工的雙極帶冠整體渦輪盤(pán),左右電極重疊區(qū)形狀不存在明顯的搭邊痕跡,沒(méi)有出現(xiàn)積碳現(xiàn)象。在加工過(guò)程中很少出現(xiàn)拉弧、短路和積碳現(xiàn)象,因而本數(shù)控系統(tǒng)加工的雙極渦輪盤(pán)具有很高的加工效率和良好的表面質(zhì)量。經(jīng)用戶(hù)檢測(cè),完全滿(mǎn)足加工要求。
圖7 渦輪盤(pán)加工樣件
由實(shí)驗(yàn)過(guò)程可得出,本數(shù)控系統(tǒng)具有如下優(yōu)點(diǎn):
(1)實(shí)時(shí)性高。本數(shù)控系統(tǒng)可實(shí)時(shí)準(zhǔn)確地檢測(cè)和反饋加工狀態(tài),并根據(jù)加工狀態(tài)實(shí)時(shí)精確地控制電極進(jìn)給或回退,保證了加工精度和表面質(zhì)量。
(2)穩(wěn)定性好。整個(gè)加工過(guò)程中,沒(méi)有出現(xiàn)拉弧、短路和死機(jī)等現(xiàn)象。電極與工件間的間隙電壓能被實(shí)時(shí)檢測(cè),且能很穩(wěn)定地保持在參考電壓左右,整個(gè)加工過(guò)程很穩(wěn)定。
(3)可靠性強(qiáng)。在整個(gè)加工過(guò)程中,數(shù)控系統(tǒng)連續(xù)穩(wěn)定地運(yùn)行,操作系統(tǒng)沒(méi)有出現(xiàn)崩潰現(xiàn)象。加工時(shí),可同時(shí)在同臺(tái)電腦上運(yùn)行其他軟件,未影響操作系統(tǒng)的運(yùn)行。
(1)基于RT-Linux平臺(tái),開(kāi)發(fā)出了適用于電火花加工的新型開(kāi)放式五軸聯(lián)動(dòng)精密數(shù)控系統(tǒng),可進(jìn)行復(fù)雜的曲面及深窄槽等的加工。
(2)采用雙核控制三模塊串聯(lián)結(jié)構(gòu),RT-Linux和Linux分別處理實(shí)時(shí)任務(wù)和非實(shí)時(shí)任務(wù)。結(jié)構(gòu)清晰,功能分類(lèi)簡(jiǎn)單明了,功能運(yùn)行機(jī)制和數(shù)據(jù)流走向明確,實(shí)時(shí)性強(qiáng),協(xié)調(diào)性好,可移植性強(qiáng),后期維護(hù)、升級(jí)簡(jiǎn)單方便。
(3)提出了多軸聯(lián)動(dòng)矢量分配技術(shù),實(shí)現(xiàn)了五軸聯(lián)動(dòng)功能。
(4)運(yùn)用該系統(tǒng)在五軸聯(lián)動(dòng)電火花加工機(jī)床上加工雙極帶冠整體式渦輪盤(pán),加工結(jié)果表明該系統(tǒng)具有實(shí)時(shí)性高、穩(wěn)定性好和可靠性強(qiáng)等特點(diǎn)。
[1] Li Lun.6-axis EDM CNC system based on real-time linux[D].Haerbin:Harbin Institute of Technology,2004.
[2] 黃海鵬.多軸聯(lián)動(dòng)電火花加工數(shù)控系統(tǒng)軟件構(gòu)建及其應(yīng)用研究[D].哈爾濱:哈爾濱工業(yè)大學(xué),2010.
[3] Konig W,Gersch K.Machining nickel-based superalloys[J].Manufacturing Engineering,1999,18(12):102-106.
[4] Bewlay B P,Gigliotti M F X,Hardwicke C U,et al.Net-shape manufacturing of aircraft engine disks by roll forming and hot die forging[J].Journal of Materials Processing Technology,2003,135(2):324-329.