久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

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

步進電機控制器的FPGA實現

作者: 時間:2009-04-22 來源:網絡 收藏

該模塊的主要功能是將count與angleDnCount產生的數值經過編碼,再通過baBA輸出到,來對電機進行控制。模塊仿真圖見圖2。
假設resel=1,則將count和angleDnCount設置成0。
假設reset=O,clk為上升沿觸發且ini=0時,就將設定的初值(cntini與angle)賦給count和angleDn―Count兩個信號端,也就是(count=O+cntini)與(an―gleDnCount=angle)。
假設reset=O,clk為上升沿觸發且ini=1時,則將count與cntini相加,再將結果存為count。然后判斷angleDnCount的值是否大于angleDnCntDec。如果大于,則用angleDnCount減angleDnCntDec,將結果存為angleDnCount;否則,將angleDnCount設為0(因為此時angleDnCount的值小于angleDnCntDec,表示電機已經到達設定位置,故不需要繼續轉動了)。BaBA[3..O]是將count與angleDnCount產生的數值經過編碼后輸出到四相的端口的。

本文引用地址:http://cqxgywz.com/article/192088.htm


3 QuartusⅡ仿真結果
上述程序在ALTERA公司免費提供的QuartusⅡ環境下編譯通過,適配的器件為FLEXlOKlO。最后得到的系統仿真圖及生成的系統模塊符號圖分別如圖3,圖4所示。

reset是系統內部自復位信號;dir是正反轉的方向控制;clk是由外部提供的時鐘信號;ini是賦初值的使能開關;manner[1..O]是激磁方式的選擇開關(00:自動檢測角度輸入,決定激磁方式;01:一相激磁;10:二相激磁;11:一、二相激磁);angle[7..0]是步進角的倍數設定數如引腳;baBA[3..0]是系統輸出信號引腳,是內部計數器的count[3..O]數值編碼的結果。


4 結 語
步進電機作為一種數字伺服執行元件,具有結構簡單,運行可靠,控制方便,控制性能好等優點,但現實中步進電機的控制比較復雜。
這里設計的步進電機方法簡單,支持四相步進電機的三種勵磁方式、正反轉運行,這種基于的設計方法,可以加速同類型產品的開發速度,節約投資。并且可以根據步進電機的不同,改變分層模塊的VHDL程序的參數,實現不同型號步進電機的控制,在實際應用中有利于步進電機的廣泛應用。


上一頁 1 2 3 4 下一頁

評論


相關推薦

技術專區

關閉