基于ATmega48的三相無刷電機控制方法
當控制器工作時,可根據(jù)霍爾傳感器檢測到電機轉(zhuǎn)子的當前位置,依照定子繞組決定開啟或關(guān)閉功率晶體管的順序,使電流依序流經(jīng)電機線繞組,以產(chǎn)生順向或逆向的旋轉(zhuǎn)磁場,并與轉(zhuǎn)子的磁鐵相互作用,使電機順時或逆時轉(zhuǎn)動。當電機轉(zhuǎn)子轉(zhuǎn)動到霍爾傳感器檢測出另一組信號的位置時,再開啟下一組功率晶體管,如此循環(huán),電機就能依據(jù)同一方向繼續(xù)轉(zhuǎn)動,直到控制器決定使電機轉(zhuǎn)子停止時,則關(guān)閉功率晶體管;決定使電機轉(zhuǎn)子反向時,則開啟功率晶體管,但順序相反。PWM是決定電機轉(zhuǎn)速快或慢的方式,如何產(chǎn)生PWM是實現(xiàn)準確控制速度的核心。
圖2中的開關(guān)器件采用MOSFET,它們是不能在關(guān)斷瞬間切換的。如果UH和UL是反向信號,那么,在同一時刻,一個開關(guān)器件導(dǎo)通,另外一個開關(guān)器件截止。在這段過渡時期,會有一個短暫的時間,其中一個開關(guān)器件并未完全截止,而另一個也是導(dǎo)通的,這樣會使電源與地直接連接,使得大電流流經(jīng)晶體管。在工程應(yīng)用中必須避免這種情況,因為若電路中沒有必要的硬件保護,極有可能損壞驅(qū)動裝置。因此,在控制電路中,每個PWM過渡期都應(yīng)增加死區(qū)時間。要求在一個很小的時間內(nèi),上臂開關(guān)和下臂開關(guān)都不導(dǎo)通,即產(chǎn)生帶死區(qū)的PWM信號。
圖3示出采用ATmega48形成帶死區(qū)時間的PWM信號原理。ATmega48中定時器/計數(shù)器的雙斜率模式可產(chǎn)生帶死區(qū)時間的PWM信號,它能產(chǎn)生一個關(guān)于B0TTOM對稱的波形。圖3中三角線表示雙斜率相位修正模式下定時器/計數(shù)器T0的計數(shù)值。在向上計數(shù)時,當計數(shù)值與沒定值匹配時,輸出引腳OCOA清0;在向下計數(shù)時,當計數(shù)值與設(shè)定值匹配時,輸出引腳OCOA置l。輸出引腳OCOB也采用同樣的設(shè)置。PWM占空比則通過輸出比較寄存器OCROA和輸出比較寄存器OCROB來設(shè)置;A,B兩路PWM相位的輸出相反。當設(shè)置的兩個輸m端比較值相同時,這兩個PWM的輸出互補。
為了在上臂開關(guān)與下臂開關(guān)切換時插入死區(qū)時間,必須改變0CROB和OCROA的比較值,兩者之差值為插入的死區(qū)時間。如果3個計時/計數(shù)器都采用同樣的設(shè)置,就可產(chǎn)生3對帶死區(qū)的PWM波形,但必須保證PWM的輸出是同步的。當采用8位定時器/計數(shù)器產(chǎn)生2路具有不同比較值的PWM信號時,其最大設(shè)定值為255。若采用16位定時器/計數(shù)器,則必須設(shè)定為8位相位修正PWM模式。此時,PWM的基本頻率可由下式確定:
式中:fCPU為CPU的頻率。
無刷直流電機常采用三相正弦驅(qū)動方式。常用的方法是把一個正弦波形數(shù)據(jù)存儲在存儲器中,通過程序查表輸出所需的正弦驅(qū)動信號。由于3個正弦電壓之間的相位差為120°,因此可以采用一個正弦波形移位產(chǎn)生所有的正弦驅(qū)動信號。圖4給出各相驅(qū)動信號的產(chǎn)生機制和換相時序。圖中Hl,H2,H3為霍爾傳感器的輸出狀態(tài);S1~S6為波形產(chǎn)生的步驟;虛線為相位切換波形;實線為輸出的正弦驅(qū)動信號。圖5給出用于控制器的換相控制程序設(shè)計流程。
4 結(jié)語
無刷直流電機的功率因數(shù)高,又無轉(zhuǎn)子損耗,因此用于無刷直流電機調(diào)速系統(tǒng)的驅(qū)動器大都采用電壓源型PWM控制。由于三相無刷直流電機借助ATmega48單片機進行控制.且通過軟件實現(xiàn)了帶死區(qū)的PWM、霍爾傳感器的換相處理、正弦驅(qū)動信號的產(chǎn)生和電機的轉(zhuǎn)速控制,因而所需的外圍器件少,成本低,并且還可提高系統(tǒng)的可靠性。
霍爾傳感器相關(guān)文章:霍爾傳感器工作原理
霍爾傳感器相關(guān)文章:霍爾傳感器原理
評論