薛敏驊
?。ㄉ虾V電凱歌實業(yè)有限公司,上海 200062)
摘要:設(shè)計了基于ASSP-MMC-1的步進電機控制器。首先分析了步進電動機的運行原理及細(xì)分技術(shù)原理,在硬件設(shè)計上,采用了TI公司的MSP430F149單片機作為主控制芯片,主控制單元向驅(qū)動電路傳遞脈寬調(diào)制(PWM)信號,通過驅(qū)動控制器(ASSP-MMC-1)實現(xiàn)對步進電動機的控制尤其是細(xì)分控制,并顯示運行參數(shù)。在軟件設(shè)計上,并采用模塊化編程和結(jié)構(gòu)化編程思想,最后通過調(diào)試實現(xiàn)控制器軟硬件設(shè)計。
關(guān)鍵詞:步進電動機;MSP430單片機;ASSP-MMC-1;細(xì)分技術(shù)
0引言
隨著控制技術(shù)及電子技術(shù)的提高,步進電動機的驅(qū)動也有了很大的進步,從單電壓或單電流驅(qū)動到步進電動機的細(xì)分驅(qū)動。由于早期的晶體管驅(qū)動已趨于淘汰,現(xiàn)在多數(shù)以高性價比的恒流電源或細(xì)分驅(qū)動電源代替[1]。尤其是細(xì)分技術(shù)的出現(xiàn),可以在不改變電機本身結(jié)構(gòu)的前提下提高步進電動機的分辨率,而且能減小系統(tǒng)震蕩,提高電動機步頻特性[2]。步進電動機多用于數(shù)控車床和機器人系統(tǒng)中。因為在現(xiàn)代工業(yè)控制,特別是航空電子領(lǐng)域中,要求完成的工作量大、精度高。利用人工操作不僅勞動強度大、效率低,且難以達(dá)到所要求的精度,最重要的是一些工作環(huán)境是人類無法到達(dá)的地方,這就需要數(shù)控機床和自動控制機器人來完成這些高難度工作[35]。因此步進電機的研究對未來自動控制領(lǐng)域有著跨時代的意義。
1細(xì)分驅(qū)動技術(shù)原理
細(xì)分驅(qū)動技術(shù)也被稱為微步驅(qū)動技術(shù),它細(xì)分電機繞組的電流或者電壓。具體地,該技術(shù)通過常規(guī)的矩形波電源供電變?yōu)殡A梯波供電,然后,或經(jīng)過若干個階梯步驟上升到設(shè)定值,或以同樣的方式從設(shè)定值下降到零。雖然這中驅(qū)動技術(shù)比較復(fù)雜,但有以下特點[6]:
(1)在保留步進電機內(nèi)部結(jié)構(gòu)不變的情況下,使實際的步距角減小,縮小步進之間的誤差,同時提高步進電機的分辨率和步距精度,可大大提高對執(zhí)行機構(gòu)的控制精度,可用于高精度的控制器中。
(2)細(xì)分驅(qū)動技術(shù)可以使驅(qū)動電流的變化幅度值減小,電機轉(zhuǎn)子達(dá)到穩(wěn)定位置時的過剩能量也會隨機減少,與此同時減弱了步進電動機的低頻振蕩問題,獲得了轉(zhuǎn)矩增加、噪聲降低的優(yōu)點。
(3)相應(yīng)的步進電機控制信號的頻率提高了N倍(細(xì)分?jǐn)?shù)),因此可遠(yuǎn)離低頻諧振頻率,克服出現(xiàn)共振的危害,使步進電動機能夠比較穩(wěn)定、安全地工作。
角度細(xì)分控制是步進電動機的開環(huán)控制技術(shù)之一,細(xì)分就是把步進電動機的步距角再細(xì)分成更小的角度,這樣步進電動機的運行就變成了相對勻變速運動方式,并且能夠使它在任何位置停步[67]。在這里,三相反應(yīng)式電動機的3拍通電和6拍通電每步轉(zhuǎn)過的度數(shù)分別是120°和60°,如圖1所示。
由此可知,步進電動機控制中已蘊含了細(xì)分技術(shù)的原理,即如果每拍通電使定子合成磁動勢在空間轉(zhuǎn)動的角度減半,則可使步進電動機的步距角減半[8]。
從6拍通電模式可知,若要將每一步細(xì)分為4步進行,則合成磁動勢的分步情況如圖2所示。當(dāng)由A相通電切換成AB通電時,只要使B相不是由零突變成額定值,圖2細(xì)分時合成磁動勢的旋轉(zhuǎn)情況而是分為4步完成,每步增加1/4,則切換過程中合成磁動勢就可變?yōu)樵瓉淼?/4。與此同理,當(dāng)AB相通電切換為B相通電時,只要使A相電流不是由額定值突然變?yōu)榱慵纯?。即如果要把每一步?xì)分為4步完成,只需將相電流分為4個臺階投入或者截斷。因此,步距角4細(xì)分時電流波形如圖3所示。
如果將繞組中電流波形細(xì)分成N(N為正整數(shù))個臺階的階梯波,則電流每上升或下降一個臺階時,步進電動機轉(zhuǎn)子就轉(zhuǎn)過一小步。由于當(dāng)轉(zhuǎn)子按照這種方式轉(zhuǎn)過N小步時,也就是它轉(zhuǎn)過一個步距角的轉(zhuǎn)動,這就是具體實現(xiàn)的步進電動機角度控制的原理[1]。
2步進電機控制器系統(tǒng)設(shè)計
圖4步進電動機控制器總體框圖步進電機控制器系統(tǒng)的總體結(jié)構(gòu)在經(jīng)過詳細(xì)的方案比較及論證后,設(shè)計其總體框圖如圖4所示。
圖5步進電機的控制方式框圖由文獻(xiàn)可知,步進電動機的種類有很多種,但它們的控制方式也有相似之處,圖5為步進電動機的控制框圖[7]。
2.1基于MSP430F149單片機最小系統(tǒng)模塊的設(shè)計
步進電機控制器系統(tǒng)的主要控制模塊是單片機最小系統(tǒng),因此選擇合適的單片機主控單元尤其重要。在選擇單片機應(yīng)考慮以下幾個因素[9]:
(1)存儲器容量:存儲容量是指數(shù)據(jù)存儲器(RAM)的容量和程序存儲器(ROM)的容量。
(2)中斷能力:要求單片機的中斷數(shù)量和中斷間隔時間符合實際的需要。
(3)指令系統(tǒng):要求指令簡單,容易修改維護。
(4)價格因素:性價比高。
(5)綜合性能。
本設(shè)計所選用的單片機是美國德州儀器(TI)公司的MSP430系列中的MSP430F149單片機。因為它將多種外圍資源集中在片上,實現(xiàn)了片上系統(tǒng)(SoC),因而大大簡化了整個系統(tǒng)的設(shè)計,并且它是一種具有超低功耗特性的高性價比單片機系統(tǒng)。
2.2基于ASSP-MMC-1驅(qū)動模塊設(shè)計
MMC1為多通道兩相四線式步進電機/直流電機控制芯片,基于NEC電子16位通用MCU(PD78F1203)固化專用程序?qū)崿F(xiàn)。通過UART或SPI串行接口,為主控MCU擴展專用電機控制功能,可同時控制三路步進電機或直流電機。步進電機控制原理圖如圖6所示[9]。
2.3電源模塊設(shè)計
本文設(shè)計的電源模塊共分為3個電壓等級:12 V為驅(qū)動芯片工作電壓,5 V為主要集成電路工作電壓,3.3 V為微控制器工作電壓。
本設(shè)計采用LM2940-5V和LM117-3.3 V完成5 V和3. 3V電源的設(shè)計,如圖7所示。
2.4步進電機控制器軟件系統(tǒng)設(shè)計
本設(shè)計軟件系統(tǒng)總體設(shè)計框圖如8所示。
本設(shè)計由PWM信號驅(qū)動ASSP-MMC-1芯片從而控制步進電動機的各種工作狀態(tài)。MSP430F149單片機擁有捕獲/比較(capture/compare)模塊,可以輸出脈沖寬度隨時可調(diào)的PWM信號,從而實現(xiàn)步進電機變頻控制。
如圖9所示,此種PWM信號選擇的定時器計數(shù)方式為增計數(shù)模式。PWM信號的周期可以通過向CCR0中寫入數(shù)值計算。則該周期的計算公式如下:
PWM周期=[CCR0+1]×Tosc/分頻比(1)
其中,Tosc為定時器選擇的始終周期;分頻比可為1、2、4、8。
初始化PWM信號的脈沖寬度,通過寫入16位寄存器CCRx的值進行初始化。其計算公式與選定的工作模式密切相關(guān),若選定置位/復(fù)位模式則數(shù)學(xué)計算公式如下:
PWM脈寬=[CCR0-CCRx]×Tosc/分頻比(2)
在電機運行過程中,速度控制必不可少,采用PWM調(diào)速可比較方便地控制電機轉(zhuǎn)速[10]。當(dāng)設(shè)置PWM的周期較大,并且在一個周期的計數(shù)數(shù)量足夠大時,可以通過PWM比較精確地調(diào)節(jié)步進電機的轉(zhuǎn)速。在本設(shè)計中,通過MSP430F149的定時器TimerA產(chǎn)生PWM波,通過設(shè)定定時器的初值來改變PWM波的頻率,最終實現(xiàn)改變電機的速度。整個過程采用了開環(huán)控制,能夠精確地對步進電機速度和方位進行控制。利用MSP430F149定時器TimerA還可以方便地達(dá)到控制要求,它能平滑地輸出不同的電壓,從而實現(xiàn)對步進電機調(diào)速。
3步進電機控制器調(diào)試
本設(shè)計采用了瑞典IAR System 公司推出的IAREW集成開發(fā)工具,它是一種高效的嵌入式開發(fā)工具,具有豐富的仿真功能。調(diào)試過程是:輸入源程序的.c文件、編譯成.obj文件、單步運行、斷電執(zhí)行、全速執(zhí)行等。在調(diào)試過程中可以清楚地觀察程序執(zhí)行的全過程。在這里,控制器調(diào)試模塊及調(diào)試效果圖如圖10~圖13所示。通過調(diào)試步進電機控制器可實現(xiàn)電機正反轉(zhuǎn)、加減速、細(xì)分步距角。
4結(jié)論
?。?)本文深入探討了步進電動機運行特性,對步進電動機的控制原理及細(xì)分原理進行了詳細(xì)深入的分析,并設(shè)計出一款新型步進電動機控制器。
?。?)對于硬件電路設(shè)計,主要分為主控制電路設(shè)計和驅(qū)動電路設(shè)計,在硬件設(shè)計過程中增加了一些濾波電路,大大提高了系統(tǒng)的抗干擾能力;對于軟件架構(gòu)的設(shè)計,主要運用了模塊化設(shè)計思想。
?。?)本文采用SSPMMC1驅(qū)動芯片內(nèi)部可以實現(xiàn)步距角的多種細(xì)分控制,從而減少了控制系統(tǒng)的外圍硬件電路,使設(shè)計更加實用;在進行軟硬件的聯(lián)合調(diào)試時,盡可能地優(yōu)化了控制控制器,提升了控制器性能。
參考文獻(xiàn)
?。?] 吳朝霞,張瑩,華建寧,等. 控制電機及其運用[M].北京:北京郵電大學(xué)出版社,2012.
?。?] 馬文斌,楊延竹,洪運. 步進電機控制系統(tǒng)的設(shè)計及應(yīng)用[J]. 電子技術(shù)應(yīng)用,2015,(41)11: 1113.
?。?] 龐海燕,謝云,肖姍姍,等. SVPWM伺服控制系統(tǒng)的FPGA設(shè)計與實現(xiàn)[J]. 微型機與應(yīng)用,2010,29(2):7578,82.
?。?] Wang Yanwen, Zhang Yanping, Ge Biao, et al. Design of stepper motor drive based on AMIS30512[C]. Lecture Notes in Information TechnologyProceedings of 2012 International Conference on Electronics, Information and Communication Engineering (EICE2012), Hong Kong, 2012:6.