劉曉東,邴冰天,李 偉,王學高,裴昕瑩
(國網(wǎng)遼寧省電力有限公司葫蘆島供電公司,遼寧 葫蘆島 125000)
永磁同步電機的無傳感器控制技術[1]不僅能提高永磁同步電機控制系統(tǒng)的可靠性,同時也降低了對運行環(huán)境的要求和制造電機的成本。該技術是通過檢測相關電信號,采用特定的控制算法估算出轉(zhuǎn)子位置和速度,從而實現(xiàn)對永磁同步電機的雙閉環(huán)控制。
目前,針對無傳感器永磁同步電機控制系統(tǒng),其實現(xiàn)方法有定子磁鏈估計法、反電動勢法、狀態(tài)觀測器法、模型觀測法、模型參考自適應法等。文獻[2]是通過檢測定子繞組的電壓和電流計算轉(zhuǎn)子的位置。文獻[3]是通過計算定子繞組的反電動勢來估算轉(zhuǎn)子的位置。但在低速或零速時由于定子繞組的反電勢極小,導致估計轉(zhuǎn)子的位置誤差較大甚至估計失敗。文獻[4]通過假設轉(zhuǎn)子在某個位置,計算出在該位置時定子的電壓或電流,然后與傳感器檢測的電壓或電流作差,通過自適應率的調(diào)節(jié)來減小差值。這種方法受電機參數(shù)的變化以及系統(tǒng)噪聲的影響較大。文獻[5]是將系統(tǒng)的輸出量和輸入量都作為其輸入信號,通過內(nèi)部系統(tǒng)對其進行重構(gòu)對誤差進行補償,從而得到正確的結(jié)果。以上這些方法需要進行大量的計算,對于控制芯片性能要求極高,在低速下估計的轉(zhuǎn)子位置精度低,僅僅適用于中、高速。
高頻注入法[6]是利用永磁同步電機的凸極性,通過計算得到轉(zhuǎn)子的位置。該方法不僅在低速下能夠準確的得到轉(zhuǎn)子的位置,而且算法簡單對控制芯片性能要求低。本文首先分析了高頻注入法的原理,通過基于鎖相環(huán)(PLL)的轉(zhuǎn)子位置估計器從高頻響應電流中提取出轉(zhuǎn)子位置信息。然后,在Simulink環(huán)境下搭建基于DSP28335的控制算法模型和邏輯控制模型。最后,應用Simulink代碼生成技術[7]成功生成了嵌入式C代碼,并在電機實驗平臺進行了實驗
高頻注入法的原理是向電機的旋轉(zhuǎn)坐標軸中注入高頻電壓或者電流信號,利用永磁同步電機具有非線性飽和特性,使得電機勵磁磁路的改變,使得電機具有凸極性,最后通過特定的算法獲得轉(zhuǎn)子的位置。其關系如圖1所示。
圖1 估計dr軸和實際d軸的關系
內(nèi)嵌式永磁同步電機在dr系下定子電壓方程為
(1)
由于注入高頻信號的頻率遠遠高于電機正常運行時的頻率(注:實驗中,電機正常運行時的基波頻率為33.33 Hz),因此可以把永磁同步電機看作R-L電路,式(1)簡化為
(2)
將式(2) 變換到旋轉(zhuǎn)坐標系drqr,得到
(3)
由于注入的電流的頻率遠高于電機的基波頻率,因此相比高頻電抗來說,電阻可以忽略,故
(4)
定義Zavg為dr、qr軸平均高頻阻抗;Zdiff為dr、qr軸半差高頻阻抗。
(5)
將式(2)、式(4)、式(5)帶入式(3),可以得到
(6)
設在dr軸注入高頻電壓信號,其表達式
(7)
式中,vh為幅值,ωh為頻率。
將式(7)帶入式(6)得到qr軸高頻電流響應為
(8)
其中,Rdiff=(Rdh-Rqh)/2,Ldiff=(Ldh+Lqh)/2
由于在高頻信號作用下電感產(chǎn)生的高頻阻抗要遠大于高頻電阻,因此式(8)可以簡化為
(9)
由式(9)可以看出,Δθ近似為零時,sin2Δθ也趨于零。因此,通過帶通濾波器對基波進行濾除,得到包含轉(zhuǎn)子誤差的高頻信號,然后對高頻電流信號進行解調(diào),最后通過轉(zhuǎn)子位置估計器計算出轉(zhuǎn)子的位置。其過程如圖2所示(BPF為帶通濾波器;LPF為低通濾波器)。
圖2 轉(zhuǎn)子誤差信息的處理過程
位置估計器對解調(diào)后的信號處理過程如下
(10)
當Δθ足夠小時,sin2Δθ=2Δθ,式(10)可簡化為
(11)
由式(11)可知,通過調(diào)節(jié)作用使得iΔθ為零,此時轉(zhuǎn)子位置誤差Δθ也為零,那么估計的轉(zhuǎn)子位置就是實際位置。
圖3 永磁同步電機無傳感器控制系統(tǒng)的整體框圖
在傳統(tǒng)的電機控制軟件開發(fā)過程中,軟件設計分為系統(tǒng)控制流程設計和軟件子模塊設計。軟件設計完成后,需要對算法進行測試和驗證,但在實際控制系統(tǒng)中進行實驗可能會出現(xiàn)因算法問題引起的控制器損壞、電機驅(qū)動電路損壞等故障。同時,傳統(tǒng)電機控制軟件的開發(fā)效率低、周期長和可靠性差。而自動代碼生成技術,根據(jù)用戶的需求建模而自動生成嵌入式代碼,實現(xiàn)了計算機仿真與硬件處理器的結(jié)合,提高了電機算法的可靠性和準確性。同時,自動代碼生成技術能夠提供接口來與算法模型進行連接,避免了手寫代碼造成的算法和驅(qū)動底層代碼接口的不匹配,大大加速了軟件的開發(fā)進程。
Matlab/Simulink軟件將用于電機控制系統(tǒng)的C2000系列DSP的底層驅(qū)動封裝在Embedded coder工具箱中,包括中斷、ePWM、ADC等模塊。此外,該工具箱也增加了針對電機控制的函數(shù)庫,包括Clarke變換、Park變換、SVPWM等模塊。
圖4為無傳感器控制系統(tǒng)的模型,包括Mode Scheduler、Motor Control、ADC、ePWM等。
Mode Scheduler使用Stateflow建立的模型(如圖6所示)。用戶可以根據(jù)需要設定轉(zhuǎn)速、轉(zhuǎn)矩、電機的起停等。
圖4 永磁同步電機無傳感器控制系統(tǒng)
圖5 電機控制系統(tǒng)模型
圖6 Mode Scheduler模型
Motor Control(如圖7所示)由轉(zhuǎn)速環(huán)、電流環(huán)、轉(zhuǎn)子位置估計器以及SVPWM等模塊組成。
注入的高頻信號采用正弦信號,若采用在線直接求解的方法,會占用大量的芯片資源。因此,實驗采用離線查表的方式得到正余弦的函數(shù)值。
圖7 Motor Control模型
圖8 dq軸電流環(huán)
圖9 速度環(huán)
圖10 轉(zhuǎn)子位置估計器
整個控制系統(tǒng)需要用到帶通濾波器、低通濾波對信號進行過濾,本文采用Matlab提供的FATool工具設計數(shù)字濾波器。
圖11 FATool波器設計工具
為了生成與控制芯片相匹配的嵌入式代碼,需要對Simulink軟件進行設定。其中,控制算法模型需采用固定步長的離散求解器,步長設置為100 μm(與控制軟件的計算周期相同)。將生成的嵌入式C代碼導入CCS5.0工程中(如圖12所示)進行編譯、鏈接,最后將生成的.out文件并將其下載到在電機控制器的芯片中進行試驗。
圖12 CCS環(huán)境下進行編譯、鏈接、下載
本實驗平臺以一臺30 kW的內(nèi)置式永磁同步電機為控制對象。電機控制器的控制芯片為DSP 28335。在整個控制系統(tǒng)中,功率器件的開關頻率為10 kHz,ADC采樣周期為100 μs,注入高頻電流的頻率為1000 Hz。注:轉(zhuǎn)子的實際位置由旋轉(zhuǎn)變壓器來檢測。
圖13 實驗平臺系統(tǒng)結(jié)構(gòu)
圖14 永磁同步電機控制系統(tǒng)實驗平臺
為了驗證基于代碼生成技術的無傳感器控制系統(tǒng)的準確性和有效性,設計了空載啟動和突加負載的實驗。
給定轉(zhuǎn)速為500 r/min時,實驗結(jié)果如圖15所示。圖15(a)~圖15(c)分別為轉(zhuǎn)子估計位置、實際位置和位置誤差。電機剛啟動時轉(zhuǎn)子位置誤差較大,待系統(tǒng)穩(wěn)定后估計的轉(zhuǎn)子位置能夠?qū)崟r地跟蹤實際位置,誤差約為0.03±0.02 rad。圖15(d)為定子的相電流(x軸:50 ms/格;y軸:10 A/格);圖15(e)、圖17(f)分別為包含轉(zhuǎn)子誤差信號的高頻電流帶通濾波器濾波前后的FFT分析圖。
圖15 給定轉(zhuǎn)速為500 r/min時電機的實驗波形
圖16當電機轉(zhuǎn)速穩(wěn)定在500 r/min時,加載的實驗結(jié)果。從圖16(a)中可以看出,加載后轉(zhuǎn)子位置誤差發(fā)生小幅波動,誤差值約為0.03±0.03 rad。
圖16(b)為定子相電流圖(x軸:50 ms/格;y軸:10 A/格)。
圖16 突然加載時的實驗波形
本文首先對高頻注入法獲得永磁同步電機轉(zhuǎn)子位置的方法進行研究,然后通過Simulink代碼生成技術得到嵌入式C代碼。最后,通過實驗證明了高頻注入法在低速下能夠準確得到轉(zhuǎn)子的位置,也驗證了Simulink代碼生成技術準確性。