基于FPGA的步進(jìn)電機控制器研究和實(shí)現
調用LPM庫中的模塊,定制一個(gè)lpm_compare0元件,然后在lpm_compare0的輸入/輸出端接入輸入/輸出信號,并將這些模塊包裝為一個(gè)symbol,以備總模塊調用,如圖9所示。本文引用地址:http://dyxdggzs.com/article/191259.htm
2.3.4 各模塊集成
各功能模塊設計完成后,用原理圖的輸入法生成總的功能模塊,實(shí)現設計功能,最后生成的頂層電路圖如圖10所示。
3 系統調試
3.1 步進(jìn)電機總模塊時(shí)序仿真調試及分析
總模塊在QuartusⅡ6.1軟件環(huán)境下編譯通過(guò),再進(jìn)行總體仿真。
圖11中各信號的定義為u_d為步進(jìn)電機正、反轉控制;clock0為步進(jìn)電機轉動(dòng)速度控制;clock5為PWM計數時(shí)鐘;s=1為細分;s=0為非細分。Y[3..0]分別對應步進(jìn)電機的4個(gè)相,即DP,CP,BP,AP;s為選擇細分控制。
圖11給出了步進(jìn)電機無(wú)細分仿真波形圖。圖12給出了步進(jìn)電機從A相(1000即8)→AB相(1100即12)→B相(0100即4)→BC相(0110即6)→相C(0010即2)→CD相(0010即3)→D相(0001即1)→DA相(1001即9)→…的工作過(guò)程仿真波形。通過(guò)圖12可以清楚地看到,首先步進(jìn)電機A相導通,B,C,D相截止;然后B項的數據逐漸增大,從1增大到4,電機中的磁場(chǎng)經(jīng)過(guò)4拍從A相轉到了AB相,再經(jīng)過(guò)4拍,A相的數據逐漸減小,電機中的磁場(chǎng)從AB相轉到B相。從A到AB再到B共經(jīng)過(guò)了8拍,實(shí)現了步距角的8細分。圖13給出了步進(jìn)電機反轉8細分仿真波形圖。
步進(jìn)電機的轉速取決于輸入的脈沖頻率。如果給步進(jìn)電機發(fā)一個(gè)控制脈沖,它就轉一步,再發(fā)一個(gè)脈沖,它會(huì )再轉一步。2個(gè)脈沖的間隔越短,步進(jìn)電機轉得越快。調整控制器發(fā)出的脈沖頻率,就可以對步進(jìn)電機進(jìn)行調速。從圖14可以看出,當改變輸入脈沖clock0的周期時(shí),A,B,C,D四相繞組的高低電平寬度將發(fā)生變化,它將導致通電和斷電的變化速率發(fā)生變化,隨之使電機轉速發(fā)生變化。所以調節輸入脈沖的周期就可以控制步進(jìn)電機的運動(dòng)速度。
由圖14與圖15的對比可知,通過(guò)減少clock0周期,步進(jìn)電機控制器的運行速度明顯加快。通過(guò)以上對步進(jìn)電機的仿真分析可知,該設計實(shí)現了對步進(jìn)電機的各種基本控制。
3.2 下栽到實(shí)際FPGA器件上進(jìn)行工程調試
各模塊經(jīng)過(guò)編譯優(yōu)化后,就要選擇合適的目標芯片進(jìn)行綜合、管腳配置。該系統選用Altera公司的高性?xún)r(jià)比Cyclone系列FPGA芯片,型號為EP1C6Q240C8,芯片在32 678 Hz下工作,將實(shí)驗板GW48-PK3的JTAG PORT接口和下載接口USBBlaster用數據線(xiàn)連接,最后打開(kāi)板子的電源。
在該硬件環(huán)境中,通過(guò)鍵7可以控制步進(jìn)電機的正、反轉,鍵8可以選擇步進(jìn)電機的細分/非細分功能,這證明該設計完成了步進(jìn)電機細分驅動(dòng)控制器的設計要求,最終取得了令人滿(mǎn)意的結果。
4 結語(yǔ)
該系統以FPGA為核心部件,根據步進(jìn)電機的工作原理,利用EDA技術(shù)實(shí)現了步進(jìn)電機的細分驅動(dòng)控制。采用VHDL語(yǔ)言并根據步進(jìn)電機的不同,改變模塊程序的參數,實(shí)現不同型號的步進(jìn)電機控制。在系統設計過(guò)程中,力求硬件簡(jiǎn)單,并充分發(fā)揮VHDL語(yǔ)言軟件編程靈活方便和FPGA快速的特點(diǎn)來(lái)滿(mǎn)足系統設計要求,同時(shí)大大縮短系統的開(kāi)發(fā)時(shí)間和成本。
評論