新聞中心

EEPW首頁 > EDA/PCB > 設計應用 > 基于FPGA的步進電機控制器研究和實現

基于FPGA的步進電機控制器研究和實現

作者: 時間:2011-04-02 來源:網絡 收藏

摘要:是一種將電脈沖轉化為角位移的執(zhí)行機構,已廣泛應用于各種自動化控制系統中。為了提高對的細分要求,提出了基于控制的方案。給出了用VHDL語言層次化設計各功能模塊的過程,利用QuartusⅡ進行仿真,給出了仿真結果,并成功地在器件上驗證了設計的可能性。采用器件和VHDL語言,只需修改模塊程序參數,而無須修改硬件電路就能實現各種控制。該設計硬件結構簡單可靠,可根據實踐需要靈活方便進行配置。
關鍵詞:步進電機;FGPA;;QuartusⅡ

步進電機是數字控制電機,它將脈沖信號轉變成角位移,即給一個脈沖信號,步進電機就轉動一個角度,因此非常適合對數字系統的控制。由于工業(yè)技術的不斷進步,諸如自動化控制、精密機械加工、航空航天技術,以及所有要求高精度定位、自動記錄、自動瞄準等的高新技術領域對步進電機的細分要求越來越高。實踐證明。步進電機的細分驅動技術可以減小步進電機的步距角,提高電機運行的平穩(wěn)性,增加控制的靈活性等。采用FPGA控制步進電機,利用其中的EAB可以構成存放電機各相電流所需的控制波形數據表,利用FPGA設計的數字比較器可以同步產生多路PWM電流波形,并對多相步進電機進行靈活控制。當改變控制波形表的數據,增加計數器的位數,提高計數精度后,就可以對
步進電機的步進轉角進行任意細分,從而實現步進轉角的精確控制。

1 步進電機細分驅動工作原理
圖1是步進電機細分驅動控制器系統框圖。該系統由PWM計數器,波形ROM地址計數器,PWM波形ROM存儲器、比較器、功放電路等緝成。其中,PWM計數器在脈寬時鐘的作用下遞增計數,產生階梯形上升的周期性鋸齒波,同時加載到各數字比較器的一端;PWM波形ROM輸出的數據A[3..0],B[3..0],C[3..0],D[3..0]分別加載到各數字比較器的另一端。當PWM計數器的計數值小于波形ROM輸出的數值時,比較器輸出低電平,當PWM計數器的計數值大于波形ROM輸出數值時,比較器輸出高電平。由此可輸出周期性的PWM波形。根據步進電機8細分電流波形的要求,將各個時刻的細分電流波形所對應的數值存放于波形ROM中,波形ROM的地址由地址計數器產生。通過對地址計數器進行控制,可以改變步進電機的旋轉方向、轉動速度、工作/停止狀態(tài)。FPGA產生的PWM信號控制各功率管驅動電路的導通和關斷,其中PWM信號隨ROM數據而變化,改變輸出信號的占空比,即可實現限流及細分控制,最終使電機繞組呈現階梯形變化,從而實現步距細分的目的。輸出細分電流信號采用FPGA中LPM_ROM查表法,它是通過在不同地址單元內寫入不同的PWM數據,用地址選擇來實現不同通電方式下的可變步距細分。

本文引用地址:http://www.butianyuan.cn/article/191259.htm

1.JPG



2 步進電機細分驅動控制器的FPGA實現
2.1 系統功能設計
運用自上而下(top-down)的設計思路,將系統按功能逐層分割實現層次化設計。根據步進電機細分控制框圖,將該系統分為PWM計數器(CNT8)、地址計數器(CNT24)、DEC2、PWM波形ROM、數字比較器(CMP3)、數據選擇器(BUSMUX)6個功能模塊,前3個模塊用VHDL語言編程描述各模塊的接口及電路功能;后3個模塊可選擇LPM庫中的適當模塊,并為其設定適當的參數,以滿足自己的需要。因而可在自己的項目中十分方便地調用優(yōu)秀電子工程技術人員的硬件設計成果。
CNT8是PWM計數器,在時鐘脈沖作用下遞增計數,以產生階梯形上升的周期性鋸齒波,同時加載到四相步進電機各相數字比較器的一端。圖2為它的仿真波形。

2.JPG


CNT24是可逆計數器,其U-D端即加減控制端作為控制電機正反轉的方向控制端。高電平時計數器加計數,電動機正轉;低電平時計數器減計數,電動機反轉。計數器的模應該等于電動機運行1個周期的拍數或拍數的整數倍(該處模等于32)。仿真波形如圖3所示。

3.JPG


上一頁 1 2 3 下一頁

評論


相關推薦

技術專區(qū)

關閉