田 威,張幽彤,李建航
(北京理工大學(xué) 清潔車輛實驗室,北京 100081)
永磁同步電機(以下簡稱PMSM)廣泛應(yīng)用在高精度、高性能的工業(yè)場合,這對其速度動態(tài)性能提出了更高的要求。電機在運行過程中轉(zhuǎn)動慣量是恒定的,進行離線辨識即可,然而對于整個電機系統(tǒng),在不同負載工況下,作用在電機軸上的力發(fā)生改變,使電機系統(tǒng)的轉(zhuǎn)動慣量發(fā)生變化,進而導(dǎo)致系統(tǒng)的速度響應(yīng)特性降低,最終影響整個系統(tǒng)的機械特性[1]。在工業(yè)場合的實際應(yīng)用中,PMSM的轉(zhuǎn)動慣量要小于異步電機,對外部環(huán)境或者工況變化更加敏感,其調(diào)速系統(tǒng)受負載慣量的影響更大[2]。因此,準確辨識PMSM系統(tǒng)的轉(zhuǎn)動慣量值,對提升調(diào)速系統(tǒng)的動態(tài)性能意義重大[3]。
針對PMSM轉(zhuǎn)動慣量準確辨識問題,國內(nèi)外學(xué)者進行了大量研究。PMSM轉(zhuǎn)動慣量辨識方法主要有離線辨識和在線辨識[4]。離線辨識[5-6]是在電機工作前完成對電機參數(shù)的測量,其易于實現(xiàn)但是不能實時獲得電機運轉(zhuǎn)中慣量參數(shù)的變化,不適用于對精度與動態(tài)性能要求高的工業(yè)場合。在線辨識方法[7-8]可以在電機系統(tǒng)運行過程中,實時獲取電機的參數(shù)來完成慣量參數(shù)辨識,其辨識方法主要有卡爾曼濾波法(EKF)、遞推最小二乘法(RLS)、模型參考自適應(yīng)法(MRAS)等[9]。文獻[10]使用EKF算法,將慣量值作為狀態(tài)變量,通過濾波算法對其進行辨識,其所需數(shù)據(jù)量較大和計算復(fù)雜等問題有待解決;文獻[11]提出利用遺忘因子遞推最小二乘法(以下簡稱FFRLS)來完成轉(zhuǎn)動慣量的辨識,仿真結(jié)果具有較快的收斂速度和辨識精度,但是其遺忘因子值固定,無法保證辨識效果最優(yōu);文獻[12]采用基于模型參考的自適應(yīng)辨識,其辨識精度較高,然而模型中的自適應(yīng)率需要不斷更換,不具有通用性;文獻[13-14]分別提出了重力搜索算法(GSA)和變步長Adaline 神經(jīng)網(wǎng)絡(luò)算法,這些智能算法雖然對于參數(shù)辨識具有較高精度,但是其實現(xiàn)復(fù)雜,需要大量的迭代計算或訓(xùn)練,計算耗時長,無法滿足系統(tǒng)的快速響應(yīng)要求。
針對以上轉(zhuǎn)動慣量辨識算法存在的問題以及對算法復(fù)雜度和實用性的綜合考慮,本文設(shè)計了一種自適應(yīng)遺忘因子遞推最小二乘算法(以下簡稱A-FFRLS)的轉(zhuǎn)動慣量辨識方法,在FFRLS算法基礎(chǔ)上,引入模糊控制理論[15]對遺忘因子值進行動態(tài)控制,使慣量辨識系統(tǒng)可以根據(jù)算法辨識結(jié)果與實際值之間的差距自適應(yīng)調(diào)整遺忘因子值,使慣量估計值能夠快速且準確地逼近真實值,從而實現(xiàn)轉(zhuǎn)動慣量的實時在線辨識。本文通過仿真和實驗,對比了A-FFRLS與FFRLS算法對轉(zhuǎn)動慣量的辨識結(jié)果,證明了所設(shè)計的算法在對PMSM進行轉(zhuǎn)動慣量辨識時,在保證辨識速度的同時,具有更高的穩(wěn)定性和精度,可為電機的調(diào)速控制提供參數(shù)依據(jù)。
常規(guī)的最小二乘算法收斂速度慢,因此為提高收斂速度,需要引入遺忘因子進行數(shù)據(jù)加權(quán)[16],其算法基本步驟如下。
PMSM系統(tǒng)模型定為自回歸模型:
y(k)=φT(k)θ+ξ(k)
(1)
式中:k表示時刻;y(k)為k時刻系統(tǒng)輸出;φT(k)為測量數(shù)據(jù)向量;θ為實際的參數(shù)向量;ξ(k)為噪聲向量。
(2)
加入遺忘因子λ(0<λ<1),系統(tǒng)的目標函數(shù):
(3)
(4)
PMSM機械轉(zhuǎn)矩平衡方程:
(5)
式中:Te與Tl分別為電機的驅(qū)動轉(zhuǎn)矩和負載轉(zhuǎn)矩;J為轉(zhuǎn)動慣量;ωm為機械角速度;B為阻尼常量。
對式(5)進行Laplace變換,以ωm為輸入,以Te-Tl為輸出,系統(tǒng)的傳遞函數(shù):
(6)
通過式(6)可推導(dǎo)出系統(tǒng)帶零階保持器的脈沖傳遞函數(shù):
(7)
式中:Ts為相鄰兩個采樣周期間隔。聯(lián)立式(5)和式(7),將電機的機械轉(zhuǎn)矩平衡方程離散化,可得:
(8)
進一步整理可得:
(9)
當Ts趨近于無窮小時,可得:
(10)
此時,系統(tǒng)可根據(jù)角速度ωm和電磁轉(zhuǎn)矩Te為輸入,依據(jù)FFRLS的遞推公式可依次辨識出控制系統(tǒng)的轉(zhuǎn)動慣量J與負載轉(zhuǎn)矩Tl。
FFRLS算法中的遺忘因子λ為恒定值,但λ的大小會影響算法的收斂速度和穩(wěn)定性[17]。隨著λ的增大,穩(wěn)定性增強,收斂速度減慢,二者呈現(xiàn)出相反的趨勢,常規(guī)選固定折中值的方法很難保證全工況條件下的穩(wěn)定性和收斂速度得到較好的滿足[18]。本文采用模糊控制理論對FFRLS算法進行優(yōu)化,以解決FFRLS算法中結(jié)果收斂速度和穩(wěn)定性相互矛盾的問題,以下為具體操作方法。
(11)
辨識過程中,|e(k)|越大,參數(shù)辨識模型與實際模型間差距越大,λ的值應(yīng)減小,保證算法快速收斂;|e(k)|越小,參數(shù)辨識模型與實際模型間差距越小,λ的值應(yīng)增大,提高算法的穩(wěn)定性[19]。
(12)
式中:m為選取殘差的數(shù)量;Ts為仿真步長。
綜上,基于模糊控制的遺忘因子在線優(yōu)化的原理圖如圖1所示。
圖1 基于模糊控制的遺忘因子在線優(yōu)化
表1 模糊控制規(guī)則表
在實際轉(zhuǎn)動慣量辨識過程中,為減少計算量,提高算法效率,支持算法實用應(yīng)用,定義λ值的修正周期為仿真步長的α倍,第k時刻的辨識過程如圖2所示。
圖2 第k時刻的辨識算法流程圖
重復(fù)執(zhí)行以上過程,即可實現(xiàn)PMSM系統(tǒng)轉(zhuǎn)動慣量的在線辨識。
在MATLAB/Simulink中構(gòu)建表貼式永磁同步電機雙閉環(huán)矢量控制系統(tǒng),仿真電機參數(shù)來源于實驗室自研的太陽能賽車用輪轂電機,主要參數(shù)如表2所示。圖3為PMSM控制系統(tǒng)轉(zhuǎn)動慣量辨識框圖,在矢量控制系統(tǒng)基礎(chǔ)上引入A-FFRLS算法,利用電機模型獲得轉(zhuǎn)速與轉(zhuǎn)矩參數(shù),完成算法的迭代計算,實現(xiàn)PMSM轉(zhuǎn)動慣量的辨識。其中,仿真步長Ts=10-5s,仿真工況為太陽能賽車道路行駛最常用工況,轉(zhuǎn)速800 r/min,負載為20 N·m??紤]到電機實際運行過程中,轉(zhuǎn)動慣量在不同工況下的變化不明確,因此在仿真過程中以轉(zhuǎn)動慣量的階躍和漸變兩種工況來驗證算法的有效性。
表2 電機模型參數(shù)表
基于圖3的辨識模型,使用不同遺忘因子值的FFRLS算法對轉(zhuǎn)動慣量進行辨識,對辨識數(shù)據(jù)的平均誤差和平均方差進行分析,公式如下:
圖3 PMSM控制系統(tǒng)轉(zhuǎn)動慣量辨識框圖
(13)
(14)
表3為不同遺忘因子值下的辨識結(jié)果,結(jié)果驗證了FFRLS算法隨著遺忘因子的值增大,辨識速度逐漸降低,辨識結(jié)果穩(wěn)定性逐漸升高。取折中值λ=0.95作為算法的對比對象[19],來驗證A-FFRLS算法的有效性。
表3 不同遺忘因子下轉(zhuǎn)動慣量辨識結(jié)果
PMSM在運行過程中可能出現(xiàn)負載激增,導(dǎo)致被控電機的轉(zhuǎn)矩發(fā)生劇烈變化,此時轉(zhuǎn)動慣量可能發(fā)生階躍變化,因此建立電機在此種情況下轉(zhuǎn)動慣量發(fā)生突增、隨后重新穩(wěn)定的仿真工況,旨在驗證算法在電機轉(zhuǎn)動慣量發(fā)生突變時的辨識效果。電機轉(zhuǎn)動慣量參數(shù)變化如下:
(15)
圖4和圖5中設(shè)置電機轉(zhuǎn)動慣量在0.2 s處發(fā)生突變,將A-FFRLS算法與λ=0.95的FFRLS算法進行對比,通過對比圖4中轉(zhuǎn)動慣量辨識曲線可發(fā)現(xiàn),兩種算法的收斂速度相差不大,均能在0.004 s之內(nèi)收斂,但穩(wěn)定性的差異較大。
圖4 階躍工況轉(zhuǎn)動慣量仿真辨識結(jié)果
圖5 階躍工況遺忘因子變化
參考表4中所計算出兩種算法辨識結(jié)果的平均誤差和平均方差可得出結(jié)論:在階躍工況下,A-FFRLS算法的誤差和方差都更小、更穩(wěn)定,曲線更平滑,在保證了收斂速度的同時,有效提高了算法的精度。
表4 階躍工況轉(zhuǎn)動慣量辨識結(jié)果
電機轉(zhuǎn)動慣量漸變過程模擬的是電機平穩(wěn)工作時電機內(nèi)部轉(zhuǎn)矩等參數(shù)連續(xù)改變,從而影響轉(zhuǎn)動慣量值發(fā)生連續(xù)變化并最終穩(wěn)定的情況。仿真旨在驗證A-FFRLS算法在電機轉(zhuǎn)動慣量漸變時的辨識結(jié)果。電機轉(zhuǎn)動慣量參數(shù)變化如下式:
(16)
設(shè)置電機轉(zhuǎn)動慣量值在0.1~0.3 s間漸變,將A-FFRLS算法與λ=0.95的FFRLS算法進行對比。通過圖6可發(fā)現(xiàn),兩種算法的收斂速度相近,但穩(wěn)定性存在較大差異,A-FFRLS算法的曲線波動要小得多。依據(jù)表5中計算出兩種算法辨識結(jié)果的平均誤差和平均方差,在漸變工況下,A-FFRLS算法相對于固定遺忘因子遞推最小二乘算法辨識結(jié)果更加平滑穩(wěn)定,更加有利于PMSM系統(tǒng)控制的穩(wěn)定。
圖6 漸變工況轉(zhuǎn)動慣量辨識結(jié)果
圖7 漸變工況遺忘因子變化
表5 漸變工況轉(zhuǎn)動慣量辨識結(jié)果
在以上兩種情況下A-FFRLS算法相對一般的FFRLS算法在保證高收斂速度的同時,其辨識結(jié)果的誤差和方差更小,具有更高的穩(wěn)定性和精度,有效地解決了常規(guī)FFRLS算法中結(jié)果收斂速度和穩(wěn)定性相互矛盾的問題,可實現(xiàn)PMSM轉(zhuǎn)動慣量的實時辨識,為電機的調(diào)速控制提供參數(shù)依據(jù)。
電機測試平臺采用對拖形式搭建,圖8為PMSM實驗測試平臺搭建示意圖,圖9為測試平臺實物圖。硬件主要由加載電機、被測電機、控制器和采集卡等組成,軟件方面以LabVIEW為上位機,通過CAN通信的方式對2臺電機進行控制,使電機能在特定的工況下運行。實驗過程中,采用高精度轉(zhuǎn)矩儀對實際的負載轉(zhuǎn)矩與轉(zhuǎn)速進行測量,并將信號傳遞給采集卡,由采集卡將轉(zhuǎn)速轉(zhuǎn)矩值傳遞到上位機,同時將A-FFRLS算法寫入LabVIEW上位機,在上位機上進行算法的迭代計算,從而完成轉(zhuǎn)動慣量的辨識。
圖8 PMSM實驗測試平臺搭建示意圖
圖9 PMSM實驗測試平臺實物圖
為直觀評估A-FFRLS算法的有效性,設(shè)計了負載突變工況作為實驗工況。被測電機為太陽能賽車用輪轂電機,未加負載的情況下,通過電機和聯(lián)軸器的尺寸和質(zhì)量可計算出系統(tǒng)轉(zhuǎn)動慣量約為0.002 kg·m2,電機的額定工況為轉(zhuǎn)速800 r/min,額定轉(zhuǎn)矩20 N·m,在行駛過程中單電機的峰值轉(zhuǎn)矩能到30 N·m,綜合考慮電機實際使用場景的需求,同時為驗證電機在瞬態(tài)工況下算法的辨識能力,實驗中通過CAN信號直接控制轉(zhuǎn)矩的突變,將電機從空載突變?yōu)轭~定轉(zhuǎn)矩再突變?yōu)榉逯缔D(zhuǎn)矩的連續(xù)階躍工況作為實驗工況,即選擇轉(zhuǎn)速800 r/min,0.15 s時轉(zhuǎn)矩由0突變?yōu)?0 N·m,0.3 s處再突變?yōu)?0 N·m,來對比A-FFRLS與FFRLS在負載突變時的辨識速度以及工況穩(wěn)定后的辨識精度。與仿真不同,在進行實驗測試時,轉(zhuǎn)動慣量值無法人為設(shè)定,只能根據(jù)算法來進行辨識,同時由于外部干擾以及上位機實際計算處理能力有限等問題,實際辨識結(jié)果與仿真存在一定差異。實際的轉(zhuǎn)動慣量辨識結(jié)果如圖10所示,其遺忘因子值變化如圖11所示。
圖10 實驗轉(zhuǎn)動慣量辨識結(jié)果
圖11 實驗遺忘因子變化
通過圖10和圖11可看出,電機負載分別在0.15 s、0.3 s發(fā)生階躍突變時,所對應(yīng)的遺忘因子值迅速減小,以提高算法收斂速度;當工況穩(wěn)定后,A-FFRLS算法的遺忘因子值穩(wěn)定為0.99,符合算法設(shè)計的預(yù)期效果。電機空載時,兩種算法的轉(zhuǎn)動慣量辨識值約為0.002 kg·m2,與實際計算出的結(jié)果一致,證明了算法的準確性;在負載發(fā)生突變的瞬態(tài)工況下,A-FFRLS相對于FFRLS算法的辨識速度稍快,在20 ms內(nèi)辨識值即可達到收斂值。同時負載工況的不同會導(dǎo)致電機系統(tǒng)實際轉(zhuǎn)動慣量的值發(fā)生改變,其辨識值從0.002 kg·m2突變?yōu)?.003 9 kg·m2再突變?yōu)?.005 3 kg·m2,以此值為標準計算出的兩種算法辨識結(jié)果的平均誤差和平均方差,如表6所示。在此種工況下A-FFRLS相對于FFRLS算法辨識平均誤差能夠降低50.2%,平均方差降低42.6%。
表6 實驗轉(zhuǎn)動慣量辨識結(jié)果
綜上可知,在負載發(fā)生突變的瞬態(tài)工況下,A-FFRLS相對于FFRLS算法的辨識速度稍快;當工況穩(wěn)定后,A-FFRLS算法的辨識結(jié)果更加準確和穩(wěn)定,辨識曲線更加平滑,證明了本文設(shè)計的算法在進行轉(zhuǎn)動慣量辨識時,解決了FFRLS算法中辨識結(jié)果收斂速度和穩(wěn)定性相互矛盾的問題。在保證辨識速度的同時,具有更高的穩(wěn)定性和精度,可實現(xiàn)PMSM轉(zhuǎn)動慣量的實時辨識,為電機的調(diào)速控制提供參數(shù)依據(jù)。
為實現(xiàn)PMSM系統(tǒng)轉(zhuǎn)動慣量的實時準確辨識,本文在FFRLS的基礎(chǔ)上采用A-FFRLS算法以改善傳統(tǒng)方法存在精度和實時性相矛盾的問題,同時保證了辨識具有良好的精度和實時性。本文在分析常規(guī)FFRLS算法優(yōu)缺點的根本原因后,將FFRLS算法與模糊控制理論相結(jié)合,實現(xiàn)了遺忘因子的自適應(yīng)控制。隨后在MATLAB/Simulink平臺上通過階躍和漸變兩種工況對比分析了A-FFRLS和FFRLS兩種算法的辨識能力,證明了A-FFRLS算法的可行性和有效性。最后在電機測試平臺上,依據(jù)電機的實際使用情況設(shè)計了負載瞬態(tài)突變實驗,對比了兩種算法下的轉(zhuǎn)動慣量辨識效果。實驗結(jié)果表明,在負載發(fā)生突變的瞬態(tài)工況下,A-FFRLS相對于λ=0.95的FFRLS算法的辨識速度稍快;當工況穩(wěn)定后,A-FFRLS算法的的辨識結(jié)果更加準確和穩(wěn)定,辨識平均誤差能夠降低50.2%,平均方差降低42.6%,可實現(xiàn)PMSM轉(zhuǎn)動慣量的實時準確辨識,為電機的調(diào)速控制提供參數(shù)依據(jù)。