BKX-I型變軸數(shù)控機(jī)床的開放式數(shù)控系統(tǒng)
0 前言
本文引用地址:http://m.butianyuan.cn/article/201612/329090.htm北京理工大學(xué)自行研制的基于Stewart 原理的BKXI型變軸數(shù)控機(jī)床如圖1 所示。是通過控制6 根可伸縮桿的伸縮運(yùn)動實(shí)現(xiàn)動平臺6個自由度的變化,從而帶動刀具實(shí)現(xiàn)6 自由度的加工。本文介紹與之相配套的基于IPC+PMAC硬件平臺和Win2000、Vc6.0、Pcomm32pro 軟件平臺的開放式數(shù)控系統(tǒng),該系統(tǒng)采用模塊化設(shè)計(jì),面向用戶,操作方便,具有良好的易維護(hù)性和可擴(kuò)展性。
圖1 BKX- I 變軸數(shù)控機(jī)床
1 BKX- I 型變軸機(jī)床的數(shù)控系統(tǒng)
1.1 數(shù)控系統(tǒng)的硬件構(gòu)成及實(shí)現(xiàn)
該數(shù)控系統(tǒng)采用上下位機(jī)(即工業(yè)控制機(jī)IPC+多軸控制卡PMAC) 模式的硬件數(shù)控結(jié)構(gòu),如圖2 所示。
圖2 數(shù)控系統(tǒng)硬件構(gòu)成
IPC 充分利用Windows2000 以及其它主流操作系統(tǒng)的普及性,實(shí)現(xiàn)對系統(tǒng)方便的管理及維護(hù);PMAC 則完成對機(jī)床的6 + 1軸運(yùn)動的實(shí)時控制以及對開關(guān)量具體實(shí)時控制。
上位機(jī)與下位機(jī)之間的通訊采用總線通訊方式。下位機(jī)實(shí)時監(jiān)測和保存機(jī)床的運(yùn)動狀態(tài),并根據(jù)上位機(jī)的要求和外部機(jī)床開關(guān)量的信號對機(jī)床進(jìn)行實(shí)時的控制。上位機(jī)則定時查詢下位機(jī)的工作狀態(tài)以及下位機(jī)保存的機(jī)床狀態(tài)信息,如PMAC 緩沖區(qū)的大小、機(jī)床開關(guān)量信號等等,然后根據(jù)下位機(jī)的工作狀態(tài)、機(jī)床的工作狀態(tài)以及工作人員的要求對下位機(jī)通訊,同時給工作人員提供相應(yīng)的提示。
BKX-I型變軸機(jī)床不同于傳統(tǒng)機(jī)床,其6個自由度是耦合在一起的,無論進(jìn)行什么樣的運(yùn)動都是基于6條腿的協(xié)調(diào)運(yùn)動實(shí)現(xiàn)。主軸的運(yùn)動是相對獨(dú)立于這6條腿運(yùn)動的,采用變頻器控制,實(shí)現(xiàn)無級變速,考慮到PMAC 是8軸控制卡,利用容余軸的控制通道,本系統(tǒng)將主軸也加入到PMAC 的控制中來,具體實(shí)現(xiàn)如下:
(1) 在PMAC 卡中把6 條腿的協(xié)調(diào)運(yùn)動控制設(shè)定在一個坐標(biāo)系&1 內(nèi),主軸運(yùn)動則設(shè)定在另一個坐標(biāo)系&2 內(nèi)。
(2) 主軸的運(yùn)行模式是速度模式, IPC通過對PMAC第4軸控制通道的DAC存儲單元進(jìn)行直接賦值操作,使DAC發(fā)出0到10v 的模擬電壓給變頻器,從而實(shí)現(xiàn)對主軸速度的控制。6條腿采用速度-位移- 時間控制模式, IPC把軌跡點(diǎn)下載給PMAC,PMAC 根據(jù)已設(shè)定好參數(shù)完成對6條腿的實(shí)時控制。
(3) 對主軸電機(jī)的開啟和正反轉(zhuǎn)的控制是利用PMAC 的I/O實(shí)現(xiàn)的。IPC通過對相應(yīng)I/O的地址直接賦值來操縱繼電器的開關(guān), 以此實(shí)現(xiàn)對主軸電機(jī)的開啟和換向功能以及實(shí)現(xiàn)對冷卻泵的開啟功能。潤滑和冷卻的實(shí)現(xiàn)也是同樣的。
對刀儀和工件定位器的信號也是通過PMAC的I/O口與PMAC進(jìn)行通訊的,但此時需要PMAC 后臺PLC的定時掃描。上位機(jī)定時掃描下位機(jī)保存的信息,然后上位機(jī)根據(jù)所得信息作出相應(yīng)的反應(yīng),實(shí)現(xiàn)刀具對刀和工件定位功能。
1.2 數(shù)控系統(tǒng)的軟件任務(wù)調(diào)度
變軸機(jī)床的數(shù)控系統(tǒng)是一個多任務(wù)調(diào)度的操作系統(tǒng)。任務(wù)調(diào)度是實(shí)現(xiàn)數(shù)控系統(tǒng)軟件操作的控制核心。它實(shí)時監(jiān)控各任務(wù)的狀態(tài),決定任務(wù)獲取CPU 的優(yōu)先權(quán),并根據(jù)調(diào)度的策略改變?nèi)蝿?wù)的狀態(tài)。任務(wù)的劃分則主要根據(jù)各個事件的相互獨(dú)立性來劃分,根據(jù)面向?qū)ο蠛烷_放式數(shù)控系統(tǒng)的思想,本數(shù)控系統(tǒng)的任務(wù)主要劃分為:下位機(jī)實(shí)時任務(wù)調(diào)度和上位機(jī)多任務(wù)調(diào)度,如圖3所示。
圖3 數(shù)控系統(tǒng)的任務(wù)調(diào)度
1.2.1 數(shù)控系統(tǒng)的下位機(jī)實(shí)時多任務(wù)調(diào)度
顧名思義實(shí)時任務(wù)是指實(shí)時性要求較高的任務(wù),需要較高的優(yōu)先權(quán),實(shí)時任務(wù)又分為以下幾個任務(wù):
(1) PLC掃描任務(wù):下位機(jī)后臺PLC任務(wù)是周期性掃描機(jī)床來完成某些順序控制。
(2) I/O操作任務(wù):下位機(jī)根據(jù)上位機(jī)的命令打開和關(guān)閉I/O ,同時監(jiān)控I/O的輸入。
(3)伺服控制:下位機(jī)根據(jù)上位機(jī)傳輸?shù)闹噶詈退欧姍C(jī)的狀態(tài),實(shí)時地進(jìn)行伺服控制,伺服更新周期為442μm。
(4) 主軸電機(jī)驅(qū)動任務(wù):下位機(jī)根據(jù)上位機(jī)的命令完成主軸電機(jī)速度的控制。
(5) 實(shí)時監(jiān)控任務(wù):下位機(jī)根據(jù)PLC掃描以及伺服驅(qū)動器反饋信號完成對機(jī)床工作狀態(tài)的實(shí)時監(jiān)控。
(6) 精插補(bǔ)任務(wù):下位機(jī)根據(jù)規(guī)定的插補(bǔ)周期和插補(bǔ)模式,對各軸的軌跡進(jìn)行相應(yīng)的細(xì)分插補(bǔ)。
1.2.2 數(shù)控系統(tǒng)的上位機(jī)多任務(wù)調(diào)度
上位機(jī)多任務(wù)調(diào)度主要包括:
(1) 軌跡規(guī)劃任務(wù):完成某些特定曲線軌跡點(diǎn)的規(guī)劃和生成任務(wù)。
(2) 文件操作任務(wù):完成虛擬軸坐標(biāo)文件、傳統(tǒng)的G代碼文件和機(jī)床6軸文件的打開和存儲任務(wù)。
(3)工作空間校驗(yàn)任務(wù):對經(jīng)過了軌跡規(guī)劃、粗插補(bǔ)的文件進(jìn)行空間校驗(yàn),以確認(rèn)刀位軌跡是否符合機(jī)床的操作空間要求。
(4)參數(shù)管理任務(wù):實(shí)現(xiàn)對機(jī)床結(jié)構(gòu)基本參數(shù)、運(yùn)行參數(shù)和刀具參數(shù)的管理任務(wù)。
(5)粗插補(bǔ)任務(wù):對已有的軌跡點(diǎn)進(jìn)行細(xì)分,精確控制機(jī)床運(yùn)動的軌跡。
(6)刀具補(bǔ)償任務(wù):補(bǔ)償因刀具半徑不同和刀具長度不同,所造成的機(jī)床實(shí)際軌跡點(diǎn)失真問題。
(7)界面管理任務(wù):實(shí)現(xiàn)工作人員對操作界面的管理,同時通過人機(jī)界面上的機(jī)床操作面板完成對機(jī)床運(yùn)動的控制,圖4為數(shù)控系統(tǒng)的人機(jī)界面。
圖4 人機(jī)界面
(8)上下位機(jī)的通訊任務(wù):在win2000 操作系統(tǒng)環(huán)境下, IPC通過調(diào)用Pcomm32pro 動態(tài)連接庫,實(shí)現(xiàn)上下位機(jī)的通訊,包括對PMAC 緩沖區(qū)狀態(tài)的查詢?nèi)蝿?wù)、PMAC 程序運(yùn)行狀態(tài)查詢?nèi)蝿?wù)、IPC 程序下載任務(wù)和定位消息查詢?nèi)蝿?wù)等等。
(9) 虛實(shí)變換任務(wù):完成虛擬軸坐標(biāo)和實(shí)軸坐標(biāo)的轉(zhuǎn)換。
(10) 三維仿真顯示任務(wù):為了診斷加工中存在的各種可能錯誤,可以先進(jìn)行仿真操作,模擬機(jī)床的實(shí)際運(yùn)動,以保證實(shí)際加工的正確性。
(11) 實(shí)時仿真任務(wù):以圖形的方式,實(shí)時地顯示刀尖的軌跡點(diǎn)位置,使操作人員易于監(jiān)控機(jī)床的走位。
(12) 走位文顯任務(wù):以數(shù)字的方式,實(shí)時顯示機(jī)床刀尖軌跡點(diǎn)在虛軸坐標(biāo)系下的位置和6 條腿的實(shí)際伸長量。
(13) 運(yùn)行狀態(tài)顯示任務(wù):實(shí)時顯示機(jī)床的操作狀態(tài)(自動、手動、微動) 、刀具的幾何參數(shù)、主軸電機(jī)的工作狀態(tài)和冷卻泵的工作狀態(tài)等。
(14) 對刀定位任務(wù):完成刀具的定位功能,包括刀具的長度檢測和半徑檢測。
(15) 工件定位任務(wù):根據(jù)PMAC 的狀態(tài)反饋,把相應(yīng)的程序運(yùn)行指令傳給下位機(jī),同時記錄和計(jì)算相應(yīng)的工作狀態(tài)實(shí)現(xiàn)工件在機(jī)床坐標(biāo)系下的定位任務(wù)。
1.2.3 任務(wù)調(diào)度的實(shí)現(xiàn)
任務(wù)調(diào)度的實(shí)現(xiàn)依據(jù)各個任務(wù)的特點(diǎn),分三種情況:
(1) 一次性調(diào)度: 人機(jī)界面、PLC 都是一次打開后就循環(huán)執(zhí)行,前者主要占用IPC 的前臺處理,后者則是PMAC 后臺周期完成。
(2) 條件調(diào)度:當(dāng)某一條件具備時,才調(diào)度相應(yīng)的任務(wù),如插補(bǔ)某一模式的運(yùn)行、工作空間的校驗(yàn)任務(wù),以及對刀和工件定位程序的運(yùn)行等都是屬于這種任務(wù)調(diào)度。
(3) 定時調(diào)度:這種任務(wù)的調(diào)度實(shí)時性較強(qiáng)。伺服控制刷新、機(jī)床位置數(shù)據(jù)采集、PMAC 的緩沖區(qū)的狀態(tài)查詢以及PMAC程序運(yùn)行狀態(tài)的查詢等任務(wù)的調(diào)度都屬于定時任務(wù)調(diào)度。
2 結(jié)論
以IPC + PMAC 為硬件平臺和由win2000、vc6. 0、Pcomm32pro為軟件平臺,開發(fā)了基于BKX- I 型變軸機(jī)床的數(shù)控系統(tǒng)。并且實(shí)現(xiàn)了6 軸聯(lián)動、主軸驅(qū)動、工件定位和對刀等集成控制,系統(tǒng)采用模塊化設(shè)計(jì),面向用戶,對此類機(jī)床的產(chǎn)業(yè)化奠定了基礎(chǔ)。
評論