基于FPGA的步進電機優化控制方案

本文引用地址:http://www.104case.com/article/235486.htm
該控制系統中采用總線控制方式,利用片選信號依次控制4路PWM鎖存器的通斷,這樣可以簡化硬件電路和軟件設計。以A相控制為例,當片選A為高電平而其他幾路片選為低時,A路PWM鎖存器工作而其他幾路PWM鎖存器休眠。根據公式(8)計算出細分的電流分配系數,進而轉化成控制PWM信號的占空比,同時開通幾路鎖存器,通過鎖存器輸出驅動步進電機。
3 步進電機細分控制軟件的設計
本設計中采用QuartusⅡ軟件開發平臺和Verilog設計語言進行控制軟件的設計。系統中需要在FPGA內利用線性反饋移位寄存器(Linear Feedback Shift Registers)來實現隨機數的產生,控制步進電機的隨機取樣轉動,本系統中最核心的PWM控制模塊設計如下:

4 系統測試
系統設計完成后,對整個系統進行測試和檢驗。PWM控制系統的仿真結果如圖5所示,觀察仿真輸出波形可知控制脈沖輸出正確。將程序固化到FPGA硬件中之后,將被控的四相反應式步進電機連接上,并通過串口將FPGA與上位機相連,由上位機輸出命令控制步進電機的轉速、轉向、轉動角度等。

5 結語
驗證結果表明,該控制系統實現了步進電機等步距角的16級細分,并通過人機交互實現了任意改變各相順序的主要技術指標,控制精度高,可靠性強。
評論