基于FPGA的步進(jìn)電機(jī)控制器設(shè)計(jì)
發(fā)布時(shí)間:2007/8/28 0:00:00 訪(fǎng)問(wèn)次數(shù):505
青島科技大學(xué) 金元郁 李勇 李園園
步進(jìn)電機(jī)是一種將電脈沖信號(hào)轉(zhuǎn)換成相應(yīng)的角位移的特殊電機(jī),每改變一次通電狀態(tài),步進(jìn)電機(jī)的轉(zhuǎn)子就轉(zhuǎn)動(dòng)一步。目前大多數(shù)步進(jìn)電機(jī)控制器需要主控制器發(fā)送時(shí)鐘信號(hào),并且要至少一個(gè)I/O口來(lái)輔助控制和監(jiān)控步進(jìn)電機(jī)的運(yùn)行情況。在單片機(jī)或DSP的應(yīng)用系統(tǒng)中,經(jīng)常配合CPLD或者FPGA來(lái)實(shí)現(xiàn)特定的功能。本文介紹通過(guò)FPGA實(shí)現(xiàn)的步進(jìn)電機(jī)控制器。該控制器可以作為單片機(jī)或DSP的一個(gè)直接數(shù)字控制的外設(shè),只需向控制器的控制寄存器和分頻寄存器寫(xiě)入數(shù)據(jù),即可實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)的控制。
1 步進(jìn)電機(jī)的控制原理
步進(jìn)電機(jī)是數(shù)字控制電機(jī),它將脈沖信號(hào)轉(zhuǎn)變成角位移,即給一個(gè)脈沖信號(hào),步進(jìn)電機(jī)就轉(zhuǎn)動(dòng)一個(gè)角度,因此非常適合對(duì)數(shù)字系統(tǒng)的控制。步進(jìn)電機(jī)可分為反應(yīng)式步進(jìn)電機(jī)(簡(jiǎn)稱(chēng)“VR”)、永磁式步進(jìn)電機(jī)(簡(jiǎn)稱(chēng)“PM”)和混合式步進(jìn)電機(jī)(簡(jiǎn)稱(chēng)“HB”)。
步進(jìn)電機(jī)區(qū)別于其他控制電機(jī)的最大特點(diǎn)是,通過(guò)輸入脈沖信號(hào)來(lái)進(jìn)行控制,即電機(jī)的總轉(zhuǎn)動(dòng)角度由輸入脈沖數(shù)決定,而電機(jī)的轉(zhuǎn)速由脈沖信號(hào)頻率決定。
步進(jìn)電機(jī)的驅(qū)動(dòng)電路根據(jù)控制信號(hào)工作,控制信號(hào)由各類(lèi)控制器來(lái)產(chǎn)生。其基本原理作用如下:
① 控制換相順序,通電換相。這一過(guò)程稱(chēng)為“脈沖分配”。例如:四相步進(jìn)電機(jī)的單四拍工作方式,其各相通電順序?yàn)锳—B—C—D。通電控制脈沖必須嚴(yán)格按照這一順序分別控制A、B、C、D相的通斷,控制步進(jìn)電機(jī)的轉(zhuǎn)向。如果給定工作方式正序換相通電,則步進(jìn)電機(jī)正轉(zhuǎn);如果按反序換相通電,則電機(jī)就反轉(zhuǎn)。
② 控制步進(jìn)電機(jī)的速度。如果給步進(jìn)電機(jī)發(fā)一個(gè)控制脈沖,它就轉(zhuǎn)一步,再發(fā)一個(gè)脈沖,它會(huì)再轉(zhuǎn)一步。兩個(gè)脈沖的間隔越短,步進(jìn)電機(jī)就轉(zhuǎn)得越快。調(diào)整控制器發(fā)出的脈沖頻率,就可以對(duì)步進(jìn)電機(jī)進(jìn)行調(diào)速。
2 控制器的總體設(shè)計(jì)
控制器的外部接口電路如圖1所示。各引腳的功能如下:
data[7~0] 控制器與單片機(jī)等設(shè)備的總線(xiàn)接口;
cs片選信號(hào),低電平有效;
wr寫(xiě)信號(hào),低電平有效;
reset復(fù)位信號(hào),低電平有效;
adr[1~0] 內(nèi)部寄存器地址信號(hào),與單片機(jī)等設(shè)備地址線(xiàn)相連;
clk待分頻的時(shí)鐘,可由FPGA提供;
abcd[3~0] 四相位輸出。
控制器的內(nèi)部原理框圖如圖2所示,由命令字寄存器(Cmd_reg)、分頻系數(shù)備份寄存器(fdiv_back)、分頻器、相位輸出狀態(tài)機(jī)組成。
其中命令字寄存器(Cmd_reg組成如下(對(duì)應(yīng)的地址為“00”):
X未用位。
Ini 對(duì)控制器初始化為1時(shí)有效。當(dāng)該位為1時(shí),備份寄存器的數(shù)據(jù)直接裝入分頻器的寄存器reg_data[15~0],裝入后由硬件自動(dòng)置0。
New 當(dāng)對(duì)正在運(yùn)行的控制器寫(xiě)入新的分頻系數(shù)時(shí),對(duì)該位置1;當(dāng)下一個(gè)分頻器輸出的clkout時(shí)鐘來(lái)到時(shí),將fdiv_back寫(xiě)入到reg_data[15~0]中,分頻器便按新的分頻系數(shù)進(jìn)行分頻。
Manner[1~0] 電動(dòng)機(jī)的驅(qū)動(dòng)方式,用來(lái)控制相位輸出狀態(tài)機(jī)的輸出,“00”表示單四拍方式,四相位輸出為(A—B—C—D);“01”表示雙四拍,四相位輸出為(AB—BC—CD—DA),八拍(A—AB—B—BC—C—CD—D—DA)。
分頻系數(shù)備份寄存器(fdiv_back) 兩字節(jié)寄存器,reg_data[15~0]為分頻器的一個(gè)16位寄存器,接收f(shuō)div_back的值,對(duì)系統(tǒng)的分頻為2~65 536。對(duì)于12 MHz的輸入頻率,分頻后頻率為6 MHz~183 Hz,(本設(shè)計(jì)中,步進(jìn)電機(jī)的啟動(dòng)轉(zhuǎn)速、轉(zhuǎn)距、加速度由使用者根據(jù)實(shí)際情況自己計(jì)算)分頻后每個(gè)clkout走一個(gè)步距角。對(duì)于步距角為1.8°的電機(jī),可以滿(mǎn)足各種速度的要求。
3 分頻器的設(shè)計(jì)<
青島科技大學(xué) 金元郁 李勇 李園園
步進(jìn)電機(jī)是一種將電脈沖信號(hào)轉(zhuǎn)換成相應(yīng)的角位移的特殊電機(jī),每改變一次通電狀態(tài),步進(jìn)電機(jī)的轉(zhuǎn)子就轉(zhuǎn)動(dòng)一步。目前大多數(shù)步進(jìn)電機(jī)控制器需要主控制器發(fā)送時(shí)鐘信號(hào),并且要至少一個(gè)I/O口來(lái)輔助控制和監(jiān)控步進(jìn)電機(jī)的運(yùn)行情況。在單片機(jī)或DSP的應(yīng)用系統(tǒng)中,經(jīng)常配合CPLD或者FPGA來(lái)實(shí)現(xiàn)特定的功能。本文介紹通過(guò)FPGA實(shí)現(xiàn)的步進(jìn)電機(jī)控制器。該控制器可以作為單片機(jī)或DSP的一個(gè)直接數(shù)字控制的外設(shè),只需向控制器的控制寄存器和分頻寄存器寫(xiě)入數(shù)據(jù),即可實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)的控制。
1 步進(jìn)電機(jī)的控制原理
步進(jìn)電機(jī)是數(shù)字控制電機(jī),它將脈沖信號(hào)轉(zhuǎn)變成角位移,即給一個(gè)脈沖信號(hào),步進(jìn)電機(jī)就轉(zhuǎn)動(dòng)一個(gè)角度,因此非常適合對(duì)數(shù)字系統(tǒng)的控制。步進(jìn)電機(jī)可分為反應(yīng)式步進(jìn)電機(jī)(簡(jiǎn)稱(chēng)“VR”)、永磁式步進(jìn)電機(jī)(簡(jiǎn)稱(chēng)“PM”)和混合式步進(jìn)電機(jī)(簡(jiǎn)稱(chēng)“HB”)。
步進(jìn)電機(jī)區(qū)別于其他控制電機(jī)的最大特點(diǎn)是,通過(guò)輸入脈沖信號(hào)來(lái)進(jìn)行控制,即電機(jī)的總轉(zhuǎn)動(dòng)角度由輸入脈沖數(shù)決定,而電機(jī)的轉(zhuǎn)速由脈沖信號(hào)頻率決定。
步進(jìn)電機(jī)的驅(qū)動(dòng)電路根據(jù)控制信號(hào)工作,控制信號(hào)由各類(lèi)控制器來(lái)產(chǎn)生。其基本原理作用如下:
① 控制換相順序,通電換相。這一過(guò)程稱(chēng)為“脈沖分配”。例如:四相步進(jìn)電機(jī)的單四拍工作方式,其各相通電順序?yàn)锳—B—C—D。通電控制脈沖必須嚴(yán)格按照這一順序分別控制A、B、C、D相的通斷,控制步進(jìn)電機(jī)的轉(zhuǎn)向。如果給定工作方式正序換相通電,則步進(jìn)電機(jī)正轉(zhuǎn);如果按反序換相通電,則電機(jī)就反轉(zhuǎn)。
② 控制步進(jìn)電機(jī)的速度。如果給步進(jìn)電機(jī)發(fā)一個(gè)控制脈沖,它就轉(zhuǎn)一步,再發(fā)一個(gè)脈沖,它會(huì)再轉(zhuǎn)一步。兩個(gè)脈沖的間隔越短,步進(jìn)電機(jī)就轉(zhuǎn)得越快。調(diào)整控制器發(fā)出的脈沖頻率,就可以對(duì)步進(jìn)電機(jī)進(jìn)行調(diào)速。
2 控制器的總體設(shè)計(jì)
控制器的外部接口電路如圖1所示。各引腳的功能如下:
data[7~0] 控制器與單片機(jī)等設(shè)備的總線(xiàn)接口;
cs片選信號(hào),低電平有效;
wr寫(xiě)信號(hào),低電平有效;
reset復(fù)位信號(hào),低電平有效;
adr[1~0] 內(nèi)部寄存器地址信號(hào),與單片機(jī)等設(shè)備地址線(xiàn)相連;
clk待分頻的時(shí)鐘,可由FPGA提供;
abcd[3~0] 四相位輸出。
控制器的內(nèi)部原理框圖如圖2所示,由命令字寄存器(Cmd_reg)、分頻系數(shù)備份寄存器(fdiv_back)、分頻器、相位輸出狀態(tài)機(jī)組成。
其中命令字寄存器(Cmd_reg組成如下(對(duì)應(yīng)的地址為“00”):
X未用位。
Ini 對(duì)控制器初始化為1時(shí)有效。當(dāng)該位為1時(shí),備份寄存器的數(shù)據(jù)直接裝入分頻器的寄存器reg_data[15~0],裝入后由硬件自動(dòng)置0。
New 當(dāng)對(duì)正在運(yùn)行的控制器寫(xiě)入新的分頻系數(shù)時(shí),對(duì)該位置1;當(dāng)下一個(gè)分頻器輸出的clkout時(shí)鐘來(lái)到時(shí),將fdiv_back寫(xiě)入到reg_data[15~0]中,分頻器便按新的分頻系數(shù)進(jìn)行分頻。
Manner[1~0] 電動(dòng)機(jī)的驅(qū)動(dòng)方式,用來(lái)控制相位輸出狀態(tài)機(jī)的輸出,“00”表示單四拍方式,四相位輸出為(A—B—C—D);“01”表示雙四拍,四相位輸出為(AB—BC—CD—DA),八拍(A—AB—B—BC—C—CD—D—DA)。
分頻系數(shù)備份寄存器(fdiv_back) 兩字節(jié)寄存器,reg_data[15~0]為分頻器的一個(gè)16位寄存器,接收f(shuō)div_back的值,對(duì)系統(tǒng)的分頻為2~65 536。對(duì)于12 MHz的輸入頻率,分頻后頻率為6 MHz~183 Hz,(本設(shè)計(jì)中,步進(jìn)電機(jī)的啟動(dòng)轉(zhuǎn)速、轉(zhuǎn)距、加速度由使用者根據(jù)實(shí)際情況自己計(jì)算)分頻后每個(gè)clkout走一個(gè)步距角。對(duì)于步距角為1.8°的電機(jī),可以滿(mǎn)足各種速度的要求。
3 分頻器的設(shè)計(jì)<
熱門(mén)點(diǎn)擊
- ARMv7架構(gòu)技術(shù)細(xì)節(jié)披露,三大系列面向不同
- 電風(fēng)扇遙控電路PT2128及其應(yīng)用
- ELK-04型SF6氣體絕緣金屬封閉開(kāi)關(guān)設(shè)備
- 10KV開(kāi)關(guān)站開(kāi)關(guān)柜選型對(duì)城區(qū)供電的影響
- MIPS挺進(jìn)中國(guó),在上海設(shè)研發(fā)中心
- 基于FPGA的以太網(wǎng)控制器設(shè)計(jì)
- EEMBC進(jìn)行OAmark測(cè)試,可配置處理器
- 瑞薩推出32位RSIC微控制器,最高工作頻率
- 高壓變電站10kV母線(xiàn)保護(hù)的分析和研究
- 洗衣機(jī)交流電機(jī)驅(qū)動(dòng)智能功率模塊(SPM)FP
推薦技術(shù)資料
- 自制經(jīng)典的1875功放
- 平時(shí)我也經(jīng)常逛一些音響DIY論壇,發(fā)現(xiàn)有很多人喜歡LM... [詳細(xì)]
- 超低功耗角度位置傳感器參數(shù)技術(shù)
- 四路輸出 DC/DC 降壓電源
- 降壓變換器和升降壓變換器優(yōu)特點(diǎn)
- 業(yè)界首創(chuàng)可在線(xiàn)編程電源模塊 m
- 可編程門(mén)陣列 (FPGA)智能 電源解決方案
- 高效先進(jìn)封裝工藝
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究