包壁禎,楊平,王海峰
(電子科技大學(xué) 機(jī)械電子工程學(xué)院,四川 成都 611731)
普通的有刷直流電機(jī)是靠電刷將直流電逆變成交流,而無(wú)刷直流電機(jī)是利用電子換相將直流逆變?yōu)榻涣?在定子形成交變磁場(chǎng)[1],見(jiàn)圖1。
圖1 57BL045電機(jī)結(jié)構(gòu)Fig.1 The structure of 57BL045 motor
通過(guò)改變占空比(平均電壓)和改變換相順序,即可改變速度和轉(zhuǎn)向。無(wú)刷直流電機(jī)控制系統(tǒng)包括硬件和軟件兩部分。本文研究的小功率電機(jī)型號(hào)為57BL045,參數(shù)為額定電壓DC 18V,額定轉(zhuǎn)速2000r/min,額定轉(zhuǎn)矩0.2 N?m,額定電流2.5 A??紤]到無(wú)刷直流電機(jī)的特點(diǎn)和實(shí)際應(yīng)用,主要研究?jī)?nèi)容為其調(diào)速特性和精度。
硬件部分電路設(shè)計(jì)主要由電源電路、控制電路、驅(qū)動(dòng)電路組成,硬件連接如圖2所示。
圖2 硬件框架結(jié)構(gòu)Fig.2 Block diagram of hardware implementation
控制系統(tǒng)的電源電壓類型分布如表1所示??紤]到電機(jī)在啟動(dòng)、堵轉(zhuǎn)或者調(diào)速時(shí),由于其反電動(dòng)勢(shì)效應(yīng),可能使電壓不穩(wěn)定,所以選擇雙電源供電,一個(gè)+12 V的控制電壓和一個(gè)+18 V的逆變電壓共地連接。而+5 V是由+12 V經(jīng)過(guò)MC78M05轉(zhuǎn)換后得到。在18 V電源端串聯(lián)一個(gè)FUSE,作為過(guò)流的硬件保護(hù),另并有一大電容,一是起到濾波的作用,二是在啟動(dòng)時(shí)防止電流突變,起到軟啟動(dòng)作用。
表1 電壓類型Tab.1 Voltage ty pes
控制電路主要任務(wù)是測(cè)速、電流檢測(cè)和UART電平轉(zhuǎn)換等。
在閉環(huán)控制中,需知反饋速度,以便計(jì)算出給定速度對(duì)應(yīng)的電壓和反饋速度對(duì)應(yīng)的電壓偏差??紤]接受的霍耳信號(hào)電平的邏輯不混亂,上拉5 V電阻。我們知道轉(zhuǎn)子旋轉(zhuǎn)一周,霍耳信號(hào)改變6p(p為極對(duì)數(shù))次。這樣利用模擬比較器作為輸入捕捉觸發(fā)源,邊沿觸發(fā)定時(shí)器 T1的計(jì)數(shù)為TCNT1,即速度
式中:fosc為AT90PWM3的主頻8 MHz;N為分頻系數(shù)。
電流檢測(cè)采用采樣電阻把電流變?yōu)殡妷?考慮到電流在0~4 A之間變化,而電阻受功率限制,故選0.1 Ω,2 W 的電阻作為采樣電阻。利用AT90PWM3的模擬差分通道,一是抑制共模信號(hào),二是可輸入放大倍數(shù)便于檢測(cè)弱信號(hào),本文采用放大倍數(shù)10,即電壓變成0~4 V,采用外部參考電壓5 V。上位機(jī)控制系統(tǒng)設(shè)計(jì)是當(dāng)今嵌入式的熱門,而基于串行總線更是應(yīng)用廣泛,考慮到實(shí)時(shí)性和實(shí)際,采用UART的TXD,RXD,GND進(jìn)行和PC機(jī)通信。PC機(jī)的RS-232C采用的是負(fù)邏輯,而芯片的電平是 T TL電平,故需要用MAX232進(jìn)行電平轉(zhuǎn)換。
掌握好恰當(dāng)換相時(shí)刻,可以減少電機(jī)的轉(zhuǎn)矩波動(dòng)[2],采用主控芯片AT 90PWM3的3端模擬比較接口讀取3路霍耳的狀態(tài),根據(jù)當(dāng)前3路霍耳狀態(tài)查詢換相表而改變?nèi)珮騇OS管的導(dǎo)通順序。
采用N-MOS管搭建逆變?nèi)珮螂娐?采用每次兩兩導(dǎo)通方式,見(jiàn)圖3??紤]到逆變電壓源為18 V,故選MOS管的漏源極限電壓至少36 V(采用經(jīng)驗(yàn)值2~3倍)。而逆變的頻率為8 kHz,而一般的MOS管都能滿足1 MHz以下,本文選擇MTD3055V作為逆變的N-MOS管。
圖3 逆變?cè)韴DFig.3 Inversion principle schematic
考慮到單片機(jī)的I/O無(wú)法驅(qū)動(dòng)MOS管,故采用驅(qū)動(dòng)芯片IR2101S,它可將T TL高電平升高到足以驅(qū)動(dòng)MOS管,從而用3片便可快速穩(wěn)定驅(qū)動(dòng)功率全橋電路。在調(diào)試的過(guò)程中,尤其啟動(dòng),堵轉(zhuǎn)時(shí),此刻定子繞組電壓電流波動(dòng)很大,很容易燒壞MOS管。本文提出2種保護(hù)措施:一是主要針對(duì)柵源過(guò)壓,在柵源之間的阻抗比較大,如果在柵源之間存在電壓突變會(huì)通過(guò)極間電容耦合到柵極而產(chǎn)生相當(dāng)高的柵源尖峰電壓,會(huì)使柵源氧化層擊穿,造成MOS管的永久破壞,而在MOS管的柵源極之間并聯(lián)一個(gè)齊納二極管,有效地降低了柵源阻抗;二是在漏源之間的電壓突變,同樣在之間并聯(lián)一個(gè)瞬態(tài)電壓抑制器(TVS),降低其間的阻抗,吸收高達(dá)數(shù)kW的浪涌功率,有效地使其間的電壓嵌在一個(gè)合適的電壓[3]。
IR2101S在驅(qū)動(dòng)?xùn)艠O時(shí),由于在柵源之間存在寄生電容,便會(huì)發(fā)生震蕩,會(huì)導(dǎo)致延遲控制,特別是在柵極處于關(guān)的狀態(tài)時(shí),由于震蕩使得實(shí)際上還處于導(dǎo)通的狀態(tài),從而造成死區(qū),很有可能直流燒壞MOS管和電源,這時(shí)在IR2101S和柵極之間串聯(lián)一個(gè)電阻便可緩解這種情況。但是這樣又引入了RC震蕩,從而降低逆變效率,實(shí)驗(yàn)表明當(dāng)取4.7 Ω時(shí),可最大地提高逆變效率[4]。
同樣在驅(qū)動(dòng)時(shí),很多驅(qū)動(dòng)電路在柵漏之間并上自舉電容,由電容的充放電特性,起到補(bǔ)償電壓的作用,考慮到在柵漏之間已經(jīng)存在較大的寄生電容,故未采用自舉電容。
軟件部分包括下位機(jī)程序設(shè)計(jì)和上位機(jī)程序設(shè)計(jì),兩部分通過(guò)UART通信。
下位機(jī)程序是作為驅(qū)動(dòng)程序,實(shí)現(xiàn)電機(jī)的啟動(dòng),調(diào)速,正反轉(zhuǎn),停止,主要由如表2所示的函數(shù)實(shí)現(xiàn)。
表2 各函數(shù)用途Tab.2 Application of each function
2.1.1 主程序設(shè)計(jì)
主程序采用類似Windows的事件驅(qū)動(dòng)機(jī)制,根據(jù)具體的命令執(zhí)行相應(yīng)的操作。首先由下位機(jī)發(fā)送一個(gè)問(wèn)候命令,看是否硬件連接上,連接好返回“OK”給上位機(jī)顯示器,表示硬件連接正確。然后啟動(dòng)電機(jī),上位機(jī)通過(guò)UART發(fā)送相應(yīng)的命令給下位機(jī),下位機(jī)通過(guò)解析命令而執(zhí)行相應(yīng)的操作,其流程圖如圖4所示。
圖4 主程序流程圖Fig.4 Main program flowchart
2.1.2 測(cè)速子程序設(shè)計(jì)
采用模擬比較作為上升沿觸發(fā)源,觸發(fā)輸入捕捉中斷,其程序流程圖如圖5a所示。
2.1.3 電流檢測(cè)子程序設(shè)計(jì)
采用差分放大測(cè)得兩端電勢(shì)差,除以采樣電阻值得到,當(dāng)電流超過(guò)允許的最大電流時(shí),將自動(dòng)發(fā)送封鎖信號(hào)封鎖全橋,其流程圖如圖5b所示。
圖5 測(cè)速和電流檢測(cè)流程圖Fig.5 Speed evaluation and current decetion flow chart
2.1.4 速度環(huán)、電流環(huán)設(shè)計(jì)
考慮到無(wú)刷直流電機(jī)本身的物理結(jié)構(gòu),轉(zhuǎn)子是永磁鐵,定子為繞組。其物理結(jié)構(gòu)類似于永磁同步電機(jī),也有轉(zhuǎn)子繞組的交變電流產(chǎn)生旋轉(zhuǎn)磁場(chǎng),驅(qū)動(dòng)轉(zhuǎn)子轉(zhuǎn)動(dòng)。其調(diào)節(jié)轉(zhuǎn)速方程[5]為
式中:KT為轉(zhuǎn)矩系數(shù);ke為線反電動(dòng)勢(shì)系數(shù);ra為繞組線電阻;Bv為黏滯摩擦系數(shù);TL為負(fù)載轉(zhuǎn)矩。
調(diào)節(jié)轉(zhuǎn)速特性如圖6所示。由此可知無(wú)刷直流電機(jī)具有直流電機(jī)調(diào)速特性,理論上隨電樞電壓成線性。而實(shí)際上本文采用的電機(jī)并非與平均電壓成線性關(guān)系,為了便于控制和計(jì)算,本文將曲線擬合成多條線段組成,如圖7所示。
圖6 調(diào)節(jié)轉(zhuǎn)速特性曲線Fig.6 Curves of regulation speed feature
圖7 轉(zhuǎn)速和電壓關(guān)系曲線及直線擬合Fig.7 The curves of speed about voltage and linear fit
開(kāi)環(huán)調(diào)節(jié)直接將所要的轉(zhuǎn)速對(duì)應(yīng)電壓輸出即可得到,開(kāi)環(huán)轉(zhuǎn)速誤差較大。單閉環(huán)是采用PI速度環(huán),或者是采用PI電流環(huán)。雙閉環(huán)是采用速度環(huán)為內(nèi)環(huán),電流環(huán)使得電流緊隨電壓變化,電壓緊隨轉(zhuǎn)速變化,雙閉環(huán)的流程程序如圖8所示。
圖8 雙閉環(huán)流程圖Fig.8 Double close loops flowchart
在開(kāi)環(huán)控制中,正是由于實(shí)際速度對(duì)應(yīng)的電壓不能得到補(bǔ)償,PID就是一種補(bǔ)償方法。根據(jù)電機(jī)實(shí)際運(yùn)行情況,提出一種補(bǔ)償因子,比較器在霍耳信號(hào)邊沿觸發(fā)中斷,因此每次中斷,電壓都會(huì)得到補(bǔ)償,而成動(dòng)態(tài)補(bǔ)償。根據(jù)電壓變化的實(shí)際轉(zhuǎn)速曲線,擬合成多段直線,得出相對(duì)準(zhǔn)確的轉(zhuǎn)速和電壓的函數(shù),即每條直線的斜率為補(bǔ)償因子。
PID控制算法,在電機(jī)的控制中主要關(guān)注電壓的變化(Δ U),故我們采取增量式PID算法。比例調(diào)節(jié)的輸出值取決于輸入偏差量的現(xiàn)狀,而積分調(diào)節(jié)器的輸出包含了輸入偏差量的全部歷史,故在程序中比例系數(shù)乘以偏差變化,積分系數(shù)乘以偏差[6]。而比例和積分系數(shù)的取值則是由Matlab仿真和實(shí)際調(diào)速的結(jié)果得到[7]。
2.1.5 軟件避免死區(qū)
在逆變過(guò)程中最忌諱出現(xiàn)死區(qū)現(xiàn)象,即同一橋臂上下管子同時(shí)導(dǎo)通,會(huì)燒掉管子、電源、電機(jī)等。
假如一直順時(shí)針轉(zhuǎn)動(dòng),由開(kāi)關(guān)順序可知,同一橋臂的上下Mos管導(dǎo)通間隔為10 ms(以額定轉(zhuǎn)速計(jì)算),而本文采用的MTD3055VMos管的導(dǎo)通、關(guān)閉延遲為5 μ s左右,因此在一直順時(shí)針或者一直逆時(shí)針的情形下,是不會(huì)出現(xiàn)死區(qū)的。但是在順時(shí)針轉(zhuǎn)動(dòng)突然變?yōu)槟鏁r(shí)針就可能出現(xiàn)死區(qū)現(xiàn)象,故在程序設(shè)計(jì)時(shí)我們要考慮到這一點(diǎn)。AT90PWM3的PWM波的產(chǎn)生,是采用輸出比較器的CTC模式,如圖9所示[8]。
圖9 CTC模式波形Fig.9 CTC mode waveforms
由此可知上、下橋臂導(dǎo)通時(shí)間分別為
周期為
死區(qū)時(shí)間為
而Td至少大于20倍關(guān)閉延遲時(shí)間,即是0.1 ms,導(dǎo)通周期為0.5 ms,所以程序設(shè)計(jì)時(shí)保證輸出比較寄存器|OCRnRB-OCRnSA|>1就行了。
為了便于電機(jī)控制和結(jié)果數(shù)據(jù)觀察,基于VC++6.0開(kāi)發(fā)出控制界面。采用微軟提供的MSComm控件,該控件通過(guò)串行端口傳輸和接受數(shù)據(jù),并提供了一系列標(biāo)準(zhǔn)通信命令的使用接口。本文采用MSComm的事件驅(qū)動(dòng)方式,通過(guò)對(duì)MSComm派生出來(lái)類的函數(shù)調(diào)用,可以實(shí)現(xiàn)發(fā)送、清空、設(shè)置串口參數(shù)、實(shí)時(shí)顯示速度等操作。
下位機(jī)返回的轉(zhuǎn)速是整型數(shù)據(jù),而MSComm控件的緩沖區(qū)是VARIANT型,因此先轉(zhuǎn)換為ColeSafeArray,再轉(zhuǎn)為BYTE數(shù)據(jù),再轉(zhuǎn)為字符型數(shù)據(jù),最后用atio函數(shù)轉(zhuǎn)化為整型,即可完成數(shù)據(jù)變換。然后將得到的數(shù)據(jù),利用CscrollView類,在內(nèi)存畫出曲線,即可達(dá)到顯示結(jié)果[9]。其具體界面如圖10所示。
圖10 上位機(jī)界面圖Fig.10 Upper host interface
在電機(jī)控制研究中,其啟動(dòng)特性成為很重要的研究?jī)?nèi)容。在實(shí)際生產(chǎn)應(yīng)用中,我們希望電機(jī)能夠盡快啟動(dòng),要求電樞電機(jī)盡量在極短的時(shí)間達(dá)到允許最大值,然后保持一個(gè)極短時(shí)間使得以最大加速度啟動(dòng),而達(dá)到給定穩(wěn)態(tài)速度值,要求平滑的下降到相應(yīng)電流。本文采用軟啟動(dòng),電流不能發(fā)生突變,根據(jù)上位機(jī)采樣的數(shù)據(jù),根據(jù)最高轉(zhuǎn)速上位機(jī)的采樣時(shí)間間隔為100 ms,這樣的離散采樣使得波形不平滑。
分別在開(kāi)環(huán)、補(bǔ)償因子法、電流單閉環(huán)、速度電流雙閉環(huán)等4種控制策略下,分析和比較啟動(dòng)轉(zhuǎn)速,實(shí)驗(yàn)時(shí)的默認(rèn)初速度為1 000 r/min,時(shí)間軸單位為50 ms。
圖11a中,速度上升較慢,尖峰轉(zhuǎn)速未得限制;圖11b中,速度上升較慢,尖峰轉(zhuǎn)速得到補(bǔ)償因子比例縮小;圖11c中,速度上升較快,尖峰轉(zhuǎn)速得到限制;圖11d中,速度上升較快,尖峰轉(zhuǎn)速得到平滑的限制。由于電機(jī)在啟動(dòng)電流比較大,運(yùn)行平穩(wěn)后電流會(huì)有一定下降,而補(bǔ)償因子法會(huì)按比例減少尖峰電流,但不能起到電流截止。在加有電流環(huán)后電流跟隨電壓變化,使得啟動(dòng)響應(yīng)加快,又有電流截止,加有雙閉環(huán)后使得速度曲線更加平滑。
圖11 啟動(dòng)速度曲線Fig.11 Starting speed waveform
電機(jī)在一個(gè)恒定的電壓下,由于其內(nèi)部物理結(jié)構(gòu),其轉(zhuǎn)速不能恒定,會(huì)有一定的上下跳動(dòng)。由圖12可知,圖12a中速度精度誤差 12%;圖 12b中速度精度誤差0.8%;圖12c中速度精度誤差0.6%;圖12d中速度精度誤差0.5%。
圖12 穩(wěn)態(tài)速度曲線Fig.12 Steady-state speed waveforms
由圖7可知,理論電壓對(duì)應(yīng)實(shí)際轉(zhuǎn)速是有較大的速度偏差,而開(kāi)環(huán)啟動(dòng)后就不能糾偏了,補(bǔ)償因子法可以直接補(bǔ)償電壓,但是由于擬合直線和實(shí)際曲線還是有一定的偏差,故不能做到非常精密的調(diào)速。而帶有速度環(huán)和雙閉環(huán),可以由PI調(diào)節(jié)器使得速度更加精確。
在實(shí)際調(diào)速過(guò)程中,有時(shí)需要從開(kāi)環(huán)變?yōu)镻I調(diào)節(jié)或者補(bǔ)償因子,由開(kāi)環(huán)調(diào)為補(bǔ)償PI調(diào)節(jié)如圖13a所示;調(diào)為補(bǔ)償因子法如圖13b所示。
圖13 速度變化曲線Fig.13 Speed variable waveforms
由圖13a可知,正是由于積分環(huán)節(jié)的存在使得速度曲線存在振蕩,且過(guò)渡時(shí)間較長(zhǎng),在負(fù)載較大時(shí),對(duì)轉(zhuǎn)軸很危險(xiǎn);由圖13b可知,由于每次中斷時(shí)直接調(diào)整占空比,跟歷史無(wú)關(guān),故不存在振蕩,且過(guò)渡時(shí)間較短。
由于直流無(wú)刷電機(jī)具有良好的機(jī)械特性。針對(duì)小功率的無(wú)刷直流電機(jī)速度精度的研究,對(duì)于速度精度,在開(kāi)環(huán)、補(bǔ)償因子法、速度環(huán)和速度電流雙閉環(huán)的情形下,其速度精度誤差后三者控制策略基本相當(dāng),都在1%以內(nèi),且在開(kāi)環(huán)轉(zhuǎn)換中,補(bǔ)償因子更能體現(xiàn)出其無(wú)振蕩、過(guò)渡時(shí)間較短的優(yōu)勢(shì)。故根據(jù)本文采用硬件和軟件,可以實(shí)現(xiàn)有上位機(jī)控制的小功率無(wú)刷直流電機(jī)的精準(zhǔn)調(diào)速。
[1]郭慶鼎,趙希梅.直流無(wú)刷電動(dòng)機(jī)原理與技術(shù)應(yīng)用[M].北京:中國(guó)電力出版社,2008.
[2]夏長(zhǎng)亮,李正軍.基于自抗干擾控制器的無(wú)刷直流電機(jī)控制系統(tǒng)[J].中國(guó)電機(jī)工程學(xué)報(bào),2005,25(2):82-86.
[3]何建國(guó).T VS瞬態(tài)電壓抑制器的特性及使用[J].氣象水文海洋儀器,1998,6(2):27-31.
[4]Fairchild Semiconductor[Z].Application Bulletin AB-9,1998.
[5]夏長(zhǎng)亮.無(wú)刷直流電機(jī)控制系統(tǒng)[M].北京:科學(xué)出版社,2009.
[6]陳伯時(shí).電力拖動(dòng)自動(dòng)控制系統(tǒng)-運(yùn)動(dòng)控制系統(tǒng)[M].北京:機(jī)械工業(yè)出版社,2005.
[7]吳云,杜明娟.基于MAT LAB的無(wú)刷直流電機(jī)控制系統(tǒng)的仿真[J].科學(xué)技術(shù)與工程,2009,9(4):4181-4185.
[8]Atmel.AVR492:Brushess DC Motor Control Using AT 90 PWM3[Z].2005.
[9]龔建偉,熊光明.Visual C++/Turbo C串口通信編程實(shí)踐[M].第2版.北京:電子工業(yè)出版社,2008.