時為
(揚州職業(yè)大學(xué),江蘇揚州225009)
步進電機是一種專門用于位置和速度精確控制的特種電機。步進電機的最大特點是其“數(shù)字性”,對于單片機發(fā)過來的每一個脈沖信號,步進電機在其驅(qū)動器的推動下運轉(zhuǎn)一個固定角度(簡稱一步)。如接收到一串脈沖步進電機將連續(xù)運轉(zhuǎn)一段相應(yīng)距離,也可通過微電腦或單片機發(fā)送控制脈沖頻率,直接對電機轉(zhuǎn)速進行控制。因此,步進電機近年來在各行各業(yè)的控制設(shè)備中獲得了越來越廣泛的應(yīng)用。
由于步進電機是一個彈性體系統(tǒng),所以,有一個固有諧振頻率。當(dāng)步進速率等于電機固有頻率時,電機可能會產(chǎn)生聽得見的噪音變化,同時振動增加,在嚴重情況下,電機在振蕩點附近可能會失步。使用細分驅(qū)動技術(shù)可以解決這一問題。
在工業(yè)控制領(lǐng)域,目前常用的控制電動機的芯片是PIC系列的單片機。本文選擇PIC18F452高性能單片機芯片編寫兩相步進電機雙極細分驅(qū)動程序,使用Protues仿真,測量其輸出的細分驅(qū)動波形并觀測步進電機的運行情況。
目前比較常用的雙極步進電機驅(qū)動芯片是L298,驅(qū)動電路如圖1所示。整步驅(qū)動波形從A、B、C、D四個端口送入,每4步為一次循環(huán),其波形如圖2所示。
從圖2可以發(fā)現(xiàn)AB、CD為互補的邏輯波形,而A與C之間相互錯開一步距離。因此,對于L298芯片,其驅(qū)動輸入只需要A和C兩路即可[1]。
圖1 L298雙極整步驅(qū)動電路
圖2 L298雙極整步驅(qū)動波形
將上述A和C兩路矩形波,使用正弦波來代替時,步進電機的噪聲與振動會立即消除,這樣的方法稱為細分驅(qū)動。
單片機產(chǎn)生的輸出是沒有連續(xù)的正弦波形的,使用的方法是SPWM。SPWM的實質(zhì)是將一個正弦波的大小變化,用與之對應(yīng)的幅度相同,寬度不同的脈沖來表示,這樣就可以將正弦波轉(zhuǎn)換成計算機的程序,通過程序運算處理,來產(chǎn)生所需要的正弦波形,見圖3。
PIC18F452的dsPIC芯片,是一款由Micro-Chip公司生產(chǎn)的高速8位單片機芯片,可以輸出兩路獨立的PWM波形,程序空間容量高達32KB,符合細分驅(qū)動的基本要求。[2]
圖3 L298雙極細分驅(qū)動波形
在實際應(yīng)用中,步進電機的細分數(shù)一般設(shè)為4、8、16、32幾種等級,細分數(shù)過大,會使得步進電機運轉(zhuǎn)過于緩慢,同時由于細分角過小,也會造成失步。
以下為相關(guān)的C18程序,細分數(shù)為16,使用的編程語言是MPLAB C18,使用的編譯軟件是MPLAB 8.43。主要驅(qū)動程序如下[3]:
SPWM編程的關(guān)鍵在于確定每一個SPWM的占空比。在程序中,將C路輸入的一個完整的正弦波的SPWM的各個PWM占空比事先計算好,放于計算機的ROM之中,其所計算的點數(shù)就是步進電機細分驅(qū)動的細分數(shù)。
以C路的SPWM開始,使用查表方法,從0開始輸出細分驅(qū)動波形,而A路的SPWM輸出則根據(jù)細分數(shù),滯后90°開始,使用查表方法得出A路細分驅(qū)動波形。
應(yīng)用細分驅(qū)動技術(shù),步進電機的運行方式變?yōu)槊恳粋€脈沖轉(zhuǎn)軸轉(zhuǎn)過一個細分角度。設(shè)步進電機的細分數(shù)為N,整步驅(qū)動時,每步轉(zhuǎn)軸轉(zhuǎn)過的角度為θ,細分角為α,則有α=θ/N。
在電機轉(zhuǎn)速控制方式中,設(shè)驅(qū)動脈沖的頻率為f,則在細分驅(qū)動方式下,電機的轉(zhuǎn)速為整步驅(qū)動的1/N,即為
首先,根據(jù)細分驅(qū)動原理,在MPLAB軟件中使用MPLAB C18編寫PIC18F452的雙極細分驅(qū)動程序。在Proteus軟件中設(shè)計好兩相步進電機得L298驅(qū)動電路。
在pic18F452中裝入上述用MPLAB軟件生成的Hex文件,啟動Proteus的仿真功能,可見細分輸出波形以及步進電機的運行情況,見圖4。
仿真結(jié)果證明,使用細分驅(qū)動方法,步進電機運行連續(xù)、平穩(wěn),沒有整步驅(qū)動時的跳躍抖動現(xiàn)象,這也是細分驅(qū)動能夠消除步進電機振動的原因。
在掌握步進電機細分驅(qū)動技術(shù)的基礎(chǔ)上,成功地將該技術(shù)引入到Proteus的步進電機的仿真領(lǐng)域,這也說明了Proteus仿真軟件的強大的功能。限于篇幅,有關(guān)正反方向控制,細分數(shù)選擇,單步控制等問題就不在此討論。
[1]王曉明.電動機的單片機控制[M].北京:北京航空航天大學(xué)出版社,2003.
[2]武鋒.PIC系列單片機開發(fā)應(yīng)用實戰(zhàn)[M].北京:北京航空航天大學(xué)出版社,2009.
[3]張皆喜.PIC系列單片機C語言編程語應(yīng)用實例[M].北京:電子工業(yè)出版社,2007.