袁 帥, 甘 靖
(1.湖南理工學(xué)院 信息與通信工程學(xué)院, 湖南 岳陽 414006; 2.湖南理工學(xué)院 計算機(jī)學(xué)院, 湖南 岳陽 414006)
基于FPGA的步進(jìn)電機(jī)細(xì)分驅(qū)動技術(shù)研究
袁 帥1, 甘 靖2
(1.湖南理工學(xué)院 信息與通信工程學(xué)院, 湖南 岳陽 414006; 2.湖南理工學(xué)院 計算機(jī)學(xué)院, 湖南 岳陽 414006)
受制造工藝的影響, 步進(jìn)電機(jī)的步距角一般較大, 而且還存在低頻振動, 導(dǎo)致其只能應(yīng)用在一些要求較低的場合. 本文設(shè)計了一種基于FPGA芯片來實(shí)現(xiàn)步進(jìn)電機(jī)細(xì)分驅(qū)動的方法. 利用FPGA中的嵌入式存儲模塊存放各相細(xì)分電流所需的PWM控制波形數(shù)據(jù)表, 并通過數(shù)字比較器同步產(chǎn)生多路PWM信號, 對步進(jìn)電機(jī)的轉(zhuǎn)角進(jìn)行均勻細(xì)分控制. 測試結(jié)果表明, 該步進(jìn)電機(jī)細(xì)分驅(qū)動技術(shù)可以減小步進(jìn)電機(jī)的步距角, 提高電機(jī)運(yùn)行的平穩(wěn)性, 增加控制的靈活性, 具有較好的實(shí)用價值.
FPGA; 電機(jī); 細(xì)分驅(qū)動; PWM
Abstract:Limited by the manufacture technics, the stepping motor has big step angles and low frequency vibration, and can only be applied to those situations with low demand. This paper designs a method to realize subdivision drive for the stepping motor based on FPGA chip. Firstly, PWM control waveform data table are stored in embedded memory module of FPGA. Secondly, multiple PWM control signals are produced by the digital comparator synchronously. Finally, we realize subdivision control for the step angles of stepping motor. Test result shows that the stepping motor subdivision drive technology can decrease the stepping angle of stepping motor, improve the stabilization and flexibility and has preferable practical value.
Key words:FPGA; stepping motor; subdivision drive; PWM
步進(jìn)電機(jī)作為一種電脈沖——角位移的轉(zhuǎn)換元件, 具有價格低廉、易于控制、無積累誤差和計算機(jī)接口方便等優(yōu)點(diǎn). 由于受制造工藝的影響, 步進(jìn)電機(jī)的步距角一般較大, 而且還存在低頻振動, 在低頻時有明顯的“步進(jìn)”感. 這些缺點(diǎn)使步進(jìn)電機(jī)一般只能應(yīng)用在一些要求較低的場合. 步進(jìn)電機(jī)細(xì)分驅(qū)動技術(shù)是70年代中期發(fā)展起來的一種可以顯著改善步進(jìn)電機(jī)綜合使用性能的驅(qū)動控制技術(shù). 本文采用FPGA技術(shù)進(jìn)行控制, 可根據(jù)細(xì)分要求的步距角, 事先計算出電機(jī)各相繞組中通過電流對應(yīng)的PWM值, 存儲在FPGA的嵌入式ROM中. 細(xì)分控制時, 地址計數(shù)器自動產(chǎn)生地址送到LPM_ROM, 根據(jù)不同的地址ROM輸出相應(yīng)的數(shù)據(jù), 輸出到數(shù)字比較器, 與線性鋸齒波比較后輸出PWM波形, 并加到各相的功放電路上,控制功放電路給各相繞組通以相應(yīng)的電流, 實(shí)現(xiàn)步進(jìn)電機(jī)的細(xì)分.
步進(jìn)電機(jī)細(xì)分驅(qū)動技術(shù)是70年代中期發(fā)展起來的一種可以顯著改善步進(jìn)電機(jī)綜合使用性能的驅(qū)動控制技術(shù). 1975年美國學(xué)者T.R. Fredriksen首次在美國增量運(yùn)動控制系統(tǒng)及器件年會上提出了步進(jìn)電機(jī)步距角細(xì)分的控制方法. 在其后的二十多年里, 步進(jìn)電機(jī)細(xì)分驅(qū)動技術(shù)得到了很大的發(fā)展, 從本質(zhì)上講是對步進(jìn)電機(jī)的勵磁繞組中電流的控制, 使步進(jìn)電機(jī)內(nèi)部的合成磁場為均勻的圓形旋轉(zhuǎn)磁場, 從而實(shí)現(xiàn)步進(jìn)電機(jī)步距角的細(xì)分. 要想實(shí)現(xiàn)步距角均勻細(xì)分控制, 必須合理控制電機(jī)繞組中的電流, 使步進(jìn)電機(jī)內(nèi)部合成磁場的幅值恒定, 每個進(jìn)給脈沖所引起的合成磁場的角度變化要均勻. 實(shí)踐證明, 步進(jìn)電機(jī)細(xì)分驅(qū)動技術(shù)可以減小步進(jìn)電機(jī)的步距角, 提高電機(jī)運(yùn)行的平穩(wěn)性, 增加控制的靈活性等[1].
Mθ=45°. 和單四拍方式相比,Mθ和Bθ都減小了一倍, 實(shí)現(xiàn)了步距角的二細(xì)分. 要使可達(dá)到的細(xì)分?jǐn)?shù)較大, 就必須能控制步進(jìn)電機(jī)各相勵磁繞組中的電流, 使其按階梯上升或下降, 即在零到最大相電流之間能有多個穩(wěn)定的中間電流狀態(tài), 相應(yīng)的磁場矢量幅值也就存在多個中間狀態(tài), 這樣, 相鄰兩相或多相的合成磁場的方向也將有多個穩(wěn)定的中間狀態(tài). 四相步進(jìn)電機(jī)八細(xì)分時的各相電流是以1/4的步距上升或下降的,在兩相TA, TB中間又插入了7個穩(wěn)定的中間狀態(tài), 原來一步所轉(zhuǎn)過的角度θM將由8步完成, 實(shí)現(xiàn)了步距角的八細(xì)分[3].步進(jìn)電機(jī)細(xì)分驅(qū)動的關(guān)鍵在于細(xì)分步進(jìn)電機(jī)各相勵磁繞組中的電流.
圖1所示為四相步進(jìn)電機(jī)的八細(xì)分電流波形, 從圖1可以看出, 一般情況下總有兩相繞組同時通電. 一相電流逐漸增大, 另一相逐漸減小. 對應(yīng)于一個步距角, 電流可以變化8個臺階, 也就是電機(jī)位置可以細(xì)分為8個小角度, 這就是電機(jī)的一個步距角被8細(xì)分的工作原理[4,5].
圖1 步進(jìn)電機(jī)八細(xì)分電流
利用FPGA中的嵌入式EAB存放步進(jìn)電機(jī)轉(zhuǎn)角細(xì)分電流所需的數(shù)據(jù)控制波形表, 利用FPGA設(shè)計的數(shù)字比較器可以同步產(chǎn)生多路PWM電流波形, 對四相步進(jìn)電機(jī)轉(zhuǎn)角進(jìn)行均勻細(xì)分、靈活控制. 若提高ROM控制波形表的數(shù)據(jù)的位數(shù)、并增加計數(shù)器和比較器的位數(shù), 提高計數(shù)精度, 就可以提高PWM波形的細(xì)分精度, 對步進(jìn)電機(jī)的步進(jìn)轉(zhuǎn)角進(jìn)行任意細(xì)分, 實(shí)現(xiàn)步進(jìn)轉(zhuǎn)角的精確控制. 圖2所示為步進(jìn)電機(jī)細(xì)分驅(qū)動系統(tǒng)的整體結(jié)構(gòu)圖.
圖2 系統(tǒng)整體結(jié)構(gòu)圖
運(yùn)用自上而下的設(shè)計思路, 將系統(tǒng)按功能逐層分解實(shí)現(xiàn)層次化設(shè)計. 系統(tǒng)的頂層原理圖如圖3所示.系統(tǒng)是由PWM計數(shù)器、波形ROM地址計數(shù)器、PWM波形ROM存儲器、比較器和二路選擇器等組成. 其中, PWM計數(shù)器在脈寬時鐘作用下遞增計數(shù), 產(chǎn)生階梯形上升的周期性的鋸齒波, 同時加載到各數(shù)字比較器的一端; PWM波形ROM輸出的數(shù)據(jù)A[3..0]、B[3..0]、C[3..0]、D[3..0]分別加載到各數(shù)字比較器的另一端. 當(dāng)PWM計數(shù)器的計數(shù)值小于波形ROM輸出數(shù)值時, 比較器輸出低電平; 當(dāng)PWM計數(shù)器的計數(shù)值大于波形ROM輸出數(shù)值時, 比較輸出高電平. 由此可輸出周期性的PWM波形. 根據(jù)要求, 各個時刻細(xì)分電流波形所對應(yīng)的數(shù)值存放于波形ROM中, 波形ROM的地址由地址計數(shù)器產(chǎn)生. 通過對地址計數(shù)器進(jìn)行控制, 可以改變步進(jìn)電機(jī)的旋轉(zhuǎn)方向、轉(zhuǎn)動速度和工作/停止?fàn)顟B(tài).
圖3 系統(tǒng)頂層原理圖
采用ALTERA公司的EP1K10TC100-3芯片進(jìn)行系統(tǒng)測試. 此芯片具有低內(nèi)核電壓、低功耗的特點(diǎn). 芯片內(nèi)門電路高達(dá)1萬門, 內(nèi)部使用RAM作電路結(jié)構(gòu), 速度高達(dá)幾百M(fèi)HZ.測試波形如圖4所示, 實(shí)現(xiàn)了對步進(jìn)電機(jī)步距角的8級細(xì)分.
本文提出了基于FPGA技術(shù)實(shí)現(xiàn)步進(jìn)電機(jī)細(xì)分的控制方案. 采用FPGA的PWM控制, 無須外接D/A轉(zhuǎn)換器, 使外圍控制電路大為簡化, 比目前單片機(jī)加D/A的控制方案更加高效. 通過利用EAB存放電機(jī)轉(zhuǎn)角細(xì)分電流所需的數(shù)據(jù)表, 由數(shù)字比較器同步產(chǎn)生多路PWM電流波形, 對多相步進(jìn)電機(jī)的轉(zhuǎn)角進(jìn)行均勻細(xì)分. 若提高波形表數(shù)據(jù)的位數(shù), 增加計數(shù)器和比較器的位數(shù), 就可以提高PWM波形的細(xì)分精度, 對步進(jìn)電機(jī)的步進(jìn)轉(zhuǎn)角進(jìn)行任意細(xì)分, 實(shí)現(xiàn)步進(jìn)轉(zhuǎn)角的精確控制.
圖4 系統(tǒng)測試波形圖
[1] 周明安. 步進(jìn)電機(jī)驅(qū)動技術(shù)發(fā)展及現(xiàn)狀[J]. 機(jī)電工程技術(shù), 2005, (02):16~17
[2] 徐國山, 潘振良. 步進(jìn)電機(jī)的基本原理[J]. 民營科技, 2007, (07): 9
[3] 潘 松, 黃繼業(yè). EDA技術(shù)與VHDL [M]. 北京: 清華大學(xué)出版社, 2005: 357~358
[4] 晉兆瓊, 夏超英, 張 建. 基于單片機(jī)的步進(jìn)電機(jī)細(xì)分驅(qū)動的實(shí)現(xiàn)[J]. 電氣傳動和自動化, 2006, (06): 8~13
[5] 林海波. 步進(jìn)電機(jī)恒力矩均勻細(xì)分驅(qū)動器的設(shè)計與實(shí)現(xiàn)[J]. 自動化技術(shù)與應(yīng)用, 2003, (03): 52~54
[6] 李超彪. 基于CPLD的步進(jìn)電機(jī)細(xì)分復(fù)合控制器[J]. 中國機(jī)械工程, 2005, (18):1647~1650
Research of Subdivision Drive Technology of Stepping Motor Based on FPGA
YUAN Shuai1, GAN Jing2
(1.College of Information and Communication Engineering, Hunan Institute of Science and Technology, Yueyang 414006, China; 2. College of Computer Science, Hunan Institute of Science and Technology, Yueyang 414006, China)
TN911.6, TP391.75
A
1672-5298(2010)01-0062-03
2009-12-04
袁 帥(1978- ), 男, 湖南岳陽人, 湖南理工學(xué)院信息與通信學(xué)院講師. 主要研究方向: 電子信息技術(shù)開發(fā)