張志強(qiáng),王太勇
(1.天津大學(xué) 機(jī)械工程學(xué)院,天津 300072;2.昆山天大精益數(shù)控科技發(fā)展有限公司,江蘇 昆山
215311)
隨著裝備制造業(yè)及其相關(guān)產(chǎn)業(yè)的不斷發(fā)展,激光數(shù)控切割機(jī)床以其具有非接觸加工,切割速度快、精度高、切縫窄、變形小、熱影響區(qū)小、材料適用范圍廣(可以切割碳鋼、不銹鋼、玻璃、陶瓷、木材等各類材料)、易于實(shí)現(xiàn)自動化、切割形狀基本上不受限制、基本不需要加工模具等優(yōu)勢,在工業(yè)生產(chǎn)中獲得了越來越廣泛的應(yīng)用[1-2]。
作為激光切割機(jī)床的控制核心,激光切割數(shù)控系統(tǒng)是各發(fā)達(dá)國家研制的重要內(nèi)容,其核心技術(shù)不可能通過市場方法獲得。目前主要的研究特點(diǎn)是[3-6]:
對激光切割機(jī)床數(shù)控系統(tǒng)而言,以任務(wù)功能模塊為基礎(chǔ)的結(jié)構(gòu)體系的模塊化有利于用戶根據(jù)自身任務(wù)和具體條件進(jìn)行相應(yīng)系統(tǒng)模塊配置,實(shí)現(xiàn)系統(tǒng)性價(jià)比的最優(yōu)化。
傳統(tǒng)的激光切割機(jī)數(shù)控系統(tǒng)一般屬于封閉式系統(tǒng),用戶很難對于已有系統(tǒng)進(jìn)行二次開發(fā)來進(jìn)一步滿足具體生產(chǎn)的需要。而開放式激光數(shù)控切割系統(tǒng)能夠較好的實(shí)現(xiàn)用戶對于系統(tǒng)二次開發(fā)。
一般數(shù)控機(jī)床利用五軸聯(lián)動就可實(shí)現(xiàn)任意曲面的加工。但對于激光數(shù)控切割系統(tǒng)而言,還應(yīng)增加激光焦位控制軸(一般設(shè)為 F軸)。它是根據(jù)工件材料的類型和厚度自動調(diào)整激光束的焦點(diǎn)位置以實(shí)現(xiàn)激光焦點(diǎn)在整個(gè)激光加工過程中,保證激光束焦點(diǎn)相對于被加工表面具有合理的相對距離。
由于激光加工過程的復(fù)雜性,屬于典型的不確定非線性時(shí)變系統(tǒng),很難用傳統(tǒng)或單一的控制策略來對其加工進(jìn)行精確控制并獲得理想的控制效果。因而,有學(xué)者探索將,模糊控制、專家系統(tǒng)、人工神經(jīng)網(wǎng)絡(luò)等智能控制技術(shù)應(yīng)用于激光加工數(shù)控系統(tǒng)。
通過對激光數(shù)控切割機(jī)床工作時(shí)所承擔(dān)的主要任務(wù)進(jìn)行分析,劃分各功能模塊如圖 1所示,具有實(shí)時(shí)性要求的模塊均已由標(biāo)出。由于 Windows操作系統(tǒng)可以提供友好用戶界面和設(shè)備無關(guān)的圖形接口、方便快捷軟件開發(fā)環(huán)境以及一系列可視化開發(fā)環(huán)境(如 VB、VC等),所以以此操作系統(tǒng)為基礎(chǔ)進(jìn)行數(shù)控系統(tǒng)應(yīng)用軟件開發(fā),可以在保證所開發(fā)系統(tǒng)的功能和穩(wěn)定性的基礎(chǔ)上,使軟件在界面處理、人機(jī)交互、多任務(wù)等方面的開發(fā)難度降低,從而使軟件開發(fā)風(fēng)險(xiǎn)降低和系統(tǒng)研制周期縮短?;诖朔N考慮,本系統(tǒng)是以 Windows操作系統(tǒng)為基礎(chǔ),利用 Visual C++進(jìn)行激光切割機(jī)床數(shù)控系統(tǒng)軟件開發(fā)。
圖1 激光切割機(jī)床數(shù)控系統(tǒng)軟件任務(wù)、實(shí)時(shí)性要求及模塊劃分
由圖 1進(jìn)行分析可知,整個(gè)激光切割機(jī)床數(shù)控系統(tǒng)的任務(wù)可分為三大模塊,系統(tǒng)初始化及自檢模塊、數(shù)控系統(tǒng)控制任務(wù)及管理任務(wù)模塊。在這些大的功能模塊下,又細(xì)分為許多專項(xiàng)功能模塊。各功能模塊互相協(xié)調(diào)以保證數(shù)控激光加工任務(wù)的順利完成。
在各功能模塊任務(wù)中,以控制任務(wù)模塊的實(shí)時(shí)性最強(qiáng),在控制任務(wù)模塊下可細(xì)分為切割機(jī)床進(jìn)給電機(jī)控制模塊、激光器控制模塊和輔助氣體控制模塊,切割機(jī)床進(jìn)給電機(jī)控制模塊主要負(fù)責(zé)各進(jìn)給軸電機(jī)控制,共計(jì)有 X、Y、Z、A、B、F、W七軸 ,其中 X、Y、Z為直線軸,分別用于控制激光頭的 Y、Z向及工作臺的 X向運(yùn)動。A、B軸用于控制激光頭的旋轉(zhuǎn),F軸用于進(jìn)行激光頭的焦位控制,W軸用于控制對某些管類工件(如石油篩管)等的旋轉(zhuǎn)。為操作者使用方便,設(shè)置激光器控制模塊和輔助氣體控制模塊以實(shí)現(xiàn)對激光器和加工所用輔助氣體的實(shí)時(shí)控制。機(jī)床信號數(shù)據(jù)采集任務(wù)由各傳感器與數(shù)據(jù)采集卡完成,所采集的各類信號通過系統(tǒng)硬件平臺和實(shí)時(shí)監(jiān)控模塊進(jìn)行相應(yīng)處理,在實(shí)時(shí)性要求較高的情況下,不可能對各傳感器所采集的信號全部進(jìn)行實(shí)時(shí)處理,進(jìn)行信號監(jiān)控的目的是判斷機(jī)床是否工作在危險(xiǎn)狀態(tài),以決定采取何種應(yīng)急措施;位置控制模塊的功能是利用信號采集模塊所提供的機(jī)床相關(guān)狀態(tài)信息和插補(bǔ)模塊所提供的相關(guān)指令對機(jī)床各進(jìn)給電機(jī)進(jìn)行速度和位置的實(shí)時(shí)控制。插補(bǔ)運(yùn)算模塊、加減速運(yùn)算等模塊的實(shí)時(shí)性較強(qiáng),這類功能模塊在每個(gè)插補(bǔ)周期內(nèi)必須執(zhí)行一次。數(shù)控系統(tǒng)管理任務(wù)模塊下的各功能模塊實(shí)時(shí)性總體來講相對較弱,可以在實(shí)時(shí)性強(qiáng)的功能模塊執(zhí)行完畢后穿插進(jìn)行。
激光切割機(jī)床數(shù)控系統(tǒng)硬件平臺的構(gòu)成如圖 2所示,將機(jī)床各進(jìn)給軸的伺服驅(qū)動器、激光器與輔助氣體控制接口安置在機(jī)床電器柜中,工控機(jī)主板、運(yùn)動控制卡等大部分硬件模塊安置在數(shù)控系統(tǒng)箱中以有效避免強(qiáng)弱電之間的干擾。在工控機(jī)主板和運(yùn)動控制卡之間采用 ISA總線進(jìn)行通訊,并利用雙端口 RAM(DPRAM)來提高上下位機(jī)通訊的實(shí)時(shí)性和可靠性。在任務(wù)模塊實(shí)現(xiàn)的分配上,由工控機(jī)構(gòu)成系統(tǒng)的上位機(jī)來實(shí)現(xiàn)數(shù)控系統(tǒng)主要管理任務(wù)并協(xié)調(diào)與運(yùn)動控制卡的配合,由運(yùn)動控制卡充當(dāng)下位機(jī),完成各種實(shí)時(shí)性較強(qiáng)的任務(wù),主要是各伺服電機(jī)、激光器和輔助氣體的實(shí)時(shí)控制任務(wù)。
圖2 激光切割機(jī)床數(shù)控系統(tǒng)硬件平臺構(gòu)成
通過對激光切割機(jī)床數(shù)控系統(tǒng)的主要功能任務(wù)模塊和數(shù)控機(jī)床硬件結(jié)構(gòu)進(jìn)行分析,并對VC++的多線程任務(wù)機(jī)制進(jìn)行分析,將軟件結(jié)構(gòu)確定如下:
(1)以人機(jī)交互界面管理任務(wù)為主線程,負(fù)責(zé)對其它線程的管理,并完成對用戶輸入的響應(yīng)。
(2)在保證上下位機(jī)通訊的基礎(chǔ)上,切割機(jī)床的激光器和輔助氣體控制、各進(jìn)給軸的位置控制、速度控制、實(shí)時(shí)狀態(tài)監(jiān)控設(shè)置為高優(yōu)先級以保證機(jī)床動作的準(zhǔn)確性和安全性。
(3)插補(bǔ)任務(wù)模塊設(shè)置較高的優(yōu)先級,并在一個(gè)插補(bǔ)周期內(nèi)進(jìn)行一次計(jì)算。
(4)界面刷新,動態(tài)顯示設(shè)置、指令譯碼任務(wù)等模塊任務(wù)的實(shí)時(shí)性要求較低,將其設(shè)置為普通級工作線程,采用時(shí)間片輪轉(zhuǎn)法進(jìn)行處理。
(5)其它任務(wù)單獨(dú)設(shè)為相應(yīng)的任務(wù)模塊,由主線程統(tǒng)一管理。
人機(jī)交互主界面如下圖 3所示:主界面主要由七部分組成,光強(qiáng)和進(jìn)給速度顯示區(qū)用于顯示當(dāng)前激光器出光模式和各伺服電機(jī)的合成進(jìn)給速度;機(jī)床坐標(biāo)區(qū)用于實(shí)時(shí)顯示各進(jìn)給軸的機(jī)床坐標(biāo);激光器信息區(qū)用于顯示激光器當(dāng)前狀態(tài);輔助氣體信息顯示區(qū)用于顯示;限位信息用于顯示各軸限位情況。加工程序區(qū)用于顯示當(dāng)前加工程序及正在加工的程序段,機(jī)床狀態(tài)區(qū)用于顯示機(jī)床正處于何種工作狀態(tài)下。利用下面的 F1至 F9按鈕可進(jìn)入下一級子完成相應(yīng)的功能操作。
圖 3 激光切割機(jī)床數(shù)控系統(tǒng)人機(jī)交互界面設(shè)計(jì)
該系統(tǒng)采用單文檔多模板多視圖的結(jié)構(gòu)形式。此種開發(fā)方式便于系統(tǒng)軟件數(shù)據(jù)的統(tǒng)一存儲和管理,視圖切換和增加方便,有利于系統(tǒng)的二次開發(fā)。關(guān)鍵步驟如下:
(1)加載運(yùn)動控制卡的動態(tài)鏈接庫。目的是建立系統(tǒng)主程序、人機(jī)界面與控制卡的關(guān)聯(lián)。在此過程中,應(yīng)合理設(shè)置控制卡的相關(guān)變量結(jié)構(gòu),正確加載需用的態(tài)鏈接庫函數(shù)并啟用控制卡設(shè)備。
(2)加載文檔模板。根據(jù)系統(tǒng)任務(wù)模塊的具體要求選擇適當(dāng)?shù)哪0孱愋?并加載模板文檔類和模板視圖類等。
(3)設(shè)置各切換界面,并在 CmainFrame類中添加應(yīng)用程序指針和視圖切換函數(shù)等。
(4)加載釋放動態(tài)鏈接庫函數(shù)模塊,以便在加工完畢后,釋放動態(tài)鏈接庫,正確關(guān)閉控制卡設(shè)備。
將工控機(jī)與運(yùn)動控制卡相結(jié)合進(jìn)行模塊化、多軸開放式的激光切割機(jī)床數(shù)控系統(tǒng)研究,符合當(dāng)前激光切割數(shù)控系統(tǒng)的發(fā)展方向,配之以合理高效的加工軌跡控制算法可實(shí)現(xiàn)激光切割的高速和高精度化加工。系統(tǒng)配有網(wǎng)絡(luò)通訊模塊,可實(shí)現(xiàn)異地控制加工,配有開發(fā)功能模塊,便于用戶進(jìn)行二次程序開發(fā),同時(shí)使得用戶可以通過更改系統(tǒng)參數(shù)和選配適當(dāng)軟件模塊,增加了系統(tǒng)的開放性。實(shí)驗(yàn)證明,本系統(tǒng)可滿足數(shù)控機(jī)床所要求的各項(xiàng)加工任務(wù)要求。
[1]張師偉,傅星,楊恒宗,等.基于 DSP、FPGA激光數(shù)控加工系和單片機(jī)的大尺寸統(tǒng)的軟硬件設(shè)計(jì)[J].電子測量技術(shù),2007,30(6):9-13.
[2]王太勇,王濤,楊潔,等.基于嵌入式技術(shù)的數(shù)控系統(tǒng)開發(fā)設(shè)計(jì)[J].天津大學(xué)學(xué)報(bào),2006,39(12):1509-1515.
[3]呂善進(jìn).激光加工數(shù)控系統(tǒng)及狀態(tài)監(jiān)測技術(shù)研究[D].哈爾濱:哈爾濱工業(yè)大學(xué),2007.
[4]劉捷,曾曉雁,李祥友,等.激光數(shù)控加工運(yùn)動控制卡設(shè)計(jì)[J].激光雜志,2004,25(6):88-89.
[5]白建華,劉恒娟,范劍.基于PMAC運(yùn)動控制器的開放式數(shù)控系統(tǒng)[J].機(jī)電工程,2004,21(4):16-19.
[6]楊婕,季忠,劉韌.數(shù)控激光切割機(jī) Z軸機(jī)構(gòu)設(shè)計(jì)[J].機(jī)械設(shè)計(jì)與制造,2008(8):37-39.