常 鵬, 王國(guó)慶, 盧化龍, 王 鵬
(長(zhǎng)安大學(xué) 工程機(jī)械學(xué)院,西安 710064)
數(shù)控機(jī)床作為數(shù)控加工中重要的一種精密設(shè)備,在以往數(shù)控機(jī)床實(shí)操培訓(xùn)中,由于硬件和管理的限制,不便于長(zhǎng)期使用設(shè)備,因此實(shí)際訓(xùn)練不便于實(shí)施,特別是針對(duì)高職院校學(xué)生而言更是如此[1]。為了更好地培訓(xùn)數(shù)控機(jī)床的操作人員,避免培訓(xùn)過(guò)程中造成設(shè)備損壞、降低訓(xùn)練成本,有效解決精密設(shè)備的培訓(xùn)問(wèn)題。國(guó)內(nèi)外的高校和相關(guān)研究機(jī)構(gòu)做了大量研究:文獻(xiàn)[2]中提出了基于物理引擎軟件和渲染硬件,優(yōu)化虛擬場(chǎng)景的渲染,增加虛擬效果;文獻(xiàn)[3]中開發(fā)了通過(guò)圓臺(tái)離散法提供待加工零件模型并配合相應(yīng)的算法實(shí)現(xiàn)虛擬車削仿真系統(tǒng);文獻(xiàn)[4]中采用MVC(Model View Controller)設(shè)計(jì)模式的總體框架設(shè)計(jì)理論以及功能模塊化的設(shè)計(jì)思想設(shè)計(jì)開發(fā)了虛擬沖床仿真系統(tǒng)。
目前,大多數(shù)的虛擬實(shí)訓(xùn)系統(tǒng)集中在單純演示系統(tǒng)運(yùn)動(dòng)的方面,并沒(méi)有結(jié)合數(shù)控機(jī)床的控制器和實(shí)際的加工環(huán)境。因此,本文針對(duì)四軸加工中心提出了一種融合半物理仿真思想[5]的虛擬實(shí)訓(xùn)系統(tǒng)架構(gòu),即采用物理引擎軟件模擬四軸加工中心的實(shí)際運(yùn)動(dòng),采用真實(shí)的機(jī)床控制器控制虛擬模型的運(yùn)動(dòng),并且通過(guò)數(shù)據(jù)采集系統(tǒng)[6]采集傳感器信號(hào)獲取真實(shí)的加工環(huán)境信息的低成本高效率的虛擬實(shí)訓(xùn)系統(tǒng)。最后,以具體的4060型雕刻機(jī)(X/Y/Z線性位移軸+繞X的旋轉(zhuǎn)軸)為原型,設(shè)計(jì)了一款面向四軸加工中心的半物理仿真虛擬實(shí)訓(xùn)系統(tǒng)。
虛擬實(shí)訓(xùn)系統(tǒng)主要由控制器系統(tǒng)、軟件系統(tǒng)和通信模塊組成。半物理仿真虛擬實(shí)訓(xùn)系統(tǒng)架構(gòu)如圖1所示。本系統(tǒng)將數(shù)控機(jī)床中成本較低且具有核心技術(shù)的機(jī)床控制器作為實(shí)物引入仿真回路,將生產(chǎn)成本較高且體積較大的數(shù)控機(jī)床本體用物理引擎軟件的虛擬模型代替。同時(shí),為了提高實(shí)訓(xùn)過(guò)程的全面性和真實(shí)性,系統(tǒng)引入了G代碼輸入?yún)^(qū)進(jìn)行G代碼的編寫[7]。同時(shí),加入數(shù)據(jù)采集系統(tǒng)實(shí)時(shí)采集加工環(huán)境的信息。為了增加用戶的交互體驗(yàn)感,我們將虛擬模型的運(yùn)行界面嵌入到人機(jī)交互界面中。其中,人機(jī)交互界面和機(jī)床控制器之間采用以太網(wǎng)通信,機(jī)床控制器和數(shù)據(jù)采集系統(tǒng)之間采用SPI通信,人機(jī)交互界面和物理引擎軟件之間采用SOCKET通信。

圖1 系統(tǒng)架構(gòu)圖
虛擬實(shí)訓(xùn)系統(tǒng)流程為用戶在人機(jī)交互界面的G代碼輸入?yún)^(qū)中編寫G代碼以及設(shè)定相應(yīng)的參數(shù)值或者直接導(dǎo)入G代碼,設(shè)置完成后,數(shù)據(jù)通過(guò)以太網(wǎng)通信傳輸給機(jī)床控制器。同時(shí),用戶返回到人機(jī)交互界面的虛擬實(shí)訓(xùn)區(qū)設(shè)置相應(yīng)的參數(shù),并且給機(jī)床控制器發(fā)指令調(diào)用程序。機(jī)床控制器得到響應(yīng)后,將控制信號(hào)通過(guò)以太網(wǎng)通信回傳給人機(jī)交互界面。人機(jī)交互界面調(diào)用算法和相應(yīng)程序?qū)⑿畔⑦M(jìn)行處理后,通過(guò)SOCKET通信給物理引擎軟件發(fā)送命令,物理引擎軟件中的虛擬模型即可完成相應(yīng)的加工動(dòng)作。同時(shí),數(shù)據(jù)采集系統(tǒng)通過(guò)傳感器組實(shí)時(shí)采集加工環(huán)境的信息,數(shù)據(jù)經(jīng)過(guò)處理后反饋到人機(jī)交互界面中,實(shí)時(shí)的顯示給用戶。用戶在人機(jī)交互界面上可以進(jìn)行系統(tǒng)設(shè)置,并實(shí)時(shí)觀看虛擬加工場(chǎng)景和被控?cái)?shù)控機(jī)床的加工過(guò)程。
系統(tǒng)的控制器系統(tǒng)設(shè)計(jì)主要包括機(jī)床控制器和數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)。
機(jī)床控制器的主要功能是輸出控制物理引擎軟件中虛擬模型的數(shù)字信號(hào)和接收并處理實(shí)際加工環(huán)境的信息。控制器系統(tǒng)的原理框圖如圖2所示,系統(tǒng)的控制器系統(tǒng)采用一個(gè)主處理器,多個(gè)從處理器的模式[8]。各個(gè)從處理器之間通過(guò)通信建立連接,再由主處理器統(tǒng)一調(diào)度,協(xié)調(diào)處理各自的任務(wù)。主處理器采用STM32F429IGT6芯片,它是基于ARM Cortex-M4內(nèi)核的CPU,含有豐富的接口和外設(shè),除了基本的電源、時(shí)鐘之外還有通用和復(fù)用功能I/O口、DMA通道、JTAG接口、CAN 總線、I2C總線、SPI總線和USB總線等。通信從處理器采用STM32F103ZET6芯片,它通過(guò)SPI總線分別和W5500芯片、數(shù)據(jù)采集系統(tǒng)和運(yùn)動(dòng)從處理器之間建立通信。其中,W5500芯片建立了機(jī)床控制器和人機(jī)交互界面之間的以太網(wǎng)通信。算法從處理器的主要功能是分析和處理數(shù)據(jù)。

圖2 控制器系統(tǒng)的原理框圖
為了提高采集系統(tǒng)的快速性、準(zhǔn)確性和穩(wěn)定性,本系統(tǒng)采用ADAS3023模數(shù)轉(zhuǎn)換器[9]。ADAS3023是一款完整的16位逐次逼近型模數(shù)轉(zhuǎn)換器數(shù)據(jù)采集系統(tǒng),非常適用于多通道數(shù)據(jù)采集和系統(tǒng)監(jiān)控,是一個(gè)系統(tǒng)級(jí)的工業(yè)數(shù)據(jù)采集解決方案。該產(chǎn)品可以以125KSPS的速率同時(shí)對(duì)八通道進(jìn)行采樣,滿足系統(tǒng)的快速性和實(shí)時(shí)性。使用±15 V電源時(shí),ADAS3023能解析的差分輸入范圍高達(dá)±20.48 V。本系統(tǒng)采用ADP1613為ADAS3023提供片內(nèi)輸入多路復(fù)用器所需的±15 V高壓電源,這樣就滿足了系統(tǒng)的準(zhǔn)確性和穩(wěn)定性。
軟件系統(tǒng)主要由人機(jī)交互界面和物理引擎軟件的運(yùn)動(dòng)仿真模塊組成。其中,物理引擎軟件中的運(yùn)動(dòng)仿真模塊是本系統(tǒng)的核心內(nèi)容,它和人機(jī)交互界面嵌套,提高了系統(tǒng)的實(shí)時(shí)性和逼真度。
人機(jī)交互界面的建立采用具有Windows風(fēng)格的人機(jī)交互仿真平臺(tái)。通過(guò)點(diǎn)擊按鈕可以很好地實(shí)現(xiàn)操作員對(duì)仿真模型的運(yùn)動(dòng)控制,并且模型的運(yùn)動(dòng)狀態(tài)信息會(huì)實(shí)時(shí)顯示在操作界面上,這樣就可以增加操作的臨境感[10-11]。人機(jī)交互界面如圖3所示。

圖3 人機(jī)交互界面
本系統(tǒng)采用物理引擎軟件實(shí)現(xiàn)運(yùn)動(dòng)仿真的效果。運(yùn)動(dòng)仿真的效果如圖4所示。在物理引擎軟件中實(shí)現(xiàn)運(yùn)動(dòng)仿真的基本過(guò)程為應(yīng)用三維建模軟件建立四軸加工中心虛擬樣機(jī)幾何模型[12]。再將其零部件經(jīng)格式轉(zhuǎn)換后導(dǎo)入到物理引擎軟件中。同時(shí),根據(jù)實(shí)際四軸加工中心刀具的運(yùn)動(dòng)過(guò)程,設(shè)計(jì)刀具運(yùn)動(dòng)軌跡并應(yīng)用面向?qū)ο蟮木幊陶Z(yǔ)言開發(fā)控制腳本。最后,通過(guò)控制信號(hào)的傳入實(shí)現(xiàn)運(yùn)動(dòng)控制器對(duì)虛擬樣機(jī)的運(yùn)動(dòng)控制,完成機(jī)械零部件的虛擬加工。這時(shí),人機(jī)交互界面還要調(diào)用程序驅(qū)動(dòng)數(shù)據(jù)采集系統(tǒng)采集真實(shí)加工環(huán)境的信息,實(shí)時(shí)顯示在界面上。若遇到溫度過(guò)高等緊急情況,在界面上顯示報(bào)警信息。

圖4 運(yùn)動(dòng)仿真效果圖
為了實(shí)時(shí)觀看虛擬加工過(guò)程,在人機(jī)交互界面中嵌入了運(yùn)動(dòng)仿真模塊的運(yùn)行界面,具體實(shí)現(xiàn)辦法是把運(yùn)動(dòng)仿真模塊生成的.exe程序嵌入到人機(jī)交互界面程序[13-14]。嵌入后系統(tǒng)效果如圖5所示。其中,關(guān)鍵技術(shù)就是SOCKET通信[15]。本系統(tǒng)的SOCKET通信采用C/S(客戶端/服務(wù)器)的架構(gòu)[16]。以人機(jī)交互界面為服務(wù)器,運(yùn)動(dòng)仿真模塊中的虛擬樣機(jī)為客戶端,通過(guò)SOCKET網(wǎng)絡(luò)編程實(shí)現(xiàn)四軸加工中心的運(yùn)動(dòng)控制。具體的實(shí)現(xiàn)過(guò)程是運(yùn)動(dòng)顯示界面中的程序?qū)嵗粋€(gè)ServerThread類,有一個(gè)獨(dú)立的線程來(lái)運(yùn)行。同時(shí),建立一個(gè)監(jiān)聽(tīng)端口等待客戶端的連接。運(yùn)動(dòng)仿真模塊連接服務(wù)器時(shí),要定義接口IP地址和端口號(hào)。這樣就形成了實(shí)時(shí)顯示的效果,增加了系統(tǒng)的視覺(jué)體驗(yàn)感。

圖5 系統(tǒng)效果圖
基于上述的半物理仿真虛擬實(shí)訓(xùn)系統(tǒng)架構(gòu),我們?cè)O(shè)計(jì)了一款4060型雕刻機(jī)的虛擬實(shí)訓(xùn)系統(tǒng)。虛擬實(shí)訓(xùn)系統(tǒng)考慮了四軸加工中心本身的差異性,使本系統(tǒng)最大范圍的適用于不同類型的四軸加工中心訓(xùn)練操作。
虛擬實(shí)訓(xùn)系統(tǒng)的運(yùn)動(dòng)仿真主要在物理引擎軟件中實(shí)現(xiàn),其控制信號(hào)來(lái)自機(jī)床控制器。虛擬加工不僅僅是模擬刀具按程序運(yùn)動(dòng)的過(guò)程,還要模擬切削過(guò)程,即在刀具運(yùn)動(dòng)過(guò)程中,與刀具刀尖重合的工件部分別切削掉。切削的過(guò)程可在物理引擎軟件中工件的變形過(guò)程來(lái)模擬。本系統(tǒng)設(shè)計(jì)過(guò)程中采用destroy指令模擬切削過(guò)程,即將毛坯看成工件與切削層裝配而成的裝配體,當(dāng)?shù)毒哌\(yùn)動(dòng)到與切削層位置重合時(shí),實(shí)時(shí)銷毀切削層,內(nèi)部的工件將實(shí)時(shí)體現(xiàn)出來(lái)。虛擬加工過(guò)程的效果如圖6所示。

圖6 加工過(guò)程效果
四軸加工中心在模擬加工過(guò)程中,實(shí)驗(yàn)環(huán)境中加裝溫度傳感器、濕度和光照等傳感器來(lái)模擬真實(shí)的加工車間環(huán)境,這些傳感器采集的模擬信號(hào)經(jīng)驅(qū)動(dòng)信號(hào)驅(qū)動(dòng)后實(shí)時(shí)的傳輸?shù)饺藱C(jī)交互界面中去,并通過(guò)機(jī)床警報(bào)設(shè)置模塊分析加工過(guò)程的安全性。在機(jī)床控制器、數(shù)據(jù)采集系統(tǒng)和運(yùn)動(dòng)仿真模塊的協(xié)調(diào)配合下,才完成一次加工。加工完成效果如圖7所示。

圖7 加工完成效果圖
本文提出了半物理仿真技術(shù)結(jié)合機(jī)床控制器的虛擬實(shí)訓(xùn)系統(tǒng)架構(gòu)。本架構(gòu)融合了半物理仿真的思想,具有開發(fā)成本低和逼真程度高的特點(diǎn)。基于本系統(tǒng)架構(gòu),我們具體實(shí)現(xiàn)了四軸加工中心的虛擬實(shí)訓(xùn)系統(tǒng),該系統(tǒng)實(shí)現(xiàn)了實(shí)時(shí)演示、多角度觀察的功能,提高了用戶學(xué)習(xí)的樂(lè)趣和積極性,為四軸加工中心的實(shí)訓(xùn)做了很好的鋪墊,達(dá)到理論教學(xué)和實(shí)際操作過(guò)渡結(jié)合的效果。