李 婧, 金占雷
(北京空間機電研究所,北京 100190)
步進電機由于其開環(huán)控制、無定位累計誤差等優(yōu)點,在衛(wèi)星遙感器的機構(gòu)控制中得到廣泛應(yīng)用。但也存在一些問題:(1)傳統(tǒng)的雙四拍或者四相八拍的工作方式,方波式的繞組電流造成很大的轉(zhuǎn)矩脈動,容易出現(xiàn)低頻振蕩;(2)隨著遙感器成像質(zhì)量的日益提高,對機構(gòu)的定位精度也提出越來越高的要求,傳統(tǒng)的恒電壓驅(qū)動、恒電流驅(qū)動、調(diào)頻調(diào)壓等方式已經(jīng)無法滿足要求。細分驅(qū)動方法恰好可以解決這兩個問題。設(shè)計的意義在于:(1)在不改變電機內(nèi)部參數(shù)的情況下,使步距角減小,即提高分辨率和步距精度。(2)改善低頻振蕩問題。經(jīng)過細分后,驅(qū)動電流的變化幅度大大減小,轉(zhuǎn)矩均勻連續(xù)變化,轉(zhuǎn)子到達平衡位置時的過剩能量也大為減小,且控制信號的頻率增大后,可遠離轉(zhuǎn)子的低頻諧振頻率。
目前實現(xiàn)兩相步進電機的細分驅(qū)動方法大多為雙極性驅(qū)動。在低速時雙極性效率是單極性的兩倍,在高速時因雙極性驅(qū)動方式的電感為單極性的兩倍,轉(zhuǎn)矩下降很快[1];且雙極性驅(qū)動同側(cè)兩個驅(qū)動管存在短時同時導(dǎo)通的風(fēng)險,可能造成電源短路,可靠性不高,影響其在遙感器上的應(yīng)用。
本文針對雙極性細分驅(qū)動器的以上不足,設(shè)計了一種針對兩相步進電機的單極性細分驅(qū)動器,并以FPGA為核心實現(xiàn)了PWM算法,具有集成度高、靈活性大等特點。該驅(qū)動器采用細分控制和通路選擇相結(jié)合的方法進行電機驅(qū)動,不存在電源對地的直接通路,因此可靠性高,可在對可靠性要求較高的航天航空領(lǐng)域廣泛應(yīng)用。
目前實現(xiàn)細分的驅(qū)動器大多為雙極性驅(qū)動方式。雙極性驅(qū)動是指繞組線圈中的電流有時沿某一方向流動,有時按相反方向流動。步進電機的雙極性驅(qū)動電路如圖1所示,一般由兩個H橋電路構(gòu)成,每個H橋電路由2片驅(qū)動芯片和4個MOSFET管構(gòu)成。當(dāng) VT1,VT4導(dǎo)通時,電流從A→C,VT2,VT3導(dǎo)通時,電流從 C→A,當(dāng)通電順序為AC→BD→CA→DB時,電機正轉(zhuǎn),通電順序為DB→CA→BD→AC時,電機反轉(zhuǎn)。VT1和VT3,VT2和 VT4,VT5和 VT7,VT6和 VT8不能同時導(dǎo)通,若同時導(dǎo)通,電源對地直通,會燒毀電源或者電路。這阻礙了雙極性細分驅(qū)動在航天遙感器上的應(yīng)用。
為了防止電源直通,一般的雙極性驅(qū)動電路需要加死區(qū)保護、邏輯控制或者電流保護電路對電源進行保護。死區(qū)出現(xiàn)于控制導(dǎo)通時間小于斷開時間,如在 VT1,VT4導(dǎo)通之前,提前把 VT2,VT3斷開,防止由于器件的開關(guān)延時導(dǎo)致上下橋臂直通;邏輯控制是采用邏輯判斷的方法讓輸入給功率管的控制信號沒有同時導(dǎo)通的可能;過流保護是對H橋上的電流進行實時監(jiān)測,當(dāng)電流過大時,直接將電源切斷,起到保護的目的。但這幾種方法的加入無疑都增加了成本,本文將介紹一種單極性驅(qū)動方法,避開雙極性驅(qū)動的這些問題,也能很好地達到細分驅(qū)動的效果。
圖1 雙極性驅(qū)動電路示意圖
從兩相混合式步進電機的結(jié)構(gòu)特性和工作原理可知,步進電機的驅(qū)動是靠給步進電機的各相勵磁繞組輪流通以電流,實現(xiàn)步進電機勵磁磁場合成方向的變化來使步進電機轉(zhuǎn)動的[2]。細分控制就是把原來的一步再細分成若干份,將原來的方波脈沖電流變?yōu)殡A梯波電流。本質(zhì)來講是通過對步進電機繞組中的電流控制,使電機內(nèi)部的合成磁場變成連續(xù)的旋轉(zhuǎn)磁場。對兩相混合式步進電機而言,給在空間彼此相差90°的兩相繞組,分別通以相位互差90°的正弦電流(見圖2)。
圖2 相位互差90°的兩相繞組階梯電流波形
由于兩相電流空間位置是正交的,則合成一個以Im為幅值,-α為幅角的矢量。
這樣,每當(dāng)α的值發(fā)生變化時,則合成的矢量轉(zhuǎn)過一個相應(yīng)的角度,且幅值大小保持不變,實現(xiàn)了恒力矩、均勻步距角的細分驅(qū)動[3],所產(chǎn)生的轉(zhuǎn)矩如圖3所示[4]。利用式(1)可得到n細分后,A,B兩相的電流數(shù)據(jù),量化后記錄下來,電機運行時,只要取出與步數(shù)對應(yīng)的電流數(shù)據(jù)送入控制電路中,即可實現(xiàn)對步進電機相繞組電壓的控制,達到細分步距角的目的。
圖3 8細分驅(qū)動下的轉(zhuǎn)矩矢量圖
若在不細分單極性驅(qū)動電路(見圖4(a))驅(qū)動管的控制端直接輸入細分后的電壓波形,得到的相電流波形如圖4(b)所示。在電壓輸出為高的區(qū)域,電流波形為想要的擬正弦,但是在電壓輸出為零的區(qū)域,期望電流為零,卻出現(xiàn)了橢圓包。分析原因是由于采用這種單極性驅(qū)動方式,A、C相繞組,B、D相繞組實際上是同軸線圈,在A相通電時C相也會感應(yīng)出電流;同樣,在C相通電時A相也會感應(yīng)出電流,而電流波形直接影響轉(zhuǎn)矩,電機在這樣的驅(qū)動電路下轉(zhuǎn)動,振蕩依然明顯,達不到細分想要的平穩(wěn)運行,和不細分的轉(zhuǎn)動效果相差不大。故不能采用。
圖4 傳統(tǒng)單極性功率驅(qū)動器原理圖及驅(qū)動電流波形
為達到理想的正弦型細分電流波形,避免感應(yīng)電流的產(chǎn)生,設(shè)計了一種改進的單極性驅(qū)動電路用于細分控制,其原理如圖5所示。
圖5 單極性細分驅(qū)動器原理圖
此方法采用細分控制和通路選擇結(jié)合的方式進行驅(qū)動控制。VT1為P溝道MOS管,它串聯(lián)在電源和步進電機的公共端之間,實現(xiàn)細分控制。在各相線圈的輸出端和電源回路之間串聯(lián)一個正向二極管和一個N溝道的MOS管,當(dāng)A相工作時,VT2導(dǎo)通電流從電源正端→VT1→A→VD1→VT2→電源負端,VT3斷開,VD2和VT3共同完成A相對C相干擾的抑制;VD3為續(xù)流二極管,無論A相還是C相線圈工作,當(dāng)VT1斷開時,都通過VD3形成續(xù)流回路。這種方法抑制了傳統(tǒng)單極性驅(qū)動方法同軸線圈間的感應(yīng)電流,可以得到想要的正弦型細分電流波形,下面將詳細介紹用FPGA產(chǎn)生上述電路所需的加在功率管 VT1,VT2,VT3,VT4,VT5,VT6 前端的控制信號波形的具體實現(xiàn)方法。
控制器采用FPGA控制步進電機,因為FPGA可同步產(chǎn)生多路PWM電流波形,控制靈活,還可以通過改變控制波形表的數(shù)據(jù),增加計數(shù)器的位數(shù),提高細分精度,從而達到對步進電機的轉(zhuǎn)角進行任意細分,控制方式簡單,控制精度高,效果好。用單片機和DSP都難以達到同樣的效果。
最常用的步進電機細分驅(qū)動電路有斬波式和PWM兩種[5]。PWM細分驅(qū)動電路是將輸入的控制電壓轉(zhuǎn)換成相應(yīng)脈沖寬度的矩形波,通過對功放管通斷時間的控制,改變輸出到電機繞組上的平均電流[6]。由于電機繞組是一個感性負載,對電流有一定的濾波作用,而且PWM電路的調(diào)制頻率比較高,一般大于20 kHz。因此,雖然是斷續(xù)通電,但電機繞組中的電流還是比較平穩(wěn)的。與斬波式細分驅(qū)動電路相比,PWM細分驅(qū)動電路的控制精度高,工作頻率穩(wěn)定[7]。因此本文采用FPGA實現(xiàn)的是PWM細分驅(qū)動。圖6為PWM的基本原理。載波信號a(t)采用等腰三角形,調(diào)制波b(t),當(dāng)b(t)>a(t)時輸出為高,b(t)<a(t)時輸出為低。改變調(diào)制波b(t)的幅值,調(diào)制信號的脈沖寬度(占空比)就會隨之改變,這樣輸出到電機繞組上的平均電流值也會改變,即可實現(xiàn)細分電流的控制。
圖6 PWM細分驅(qū)動示意圖
圖7為控制器部分系統(tǒng)結(jié)構(gòu)圖,由分頻計數(shù)模塊、分頻模塊、PWM波形存儲器、三角波產(chǎn)生器、電機A相比較器、電機B相比較器、電機C相比較器、電機D相比較器等組成。鋸齒波產(chǎn)生器在脈寬時鐘作用下增減計數(shù),產(chǎn)生20 K的周期性三角波,同時加載到四個比較器的一端,PWM波形存儲器產(chǎn)生的 A相波形 data_out[15..12],B 相波形 data_out[11..8],C 相波形 data_out[7..4],D 相波形 data_out[3..0]分別加載到各數(shù)字比較器的另一端,當(dāng)鋸齒波計數(shù)器的值小于波形存儲器輸出數(shù)值時,比較器輸出高電平。PWM波形存儲器是根據(jù)電機細分電流波形的要求,將各個時刻四相細分電流波形所對應(yīng)的數(shù)值存在波形存儲器中。通過對地址計數(shù)器進行控制,可改變步進電機的旋轉(zhuǎn)方向、轉(zhuǎn)動速度、工作/停止狀態(tài),具體是由圖8的狀態(tài)機實現(xiàn)的,共有32個狀態(tài),代表了8細分后電流的32個狀態(tài)值,每個狀態(tài)下A,B,C,D四相電流波形的數(shù)字量如表1所示。在與三角波進行比較時,每種電流波形數(shù)字量代表了一個具體的正弦值。
表1 各細分狀態(tài)下的相電流(數(shù)字量)對應(yīng)值
圖7 細分控制結(jié)構(gòu)圖
圖8 PWM波形存儲器的狀態(tài)機實現(xiàn)
VT1輸入的是電機A,C兩相的細分控制信號,VT4輸入的是電機B,D兩相的細分控制信號,故:VT1=(-A)+(-C);VT4=(-B)+(-D);VT2在A相輸出時導(dǎo)通,其余時刻截止,防止其他相對A相產(chǎn)生不必要的感應(yīng)電流。同理,VT3,VT5,VT6 分別在 C,B,D 相輸出時導(dǎo)通,其余時刻截止。這樣就用細分控制和各相通路選擇結(jié)合的方法實現(xiàn)了單極性細分驅(qū)動器。
根據(jù)前文所述,利用FPGA生成PWM八細分控制信號和四路通道選擇信號。圖9為輸入在圖5所示驅(qū)動管VT1上的A,C相細分信號和加在VT2,VT3上的通路選擇信號??梢钥闯黾釉赩T1上的細分控制信號是A,C兩相工作時的輸出。
圖9 A,C兩相細分控制信號和通路選擇信號波形
圖10為輸入在驅(qū)動管VT1上的A,C相細分信號和加在VT4上的B,D相細分控制信號波形。放大后可看出每相的細分波形由占空比不同的矩形波構(gòu)成,相位互差90°。
圖11為將控制信號加在兩相步進電機上后,測量繞組A,B兩相的相電流波形圖,可以看出,得到了互差90°的半波正弦型電流波形圖,此時電機運行平穩(wěn),明顯比不細分時振蕩頻率低。
圖10 A,C相和B,D相細分控制信號波形
圖11 A,B兩相繞組相電流波形
該方法經(jīng)試驗驗證,其與雙極性驅(qū)動效果相當(dāng),有效降低了振蕩;且控制電路比雙極性驅(qū)動簡單,無需死區(qū)保護,不存在電源直通的風(fēng)險,可靠性高。
本文分析了兩相式步進電機雙極性細分驅(qū)動方法的不足,說明了傳統(tǒng)單極性驅(qū)動方法會在線圈上產(chǎn)生感應(yīng)電勢和感應(yīng)電流,是導(dǎo)致細分驅(qū)動不能平穩(wěn)運行的原因。設(shè)計了一種單極性PWM細分驅(qū)動器,用FPGA實現(xiàn)了步進電機8細分控制信號,驅(qū)動電路得到了相位互差90°的四相半波正弦電流波形,該方法消除了線圈之間的相互電流感應(yīng)干擾,并且不存在電源對地直通的風(fēng)險,試驗證明了該細分驅(qū)動器可驅(qū)動電機平穩(wěn)運行,可應(yīng)用在對可靠性要求較高的航天航空領(lǐng)域。
[1]王自強.步進電機應(yīng)用技術(shù)[M].北京:科學(xué)出版社,2010.
[2]劉夢亭.基于FPGA控制的步進電機細分驅(qū)動系統(tǒng)[D].廣州:廣東工業(yè)大學(xué),2008.
[3]周石磊.8eFPGA的兩相混合式步進電機細分驅(qū)動的實現(xiàn)[D].成都:中國科學(xué)院光電技術(shù)研究所,2006.
[4]惠晶,肖榮.一種實用的步進電機細分驅(qū)動控制系統(tǒng)[J].微電機,2009,42(10):87-89.
[5]陳學(xué)軍.步進電機細分驅(qū)動控制系統(tǒng)的研究與實現(xiàn)[J].電機與控制應(yīng)用,2006,33(6):48-50.
[6]徐志躍,文招金,陳偉海.基于FPGA的兩相步進電機細分驅(qū)動電路設(shè)計[J].電氣傳動,2008,38(4):59-62.
[7]王志超,林巖,李大慶.兩相混合式步進電機細分驅(qū)動[J],信息與電子工程,2008,6(6):457-460.