田 云,張宏龍
(1.黑龍江農(nóng)業(yè)經(jīng)濟(jì)職業(yè)學(xué)院,黑龍江牡丹江157041;2.貴州電子信息高級(jí)技工學(xué)校,貴州都勻558001)
步進(jìn)電動(dòng)機(jī)是一種將電脈沖信號(hào)轉(zhuǎn)換為角位移的控制電機(jī)。步進(jìn)電動(dòng)機(jī)每接收一個(gè)脈沖信號(hào)所轉(zhuǎn)過的角度叫步距角,步距角決定了步進(jìn)電動(dòng)機(jī)的控制精度,步距角的大小與生產(chǎn)工藝要求有關(guān)。
步進(jìn)電動(dòng)機(jī)的物理結(jié)構(gòu)使得步進(jìn)電動(dòng)機(jī)的步距角偏大,控制不夠精確。要使步進(jìn)電動(dòng)機(jī)的步距角變得更小,只能改變步進(jìn)電動(dòng)機(jī)的驅(qū)動(dòng)方式,細(xì)分驅(qū)動(dòng)技術(shù)就是目前被廣泛采用的一種步進(jìn)電動(dòng)機(jī)驅(qū)動(dòng)方式。本文采用正弦脈寬調(diào)制SPWM方式進(jìn)行細(xì)分。給三相步進(jìn)電動(dòng)機(jī)的三相定子繞組通入三相對(duì)稱的階梯正弦電流,步進(jìn)電動(dòng)機(jī)每步所轉(zhuǎn)過的角度由一個(gè)周期的正弦波的階梯數(shù)來確定,合理地選擇正弦電流階梯數(shù),就可以實(shí)現(xiàn)恒轉(zhuǎn)矩等步距角的細(xì)分。這種細(xì)分技術(shù)使驅(qū)動(dòng)器結(jié)構(gòu)更簡(jiǎn)單,細(xì)分精度更高,可靠性更強(qiáng)。
SPWM信號(hào)產(chǎn)生設(shè)計(jì)方法多種多樣,以往都是采用分立元件構(gòu)成SPWM波發(fā)生器,這種電路比較復(fù)雜,調(diào)試?yán)щy。近些年來,數(shù)字化專用SPWM集成芯片應(yīng)用越來越廣泛,SA4828是一種三相SPWM信號(hào)發(fā)生器,與單片機(jī)連接方便,可產(chǎn)生相位互差120°的SPWM波形,電路結(jié)構(gòu)簡(jiǎn)單,軟件控制方便。
通過以上分析可知,如果把步進(jìn)電動(dòng)機(jī)的每相繞組通過的正弦電流分成N個(gè)階梯,就能夠?qū)崿F(xiàn)步距角N細(xì)分。若把每相繞組電流進(jìn)行八細(xì)分如圖1所示。
圖1 三相電流八細(xì)分圖
根據(jù)采樣控制理論可知,加在具有慣性環(huán)節(jié)上的沖量相等而形狀不同的窄脈沖,效果基本相同。這里所說的沖量是指窄脈沖的面積,而效果基本相同,指的是具有慣性環(huán)節(jié)的波形響應(yīng)基本相同。因?yàn)閷⑤敵龅牟ㄐ芜M(jìn)行傅里葉變換,可以看出它們的低頻段特性是一致的,僅僅在高頻段有較小的差異。正弦脈沖調(diào)制(SPWM)正是根據(jù)這一理論,將一個(gè)正弦半波進(jìn)行N等分,每一等分的正弦曲線的面積用一個(gè)與該面積相等的矩形脈沖代替。這樣就會(huì)得到N個(gè)不同寬度的矩形脈沖。根據(jù)上述采樣控制理論,得到的脈沖序列的效果和正弦半波是一樣的。
步進(jìn)電動(dòng)機(jī)實(shí)質(zhì)就是一個(gè)沖量環(huán)節(jié),所以結(jié)合前面所述步進(jìn)電動(dòng)機(jī)細(xì)分技術(shù)原理可知,為步進(jìn)電動(dòng)機(jī)每相繞組通過SPWM脈沖,進(jìn)行正弦脈寬調(diào)制,與通以N等分的正弦電流的效果是一樣的,由此可見SPWM可以對(duì)步進(jìn)電動(dòng)機(jī)步距角進(jìn)行任意的細(xì)分[3]。
SPWM信號(hào)可由數(shù)字電路、模擬電路、專用集成芯片等硬件電路來產(chǎn)生,也可由計(jì)算機(jī)、單片機(jī)通過軟件產(chǎn)生。近些年來很多廠家研制出了產(chǎn)生三相SPWM信號(hào)的大規(guī)模集成芯片,比如英國(guó)Mitel公司推出的三相SPWM波形發(fā)生器SA4828芯片,可以大大簡(jiǎn)化硬件電路,控制方式簡(jiǎn)潔,控制精度高,減輕CPU負(fù)擔(dān),使CPU有更多的資源用于整個(gè)系統(tǒng)的細(xì)分控制。
SA4828芯片是專門用來產(chǎn)生三相SPWM信號(hào)發(fā)生和控制的專用集成芯片,可以方便地與單片機(jī)等處理器相接,通過單片機(jī)的數(shù)據(jù)處理控制功能,驅(qū)動(dòng)SA4828產(chǎn)生SPWM信號(hào)。SA4828采用全數(shù)字控制,兼容大部分的單片機(jī);16位調(diào)節(jié)頻率的分辨率;8位調(diào)節(jié)電壓的分辨率;可以設(shè)定死區(qū)電壓;具有看門狗定時(shí)器;有三種可選波形固化在芯片ROM中。每一種波形都有1 536個(gè)采用值[4]。
基于SA4828的三相步進(jìn)電動(dòng)機(jī)細(xì)分驅(qū)動(dòng)器的硬件系統(tǒng)如圖2所示。
圖2 硬件系統(tǒng)框圖
系統(tǒng)中以STC89C52RC單片機(jī)為核心,其總線結(jié)構(gòu)與SA4828芯片完全兼容,可以直接相連,單片機(jī)把步進(jìn)電動(dòng)機(jī)細(xì)分?jǐn)?shù)設(shè)定信號(hào)轉(zhuǎn)換為SA4828相應(yīng)的控制信號(hào),寫入到SA4828相應(yīng)的控制寄存器中,從 BPHT、YPHT、RPHT 和 BPHB、RPHB、YPHB6個(gè)信號(hào)輸出引腳輸出相應(yīng)的SPWM波形信號(hào),經(jīng)驅(qū)動(dòng)電路隔離后控制智能功率模塊IPM,產(chǎn)生對(duì)稱的三相SPWM電流信號(hào),驅(qū)動(dòng)步進(jìn)電動(dòng)機(jī)旋轉(zhuǎn)。
逆變主電路IPM典型結(jié)構(gòu)如圖3所示。
圖3 IPM模塊內(nèi)部結(jié)構(gòu)圖
該電路的核心為6個(gè)IGBT,由SPWM信號(hào)來分別控制6個(gè)IGBT的通斷。最后在3個(gè)輸出端產(chǎn)生三相對(duì)稱的電流驅(qū)動(dòng)步進(jìn)電動(dòng)機(jī)運(yùn)轉(zhuǎn)。目前已經(jīng)有許多生產(chǎn)廠商將該逆變電路中的保護(hù)電路、驅(qū)動(dòng)電路、傳感電路整合起來,集成為一個(gè)模塊,稱之為智能功率模塊IPM。這種IPM在出廠時(shí)廠家已經(jīng)設(shè)定好IGBT最佳的驅(qū)動(dòng)參數(shù),并且還有短路、過流、欠壓等保護(hù)功能,出現(xiàn)異常并可給出報(bào)警信號(hào)[5]。IPM的參數(shù)可由電動(dòng)機(jī)的額定功率P0和峰值電流IP來確定。智能功率模塊使電路更加緊湊,避免了分布參數(shù)的影響。
因?yàn)?IGBT開關(guān)信號(hào)的幅值為 ±10 V,而SA4828輸出的6路 SPWM信號(hào)為TTL電平,SA4828產(chǎn)生的SPWM不能直接驅(qū)動(dòng)IGBT。所以SA4828輸出的6路SPWM信號(hào)要經(jīng)過驅(qū)動(dòng)電路才能驅(qū)動(dòng)逆變電路的6個(gè)IGBT。IGBT一般選用集成驅(qū)動(dòng)電路來驅(qū)動(dòng)。比較常用的集成IGBT驅(qū)動(dòng)電路有三菱公司的M5796系列、富士公司的EX850系列等產(chǎn)品。我們這里用東芝公司的TLP250集成驅(qū)動(dòng)芯片來驅(qū)動(dòng)6個(gè)IGBT,電路如圖4所示。
圖4 TLP250驅(qū)動(dòng)電路
SPWM控制算法的關(guān)鍵就是求出SPWM脈沖寬度TW。SPWM控制算法有很多,通常都可采用,但是太復(fù)雜的算法會(huì)使單片機(jī)的編程難度成倍增加,單片機(jī)ROM容量也有限,不宜采用。本文采用雙極性等面積調(diào)制算法,該算法體系清晰,易于編程實(shí)現(xiàn)。該算法的是將某一相正弦周期電流分成若干個(gè)區(qū)段,由于三相步進(jìn)電動(dòng)機(jī)三相繞組正弦電流相位相差120度,所以在劃分區(qū)段數(shù)的時(shí)候應(yīng)為6的倍數(shù)。雙極性等面積調(diào)制算法脈沖寬度TW計(jì)算公式如下:
三相步進(jìn)電動(dòng)機(jī)一個(gè)周期內(nèi)的細(xì)分?jǐn)?shù)即為通入正弦電流一個(gè)周期內(nèi)的階梯數(shù),為S×N,S為正弦電流劃分的區(qū)段數(shù),N為每個(gè)區(qū)段的等效脈沖數(shù)。采用8位單片機(jī),S最大為240,N最大為255,則三相步進(jìn)電動(dòng)機(jī)最大的細(xì)分?jǐn)?shù)為240×255=61 200,電機(jī)的分辨率還和電機(jī)本身有很大的關(guān)系,根據(jù)不同的S和N的取值,可以得到任意想要的步距角,即步進(jìn)電動(dòng)機(jī)可以進(jìn)行“任意”細(xì)分。但是過分的細(xì)分,單片機(jī)在計(jì)算TW時(shí)的計(jì)算工作量會(huì)很大,所以在選擇S和N的取值時(shí),要注意保證S被6整除后的數(shù)值為偶數(shù),這樣可以產(chǎn)生正負(fù)半周對(duì)稱的SPWM波,S和N的取值如表1所示。
表1 不同細(xì)分區(qū)段的S和N值選擇
3.2.1 確定SPWM波的脈寬周期T
確定SPWM的脈寬周期T主要是由智能功率模塊的開關(guān)頻率來確定的,比如PS21255-E型智能功率模塊的開關(guān)頻率能夠達(dá)到15 kHz,但是過高的開關(guān)頻率,單片機(jī)會(huì)頻繁地響應(yīng)中斷,以致于單片機(jī)沒有足夠的CPU資源去處理其他事情。比如說智能功率開關(guān)的頻率F設(shè)定為5 kHz,則脈寬周期T。單片機(jī)的晶振頻率為12 MHz,則可得到單片機(jī)的定時(shí)器初值為6。
3.2.2 確定SPWM波的脈沖寬度TW
根據(jù)單片機(jī)外設(shè)鍵盤輸入的細(xì)分步數(shù),可以按表1確定S值,再由計(jì)算出K值。假設(shè)區(qū)段S有8個(gè),則K值也有8個(gè)。函數(shù)cos(ωt1)-cos(ωt2)值是由S值確定的,也有8個(gè)。這里面,我們把K的值和cos(ωt1)-cos(ωt2)的值做成數(shù)據(jù)表格存入ROM中,一共有8張函數(shù)表。這樣,根據(jù)鍵盤輸入的細(xì)分?jǐn)?shù)值,用單片機(jī)的查表可以獲取相應(yīng)的K和cos(ωt1)-cos(ωt2)的數(shù)值,由式(5)可以計(jì)算出 S個(gè)脈沖寬度的定時(shí)初值,把這些初值存放在單片機(jī)的RAM中,這樣便求得了三相步進(jìn)電U相的輸出脈沖。根據(jù)三相步進(jìn)電動(dòng)機(jī)三相電流對(duì)稱的關(guān)系,將U相的地址指針后移個(gè)單元便可求得V相的輸出脈沖,將U相的地址指針前移個(gè)單元,便可求得W相的輸出脈沖。將V相和W相輸出脈沖寬度的定時(shí)初值依次存入RAM,等待單片機(jī)查用。單片機(jī)程序流程圖如圖5所示。
圖5 控制程序流程圖
本文使用SA4828作為三相SPWM波發(fā)生器,單片機(jī)做為控制器,按表1設(shè)定不同的細(xì)分?jǐn)?shù),可通過示波器觀察到驅(qū)動(dòng)器輸出電流波形如圖6、圖7所示。從圖中可以看出,步進(jìn)電機(jī)12細(xì)分時(shí),電流波形臺(tái)階較明顯,但電流脈動(dòng)值較小;步進(jìn)電機(jī)64細(xì)分時(shí),電流波形較平滑,已很難分辨出臺(tái)階的個(gè)數(shù),此時(shí)電機(jī)運(yùn)行平穩(wěn)流暢,低速無振蕩現(xiàn)象,達(dá)到了控制要求。此外,該系統(tǒng)的硬件結(jié)構(gòu)簡(jiǎn)單,體積小、成本低廉、實(shí)現(xiàn)容易、細(xì)分精度高。采用雙極性等面積調(diào)制算法,可以方便地改變步進(jìn)電機(jī)的細(xì)分步數(shù)。該系統(tǒng)在中小型步進(jìn)電機(jī)驅(qū)動(dòng)系統(tǒng)中有較強(qiáng)的應(yīng)用價(jià)值。
[1] 舒大松.基于STC單片機(jī)的SPWM步進(jìn)電機(jī)細(xì)分控制研究與實(shí)現(xiàn)[J].制造業(yè)自動(dòng)化,2011,33(6):92-94.
[2] 王曉明.電動(dòng)機(jī)的單片機(jī)控制[M].北京航空航天大學(xué)出版社,2002:102.
[3] 王兆安,黃俊.電力電子技術(shù)[M].北京:機(jī)械工業(yè)出版社,2000:78.
[4] 徐志躍.基于SA4828的變頻器設(shè)計(jì)[J].電氣傳動(dòng),2006,36(1):14-16.
[5] 鄭宇.步進(jìn)電機(jī)細(xì)分控制的單片機(jī)實(shí)現(xiàn)[J].貴州師范大學(xué)學(xué)報(bào)(自然科學(xué)版),2012,30(2):106-109.