《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于FPGA的步進電機控制器研究和實現
基于FPGA的步進電機控制器研究和實現
現代電子技術
應芳琴 浙江財經學院
摘要: 該系統以FPGA為核心部件,根據步進電機的工作原理,利用EDA技術實現了步進電機的細分驅動控制。采用VHDL語言并根據步進電機的不同,改變模塊程序的參數,實現不同型號的步進電機控制。在系統設計過程中,力求硬件簡單,并充分發揮VHDL語言軟件編程靈活方便和FPGA快速的特點來滿足系統設計要求,同時大大縮短系統的開發時間和成本。
Abstract:
Key words :

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

    步進電機是數字控制電機,它將脈沖信號轉變成角位移,即給一個脈沖信號,步進電機就轉動一個角度,因此非常適合對數字系統的控制。由于工業技術的不斷進步,諸如自動化控制、精密機械加工、航空航天技術,以及所有要求高精度定位、自動記錄、自動瞄準等的高新技術領域對步進電機的細分要求越來越高。實踐證明。步進電機的細分驅動技術可以減小步進電機的步距角,提高電機運行的平穩性,增加控制的靈活性等。采用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的地址由地址計數器產生。通過對地址計數器進行控制,可以改變步進電機的旋轉方向、轉動速度、工作/停止狀態。FPGA產生的PWM信號控制各功率管驅動電路的導通和關斷,其中PWM信號隨ROM數據而變化,改變輸出信號的占空比,即可實現限流及細分控制,最終使電機繞組呈現階梯形變化,從而實現步距細分的目的。輸出細分電流信號采用FPGA中LPM_ROM查表法,它是通過在不同地址單元內寫入不同的PWM數據,用地址選擇來實現不同通電方式下的可變步距細分。

1.JPG



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

2.JPG


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

3.JPG


    DEC2為無細分時的電機控制模塊,控制雙四拍時的正反轉。
    步進電機的正、反轉控制可通過改變步進電機各繞組的通電順序來改變轉向,當四相雙四拍步進電機的通電順為AB→BC→CD→DA→AB…時,電機正轉;當其繞組按AD→DC→CB→BA→AD…的順序通電時,電機反轉。因此,利用case語句編程來改變輸出脈沖的順序,以此改變步進電機繞組的通電順序。用‘1’表示該繞組加電;用‘0’表示該繞組斷電。
    4.JPG
    圖4為DEC2反轉時的仿真波形。

5.JPG


2.2 利用VHDL文件生成元器件
    工程創建好以后,就可以用設計好的VHDL語言文件生成工程模塊。首先打開CNT8.vhd文件,點擊菜單中File→Create/Update→Crea-te Symbol Files forCurrent File命令,以生成圖5所示CNT8模塊。

7.JPG


    按照同樣的方法生成CNT24和DEC2模塊。將這些模塊包裝為一個symbol,以備總模塊調用,如圖5所示。
2.3 原理圖輸入設計
2.3.1 PWM_1.mif文件的設計
    在設計控制器前,必須首先完成存放PWM波形的ROM存儲器設計,而在此之前還必須定制LPM_ROM初始化數據文件,如圖6所示。

8.JPG


2.3.2 ROM存儲器的設計
    mif文件建好以后就可以進入ROM存儲器的設計。
    設計好的rom3模塊如圖7所示。

9.JPG


2.3.3 定制模塊
    調用LPM庫中的模塊,定制BUSMUX(參數化多路數據選擇器)元件和lpm_compare0元件。
    如圖8所示,數據選擇器通過模式選擇信號,再根據不同的模式功能選擇該功能模塊的信號輸出。該模塊的輸入信號有模式選擇信號sel[0],即非細分控制和模式選擇信號sel[1],即細分控制。當sel為“0”時,對應的為非細分控制輸出,即由DEC2輸出,此時步進電機按照雙四拍模式運行;當sel為“1”時,對應的為細分控制輸出,即由比較器CMP3輸出,此時步進電機按照細分8拍模式運行。
    調用LPM庫中的模塊,定制一個lpm_compare0元件,然后在lpm_compare0的輸入/輸出端接入輸入/輸出信號,并將這些模塊包裝為一個symbol,以備總模塊調用,如圖9所示。

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

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

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
99视频精品在线| 亚洲另类在线一区| 亚洲韩国青草视频| 狠狠色综合网| 国产日韩欧美三区| 国产精品三上| 国产精品久久波多野结衣| 欧美日韩黄色一区二区| 欧美精品一区二区三区在线播放| 麻豆国产精品一区二区三区| 美女主播精品视频一二三四| 美女脱光内衣内裤视频久久网站| 久久躁日日躁aaaaxxxx| 久久久免费观看视频| 欧美在线一级视频| 欧美在线播放高清精品| 久久国产精品黑丝| 欧美在线视频导航| 久久精品亚洲精品| 久久另类ts人妖一区二区| 久久这里只有| 欧美凹凸一区二区三区视频| 欧美顶级少妇做爰| 欧美久久电影| 欧美视频在线观看一区| 国产精品男女猛烈高潮激情| 国产精品综合色区在线观看| 国产亚洲福利社区一区| 精品成人一区二区| 亚洲欧洲精品一区二区精品久久久 | 亚洲国产精品美女| 亚洲三级电影全部在线观看高清| 亚洲精品你懂的| 一区二区高清| 欧美一区二区免费| 亚洲国产老妈| 99国产精品久久久| 亚洲欧美乱综合| 久久久久久电影| 欧美福利专区| 欧美视频二区| 国产一区91| 亚洲国产日韩一级| 亚洲视频免费| 亚洲大胆人体视频| 一卡二卡3卡四卡高清精品视频| 午夜精品久久久久99热蜜桃导演| 久久精品一级爱片| 欧美福利视频| 国产精品亚洲片夜色在线| 国模精品一区二区三区| 亚洲精品乱码久久久久| 亚洲一区三区在线观看| 亚洲国产清纯| 亚洲综合色网站| 老**午夜毛片一区二区三区| 欧美日韩亚洲国产精品| 国产日产亚洲精品系列| 亚洲国产成人91精品| 一区二区三区四区在线| 久久超碰97人人做人人爱| 一本色道久久99精品综合 | 午夜一区二区三视频在线观看| 久久久久久综合网天天| 欧美日韩国产色综合一二三四| 国产毛片一区二区| 亚洲人成亚洲人成在线观看| 亚洲一品av免费观看| 亚洲人成高清| 欧美中文字幕久久| 欧美日韩成人综合天天影院| 国产亚洲成av人片在线观看桃| 亚洲欧洲日韩在线| 亚洲欧美自拍偷拍| 亚洲毛片一区| 久久精品视频免费播放| 欧美日韩综合视频| 在线播放国产一区中文字幕剧情欧美| 中文一区在线| 亚洲日韩成人| 久久精品免费| 国产精品成人一区二区艾草| 亚洲福利小视频| 性久久久久久久| 亚洲尤物视频网| 欧美91大片| 国产在线日韩| 亚洲网在线观看| 日韩一级不卡| 免费不卡在线视频| 国产女人18毛片水18精品| 亚洲乱码国产乱码精品精可以看| 亚洲电影在线| 欧美中文在线免费| 国产精品久久亚洲7777| 99精品免费网| 日韩午夜在线播放| 女人天堂亚洲aⅴ在线观看| 国产手机视频精品| 亚洲午夜一区二区| 一区二区三区四区精品| 欧美大胆a视频| 激情婷婷亚洲| 久久精品国产一区二区三区免费看| 欧美亚洲视频一区二区| 国产精品久久久久久久浪潮网站| 亚洲免费大片| 一本一本a久久| 欧美极品在线视频| 亚洲经典在线| 亚洲精品国产视频| 牛牛国产精品| 亚洲高清不卡一区| 亚洲欧洲三级| 欧美 日韩 国产一区二区在线视频 | 亚洲一区欧美| 欧美视频1区| 日韩一区二区精品视频| av成人手机在线| 欧美区一区二| 亚洲免费观看高清完整版在线观看熊 | 欧美日韩成人在线视频| 亚洲精品无人区| 夜夜夜久久久| 欧美日韩另类丝袜其他| 夜夜爽夜夜爽精品视频| 亚洲先锋成人| 国产精品青草久久| 午夜精品成人在线| 久久精品一级爱片| 激情综合自拍| 亚洲精选一区二区| 欧美日韩mv| 一区二区三区四区精品| 欧美亚洲一区三区| 国产亚洲欧美色| 亚洲福利一区| 欧美大片在线观看一区| 亚洲美女淫视频| 亚洲欧美日本国产专区一区| 欧美日本在线| 欧美一区影院| 国内久久精品视频| 91久久精品国产91久久| 欧美激情亚洲另类| 99re热这里只有精品视频| 午夜国产欧美理论在线播放| 国产麻豆精品视频| 亚洲国产成人av| 欧美日韩国产综合视频在线| 中文亚洲免费| 久久久精品tv| 亚洲国产精品福利| 亚洲一区免费在线观看| 国产欧美日韩亚洲| 亚洲福利专区| 欧美日韩在线精品| 性8sex亚洲区入口| 欧美成人午夜激情在线| 99亚洲一区二区| 久久大综合网| 亚洲肉体裸体xxxx137| 欧美亚洲自偷自偷| 影音先锋久久资源网| 一区二区三区日韩在线观看| 国产伦精品免费视频| 亚洲欧洲精品一区二区三区| 欧美午夜激情在线| 欧美一区网站| 欧美日韩精品在线| 欧美在线观看视频| 欧美精品一区二区三区很污很色的 | 国产精品福利在线观看| 欧美专区在线观看| 欧美久久成人| 欧美一区影院| 欧美日韩精品国产| 欧美一区=区| 欧美日韩一区自拍| 欧美在线免费看| 欧美视频日韩视频| 久久精品日韩| 国产精品九九| 亚洲毛片在线观看| 国产乱肥老妇国产一区二| 亚洲免费福利视频| 国产一区99| 亚洲欧美日韩精品| 亚洲电影免费在线观看| 欧美在线高清视频| 日韩视频一区二区| 久久亚洲春色中文字幕| 亚洲一区二区三区在线| 欧美激情欧美激情在线五月| 午夜精品电影| 欧美亚洲第一区| 亚洲美女尤物影院| 黄色日韩网站| 欧美一激情一区二区三区| 日韩午夜中文字幕|