摘要:針對鞋樣切割機對插補控制器功能的要求,設計了基于嵌入式的可重構運動控制系統(tǒng)。在對步進電機進行控制的前提下,對于比較積分插補算法在可重構器件中的實現(xiàn)進行了研究。經(jīng)測試表明,所設計的嵌入式可重構運動控制系統(tǒng)能夠完成對直線和二次曲線的快速、精確插補,而且系統(tǒng)易于擴展,能夠實現(xiàn)更為復雜的控制算法。
關鍵詞:AT91SAM9260;嵌入式系統(tǒng);EPM1270;CPLD;比較積分法
中圖分類號:TP23文獻標識碼:ADOI: 10.19358/j.issn.1674-7720.2017.07.002
引用格式:魏峰,劉守山.嵌入式可重構數(shù)控系統(tǒng)的設計與驗證[J].微型機與應用,2017,36(7):5-8.
0引言
*基金項目:浙江省“儀器科學與技術”重中之重學科開放基金資助項目(JL150508);山東省重點研發(fā)計劃項目(2015GSF118094)在鞋類制造過程中,鞋樣的制作是至關重要的環(huán)節(jié)。隨著市場對鞋類產品需求的多樣化,鞋樣設計與制作的復雜性也隨之提高。其中,在鞋樣的制作過程中,具有各種復雜輪廓鞋樣的最后成形是由鞋樣切割機完成的。鞋樣切割機在對鞋樣輪廓成形過程中,通常要完成對直線、二次曲線以及自由曲線插補的運動控制。而插補運動的控制則是由鞋樣切割機的數(shù)控系統(tǒng)完成的?,F(xiàn)代鞋類制造業(yè)對數(shù)控系統(tǒng)的開放性、低功耗性、通用性、可重構性等方面提出了更高的需求。構建基于嵌入式技術和可重構計算技術的運動控制系統(tǒng)可以為現(xiàn)代數(shù)控設備的這種需求提供可行的、有力的支持,也是現(xiàn)在和將來制造業(yè)運動控制體系的發(fā)展方向之一[15]?;谝陨闲枨?,本文對基于ARM9核的嵌入式控制器和可重構邏輯器件的嵌入式可重構數(shù)控系統(tǒng)進行了研究和設計,并在此平臺上對比較積分插補算法的實現(xiàn)進行了設計和驗證。
1嵌入式可重構數(shù)控系統(tǒng)設計
1.1整體系統(tǒng)設計
系統(tǒng)設計中,使用AT91SAM9260作為微控制器(MCU)來構建嵌入式子系統(tǒng),使用復雜可編程邏輯器件(CPLD)EPM1270作為可重構器件來構建硬件可重構子系統(tǒng),然后通過兩者的結合來完成嵌入式可重構運動控制系統(tǒng)。系統(tǒng)的整體設計結構如圖1所示。
1.2嵌入式子系統(tǒng)設計
嵌入式子系統(tǒng)的結構圖如圖2所示。
電源輸入為+5 V和+12 V的直流電,經(jīng)過電源模塊可產生5 V、3.3 V、1.8 V、12 V數(shù)字電源和3.3 V模擬電源。外部內存設備使用兩片型號為MT48LC16M16A2、大小為16 M×16 bit的SDRAM組成64 MB的外部內存空間,用于裸機程序或操作系統(tǒng)的運行。外部存儲設備包括一片NOR Flash和一片NAND Flash。NOR Flash選用大小為4 M×16 bit的SST39VF6401,用作裸機程序、操作系統(tǒng)引導程序的存儲空間;NAND Flash選用大小為(258 M+8 M)×8 bit的K9F2G08U0B,用于操作系統(tǒng)、根文件系統(tǒng)和用戶應用程序的存儲空間。通信模塊包括串口、USB接口、以太網(wǎng)口和無線設備。串口用于串口調試和打印信息;USB接口用作調試接口和通信接口;以太網(wǎng)口使用DM9161A作為以太網(wǎng)物理層收發(fā)器,然后通過MII標準的接口與MCU相連;無線設備為使用射頻收發(fā)芯片NRF2401設計的無線收發(fā)設備,其可以使得遠程數(shù)據(jù)交換更加方便。人機交互模塊包括觸摸屏和LCD顯示屏,該系統(tǒng)采用ADS7843作為電阻式觸摸屏控制器,觸摸屏與LCD顯示屏為同一設備,該設備采用了LR08VRBD型LCD顯示器;人機交互模塊主要實現(xiàn)的功能為操作系統(tǒng)的可視化操作,向運動控制系統(tǒng)下達命令,從運動控制系統(tǒng)中讀取所需要的數(shù)據(jù)。
1.3硬件可重構子系統(tǒng)設計
CPLD芯片與MCU的連接需要地址線、數(shù)據(jù)線和信號控制線。對于信號控制線,由于在該系統(tǒng)的MCU中沒有專門用來控制CPLD或者FPGA的接口,所以控制信號線需要通過MCU上的GPIO口來實現(xiàn),而這些控制信號就是向CPLD中輸入的運動控制所需的PWM(脈寬調制信號)信號、方向信號以及需要反饋給嵌入式子系統(tǒng)的光電編碼器采集到的數(shù)據(jù)。根據(jù)運動控制的需要,在CPLD上設計了6路光電編碼器接口與步進電機上的光電編碼器相連,3路PWM輸出接口和6路方向信號輸出接口用于連接電機驅動模塊。硬件可重構子系統(tǒng)的結構圖如圖3所示。
CPLD用來實現(xiàn)插補算法。嵌入式子系統(tǒng)根據(jù)外部輸入命令計算出插補算法中所需的參數(shù)(3路PWM信息、6路方向信息)并傳遞給CPLD,進而可以在CPLD中實現(xiàn)插補算法。CPLD再產生用于控制電機驅動模塊的信號(3路PWM信號、6路方向信號)。此外,為了形成閉環(huán)控制,系統(tǒng)還設計了用來采集位置或速度的光電編碼器的輸入接口。該光電編碼器的信號經(jīng)光電隔離后,再接入到CPLD,然后,再經(jīng)由CPLD將信號輸入給MCU,從而獲得電機的位置和速度信息。
MCU的地址引腳和數(shù)據(jù)引腳,以及部分讀寫控制引腳、部分存儲器片選引腳通過CPLD的I/O引腳引入。目的是可以將CPLD內部的寄存器映射到微處理器的數(shù)據(jù)存儲空間,從而可以實現(xiàn)MCU對CPLD內部寄存器(包括控制寄存器、狀態(tài)寄存器、數(shù)據(jù)寄存器)的訪問,進而可以參與或協(xié)調CPLD的運行。
2比較積分法在系統(tǒng)中的實現(xiàn)
為了驗證系統(tǒng)設計的可行性,本文對比較積分插補算法在該系統(tǒng)上的實現(xiàn)進行了設計和驗證。其中,比較積分法屬脈沖增量插補類的算法。相比其他算法如逐點比較法、數(shù)字積分法等,比較積分法具有插補精度高、運算關系簡單、進給速度控制方便等優(yōu)點[6]。由比較積分法的算法特點可知,其運算密集度較高,相對于軟件實現(xiàn),其硬件實現(xiàn)更能提高運行效率和保證實時性。因此,本文對比較積分法在可重構器件中的實現(xiàn)進行了研究和驗證。
2.1比較積分插補算法原理
比較積分插補算法的具體實現(xiàn)方式參見文獻[78]。根據(jù)比較積分插補算法,制定出程序流程圖,如圖4所示。其中速度控制子程序的實現(xiàn)參見文獻[9]。
2.2比較積分插補算法的硬件實現(xiàn)
2.2.1整體方案
本系統(tǒng)中,對于比較積分插補算法的硬件實現(xiàn)首先使用Verilog HDL語言進行描述,進而在系統(tǒng)的CPLD中實現(xiàn)。其硬件實現(xiàn)結構圖如圖5所示。
圖5比較積分插補算法的硬件實現(xiàn)結構圖圖5中速度與進給控制模塊向X軸和Y軸脈沖發(fā)生器輸出對應于加速、恒速、減速的實際速度脈沖。它同時又向比較器1、比較器2、A、B、F計算模塊以及X軸、Y軸脈沖發(fā)生器發(fā)出使能信號,來控制各個模塊的使能情況。A、B、F計算模塊通過各數(shù)據(jù)的初始值與比較積分插補算法的公式來更新A、B、F值,并送入到A、B、F寄存器中。比較器1和比較器2從上述寄存器中取得所需數(shù)值,經(jīng)比較后,通過選擇性地向X軸脈沖發(fā)生器和Y軸脈沖發(fā)生器發(fā)出使能信號,以此來決定X軸脈沖發(fā)生還是Y軸脈沖發(fā)生,被使能的X軸脈沖發(fā)生器或Y軸脈沖發(fā)生器向二軸電機發(fā)出脈沖控制信號。進而實現(xiàn)比較積分法的插補。
圖7硬件實現(xiàn)連接總圖2.2.2速度與進給控制模塊硬件實現(xiàn)設計
在本設計中,速度與進給控制模塊是整個插補過程的調度者,其既承擔了電機運行的加減速控制,又決定著插補進程的流程及各模塊間的信號同步。圖6為該模塊的結構圖。
圖6速度與進給控制模塊結構圖MCU向CPLD發(fā)出時鐘信號(CLK),同時實現(xiàn)加工路徑和速度的規(guī)劃,并將這些參數(shù)分別放入對應的最大速度寄存器、加速步長參數(shù)寄存器和減速步長參數(shù)寄存器中。根據(jù)這些參數(shù)可以計算出相應的加速步長、減速步長和最大速度。圖6中的計數(shù)器用作可變分頻器,用以在不同速度時段以CLK為基準時鐘產生不同頻率的脈沖控制信號,發(fā)送給X軸、Y軸脈沖發(fā)生器,從而達到分別改變電機在X軸和Y軸分速度的目的。上述脈沖控制信號還被送入比較器與最大速度脈沖頻率進行比較來判斷是否達到恒速條件,比較結果再傳入計數(shù)器中,用以控制電機的加減速。
2.3仿真總圖
根據(jù)上述設計方案,該硬件實現(xiàn)在Quartus II中完成的連接總圖如圖7所示。
其中Velocity_conrol為速度與進給控制模塊。Accumulator為A、B、F計算模塊,它主要完成的工作是通過圖4中的公式來進行A、B、F的計算。Compare為比較器1和比較器2,分別完成A與B的比較和F與0的比較。X_Y_Pulse為X軸脈沖發(fā)生器和Y軸脈沖發(fā)生器,它們用來給電機驅動模塊發(fā)出脈沖控制信號,該脈沖控制信號的頻率決定于速度與進給控制模塊,該脈沖的使能決定于比較器1與比較器2,進而可以控制電機的運行速度與運動軌跡。
3測試與分析
首先在Quartus II中分別完成了直線和拋物線插補算法的模擬,分別得出X軸和Y軸脈沖發(fā)生器對應于直線與拋物線的時序圖。其中所取直線為第一象限直線,起始點為原點,終點坐標為(50,30)。所取的拋物線方程為:Y2=4X,其起點坐標為第一象限中(25,10),終點坐標為第四象限中的(25,-10),第一象限中為逆時針插補,第四象限中為順時針插補。其時序圖如圖8和圖9所示。
為了驗證硬件可重構子系統(tǒng)的插補效果,將上文中進行仿真的程序燒錄到CPLD中,進行實物測試。根據(jù)電機上光電編碼器所采集到的電機運動軌跡,在MATLAB中分別繪制出直線運動軌跡圖與拋物線運動軌跡圖,如圖10和圖11所示。
由以上時序圖和軌跡圖可以看出其對應關系。對于直線插補和拋物線插補,其X軸脈沖發(fā)生器均為持續(xù)發(fā)出脈沖,驅動X軸方向的電機一直轉動;其Y軸脈沖發(fā)生圖8直線插補時序圖
器均為間歇發(fā)出脈沖,從而保證了直線的斜率和拋物線的弧度。而且通過拋物線時序圖和軌跡圖的比對可以看出,加速過程,即一開始Y軸脈沖發(fā)生器輸出時間很長,但是其運動的距離卻很短。
在圖11中,拋物線插補曲線存在偏差:本應關于X軸對稱的上下兩部分不對稱,過象限點不在原點處。這與其前后的X軸和Y軸的脈沖進給方向有關。4結論
本文對基于嵌入式的硬件可重構系統(tǒng)進行了設計,并在該系統(tǒng)上實現(xiàn)了比較積分插補算法。實驗結果表明,所設計的系統(tǒng)能較好地實現(xiàn)插補算法與電機控制。然而,從電機運動軌跡圖上可以看出,插補終點存在著一個脈沖當量的誤差,而且在拋物線
插補過程中,出現(xiàn)了過原點和對稱性的偏差。上述問題需進行校正方法的探索。
參考文獻
?。?] 鄭飛,王時龍,簡易. 可重構分布式數(shù)控系統(tǒng)的設計與實現(xiàn)[J]. 計算機集成制造系統(tǒng),2008, 14(4):637-643.
?。?] 周祖德,龍毅宏,劉泉. 嵌入式網(wǎng)絡數(shù)控技術與系統(tǒng)[J]. 機械工程學報,2007,43(5):1-7.
?。?] PEREIRA C E, CARRO L. Distributed realtime embedded system: recent advances, future trends, and their impact on manufacturing plant control[J]. Annual Reviews in Control, 2007,31(1): 81-92.
[4] 王太勇,李波,萬淑敏,等. 基于現(xiàn)場總線的可重構數(shù)控系統(tǒng)研究[J]. 計算機集成制造系統(tǒng),2006, 12(1):1662-1667.
?。?] 董靖川.可重構數(shù)控系統(tǒng)關鍵技術研究[D].天津:天津大學,2010.
?。?] 任玉田,焦振學,王宏甫. 機床計算機數(shù)控技術[M]. 北京:北京理工大學出版社,1996.
?。?] 王進. 比較積分法及其程序設計[J]. 機械設計與制造,1995,8(6):32-34.
[8] 周慧. 比較積分法插補過程的研究與仿真[J]. 機床與液壓,2004(3):70-71.
?。?] 王曉明,王玲. 電機的DSP控制—TI公司DSP應用[M]. 北京:北京航空航天大學出版社,2004.