基于Proteus和AVR單片機的無刷直流電機控制系統(tǒng)仿真
摘要:文中設(shè)計的無刷直流電機控制系統(tǒng)選擇ATmega128單片機作為主控芯片,使用了EDA工具軟件Proteus設(shè)計了無刷直流電機的控制系統(tǒng),并進行了仿真實驗。在仿真實驗中利用Proteus軟件的仿真功能,進行了電機轉(zhuǎn)速控制的實驗,控制系統(tǒng)的可行性以及轉(zhuǎn)速控制效果得到了驗證。實驗過程中能直觀地看到實驗結(jié)果,所設(shè)計的系統(tǒng)滿足了無刷直流電機轉(zhuǎn)速控制的要求,電機運行穩(wěn)定,在硬件電路和軟件設(shè)計都有一定的輔助作用。
關(guān)鍵詞:Proteus;AVR單片機;無刷直流電機;仿真;控制系統(tǒng)
永磁無刷直流電動機不使用電刷和換向器組成的機械換向機構(gòu)而是使用電子的直流電動機。永磁無刷直流電機首先不會出現(xiàn)諸如電刷引起的摩擦和電火花、因機械換相機構(gòu)而導(dǎo)致的壽命短等問題;其次無刷直流電機在結(jié)構(gòu)上有一定的簡化,轉(zhuǎn)子上安裝永磁體,定子上安裝電樞繞組,因而在導(dǎo)熱方面效果更好。這樣既能保持直流電動機在啟動和調(diào)速方面的出色特性,同時又在運行穩(wěn)定性和能量轉(zhuǎn)換效率等方面保持一定的優(yōu)勢,進而提高電機運行的經(jīng)濟性。單片機盡管在性能上不如DSP芯片,但卻有更低的價格,外部電路設(shè)計簡單,在通常狀況下單片機的控制功能和處理速度也可以達到的需求,所以這里選擇單片機作為直流無刷電機驅(qū)動控制系統(tǒng)的主控芯片。
Proteus軟件目前在單片機仿真及其他相關(guān)的外圍器件的仿真方面,Proteus是一個非常實用的工具軟件。可以使用Proteus完成硬件電路的設(shè)計,可以對單片機在內(nèi)的一些微處理器進行編程,在微處理器上實現(xiàn)不同的控制算法,并且仿真過程中的控制效果可以直觀觀測。文中采用Proteus仿真平臺設(shè)計了以AVR單片機為控制核心的無刷直流電機仿真控制器,把有效的理論實踐基礎(chǔ)應(yīng)用到實際系統(tǒng)的設(shè)計當(dāng)中。
1 Proteus中的無刷直流電機模型
無刷直流電機模型是在直流電機模型基礎(chǔ)之上建立的,根據(jù)應(yīng)用需要可在Proteus軟件中對電機的參數(shù)進行設(shè)定,包括電機的額定使用電壓、空載狀態(tài)轉(zhuǎn)速、轉(zhuǎn)子的轉(zhuǎn)動慣量、定子繞組的阻抗及定子繞組間的互感等參數(shù)。軟件提供定子繞組為星型連接(STAR)和三角形連接(TRIANGIE)兩種模型,在此選用星型連接的無刷直流電機模型,該電機模型中自帶有3個霍爾位置傳感器,用于轉(zhuǎn)子位置的檢測。
2 硬件電路設(shè)計
硬件電路主要包括單片機的硬件電路、電機的驅(qū)動電路、功率逆變電路、運行電流檢測電路、轉(zhuǎn)速檢測電路等。原理框圖如圖1所示。
2.1 主控制電路
主控芯片選擇ATmega128單片機,電路如圖2所示。ATmega128芯片采用RISC結(jié)構(gòu),穩(wěn)定性高,應(yīng)用廣泛。其外設(shè)具有6路分辨率可編程 (2~16位)的PWM,8路10位ADC。其具備的功能可用于無刷直流電機的驅(qū)動控制。ATmega128芯片具有輸入捕獲功能,能檢測到來自的外部中斷信號。將電機模型中自帶的霍爾位置傳感器A.B,C分別接入單片機的PD0,PD1,PD2引腳,隨著電機轉(zhuǎn)子位置的改變,3個霍爾傳感器會輸出不同的電平信號。當(dāng)發(fā)生中斷時,單片機的輸入引腳可讀取來自霍爾傳感器的電平狀態(tài),在查詢對應(yīng)的霍爾換相真值表后即可得到當(dāng)前的換相信息,進而實現(xiàn)換相控制。
2.2 功率驅(qū)動電路
無刷直流電機的功率驅(qū)動如采用三相半橋方式,其電路部分器件相對較少,電機繞組的任一相只靠一個功率管即可控制電流通斷,每相繞組的通電時間與關(guān)斷時間之比為1:2,這使得每相繞組的利用率不高。三相全橋的電路部分器件的數(shù)量上是半橋式的兩倍,但每相繞組可通電240°電角度,繞組利用率相應(yīng)得到很大提高。三相橋式逆變器是由6個N溝道功率MOSFET管構(gòu)成。IR2101是雙通道、柵極驅(qū)動、高壓高速功率驅(qū)動器,因為IR2101采用了高度集成的電平轉(zhuǎn)換技術(shù),使邏輯電路對功率器件的控制要求得到簡化。功率MOSFET管采用二二導(dǎo)通方式,6個功率管在電機運行過程中的通斷狀態(tài)共有6個。圖3所示的功率驅(qū)動電路是其中一相繞組對應(yīng)的橋臂。主控制器輸出的PWM脈沖方波分別加載到功率驅(qū)動芯片IR2101的HIN和LIN引腳,用于驅(qū)動相應(yīng)功率 MOSFET管的通斷。
2.3 相電流檢測電路
為了檢測相電流,選擇ACS712ELCTR-30A-T串入全橋公共端,然后將VIOUT端與主控芯片的A/D輸入端口PF0連接。 ACS712是線性電流傳感器,該器件內(nèi)置有精確的低偏置的線性霍爾傳感器電路,其輸出電壓與被檢測電流成比例。ACS712ELCTR-30A-T霍爾電流傳感器輸出范圍是0.5~4.5 V,而主控芯片ATmega128的A/D轉(zhuǎn)換參考電壓選為VCC,即5 V,電流傳感器輸出不超過A/D轉(zhuǎn)換參考電壓,如圖4所示。
2.4 速度檢測電路
Proteus的無刷直流電機模型自帶3個霍爾傳感器,霍爾傳感器在空間上呈120°分布,用于確定電機轉(zhuǎn)子位置,而且3個霍爾傳感器在電機運行時其中兩相輸出信號相差120°,轉(zhuǎn)子每轉(zhuǎn)過360°電角度時,3個霍爾傳感器的輸出信號組合在一起對應(yīng)換相的6種編碼狀態(tài)。每當(dāng)電機轉(zhuǎn)子轉(zhuǎn)過了60°角,3個霍爾傳感器的輸出狀態(tài)就會相應(yīng)變化一次。于是,電機的轉(zhuǎn)速就可以通過計算單位時間T內(nèi)捕獲的霍爾傳感器輸出變化的次數(shù)n換算出來,轉(zhuǎn)速換算公式為V=60 n/T。由此,要測量到電機的轉(zhuǎn)速,就通過主控芯片的輸入捕獲功能獲取到3個霍爾傳感器中的一路輸出信號的周期,然后由轉(zhuǎn)速換算公式計算出電機轉(zhuǎn)速即可。
3 軟件設(shè)計
系統(tǒng)采用開環(huán)控制和轉(zhuǎn)速電流雙閉環(huán)PID控制,進行對比仿真實驗。開環(huán)控制無論硬件電路還是控制程序都較閉環(huán)PID控制簡單且易實現(xiàn),一般在恒定負載應(yīng)用中采用。在變化負載應(yīng)用中,當(dāng)電機轉(zhuǎn)速在一定范圍內(nèi)時,負載會發(fā)生變化。需要轉(zhuǎn)速控制精度和良好的動態(tài)響應(yīng),因而使用高級控制算法,但也增加了控制器的復(fù)雜性。閉環(huán)控制采用轉(zhuǎn)速電流雙閉環(huán)增量式PID控制策略,兩種控制方式的程序框圖如圖5所示,其中(a)為開環(huán)控制程序框圖,(b)為閉環(huán)控制程序。
4 Proteus仿真結(jié)果及分析
在AVR Studio開發(fā)環(huán)境下,用C語言進行程序設(shè)計。然后在Proteus仿真環(huán)境下,向ATmega128單片機導(dǎo)入編譯生成的hex文件,運行仿真即可直觀地觀察無刷直流電機的運行情況。
Proteus中的無刷直流電機模型可以直接顯示轉(zhuǎn)速,設(shè)定期望轉(zhuǎn)速為200 r/min,并先后導(dǎo)入開環(huán)控制程序和閉環(huán)控制程序,進行對比觀察,無刷直流電機的運行情況見圖6。圖6中(a)為開環(huán)控制的仿真結(jié)果,開環(huán)控制不能得到穩(wěn)定的轉(zhuǎn)速,這里只是截取了過程中的一個狀態(tài);圖6中(b)為閉環(huán)控制仿真結(jié)果,通過以上的對比,閉環(huán)控制中因有PID(比例和積分)控制直流無刷電機的速度能穩(wěn)定在期望轉(zhuǎn)速值。顯然閉環(huán)PID控制在電機運行轉(zhuǎn)速上具有更好的控制效果。但軟件的實時性在仿真環(huán)境下有所降低,出現(xiàn)了一定程度的延時,在仿真實驗中電機的轉(zhuǎn)速與設(shè)定的轉(zhuǎn)速仍然有少量偏差。
5 結(jié)束語
文中在Proteus仿真軟件中設(shè)計了無刷直流電機仿真控制系統(tǒng),完成了包含主控制器電路、功率驅(qū)動電路、功率逆變電路、電流檢測電路等硬件電路的設(shè)計,使用C語言編程并導(dǎo)入單片機,在Proteus仿真環(huán)境下進行了仿真實驗。通過實驗的直接觀察,實現(xiàn)了電機轉(zhuǎn)速的穩(wěn)定控制,并且通過兩種控制策略的對比,表明閉環(huán)控制在電機轉(zhuǎn)速控制方面更加穩(wěn)定。該系統(tǒng)能夠滿足無刷直流電機轉(zhuǎn)速控制的設(shè)計要求,達到了預(yù)期的控制效果,對實際硬件電路的設(shè)計和軟件控制策略的選擇都具有一定的參考價值和輔助作用。