王 濤 劉清建 王太勇 王立文
1.中國民航大學,天津,300300 2.天津大學天津市先進制造技術與裝備重點實驗室,天津,300072
可重構數(shù)控系統(tǒng)是當前開放式數(shù)控技術的一個研究熱點,與傳統(tǒng)數(shù)控系統(tǒng)相比,可重構數(shù)控系統(tǒng)具有很多優(yōu)點[1]。當前對數(shù)控可重構技術的研究主要集中在以下幾個方面:①將現(xiàn)場可編程邏輯器件作為硬件系統(tǒng)的一個功能模塊,研究如何對其實時編程以實現(xiàn)對硬件系統(tǒng)的重構設計[2-3];②利用組件技術設計數(shù)控系統(tǒng),使數(shù)控軟件系統(tǒng)具有一定的可重構性[4],或研究 Windows系統(tǒng)的特點,基于 Windows系統(tǒng)設計可重構的軟件模型[5];③為了方便系統(tǒng)功能模塊的增減,研究總線技術在可重構數(shù)控設計中的應用,利用通用串行總線設計系統(tǒng)模塊間的通信[6]。上述研究的不足是:忽略了可重構數(shù)控系統(tǒng)的實現(xiàn)需要硬件、軟件和模塊間通信的協(xié)同設計。因此,本文將數(shù)控系統(tǒng)的重構分成相關聯(lián)的3個層次:硬件系統(tǒng)重構、軟件系統(tǒng)重構和模塊級重構,并通過一個實際數(shù)控系統(tǒng)的設計,來闡述3個層次的應用及其相互關系。
圖1所示為數(shù)控系統(tǒng)的可重構硬件開發(fā)平臺,以ARM、DSP和FPGA為硬件平臺核心,系統(tǒng)采用主從式雙CPU設計。ARM處理器作為主芯片,具有通信管理、網(wǎng)絡管理、人機交互、指令譯碼、故障診斷等功能。DSP具有軟件插補、位置控制、誤差控制等功能。FPGA用于硬件插補器和外圍接口電路的設計。由于FPGA能夠通過編程改變其內(nèi)部的硬件電路時序關系,所以數(shù)控系統(tǒng)的插補模塊和外圍接口電路能夠根據(jù)整個系統(tǒng)的重構需要進行重新配置,使該硬件平臺具有很強的重構能力。存儲器主要用于整個系統(tǒng)運行的程序和數(shù)據(jù)的存儲。各種硬件功能模塊包括顯示控制模塊、鍵盤控制模塊、數(shù)據(jù)采集模塊、PLC控制模塊等,主要用于實現(xiàn)各種具體應用功能。
筆者設計的可重構數(shù)控系統(tǒng)軟件平臺如圖2所示,由如下幾個部分組成。
(1)硬件服務模塊。該模塊的主要功能為:①系統(tǒng)開始運行時,對硬件模塊進行初始化;②系統(tǒng)運行過程中,其余軟件模塊只能通過硬件服務模塊對硬件進行操作;③硬件模塊進行重構時,用VHDL語言描述的文件通過該模塊裝載入FPGA模塊。

圖1 數(shù)控系統(tǒng)可重構硬件開發(fā)平臺
(2)實時操作系統(tǒng)模塊。將自行開發(fā)的嵌入式實時操作系統(tǒng)TDNC-OS作為系統(tǒng)任務調(diào)度與開發(fā)平臺,該模塊的主要功能是處理由內(nèi)外部事件引發(fā)的文件系統(tǒng)或功能任務的調(diào)度以及相應設備驅(qū)動的激活等。
(3)軟件重構配置模塊。該模塊的功能為:①原有系統(tǒng)參數(shù)的重新配置重構;②新功能的加入或新系統(tǒng)的重構生成。
(4)其余軟件功能模塊。包括文件系統(tǒng)模塊、各種插補功能模塊、各種交互模塊等,主要用于完成系統(tǒng)具體的工作功能[7]。

圖2 可重構數(shù)控系統(tǒng)軟件平臺結構
1.2.1 基于FPGA的硬件可重構模塊設計
數(shù)控系統(tǒng)的可重構性要求數(shù)控系統(tǒng)能適時地調(diào)整自身的硬件結構以滿足重構要求。現(xiàn)場可編程邏輯器件具有硬件電路在線可編程的特性,即它的硬件結構可以像軟件程序一樣被動態(tài)調(diào)整或修改[8]。圖3為基于FPGA的可重構系統(tǒng)的結構框圖,該系統(tǒng)可實現(xiàn)對數(shù)控系統(tǒng)從兩軸聯(lián)動到五軸聯(lián)動的重構設計。由圖3可知,可重構模塊是ARM模塊、DSP模塊、交互模塊和總線接口模塊彼此間通信的橋梁。它不僅為信號傳遞提供可靠的通路,而且通過裝載不同的配置文件,可重構出不同功能的數(shù)控系統(tǒng)。驅(qū)動模塊和外部I/O接口模塊(主要用于數(shù)控機床電氣的控制)通過串行工業(yè)現(xiàn)場總線與數(shù)控系統(tǒng)相連,減小了模塊之間連線的復雜度,提高了通信的可靠性,使整個系統(tǒng)模塊的增減更加簡便,極大縮短了數(shù)控系統(tǒng)模塊級的重構時間。

圖3 基于FPGA的可重構系統(tǒng)的結構框圖
基于常規(guī)SRAM編程,本系統(tǒng)基于FPGA的動態(tài)配置方案如圖4所示。配置參數(shù)模塊中的數(shù)據(jù)按照邏輯功能存放,用于配置FPGA內(nèi)部的各邏輯模塊。外部緩沖SRAM在ARM控制下,對系統(tǒng)重建時隙給予自適應的邏輯補償,保證系統(tǒng)邏輯時序上的連續(xù)。系統(tǒng)整體功能采用FPGA硬件復用形式構筑,但系統(tǒng)功能的整合(系統(tǒng)重構、時隙補償)由ARM規(guī)劃和控制。

圖4 FPGA的動態(tài)配置方案
1.2.2 數(shù)控系統(tǒng)引導型軟件重構開發(fā)平臺的研究
數(shù)控系統(tǒng)的硬件重構和軟件重構必須同步進行,才能實現(xiàn)整個系統(tǒng)的重構。根據(jù)該數(shù)控系統(tǒng)的結構特點,筆者設計了一種具有引導功能的系統(tǒng)重構開發(fā)平臺,如圖5所示。開發(fā)平臺采用一種引導開發(fā)的模式,借助于預先定義的各種信息庫,將使用特殊語言描述的用戶功能要求轉(zhuǎn)換成信息庫中特定策略的組合,然后通過與ARM和DSP相匹配的代碼編譯器,將策略描述翻譯后,再通過下載電纜傳送至數(shù)控系統(tǒng)。
軟件重構開發(fā)包括語言描述和引導設置兩種開發(fā)方式。語言描述方式采用結構化的功能機制,預先定義出系統(tǒng)重構的算法結構,用戶只需根據(jù)算法的提示加入自己功能要求的描述。圖6所示為重構描述語言的結構,圖中定義了一種新的插補算法來完成所需的復雜曲線擬合。開發(fā)平臺提供獨立的結構化描述語言,采用面向?qū)ο蟮木幊趟枷?,以功能對象群組的方式來描述數(shù)控組件對象的特定工作狀態(tài)。語言描述方案可以通過靈活定義的算法規(guī)范深入系統(tǒng)內(nèi)部的軟件構成細節(jié),適用于系統(tǒng)底層策略方案的自定義重構配置。引導設置采用開發(fā)向?qū)У男问揭詧D形化詢問界面來定制用戶的重構需求,一般用于較為簡單的重構開發(fā)。圖7所示為運動擬合精度的重新設定,較為簡單,只需修改一些參數(shù),因此,采用引導設置方式進行開發(fā)。

圖5 重構開發(fā)平臺的理論模型

圖6 重構描述語言的結構

圖7 軌跡擬合精度的重新設定
數(shù)控系統(tǒng)的模塊級重構要求重構過程簡便快速,重構后的系統(tǒng)運行安全可靠,在物理空間上能夠靈活分布[9]。PROFIBUS-DP是經(jīng)過優(yōu)化的高速廉價的通信總線,專用于自動化系統(tǒng)中分散的現(xiàn)場設備之間的通信。特別適合于分布式數(shù)字控制系統(tǒng)的高速數(shù)據(jù)傳輸。筆者基于前述的可重構軟硬件數(shù)控平臺,將12Mbit/s的PROFIBUSDP作為數(shù)控系統(tǒng)模塊間的通信總線,成功開發(fā)出了TDNCM4數(shù)控系統(tǒng),圖8為TDNCM4數(shù)控系統(tǒng)分布式模塊結構圖。在此基礎上,下文將研究重構出新的更高性能的五軸聯(lián)動數(shù)控系統(tǒng)TDNCH8的策略方法。

圖8 TDNCM4數(shù)控系統(tǒng)結構圖
圖9為將要設計的TDNCH8數(shù)控系統(tǒng)的分布式模塊結構圖,與圖8相比最顯著的變化就是增加了1個I/O控制器從節(jié)點和4個進給驅(qū)動從節(jié)點,變化的原因是TDNCH8數(shù)控系統(tǒng)需具有控制八軸五聯(lián)動的能力。

圖9 TDNCH8數(shù)控系統(tǒng)結構圖
表1列出了TDNCM4和TDNCH8數(shù)控系統(tǒng)在功能上的相同和不同之處,同時給出了從TDNCM4重構出TDNCH8系統(tǒng)時各種功能所采用的重構方式,“√”表示所在列的重構方式被采用。表1中所列數(shù)控功能的重構主要分為3類:
(1)不變。指TDNCM4和TDNCH8共有的功能。如平面直線插補、空間直線插補等功能,在數(shù)控系統(tǒng)重構升級的過程中,這部分功能可直接用到新的數(shù)控系統(tǒng)中。
(2)增加。指TDNCM4系統(tǒng)有此功能,但由于控制軸數(shù)的增加而必須對其進行擴展。如最大進給軸數(shù)、坐標系統(tǒng)等功能,需要從四軸增加到八軸。最大進給軸數(shù)的擴展是這樣實現(xiàn)的:硬件重構增加軸控制通道數(shù),軟件重構解決新增軸的位置控制和配置問題,模塊重構使新增的進給軸物理載體(一般是伺服電機驅(qū)動器和伺服電機)方便地連接到數(shù)控系統(tǒng)主控器上。顯而易見,為實現(xiàn)控制軸數(shù)的重構升級,3種重構方式必須同時采用,缺一不可。坐標系統(tǒng)只需利用軟件重構的方式,在前面提到的引導型軟件重構平臺上,在坐標系統(tǒng)函數(shù)庫中增加新增四軸的坐標處理函數(shù)即可實現(xiàn),硬件重構和模塊重構的方式未用到。
(3)新增。指TDNCM4沒有,而TDNCH8新增的功能。主要是一些更高級的插補功能,需要通過軟件重構的方式來實現(xiàn)。

表1 TDNCM4系統(tǒng)和TDNCH8系統(tǒng)主要功能對比
從上述分析中可以看出,基于TDNCM4系統(tǒng)重構出TDNCH8系統(tǒng)必須同時利用數(shù)控系統(tǒng)的硬件重構、軟件重構和模塊級重構技術,三者相輔相成,密不可分。換個角度分析,我們可以把數(shù)控系統(tǒng)的重構分為3個層次:①核心功能重構(一般指控制軸數(shù)和聯(lián)動軸數(shù)的改變)需要同時采用3種重構方式才能實現(xiàn);②工作功能(主要指插補功能)重構,只需通過軟件重構就能實現(xiàn);③輔助功能(包括坐標系統(tǒng)、程序管理系統(tǒng)、刀具管理系統(tǒng)等)重構,只需通過軟件重構就能實現(xiàn)。只要判斷出一個數(shù)控系統(tǒng)的重構升級屬于哪個層次,就能決定其應該采用的重構方式,例如,如果只是想把刀具管理系統(tǒng)管理的刀具數(shù)從1024增加到2048,只需進行軟件重構就可以。實際上,這種重構并未改變TDNCM4系統(tǒng)的根本性能,而是擴充或增強了其輔助功能。但如果把TDNCM4系統(tǒng)的控制軸數(shù)和聯(lián)動軸數(shù)分別增加到8和5時的數(shù)控系統(tǒng)的重構屬于核心功能的重構,需3種重構方式同時使用才能實現(xiàn),而且重構后的系統(tǒng)在根本性能上與TDNCM4系統(tǒng)相比已經(jīng)有了質(zhì)的飛躍,新的更高性能的數(shù)控系統(tǒng)已經(jīng)誕生。因此,如果一個可重構的數(shù)控系統(tǒng)平臺具備上述3個層次的重構能力,那么必將能開發(fā)出從低端到高端的系列化數(shù)控產(chǎn)品。
在實際應用中,通過對TDNCM4數(shù)控系統(tǒng)的軟硬件和組成模塊的重構設計,成功開發(fā)出了五軸聯(lián)動數(shù)控系統(tǒng)TDNCH8,并將其應用在TDNCM80A五軸加工中心上。顯然TDNCM4和TDNCH8基于同一種設計結構,屬同一個產(chǎn)品系列,只是性能高低不同。同理,采用相同的重構方法,也能方便地重構出車床控制系統(tǒng)、磨床控制系統(tǒng)等,從而形成一個數(shù)控系統(tǒng)產(chǎn)品系列。
論文提出從數(shù)控系統(tǒng)設計的硬件、軟件和模塊3個層次來研究可重構數(shù)控系統(tǒng)的設計,并給出了各個層次重構的實現(xiàn)方法。研究了3個層次在系統(tǒng)重構中協(xié)同應用的問題,并以一個實際設計為例,給出了不同數(shù)控功能重構的3種層次的選擇方法。課題后續(xù)的工作將著重于進一步研究重構過程中的軟硬件協(xié)同設計問題以及數(shù)控系統(tǒng)重構和機床重構的關系問題。
[1]齊繼陽,竺長安,王歡.基于USB和組件技術的可重構數(shù)控系統(tǒng)的研制[J].制造技術與機床,2007(12):17-20.
[2]Roque A O,Rene de J R,Gilberto H,et al.The Application of Reconfigurable Logic to High Speed CNC Milling Machines Controllers[J].Control Engineering Practices,2008,16(6):674-684.
[3]秦興,王文,李為建,等.基于FPGA的硬件可重構數(shù)控系統(tǒng)的研制[J].儀器儀表學報,2002,23(3):407-409.
[4]齊繼陽,竺長安.基于通用串行總線的可重構數(shù)控系統(tǒng)的研究[J].計算機集成制造系統(tǒng)—CIMS,2004,10(12):1567-1570.
[5]文立偉,王永章,路華,等.基于開放結構控制器的可重構數(shù)控系統(tǒng)[J].計算機集成制造系統(tǒng)—CIMS,2003,9(11):1018-1022.
[6]Wang Yuhan,Hu Jun,Li Ye.Study on a Reconfigurable Model of an Open CNC Kernel[J].Journal of Materials Processing Technology,2003,138(1/3):472-474.
[7]王太勇,王濤,楊潔,等.基于嵌入式技術的數(shù)控系統(tǒng)開發(fā)設計[J].天津大學學報,2006,39(12):1509-1515.
[8]徐躍,王太勇,趙艷菊,等.基于ARM和DSP的可重構數(shù)控系統(tǒng)[J].吉林大學學報(工學版),2008,38(4):848-851.
[9]王太勇,李波,萬淑敏,等.基于現(xiàn)場總線的可重構數(shù)控系統(tǒng)的研究[J].計算機集成制造系統(tǒng),2006,12(10):1662-1667.