魏 峰,劉守山
(山東科技大學,山東 青島 266000)
嵌入式可重構數控系統的設計與驗證*
魏 峰,劉守山
(山東科技大學,山東 青島 266000)
針對鞋樣切割機對插補控制器功能的要求,設計了基于嵌入式的可重構運動控制系統。在對步進電機進行控制的前提下,對于比較積分插補算法在可重構器件中的實現進行了研究。經測試表明,所設計的嵌入式可重構運動控制系統能夠完成對直線和二次曲線的快速、精確插補,而且系統易于擴展,能夠實現更為復雜的控制算法。
AT91SAM9260;嵌入式系統;EPM1270;CPLD;比較積分法
在鞋類制造過程中,鞋樣的制作是至關重要的環節。隨著市場對鞋類產品需求的多樣化,鞋樣設計與制作的復雜性也隨之提高。其中,在鞋樣的制作過程中,具有各種復雜輪廓鞋樣的最后成形是由鞋樣切割機完成的。鞋樣切割機在對鞋樣輪廓成形過程中,通常要完成對直線、二次曲線以及自由曲線插補的運動控制。而插補運動的控制則是由鞋樣切割機的數控系統完成的。現代鞋類制造業對數控系統的開放性、低功耗性、通用性、可重構性等方面提出了更高的需求。構建基于嵌入式技術和可重構計算技術的運動控制系統可以為現代數控設備的這種需求提供可行的、有力的支持,也是現在和將來制造業運動控制體系的發展方向之一[1-5]。基于以上需求,本文對基于ARM9核的嵌入式控制器和可重構邏輯器件的嵌入式可重構數控系統進行了研究和設計,并在此平臺上對比較積分插補算法的實現進行了設計和驗證。
1.1 整體系統設計
系統設計中,使用AT91SAM9260作為微控制器(MCU)來構建嵌入式子系統,使用復雜可編程邏輯器件(CPLD)EPM1270作為可重構器件來構建硬件可重構子系統,然后通過兩者的結合來完成嵌入式可重構運動控制系統。系統的整體設計結構如圖1所示。

圖1 系統的整體設計結構圖
1.2 嵌入式子系統設計
嵌入式子系統的結構圖如圖2所示。
電源輸入為+5 V和+12 V的直流電,經過電源模塊可產生5 V、3.3 V、1.8 V、12 V數字電源和3.3 V模擬電源。外部內存設備使用兩片型號為MT48LC16M16A2、大小為16 M×16 bit的SDRAM組成64 MB的外部內存空間,用于裸機程序或操作系統的運行。外部存儲設備包括一片NOR Flash和一片NAND Flash。NOR Flash選用大小為4 M×16 bit的SST39VF6401,用作裸機程序、操作系統引導程序的存儲空間;NAND Flash選用大小為(258 M+8 M)×8 bit的K9F2G08U0B,用于操作系統、根文件系統和用戶應用程序的存儲空間。通信模塊包括串口、USB接口、以太網口和無線設備。串口用于串口調試和打印信息;USB接口用作調試接口和通信接口;以太網口使用DM9161A作為以太網物理層收發器,然后通過MII標準的接口與MCU相連;無線設備為使用射頻收發芯片NRF2401設計的無線收發設備,其可以使得遠程數據交換更加方便。人機交互模塊包括觸摸屏和LCD顯示屏,該系統采用ADS7843作為電阻式觸摸屏控制器,觸摸屏與LCD顯示屏為同一設備,該設備采用了LR-08VRB-D型LCD顯示器;人機交互模塊主要實現的功能為操作系統的可視化操作,向運動控制系統下達命令,從運動控制系統中讀取所需要的數據。

圖3 硬件可重構子系統的結構圖
1.3 硬件可重構子系統設計
CPLD芯片與MCU的連接需要地址線、數據線和信號控制線。對于信號控制線,由于在該系統的MCU中沒有專門用來控制CPLD或者FPGA的接口,所以控制信號線需要通過MCU上的GPIO口來實現,而這些控制信號就是向CPLD中輸入的運動控制所需的PWM(脈寬調制信號)信號、方向信號以及需要反饋給嵌入式子系統的光電編碼器采集到的數據。根據運動控制的需要,在CPLD上設計了6路光電編碼器接口與步進電機上的光電編碼器相連,3路PWM輸出接口和6路方向信號輸出接口用于連接電機驅動模塊。硬件可重構子系統的結構圖如圖3所示。
CPLD用來實現插補算法。嵌入式子系統根據外部輸入命令計算出插補算法中所需的參數(3路PWM信息、6路方向信息)并傳遞給CPLD,進而可以在CPLD中實現插補算法。CPLD再產生用于控制電機驅動模塊的信號(3路PWM信號、6路方向信號)。此外,為了形成閉環控制,系統還設計了用來采集位置或速度的光電編碼器的輸入接口。該光電編碼器的信號經光電隔離后,再接入到CPLD,然后,再經由CPLD將信號輸入給MCU,從而獲得電機的位置和速度信息。
MCU的地址引腳和數據引腳,以及部分讀寫控制引腳、部分存儲器片選引腳通過CPLD的I/O引腳引入。目的是可以將CPLD內部的寄存器映射到微處理器的數據存儲空間,從而可以實現MCU對CPLD內部寄存器(包括控制寄存器、狀態寄存器、數據寄存器)的訪問,進而可以參與或協調CPLD的運行。
為了驗證系統設計的可行性,本文對比較積分插補算法在該系統上的實現進行了設計和驗證。其中,比較積分法屬脈沖增量插補類的算法。相比其他算法如逐點比較法、數字積分法等,比較積分法具有插補精度高、運算關系簡單、進給速度控制方便等優點[6]。由比較積分法的算法特點可知,其運算密集度較高,相對于軟件實現,其硬件實現更能提高運行效率和保證實時性。因此,本文對比較積分法在可重構器件中的實現進行了研究和驗證。
2.1 比較積分插補算法原理
比較積分插補算法的具體實現方式參見文獻[7-8]。根據比較積分插補算法,制定出程序流程圖,如圖4所示。其中速度控制子程序的實現參見文獻[9]。

圖4 比較積分插補算法程序流程圖
2.2 比較積分插補算法的硬件實現
2.2.1 整體方案
本系統中,對于比較積分插補算法的硬件實現首先使用Verilog HDL語言進行描述,進而在系統的CPLD中實現。其硬件實現結構圖如圖5所示。

圖5 比較積分插補算法的硬件實現結構圖
圖5中速度與進給控制模塊向X軸和Y軸脈沖發生器輸出對應于加速、恒速、減速的實際速度脈沖。它同時又向比較器1、比較器2、A、B、F計算模塊以及X軸、Y軸脈沖發生器發出使能信號,來控制各個模塊的使能情況。A、B、F計算模塊通過各數據的初始值與比較積分插補算法的公式來更新A、B、F值,并送入到A、B、F寄存器中。比較器1和比較器2從上述寄存器中取得所需數值,經比較后,通過選擇性地向X軸脈沖發生器和Y軸脈沖發生器發出使能信號,以此來決定X軸脈沖發生還是Y軸脈沖發生,被使能的X軸脈沖發生器或Y軸脈沖發生器向二軸電機發出脈沖控制信號。進而實現比較積分法的插補。

圖7 硬件實現連接總圖
2.2.2 速度與進給控制模塊硬件實現設計
在本設計中,速度與進給控制模塊是整個插補過程的調度者,其既承擔了電機運行的加減速控制,又決定著插補進程的流程及各模塊間的信號同步。圖6為該模塊的結構圖。

圖6 速度與進給控制模塊結構圖
MCU向CPLD發出時鐘信號(CLK),同時實現加工路徑和速度的規劃,并將這些參數分別放入對應的最大速度寄存器、加速步長參數寄存器和減速步長參數寄存器中。根據這些參數可以計算出相應的加速步長、減速步長和最大速度。圖6中的計數器用作可變分頻器,用以在不同速度時段以CLK為基準時鐘產生不同頻率的脈沖控制信號,發送給X軸、Y軸脈沖發生器,從而達到分別改變電機在X軸和Y軸分速度的目的。上述脈沖控制信號還被送入比較器與最大速度脈沖頻率進行比較來判斷是否達到恒速條件,比較結果再傳入計數器中,用以控制電機的加減速。
2.3 仿真總圖
根據上述設計方案,該硬件實現在Quartus II中完成的連接總圖如圖7所示。
其中Velocity_conrol為速度與進給控制模塊。Accumulator為A、B、F計算模塊,它主要完成的工作是通過圖4中的公式來進行A、B、F的計算。Compare為比較器1和比較器2,分別完成A與B的比較和F與0的比較。X_Y_Pulse為X軸脈沖發生器和Y軸脈沖發生器,它們用來給電機驅動模塊發出脈沖控制信號,該脈沖控制信號的頻率決定于速度與進給控制模塊,該脈沖的使能決定于比較器1與比較器2,進而可以控制電機的運行速度與運動軌跡。
首先在Quartus II中分別完成了直線和拋物線插補算法的模擬,分別得出X軸和Y軸脈沖發生器對應于直線與拋物線的時序圖。其中所取直線為第一象限直線,起始點為原點,終點坐標為(50,30)。所取的拋物線方程為:Y2=4X,其起點坐標為第一象限中(25,10),終點坐標為第四象限中的(25,-10),第一象限中為逆時針插補,第四象限中為順時針插補。其時序圖如圖8和圖9所示。
為了驗證硬件可重構子系統的插補效果,將上文中進行仿真的程序燒錄到CPLD中,進行實物測試。根據電機上光電編碼器所采集到的電機運動軌跡,在MATLAB中分別繪制出直線運動軌跡圖與拋物線運動軌跡圖,如圖10和圖11所示。
由以上時序圖和軌跡圖可以看出其對應關系。對于直線插補和拋物線插補,其X軸脈沖發生器均為持續發出脈沖,驅動X軸方向的電機一直轉動;其Y軸脈沖發生器均為間歇發出脈沖,從而保證了直線的斜率和拋物線的弧度。而且通過拋物線時序圖和軌跡圖的比對可以看出,加速過程,即一開始Y軸脈沖發生器輸出時間很長,但是其運動的距離卻很短。

圖8 直線插補時序圖

圖9 拋物線插補時序圖

圖10 電機直線運動軌跡圖

圖11 電機拋物線運動軌跡圖
在圖11中,拋物線插補曲線存在偏差:本應關于X軸對稱的上下兩部分不對稱,過象限點不在原點處。這與其前后的X軸和Y軸的脈沖進給方向有關。
本文對基于嵌入式的硬件可重構系統進行了設計,并在該系統上實現了比較積分插補算法。實驗結果表明,所設計的系統能較好地實現插補算法與電機控制。然而,從電機運動軌跡圖上可以看出,插補終點存在著一個脈沖當量的誤差,而且在拋物線插補過程中,出現了過原點和對稱性的偏差。上述問題需進行校正方法的探索。
[1] 鄭飛,王時龍,簡易. 可重構分布式數控系統的設計與實現[J]. 計算機集成制造系統,2008, 14(4):637-643.
[2] 周祖德,龍毅宏,劉泉. 嵌入式網絡數控技術與系統[J]. 機械工程學報,2007,43(5):1-7.
[3] PEREIRA C E, CARRO L. Distributed real-time embedded system: recent advances, future trends, and their impact on manufacturing plant control[J]. Annual Reviews in Control, 2007,31(1): 81-92.
[4] 王太勇,李波,萬淑敏,等. 基于現場總線的可重構數控系統研究[J]. 計算機集成制造系統,2006, 12(1):1662-1667.
[5] 董靖川.可重構數控系統關鍵技術研究[D].天津:天津大學,2010.
[6] 任玉田,焦振學,王宏甫. 機床計算機數控技術[M]. 北京:北京理工大學出版社,1996.
[7] 王進. 比較積分法及其程序設計[J]. 機械設計與制造,1995,8(6):32-34.
[8] 周慧. 比較積分法插補過程的研究與仿真[J]. 機床與液壓,2004(3):70-71.
[9] 王曉明,王玲. 電機的DSP控制—TI公司DSP應用[M]. 北京:北京航空航天大學出版社,2004.
Design and verification of embedded reconfigurable NC system
Wei Feng, Liu Shoushan
(Shandong University of Science and Technology,Qingdao 266000,China)
According to the requirements of interpolation controller for shoe cutting machine,this paper designed the reconfigurable motion control system based on embedded system. The realization of comparative integral interpolation algorithm in CPLD was studied under the premise of controlling step motor. The test results indicate that the embedded reconfigurable motion control system designed can quickly and accurately complete the interpolation of straight line and two curve, and can achieve more complex control algorithm.
AT91SAM9260;embedded system;EPM1270;CPLD;comparative integral algorithm
浙江省“儀器科學與技術”重中之重學科開放基金資助項目(JL150508);山東省重點研發計劃項目(2015GSF118094)
TP23
A
10.19358/j.issn.1674- 7720.2017.07.002
魏峰,劉守山.嵌入式可重構數控系統的設計與驗證[J].微型機與應用,2017,36(7):5-8.
2016-12-15)
魏峰(1991-),男,碩士研究生,主要研究方向:嵌入式系統設計。
劉守山(1970-),男,博士,副教授,主要研究方向:醫用光學及圖像視頻處理系統,嵌入式系統與可重構計算技術應用,聲學測量技術應用。