PC+TurboPMAC實現(xiàn)開放式數(shù)控系統(tǒng)
圖3為數(shù)控系統(tǒng)的工作流程,順序由PC、TurboPMAC和伺服驅(qū)動系統(tǒng)三部分完成整個數(shù)控過程。該控制流程在組成結(jié)構(gòu)上與目前基于“PC+PMAC”并聯(lián)機床數(shù)控系統(tǒng)的研究成果相比,最大特點就是將粗插補和逆運動學(xué)變換嵌入到TurboPMAC中,使3PRS-XY混聯(lián)機床數(shù)控系統(tǒng)實時控制性能明顯提高。
圖3 數(shù)控系統(tǒng)工作流程
并聯(lián)機床控制是并聯(lián)機床研究的關(guān)鍵技術(shù),也是難點,比傳統(tǒng)機床的控制更為復(fù)雜。傳統(tǒng)機床的每一個自由。度均有一套專用的伺服驅(qū)動系統(tǒng),每個自由度的運動是獨立的。并聯(lián)機床的自由度是耦合的,刀具在操作空間的運動是關(guān)節(jié)空間伺服運動的非線性映射。刀尖軌跡規(guī)劃和編程在虛軸上進行,一般基于笛卡兒坐標,而實際驅(qū)動軸在并聯(lián)桿系的節(jié)點上,是基于關(guān)節(jié)坐標的,它們之間的運動是非線性關(guān)系。因此,必須通過機構(gòu)的逆運動學(xué)進行變換,將虛軸的規(guī)劃量轉(zhuǎn)換為實軸的控制量,該過程又稱為虛實映射。由于虛實變換具有很強的非線性,為保證精度,在施行運動學(xué)變換前,還必須首先對規(guī)劃軌跡(包括直線段)進行數(shù)據(jù)點密化,即在笛卡兒坐標空間中進行粗插補。通過粗插補處理,可以有效地減少由于非線性映射造成的原理性誤差。采用極小的采樣周期進行粗插補,所產(chǎn)生的此類誤差甚至可忽略不計,但插補所產(chǎn)生的大量的數(shù)據(jù)需要傳送到運動控制器中,由于通訊速率的限制而導(dǎo)致在線實時控制功能難以實現(xiàn)。本系統(tǒng)充分利用了TurboPMAC提供的運動學(xué)計算功能,將逆運動學(xué)計算程序下載到TurboPMAC中,并且由Turbo PMAC來完成粗插補處理,極大地降低了PC與TurboPMAC之間的數(shù)據(jù)傳輸量,提高了數(shù)控系統(tǒng)的實時性能。粗插補采用了時間分割算法,通過TurboPMAC提供的段細分功能實現(xiàn),并通過特定的I變量設(shè)定粗插補周期。精插補采用TurboPMAC內(nèi)置的樣條插補功能,以此來提供伺服控制所需的位置指令數(shù)據(jù)。
控制系統(tǒng)的這種設(shè)計方法,使數(shù)控加工程序的運行過程不再依賴于上位機操作系統(tǒng)的實時性能,完全通過TurboPMAC自身完成混聯(lián)機構(gòu)的運動控制。同時可直接利用TurboPMAC提供的C代碼調(diào)用功能和刀具半徑補償功能,降低了系統(tǒng)的開發(fā)周期,提高整個數(shù)控系統(tǒng)的實時控制功能。
5 數(shù)控系統(tǒng)軟件設(shè)計
數(shù)控系統(tǒng)軟件基于Windows操作系統(tǒng)平臺,用Borland的C++Builder6.0開發(fā)。軟件系統(tǒng)采用多任務(wù)調(diào)度模式開發(fā),根據(jù)預(yù)定的調(diào)度策略調(diào)整各功能事件的運行狀態(tài)。圖4所示,整個任務(wù)系統(tǒng)包括兩大模塊:系統(tǒng)管理和機床接口。由于運動學(xué)程序已嵌入到TurboPMAC中,數(shù)控系統(tǒng)軟件不再對運動學(xué)變換和插補進行任務(wù)分配。
圖4 控制系統(tǒng)軟件模塊
系統(tǒng)管理模塊主要完成數(shù)控程序的預(yù)處理和人機信息交互,其中:參數(shù)設(shè)置模塊用于設(shè)置刀具參數(shù)設(shè)置和機床結(jié)構(gòu)參數(shù);文件管理模塊用于載人、存儲或編輯NC加工代碼程序;自動操作(Auto)模塊完成數(shù)控程序的自動下載和運行控制;手動操作(MDA)模塊可手動輸入單條數(shù)控指令,直接控制機床單步運動;點動操作(Jog)模塊控制機床各虛擬軸的點動運行,進行刀具位置調(diào)整和工件坐標系的確定;仿真模塊根據(jù)加工程序進行機構(gòu)的運動學(xué)仿真,校驗作業(yè)空間和運動干涉;軌跡跟蹤模塊實時顯示電機運動軌跡和虛軸刀尖軌跡;機床狀態(tài)模塊顯示刀尖坐標值、主軸轉(zhuǎn)速、進給速度、操作狀態(tài)和故障狀態(tài)等信息;誤差補償模塊動態(tài)加載誤差補償規(guī)則、算法和數(shù)據(jù),修正運動控制量,減小加工誤差。誤差補償數(shù)據(jù)可通過專用儀器檢查刀尖位置獲得,也可來源于加工過程中的誤差測量統(tǒng)計。
機床接口模塊負責(zé)處理與TurboPMAC有關(guān)的任務(wù),其中:通訊模塊用于建立PC與Turbo PMAC之間的數(shù)據(jù)通訊渠道;卡設(shè)置模塊完成TurboPMAC的初始參數(shù)配置;實時監(jiān)控模塊用于完成數(shù)控程序和數(shù)控命令的下載,并實時檢查TurboPMAC數(shù)據(jù)區(qū)狀態(tài)和伺服系統(tǒng)運行狀態(tài),將檢查數(shù)據(jù)傳送到軌跡顯示模塊和機床狀態(tài)顯示模塊,實現(xiàn)刀具軌跡、伺服軸運動軌跡、控制狀態(tài)和故障報警的實時顯示。
6 結(jié)束語
本設(shè)計減輕了主機運行和數(shù)據(jù)通訊負荷,提高了控制的實時性能和主機的管理功能。軟件系統(tǒng)充分利用了Windows平臺的資源優(yōu)勢,采用面向?qū)ο蟮脑O(shè)計方法建立友好的用戶操作界面和任務(wù)調(diào)度體系,使整個系統(tǒng)模塊化程度高、可操作性好且功能便于擴展。
c++相關(guān)文章:c++教程
評論