曹建福,王 浩,劉 軍
(1.西安交通大學(xué) 電信學(xué)院,西安 710049;2.西安理工大學(xué) 自動化與信息工程學(xué)院,西安 710048)
高速高精數(shù)控加工要求在數(shù)控系統(tǒng)中進(jìn)行大量數(shù)據(jù)的傳輸,為了保證數(shù)據(jù)及時準(zhǔn)確地輸送,對系統(tǒng)的實時性和可靠性都提出了很高的要求。一方面,隨著工業(yè)現(xiàn)場環(huán)境和控制對象本身的日益龐雜,外圍設(shè)備與數(shù)控系統(tǒng)的交互信息越來越多;另一方面,一些已經(jīng)具備獨(dú)立性的功能模塊作為一種全新的優(yōu)化方式和拓?fù)浣Y(jié)構(gòu)融入到數(shù)控系統(tǒng)的功能框架中,形成具備網(wǎng)絡(luò)特征協(xié)同處理的數(shù)控系統(tǒng)控制網(wǎng)絡(luò)。因此,采用現(xiàn)場總線構(gòu)建開放結(jié)構(gòu)數(shù)控系統(tǒng)成為一種必然的技術(shù)發(fā)展趨勢。
目前,不少學(xué)者對基于現(xiàn)場總線的數(shù)控系統(tǒng)進(jìn)行了研究。文獻(xiàn)[1,2]構(gòu)建了基于現(xiàn)場總線的開放式架構(gòu)數(shù)控系統(tǒng),實現(xiàn)了系統(tǒng)功能的可重構(gòu)。文獻(xiàn)[3]通過建立同步網(wǎng)絡(luò)模型,解決基于現(xiàn)場總線的控制系統(tǒng)通信,但存在延遲問題。文獻(xiàn)[5]介紹了一種利用藍(lán)牙技術(shù)構(gòu)建一個無線制造網(wǎng)絡(luò)的方法,用該方法取代現(xiàn)有數(shù)控機(jī)床有線通信方式,以此建設(shè)無線制造工業(yè)環(huán)境,該方法在工業(yè)現(xiàn)場的實用性和可靠性還有待驗證。文獻(xiàn)[8]建立了現(xiàn)場總線通信協(xié)議的基本模型,為設(shè)計新的或統(tǒng)一的協(xié)議標(biāo)準(zhǔn)奠定了基礎(chǔ),文獻(xiàn)[10-12]介紹了基于CAN總線的通信機(jī)理,但是針對的是中低擋數(shù)控系統(tǒng),無法滿足高檔數(shù)控裝置對實時性和可靠性的要求。
本文提出了一種分布式的六軸數(shù)控系統(tǒng),CNC控制器與內(nèi)裝式PMC、遠(yuǎn)程操作面板之間數(shù)據(jù)通信采用現(xiàn)場總線,這種數(shù)控系統(tǒng)結(jié)構(gòu)擴(kuò)展性好,而且連線方便。論文設(shè)計了一種面向數(shù)控系統(tǒng)的現(xiàn)場總線協(xié)議,實現(xiàn)現(xiàn)場總線接口能滿足實時性和可靠性要求。
傳統(tǒng)數(shù)控系統(tǒng)大多是采用專用體系結(jié)構(gòu),系統(tǒng)功能固定、人機(jī)界面不靈活、軟硬件開放性差,并且采取集中式控制方式,不利于與其他網(wǎng)絡(luò)設(shè)備進(jìn)行互連?;诂F(xiàn)場總線的開放式數(shù)控系統(tǒng)可以與現(xiàn)場的設(shè)備相連形成一個控制系統(tǒng)網(wǎng)絡(luò),實現(xiàn)分布式的控制。采用現(xiàn)場總線的數(shù)控系統(tǒng)還能根據(jù)機(jī)床廠家和最終用戶的需求,對其軟硬件功能進(jìn)行剪裁和重新構(gòu)造,因此它能夠滿足高檔數(shù)控系統(tǒng)的需要。
本文設(shè)計的加工中心用六軸數(shù)控系統(tǒng),由CNC控制器、顯示與數(shù)據(jù)操作終端、內(nèi)裝式PMC、遠(yuǎn)程操作面板等幾部分組成,總體結(jié)構(gòu)如圖1所示。CNC控制器包括嵌入式工控主板和運(yùn)動控制模板,嵌入式工控主板負(fù)責(zé)數(shù)控系統(tǒng)的人機(jī)界面、數(shù)據(jù)文件管理和加工代碼預(yù)處理等功能。運(yùn)動控制模板采用DSP+FPGA的硬件結(jié)構(gòu),負(fù)責(zé)數(shù)控系統(tǒng)的大多數(shù)實時控制任務(wù),包括代碼譯碼、多軸插補(bǔ)運(yùn)算、速度控制、模式管理等;同時,CNC控制器作為數(shù)控系統(tǒng)的主節(jié)點(diǎn)負(fù)責(zé)控制系統(tǒng)網(wǎng)絡(luò)初始化、協(xié)調(diào)控制節(jié)點(diǎn)數(shù)據(jù)交換以及控制命令發(fā)送等功能。數(shù)控系統(tǒng)的其他分布式控制節(jié)點(diǎn)還包括內(nèi)裝式PMC、遠(yuǎn)程操作面板等,內(nèi)裝式PMC負(fù)責(zé)輸入輸出信號的邏輯控制,實現(xiàn)I/O數(shù)據(jù)掃描、PMC邏輯運(yùn)算功能,遠(yuǎn)程操作面板利用數(shù)字接口,把機(jī)床操作面板的主控制信號送給CNC控制器。這種結(jié)構(gòu)結(jié)合了嵌入式工控主板的開放性和DSP的高速處理能力,具有開發(fā)性高、運(yùn)算速度塊、可靠性高等特點(diǎn)。

圖1 基于現(xiàn)場總線的六軸數(shù)控系統(tǒng)總體結(jié)構(gòu)
CAN協(xié)議是建立在國際標(biāo)準(zhǔn)組織開放系統(tǒng)互連模型之上,其協(xié)議簡單,最高通信速率可達(dá)1Mbit/s,直接傳輸距離高達(dá)10km,采取多主工作方式,高抗電磁干擾性、糾錯能力強(qiáng);同時,CAN接口安裝方便,成本低。因此,本論文選用CAN總線作為PMC與CNC控制器之間的數(shù)據(jù)通信方式。圖2為內(nèi)裝式PMC板的原理結(jié)構(gòu)圖,它的基本I/O點(diǎn)數(shù)是64/64點(diǎn),可擴(kuò)展到128/128點(diǎn)。PMC板使用了TI公司的TMS320F2812數(shù)字處理器,該DSP內(nèi)集成了CAN控制器。

圖2 內(nèi)裝式PMC板原理結(jié)構(gòu)圖
遠(yuǎn)程操作面板也是通過CAN總線與CNC控制器進(jìn)行通信,主要傳送來自操作面板的開關(guān)信號,同時接收來的響應(yīng)信號。遠(yuǎn)程操作面板采用AT89S52單片機(jī),使用獨(dú)立CAN控制器SJA1000T。
高檔數(shù)控系統(tǒng)要實現(xiàn)高速高精控制,這既要在內(nèi)部完成大量的數(shù)據(jù)傳輸,同時還要保證通信的實時性和可靠性。本文定義了一種面向數(shù)控系統(tǒng)的高速現(xiàn)場總線通信協(xié)議,這種協(xié)議能保證數(shù)控系統(tǒng)中各節(jié)點(diǎn)之間的循環(huán)通信周期達(dá)到16ms。協(xié)議采用帶29位報文標(biāo)識符的擴(kuò)展幀,其通信報文形式如表1所示。

表1 CAN總線報文結(jié)構(gòu)
CAN報文由擴(kuò)展的29位標(biāo)識符、1位數(shù)據(jù)類型、1位遠(yuǎn)程發(fā)送請求、4位該幀內(nèi)數(shù)據(jù)段數(shù)據(jù)長度、0~8字節(jié)數(shù)據(jù)段、16位循環(huán)冗余碼CRC、2位應(yīng)答位和1位幀結(jié)尾組成。
CAN標(biāo)識符的分配在設(shè)計通信系統(tǒng)應(yīng)用層協(xié)議時非常重要,它決定了信息和相關(guān)的優(yōu)先權(quán)及信息的等待時間,同時也影響了信息濾波適用性、合理的通信結(jié)構(gòu)適用性和標(biāo)識符使用的效率。報文標(biāo)識符中包含有優(yōu)先標(biāo)記、目標(biāo)地址、源地址、幀類型、幀號、保留位、結(jié)束標(biāo)記,其格式如表2所示。

表2 擴(kuò)展幀報文標(biāo)識符格式
其中,優(yōu)先標(biāo)記(1位)是用來標(biāo)記當(dāng)前幀的優(yōu)先級別。對于正常信息,該位置為1,對于緊急信息(如報警信息、緊急斷電等),將該標(biāo)記置0。該標(biāo)記先于其他幀占用總線,在最短的時間內(nèi)到達(dá)目的地址;
目標(biāo)地址(7位):指定該幀數(shù)據(jù)或信息所要到達(dá)的目的地;
源地址(7位):指定該幀數(shù)據(jù)或信息的來源地址;在數(shù)控系統(tǒng)中,對每個CAN模板都設(shè)定一個地址號,用來區(qū)分不同的設(shè)備。CAN總線上的節(jié)點(diǎn)個數(shù)主要取決于總線驅(qū)動電路,目前最多可達(dá)110個。本文采用了長度為7位的目標(biāo)地址和源地址,可以有128個編碼地址,完全滿足系統(tǒng)需要。
幀類型(1位):用來標(biāo)記該幀數(shù)據(jù)場中的內(nèi)容是要傳輸?shù)臄?shù)據(jù)內(nèi)容還是通訊協(xié)議的控制信息;
幀號(8位):是用來標(biāo)記數(shù)據(jù)拆分后的幀塊序號;由于每個郵箱最多可存放8字節(jié)即64位的數(shù)據(jù),而消息的大小不定,CNC運(yùn)動控制器側(cè)輸入信號有32位,可以直接傳輸給,刀庫表信息和梯形圖程序段卻遠(yuǎn)遠(yuǎn)超過64位,需要分段傳輸。在傳輸超過8字節(jié)長度的數(shù)據(jù)時,按照每塊8字節(jié)對數(shù)據(jù)進(jìn)行拆分,根據(jù)數(shù)據(jù)的先后順序,指定相應(yīng)的幀號,從0遞增。幀號采用8位表示,取值范圍為0~255,用這種方式完全滿足本控制系統(tǒng)的通信需求。
保留(4位):用作擴(kuò)展,可以根據(jù)功能擴(kuò)展的需要增加其他功能;
結(jié)束標(biāo)記(1位):是用來標(biāo)記該數(shù)據(jù)包傳輸過程的結(jié)束。
CAN通信報文數(shù)據(jù)段要傳送的數(shù)據(jù)包括MST代碼、I/O信息、當(dāng)前刀盤位置信息、梯形圖程序、刀庫表信息以及遠(yuǎn)程操作面板信號。
TMS320F2812數(shù)字處理器上集成了增強(qiáng)型CAN(eCAN)總線通信接口,完全支持CAN2.0B總線規(guī)范。同時,帶有32個完全可配置的接收/發(fā)送郵箱,支持消息的定時郵遞功能,最高通信速率可以達(dá)到1Mbps。另外,eCAN模塊能夠?qū)崿F(xiàn)靈活穩(wěn)定的通信,且使用起來非常方便,只要對位時序配置寄存器、屏蔽寄存器、郵箱配置寄存器等相關(guān)寄存器進(jìn)行配置就可以使用。為了增強(qiáng)CAN總線節(jié)點(diǎn)的抗干擾能力,DSP的CAN接口發(fā)送和接收線路并不是直接與PCA82C250的TXD和RXD相連,而是在中間加入了一級高速光耦6N137,UC101、UC103為光耦6N137,這樣就很好地實現(xiàn)了總線上各CAN節(jié)點(diǎn)間的電氣隔離。另外,CAN接口電路采用的雙線差分驅(qū)動,極大地抑制了工業(yè)現(xiàn)場干擾信號的影響,保證了數(shù)控系統(tǒng)通信的可靠性。具體電路如圖3所示。

圖3 CAN總線接口電路圖
選用了飛利浦公司的CAN通信收發(fā)器PCA82C250作為F2812的CAN控制器和物理總線間的接口,以實現(xiàn)對總線的差動發(fā)送和接收功能。將PCA82C250引腳8接地,在高速模式下發(fā)送器輸出級晶體管以最快速度啟動或者關(guān)閉,以保證了數(shù)據(jù)發(fā)送的實時性。
設(shè)計的CAN安全通信軟件包括:CAN模塊初始化模塊、數(shù)據(jù)發(fā)送模塊、數(shù)據(jù)接收模塊等。在使用CAN接口進(jìn)行通信之前,必須先對其進(jìn)行初始化,并僅當(dāng)DSP處于初始化模式下時才能進(jìn)行初始化。接口初始化結(jié)束后,還需要進(jìn)行郵箱的初始化。郵箱的初始化包括對郵箱屬性域、控制域和數(shù)據(jù)域的設(shè)置。郵箱初始化完畢,只要滿足一定的條件,相應(yīng)的郵箱就能進(jìn)行正常的發(fā)送和接收操作。
使用發(fā)送郵箱發(fā)送消息,發(fā)送請求寄存器(CANTRS)被置1,啟動消息發(fā)送,CAN模塊處理CAN消息的發(fā)送。成功發(fā)送消息后,CAN模塊將發(fā)送響應(yīng)標(biāo)志位TA置位為1。成功發(fā)送或中止發(fā)送后,模塊將TRS標(biāo)志復(fù)位為0。同一個郵箱為了進(jìn)行下一次發(fā)送,必須將發(fā)送響應(yīng)標(biāo)志清零,即置TA為1。使用同一個郵箱發(fā)送其他消息,需要刷新郵箱的數(shù)據(jù)區(qū)。等待TRS為1,啟動下一個發(fā)送。寫入郵箱RAM的數(shù)據(jù)可以是半字(16位s)或整字(32位s),但CAN模塊總是返回一個32位的數(shù)據(jù),CPU必須接收所有32位或32位中的一部分。
使用接收郵箱接收消息,當(dāng)接收到一個消息時,接收消息掛起寄存器(CANRMP)中相應(yīng)的標(biāo)志位就會被置位,并產(chǎn)生一個中斷,CPU可以從郵箱中讀取消息。在CPU從郵箱RAM中讀取數(shù)據(jù)之前,應(yīng)該先清除RMP位。在讀取數(shù)據(jù)后,CPU還需要驗證RMP有沒有再次被模塊置位。如果RMP被置1,說明數(shù)據(jù)已經(jīng)被損壞。當(dāng)CPU讀取舊的消息時,由于接收到新的消息,CPU要重新讀取數(shù)據(jù)。
針對多軸聯(lián)動數(shù)控系統(tǒng)具有多任務(wù)和實時性的特點(diǎn),本文設(shè)計的數(shù)控核心軟件采用前、后臺型軟件。前臺程序為中斷時間為4ms的實時中斷服務(wù)程序,承擔(dān)幾乎全部與數(shù)控加工過程直接相關(guān)的實時性任務(wù),如插補(bǔ)計算、MST代碼處理、報警處理、速度控制和位置控制等;后臺程序又稱為“背景”程序,主要用來完成加工數(shù)據(jù)的準(zhǔn)備工作和管理工作,包括:數(shù)控加工程序輸入、譯碼、刀補(bǔ)計算、FIFO通信、CAN通信以及I/O處理等功能。后臺程序是一個循環(huán)運(yùn)行的程序,它是主程序,在運(yùn)行過程中被4ms實時中斷服務(wù)程序打斷,前、后臺程序相互配合完成數(shù)控系統(tǒng)的各項控制和管理任務(wù)。
本系統(tǒng)已在某公司的五軸數(shù)控加工中心上進(jìn)行了成功的應(yīng)用,實際應(yīng)用的數(shù)控加工中心如圖4所示,已完成了速度、精度測試和實際切削實驗。圖5為開發(fā)的六軸數(shù)控系統(tǒng)主界面圖。

圖4 STH-850型數(shù)控加工中心

圖5 六軸數(shù)控系統(tǒng)主界面圖
數(shù)控系統(tǒng)主要的技術(shù)指標(biāo)如下:
1)具有六個運(yùn)動軸,即直線軸X、Y、Z軸,旋轉(zhuǎn)軸A、B、C軸,可實現(xiàn)五軸聯(lián)動,最小分辨率0.001mm/0.001度;
2)切削進(jìn)給速度達(dá)到24m/min,快移速度達(dá)到24m/min,進(jìn)給加速度達(dá)到20m/s2;
3)具有微線段的前瞻自適應(yīng)速度控制功能,其中微線段最小段長為0.01mm,預(yù)讀段數(shù)為100段;
4)具有直線、圓弧插補(bǔ)、空間螺旋線等插補(bǔ)功能;
5)具有刀具補(bǔ)償、螺距補(bǔ)償以及反向間隙補(bǔ)償?shù)茸詣友a(bǔ)償功能;
6)主軸轉(zhuǎn)速達(dá)到8000r/min,具有正轉(zhuǎn)、反轉(zhuǎn)、停止以及準(zhǔn)停功能;
7)支持鉆孔、鏜孔、攻絲等多種固定循環(huán)加工宏指令;
8)提供內(nèi)裝式PMC功能,可使用梯形圖進(jìn)行編程;
9)具有動態(tài)三維仿真顯示功能;
10)提供手動、自動換刀功能。
在預(yù)讀段銜接進(jìn)給速度和加工過程平滑減速的約束條件下,對轉(zhuǎn)接點(diǎn)最優(yōu)銜接速度進(jìn)行預(yù)計算,以實現(xiàn)前瞻自適應(yīng)速度控制功能。按照國家標(biāo)準(zhǔn)對直線和圓插補(bǔ)精度進(jìn)行了測試,測試結(jié)果如表3所示。實際測試表明,微線段加工時其進(jìn)給速度可達(dá)到10m/min,可實現(xiàn)進(jìn)給速度的高速平滑銜接。圖6為使用五軸聯(lián)動加工葉輪試件的實際切削圖。數(shù)控系統(tǒng)經(jīng)過持續(xù)不間斷生產(chǎn)加工,結(jié)果表明:控制系統(tǒng)硬件能夠可靠工作,軟件各項功能工作正常并且穩(wěn)定,加工過程中速度控制平穩(wěn),精度高,系統(tǒng)各項指標(biāo)均達(dá)到了設(shè)計時提出的要求。

表3 試件測試結(jié)果
為了保證加工中心用數(shù)控系統(tǒng)連線方便和功能具有可擴(kuò)展性,本文提出了基于現(xiàn)場總線的六軸數(shù)控系統(tǒng)結(jié)構(gòu),實現(xiàn)了分布式的運(yùn)動控制,克服了傳統(tǒng)數(shù)控系統(tǒng)集中式控制的缺點(diǎn)。設(shè)計了一種現(xiàn)場總線協(xié)議及其安全通信軟件,能保證CNC控制器與內(nèi)裝式PMC、遠(yuǎn)程操作面板之間進(jìn)行數(shù)據(jù)通信的實時性和可靠性。該系統(tǒng)已在五軸數(shù)控加工中心上得到了成功的應(yīng)用。

圖6 五軸聯(lián)動加工試件實際切削圖
[1] Dong Yu,Yi Hu,Xun W.Xu,Yan Huang,and Shaohua Du,"An Open CNC System Based on Component Technology,"IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING,2009.6(2).
[2] Yi Hu,Dong Yu,Shaohua Du,Xiaohui Zhang,Yaodong Tao,Zhicheng Wang,"Design and Implementation of Reconfigurable CNC System based on Fieldbus,"Proceedingsof the 2008 IEEE International Conference on Information and Automation 2008,6.
[3] Decotignie,J.-D.;Auslander, D.;Moreaux, M.;“Fieldbus
Based Integrated Communication and Control Systems-Architectural Implications,”Digital Object Identifier 10.1109/AMC.1996.
[4] Gianluca Cena,Andriano Valenzano,“An Improved CAN FieldBus for industrial Applications,”IEEE Trans.Indus.Elect.,1997,44(4)
[5] Peng Yu Hai,“The Research of Wireless Manufacturing Network Based on Bluetooth Technology,”Digital Object Identifier 10.1109/ISISE.2008.
[6] 周侗,徐吃冬,于海斌.現(xiàn)場總線控制系統(tǒng)模塊化方法研究.儀器儀表學(xué)報,2006,27(6).
[7] 潘月斗,許鎮(zhèn)琳,徐東桂.CAN總線技術(shù)在嵌入式機(jī)床數(shù)控系統(tǒng)中的設(shè)計應(yīng)用.機(jī)床與液壓,2006.
[8] Dan Liu1,Haibin Yu,Zhongfeng Wang,Yanfeng Li,"A Basic Model of Fieldbus Communication Protocols," Proceedings of the 6th World Congress on Intelligent Control and Automation,2006,6.
[9] Changyan Zhou,Ratnesh Kumar,and Ramavarapu S.Sreenivas,"Decentralized Modular Control of Concurrent Discrete Event Systems,"Proceedings of the 46th IEEE Conference on Decision and Control New Orleans,LA,USA,2007,11.
[10] Su Rongyan,Chang Jiupeng,Shao Liqing,Deng Kangyao,"Design of TestControl System Interface Communication Card in Engine Based on CAN Bus [J],"Micro Computer Information, 2005,1,101-103.
[11] Xiao Hairong,Zhou Fengyu,"Design of CAN Bus System Brainpower Node Based on SJA1000[J],"Computer Automatic Measure and Control,2001,9(2).
[12] Application of Unattached CAN Apparatus[J].Nanjing Institute of Technology Transaction,2002,3.