新聞中心

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

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

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

        調用LPM庫中的模塊,定制一個lpm_compare0元件,然后在lpm_compare0的輸入/輸出端接入輸入/輸出信號,并將這些模塊包裝為一個symbol,以備總模塊調用,如圖9所示。

        本文引用地址:http://www.104case.com/article/191259.htm

        10.JPG


        2.3.4 各模塊集成
        各功能模塊設計完成后,用原理圖的輸入法生成總的功能模塊,實現設計功能,最后生成的頂層電路圖如圖10所示。

        11.JPG



        3 系統調試
        3.1 總模塊時序仿真調試及分析
        總模塊在QuartusⅡ6.1軟件環境下編譯通過,再進行總體仿真。
        圖11中各信號的定義為u_d為正、反轉控制;clock0為轉動速度控制;clock5為PWM計數時鐘;s=1為細分;s=0為非細分。Y[3..0]分別對應步進電機的4個相,即DP,CP,BP,AP;s為選擇細分控制。

        12.JPG


        圖11給出了步進電機無細分仿真波形圖。圖12給出了步進電機從A相(1000即8)→AB相(1100即12)→B相(0100即4)→BC相(0110即6)→相C(0010即2)→CD相(0010即3)→D相(0001即1)→DA相(1001即9)→…的工作過程仿真波形。通過圖12可以清楚地看到,首先步進電機A相導通,B,C,D相截止;然后B項的數據逐漸增大,從1增大到4,電機中的磁場經過4拍從A相轉到了AB相,再經過4拍,A相的數據逐漸減小,電機中的磁場從AB相轉到B相。從A到AB再到B共經過了8拍,實現了步距角的8細分。圖13給出了步進電機反轉8細分仿真波形圖。
        步進電機的轉速取決于輸入的脈沖頻率。如果給步進電機發一個控制脈沖,它就轉一步,再發一個脈沖,它會再轉一步。2個脈沖的間隔越短,步進電機轉得越快。調整發出的脈沖頻率,就可以對步進電機進行調速。從圖14可以看出,當改變輸入脈沖clock0的周期時,A,B,C,D四相繞組的高低電平寬度將發生變化,它將導致通電和斷電的變化速率發生變化,隨之使電機轉速發生變化。所以調節輸入脈沖的周期就可以控制步進電機的運動速度。

        13.JPG


        由圖14與圖15的對比可知,通過減少clock0周期,步進電機的運行速度明顯加快。通過以上對步進電機的仿真分析可知,該設計實現了對步進電機的各種基本控制。

        14.JPG


        3.2 下栽到實際器件上進行工程調試
        各模塊經過編譯優化后,就要選擇合適的目標芯片進行綜合、管腳配置。該系統選用Altera公司的高性價比Cyclone系列芯片,型號為EP1C6Q240C8,芯片在32 678 Hz下工作,將實驗板GW48-PK3的JTAG PORT接口和下載接口USBBlaster用數據線連接,最后打開板子的電源。
        在該硬件環境中,通過鍵7可以控制步進電機的正、反轉,鍵8可以選擇步進電機的細分/非細分功能,這證明該設計完成了步進電機細分驅動的設計要求,最終取得了令人滿意的結果。

        4 結語
        該系統以為核心部件,根據步進電機的工作原理,利用EDA技術實現了步進電機的細分驅動控制。采用VHDL語言并根據步進電機的不同,改變模塊程序的參數,實現不同型號的步進電機控制。在系統設計過程中,力求硬件簡單,并充分發揮VHDL語言軟件編程靈活方便和FPGA快速的特點來滿足系統設計要求,同時大大縮短系統的開發時間和成本。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 延庆县| 西安市| 观塘区| 昭通市| 鄄城县| 西充县| 康马县| 塔河县| 武穴市| 翁源县| 清丰县| 江西省| 株洲市| 北票市| 马边| 吉首市| 农安县| 聂拉木县| 河南省| 滁州市| 镶黄旗| 当阳市| 岫岩| 天台县| 福泉市| 桐城市| 南丹县| 丁青县| 汤原县| 隆回县| 若尔盖县| 商南县| 房山区| 安平县| 武川县| 平谷区| 柞水县| 甘孜县| 平江县| 兴化市| 铁岭县|