張無(wú)量,李 輝,龐小虎
(電子科技大學(xué),成都,610054)
目前,永磁同步電機(jī)調(diào)速及高性能伺服技術(shù)發(fā)展迅速,矢量控制及直接轉(zhuǎn)矩控制等方法都較為完善,使交流調(diào)速控制有了突破性的發(fā)展[4]。在控制電機(jī)的三相逆變器中,空間矢量脈寬調(diào)制(SVPWM)和正弦脈寬調(diào)制(SPWM)是兩種常見的調(diào)制方式。SPWM首先被采用并一直沿用至今,雖不斷完善,效果顯著,但仍存在直流電壓利用率不高、低速轉(zhuǎn)矩脈動(dòng)大、高頻開關(guān)損耗大等不足[9]。而由德國(guó)學(xué)者Van Der Broeck H.W 提出的 SVPWM 技術(shù)[6]與 SPWM相比,具有電壓利用率高、損耗低、響應(yīng)快、易于數(shù)字化實(shí)現(xiàn)等優(yōu)點(diǎn),近年來(lái)得到了廣泛的研究和應(yīng)用。文獻(xiàn)[10]針對(duì)逆變器在輸入直流側(cè)電壓不穩(wěn)定的應(yīng)用場(chǎng)合,運(yùn)用改進(jìn)的SVPWM,減小了輸入直流側(cè)紋波對(duì)輸出電壓的影響;文獻(xiàn)[11]表明采用恰當(dāng)?shù)拈_關(guān)模式可以降低SVPWM控制器的EMI;文獻(xiàn)[12]使用新的扇區(qū)判斷方法減少了三角計(jì)算,提高了運(yùn)算速度。本文通過對(duì)SVPWM的核心分析,針對(duì)驅(qū)動(dòng)相位的精確度提出了相位差動(dòng)態(tài)調(diào)節(jié)的方法,以STM32F103為控制核心,完成了整個(gè)系統(tǒng)的軟硬件設(shè)計(jì),并在此基礎(chǔ)上提出了霍爾位置自動(dòng)校準(zhǔn)的方法,取得了良好的控制品質(zhì)。
SVPWM算法中驅(qū)動(dòng)相位的精準(zhǔn)度對(duì)伺服系統(tǒng)的控制性能至關(guān)重要,因此本文在傳統(tǒng)SVPWM算法的基礎(chǔ)上針對(duì)相位進(jìn)行了優(yōu)化,使電機(jī)運(yùn)行過程中驅(qū)動(dòng)相位的精準(zhǔn)度更高,取得了更好的控制效果。主要流程如圖1所示。
圖1 SVPWM算法主要流程圖
對(duì)于任意位置的空間電壓矢量,根據(jù)秒伏平衡原則,可以由6個(gè)基本空間矢量中的某兩個(gè)來(lái)合成,這是通過調(diào)節(jié)逆變器在相應(yīng)工作狀態(tài)上的持續(xù)時(shí)間來(lái)實(shí)現(xiàn)的,如下:
式中:TPWM是調(diào)制采樣周期;t1,t2是逆變器工作在狀態(tài)1、2的時(shí)間;t0為零矢量U0的作用時(shí)間。
圖2 Us在0°<θ<60°扇區(qū)合成原理
基本空間電壓矢量上的工作時(shí)間可以根據(jù)投影關(guān)系確定。由正弦定理得:
θ表示US與U0的夾角。由式2可得相鄰兩個(gè)基本空間矢量上的工作時(shí)間:
在一個(gè)完整的調(diào)制周期TPWM內(nèi),除了t1和t2的導(dǎo)通時(shí)間外,其余為自由輪換的零矢量狀態(tài)T0。因此SVPWM有輸出約束:
如果t1+t2>TPWM,為避免過調(diào)制,則按下式處理:
調(diào)相式SVPWM主要通過以下4個(gè)步驟來(lái)實(shí)現(xiàn)。
1)由霍爾信號(hào)值獲取扇區(qū)號(hào)。
系統(tǒng)在設(shè)計(jì)上使三相霍爾信號(hào)值與扇區(qū)號(hào)保持一致,扇區(qū)號(hào)計(jì)算公式:
2)計(jì)算驅(qū)動(dòng)相位。
測(cè)試電機(jī)的極對(duì)數(shù)為3,三只磁敏式霍爾傳感器按相差120°安裝,則電機(jī)每轉(zhuǎn)過20°機(jī)械角度也即60°電角度后霍爾信號(hào)會(huì)發(fā)生高低電平的改變。采用雙邊沿中斷,則電機(jī)旋轉(zhuǎn)一周會(huì)產(chǎn)生18次霍爾中斷。為提高運(yùn)算精度,并與正弦函數(shù)表對(duì)應(yīng),將電角度線性擴(kuò)大480倍,即0~28 800偏移值線性對(duì)應(yīng)0°~60°電角度,計(jì)算公式如下:
當(dāng)α超過60°以后,扇區(qū)S自動(dòng)進(jìn)入下一扇區(qū),同時(shí)將α減去60°,然后繼續(xù)疊加。但是在下一個(gè)扇區(qū)的霍爾中斷到來(lái)之前,限制α的值不超過此時(shí)的相位超前角。同時(shí),為了提高相位精度,系統(tǒng)在此使用了相位差動(dòng)態(tài)調(diào)節(jié)的方法對(duì)其進(jìn)行了優(yōu)化。
3)根據(jù)扇區(qū)號(hào)來(lái)確定相應(yīng)的基本空間矢量工作時(shí)間t1和t2。
綜合考慮系統(tǒng)的精度要求和STM32微處理器的RAM容量及代碼執(zhí)行效率,本文將0°~60°電角度均分成480份制成正弦函數(shù)表。當(dāng)電動(dòng)機(jī)工作于第I扇區(qū)時(shí),由式(3)可以推導(dǎo)出相鄰基本空間電壓矢量上的作用時(shí)間,如下:
其他各扇區(qū)均可轉(zhuǎn)換到該扇區(qū)來(lái)求取作用時(shí)間t1和t2。UPI為系統(tǒng)PI控制器的輸出,其范圍位于區(qū)間[0,1]。
4)占空比的計(jì)算與分配。
設(shè)變量 tA、tB、tC,令:
式中:t0表示零矢量的作用時(shí)間,其大小為(TPWM-t1-t2)/2。
控制器采用中心對(duì)稱的互補(bǔ)輸出PWM調(diào)制模式。遵循使用最少開關(guān)次數(shù)、減少開關(guān)損耗的原則,系統(tǒng)采用比較通用的中心對(duì)稱七段式SVPWM方法,定時(shí)器比較值CCR賦值如表1所示。
表1 定時(shí)器CCR賦值表
驅(qū)動(dòng)信號(hào)相位和電機(jī)轉(zhuǎn)子位置的契合程度直接決定了SVPWM調(diào)制性能的高低,本文的關(guān)鍵點(diǎn)就在于采用了相位差動(dòng)態(tài)調(diào)節(jié)的方法對(duì)驅(qū)動(dòng)信號(hào)相位進(jìn)行了優(yōu)化。
理想的情況是驅(qū)動(dòng)信號(hào)相位和電機(jī)實(shí)際位置同步,但在實(shí)際應(yīng)用中會(huì)出現(xiàn)兩種情況:一種是驅(qū)動(dòng)信號(hào)超前于電機(jī)實(shí)際位置,我們稱之為相位超前;另一種是驅(qū)動(dòng)信號(hào)滯后于電機(jī)位置,稱之為相位滯后。本系統(tǒng)分這兩種情況對(duì)其進(jìn)行了優(yōu)化。
(1)相位超前:當(dāng)驅(qū)動(dòng)信號(hào)超前轉(zhuǎn)子位置過多時(shí),會(huì)對(duì)SVPWM調(diào)制帶來(lái)嚴(yán)重影響,尤其是當(dāng)超前角度達(dá)到扇區(qū)臨界點(diǎn)時(shí)將導(dǎo)致電機(jī)反轉(zhuǎn),這是絕對(duì)不能允許的。因此,當(dāng)相位超前過多時(shí),SVPWM程序模塊將停止驅(qū)動(dòng)信號(hào)相位疊加,同時(shí)速度環(huán)加大幅值輸出,迫使轉(zhuǎn)子轉(zhuǎn)速增加,直到轉(zhuǎn)子位置回到驅(qū)動(dòng)信號(hào)允許的相差范圍以內(nèi)。
(2)相位滯后:當(dāng)驅(qū)動(dòng)信號(hào)相位稍微滯后于轉(zhuǎn)子位置一定角度,在一定范圍內(nèi)可以容忍,但是隨著滯后角度增大,電源對(duì)電機(jī)的驅(qū)動(dòng)能力將越來(lái)越小,驅(qū)動(dòng)效率越來(lái)越低,甚至出現(xiàn)負(fù)轉(zhuǎn)矩來(lái)強(qiáng)制轉(zhuǎn)子轉(zhuǎn)速降低,并且當(dāng)轉(zhuǎn)子由于慣性轉(zhuǎn)過負(fù)轉(zhuǎn)矩最大臨界值點(diǎn)時(shí),電機(jī)會(huì)快速地多轉(zhuǎn)過一個(gè)霍爾周期角度,這不僅嚴(yán)重影響SVPWM調(diào)制的性能,還對(duì)速度環(huán)調(diào)節(jié)產(chǎn)生了不利影響,因此當(dāng)相位滯后角度達(dá)到容許的界限時(shí),PID程序模塊便減小速度環(huán)的幅值輸出,直到電機(jī)實(shí)際位置回到驅(qū)動(dòng)信號(hào)允許的相差范圍內(nèi)。
系統(tǒng)采用線性預(yù)測(cè)的方式獲取轉(zhuǎn)子位置,具體方法是通過上一個(gè)霍爾位置和當(dāng)前霍爾位置的時(shí)間差來(lái)確定當(dāng)前轉(zhuǎn)速,并利用該轉(zhuǎn)速來(lái)預(yù)測(cè)轉(zhuǎn)子在扇區(qū)內(nèi)的位置,因此相位超前和相位滯后的判斷依據(jù)分以下兩種情況:
(1)SVPWM驅(qū)動(dòng)信號(hào)達(dá)到預(yù)期角度,但沒有收到霍爾中斷,這種情況為相位超前。當(dāng)收到霍爾中斷時(shí),此時(shí)的驅(qū)動(dòng)相位角度與霍爾中斷處的理論角度之差即為相位超前角度值。這時(shí)要求驅(qū)動(dòng)信號(hào)相位繼續(xù)增加,直到達(dá)到最大容許相位超前角。此時(shí)為了防止電機(jī)反轉(zhuǎn),SVPWM程序模塊必須停下來(lái)等待機(jī)械轉(zhuǎn)子,電機(jī)實(shí)際上工作于同步模式。同時(shí),為了防止電機(jī)堵轉(zhuǎn),導(dǎo)致霍爾位置永遠(yuǎn)都到不了,當(dāng)相位超前以后,由系統(tǒng)定時(shí)器不斷增加驅(qū)動(dòng)電壓,促使電機(jī)轉(zhuǎn)矩不斷增加。
(2)程序接收到霍爾中斷,但SVPWM驅(qū)動(dòng)信號(hào)沒有達(dá)到預(yù)期角度,此時(shí)表現(xiàn)為相位滯后,滯后角度具體數(shù)值可以由霍爾中斷處的理論角度減去當(dāng)前SVPWM驅(qū)動(dòng)角度來(lái)得到。
由于霍爾傳感器均存在安裝誤差,使得調(diào)相式SVPWM在相位調(diào)節(jié)過程中存在較大的相位誤差。相位誤差的出現(xiàn),將導(dǎo)致驅(qū)動(dòng)信號(hào)畸變,使電機(jī)系統(tǒng)諧波分量損失嚴(yán)重,效率降低?;魻栁恢玫恼`差,也會(huì)導(dǎo)致測(cè)量轉(zhuǎn)速時(shí)的離散誤差較大,引起速度調(diào)節(jié)環(huán)路不穩(wěn)定。為了解決此問題,本文使用了一種自動(dòng)校準(zhǔn)霍爾位置信號(hào)的方法,使每次霍爾中斷時(shí)的轉(zhuǎn)子位置更加準(zhǔn)確,調(diào)相精度更高,進(jìn)而實(shí)現(xiàn)了更好的控制品質(zhì)。
霍爾位置自動(dòng)校準(zhǔn)的方法如下:
(1)用帶精準(zhǔn)光電編碼器的轉(zhuǎn)臺(tái)與電機(jī)同軸轉(zhuǎn)動(dòng),設(shè)一初始相位001為0°;
(2)當(dāng)下一霍爾相位到來(lái)時(shí),記錄光電編碼器的實(shí)際角度;
當(dāng)霍爾狀態(tài)011來(lái)臨時(shí),記錄光電編碼器角度為α1;
當(dāng)霍爾狀態(tài)010來(lái)臨時(shí),記錄光電編碼器角度為α2;
當(dāng)霍爾狀態(tài)110來(lái)臨時(shí),記錄光電編碼器角度為α3;
當(dāng)霍爾狀態(tài)100來(lái)臨時(shí),記錄光電編碼器角度為α4;
當(dāng)霍爾狀態(tài)101來(lái)臨時(shí),記錄光電編碼器角度為α5;
當(dāng)霍爾狀態(tài)001來(lái)臨時(shí),光電編碼器角度回到0°;
(3)將以上α1~α5儲(chǔ)存在程序里,如此重復(fù)10次,取各自的平均值記為 θ1、θ2、θ3、θ4、θ5;
(4)程序正常運(yùn)行時(shí),當(dāng)霍爾中斷到來(lái)時(shí),不再認(rèn)為其位置角度為 0°、60°、120°、180°、240°、300°、360°,而將其修正為 0°、θ1°、θ2°、θ3°、θ4°、θ5°。
實(shí)驗(yàn)表明,使用霍爾位置自動(dòng)校準(zhǔn)以后,測(cè)量轉(zhuǎn)速時(shí)的離散誤差減少,測(cè)速更加準(zhǔn)確,速度調(diào)節(jié)環(huán)路更加穩(wěn)定;相位信號(hào)誤差的減少,也使得 SVPWM調(diào)制性能更佳,效率更高。在滿足永磁同步電機(jī)伺服系統(tǒng)需求的前提下,完全可以取代價(jià)格昂貴的光電編碼器。
硬件電路為系統(tǒng)提供了可靠的運(yùn)行平臺(tái),但是系統(tǒng)控制策略和很多功能的實(shí)現(xiàn)則主要依賴于軟件的設(shè)計(jì)。系統(tǒng)采用C語(yǔ)言編程,軟件實(shí)現(xiàn)的功能主要有:
(1)SVPWM調(diào)制;
(2)檢測(cè)霍爾傳感器,實(shí)時(shí)計(jì)算轉(zhuǎn)速和同步轉(zhuǎn)子位置;
(3)速度、電流調(diào)節(jié)器的設(shè)計(jì);
(4)處理各種異常,如過流、霍爾丟失、堵轉(zhuǎn)等,并完成保護(hù)輸出;
(5)輔助功能,如鍵盤讀取、顯示,與上位機(jī)通訊等。
軟件主程序采用常見的死循環(huán)結(jié)構(gòu)。系統(tǒng)上電復(fù)位以后,立即初始化系統(tǒng)并設(shè)置好各項(xiàng)參數(shù),然后進(jìn)入一個(gè)死循環(huán)中等待中斷請(qǐng)求。主控芯片通過響應(yīng)定時(shí)器中斷、外部中斷以及持續(xù)的AD采樣來(lái)判定系統(tǒng)所處的狀態(tài),根據(jù)不同的工作狀態(tài)選取相應(yīng)的策略來(lái)實(shí)現(xiàn)對(duì)系統(tǒng)的控制。
要進(jìn)行SVPWM調(diào)制,首先必須獲取所需空間電壓矢量US的相位和幅值。系統(tǒng)分別采用PWM中斷和調(diào)速中斷來(lái)獲取這兩個(gè)變量,而霍爾中斷主要用來(lái)測(cè)速和同步扇區(qū)。
圖3 速度調(diào)節(jié)流程圖
PWM頻率設(shè)定為10 kHz,PWM中斷服務(wù)子程序如圖1所示。首先,根據(jù)霍爾信號(hào)判定電機(jī)轉(zhuǎn)子所處的扇區(qū);然后利用當(dāng)前轉(zhuǎn)速計(jì)算驅(qū)動(dòng)相位,計(jì)算公式如式7所示。由式(7)可知,電機(jī)轉(zhuǎn)速最低可達(dá)1.2 r/min,有很好的低速性能。系統(tǒng)根據(jù)驅(qū)動(dòng)相位和PI控制器輸出的最新幅值,立即更新PWM占空比,從而實(shí)現(xiàn)SVPWM調(diào)制和PI調(diào)節(jié)。
本文利用MATLAB/Simulink構(gòu)建了PMSM伺服系統(tǒng)的仿真模型。其中SVPWM模塊仿真模型如圖4所示。
電機(jī)運(yùn)行在5 000 r/min時(shí)的三相電流波形如圖5所示,起動(dòng)以后呈很好的正弦波形,這有助于抑制電機(jī)的轉(zhuǎn)矩脈動(dòng)。
本文使用額定功率550 W的工業(yè)縫紉機(jī)做了實(shí)際測(cè)試,測(cè)試設(shè)備為MTS-I電機(jī)測(cè)試系統(tǒng),如圖6所示。樣機(jī)測(cè)試結(jié)果如圖7所示,在額定點(diǎn)處,系統(tǒng)轉(zhuǎn)速為4 930 r/min,輸出功率為549.2 W,效率達(dá)到84.4%,達(dá)到了預(yù)期目標(biāo)。由于系統(tǒng)采取了過流保護(hù)措施,當(dāng)負(fù)載繼續(xù)加大時(shí),電流不能隨之繼續(xù)增大,因此迫使電機(jī)轉(zhuǎn)速下降。當(dāng)輸出轉(zhuǎn)矩達(dá)到3N·m時(shí),電機(jī)轉(zhuǎn)速尚在3 100 r/min以上,輸出功率為986 W,功率裕量很大,這對(duì)系統(tǒng)穩(wěn)定性很有幫助。
圖4 SVPWM仿真模型
圖5 三相電流波形
圖6 MTS-I電動(dòng)機(jī)測(cè)試環(huán)境
圖7 樣機(jī)測(cè)試結(jié)果
表2 樣機(jī)測(cè)試結(jié)果
本文設(shè)計(jì)實(shí)現(xiàn)了一套低成本的PMSM控制器,根據(jù)SVPWM的基本原理,使用相位差動(dòng)態(tài)調(diào)節(jié)的方法對(duì)驅(qū)動(dòng)相位進(jìn)行了優(yōu)化,同時(shí)使用霍爾位置自動(dòng)整定的方法對(duì)硬件電路的不足給予補(bǔ)償,并且通過仿真和工業(yè)縫紉機(jī)伺服控制測(cè)試表明,本系統(tǒng)取得了良好的控制品質(zhì),有很好的應(yīng)用前景。
[1]黃騰云.采用霍爾傳感器的PMSM低成本控制系統(tǒng)[J].微特電機(jī),2012,40(01):20 -21.
[2]徐傳芳.新型SVPWM調(diào)制方法研究[J].微特電機(jī),2012,40(07):72-75.
[3]于兆凱.基于STM32的永磁同步電機(jī)伺服系統(tǒng)的研究[D].杭州:浙江大學(xué),2012.
[4]孫立志.PWM與數(shù)字化電動(dòng)機(jī)控制技術(shù)應(yīng)用[M].北京:中國(guó)電力出版社,2008:17 -22,175-190.
[5]方斯琛等.新型無(wú)扇區(qū)空間矢量脈寬調(diào)制算法[J].中國(guó)電機(jī)工程學(xué)報(bào),2008,28(30):37 -42.
[6]VAN DER BROECK H W,SKUDLENY H C,STANKE G V.Analysis and realization of a pulsewidth modulator based on voltage space vectors[J].IEEE transactions on.Industry Applications,1988,24(1):142 -150.
[7]劉金琨.先進(jìn)PID控制及其MATLAB仿真[M].2版.北京:電子工業(yè)出版社,2003:30-34.
[8]吳瀛喆.數(shù)字式工業(yè)縫紉機(jī)控制器的研究與設(shè)計(jì)[D].成都:電子科技大學(xué),2013.
[9]張成.SVPWM與SPWM比較仿真研究[J].機(jī)械與電子,2013,(01):5-9.
[10]SHIREEN W,VANAPALLI S,NENE H.A DSP based SVPWM control for utility interactive inverters used in alternate energy systems[C]//APEC’06.IEEE,2006:5.
[11]KIM Lee - Hun,YU Jae - Sung,LEE Won - Cheol,et al.A noval PWM switching technique for conducked EMI reduction in fieldoriented control of an induction motor drive system[C]//Industrial Electronics Society,IECON,31st Annual conference of IEEE.2005.
[12]PEROUTKA Z,GLASBERGER T.Comparison of methods for continuous transition of space vector PWM into six-step mode[C]//Power Electronics and Motion Control Conference.2006:925-930.