易 鑫,陳 勇,3
(1.北京信息科技大學 機電工程學院, 北京 100192;2.新能源汽車北京實驗室, 北京 100192; 3.北京電動車輛協同創新中心, 北京 100192)
汽車的主動安全技術一直是被關注的重點,主動安全可幫助提升車輛的操縱性和穩定性,從而降低事故的發生概率。主動安全技術的關鍵之一是準確獲取車輛實時狀態,主要有車輛的橫擺角速度、縱向速度、側向速度和質心側偏角等。車輛狀態參數的獲取主要有兩條路線,其一是基于傳感器進行測量,但由于傳感器成本過高,目前更多的采用算法進行估計。車輛狀態估計的算法中,研究較多的有神經網絡法、狀態觀測器法、粒子濾波法、模糊邏輯估計法以及卡爾曼濾波法等。由于神經網絡法需要提供大量的樣本,模糊邏輯估計法的加權系數難以確定,更多的是采用卡爾曼濾波算法估計,其優點在于具備遞推迭代的方式,改進的EKF還可對非線性模型進行較為準確的估計。Boada等[1]提出了一種將卡爾曼濾波疊加運用的估計方法,以此達到對車輛狀態和參數的估計。Salahshoor等[2]提出一種自適應EKF算法,運用新息和殘差理論實時更新協方差矩陣R和Q,提高了濾波的精度和穩定性。田彥濤等[3]提出將平方根思想運用到無跡卡爾曼濾波中,達到估計汽車各個狀態量的目標,并利用其估計到的側偏角使用二乘法估計側偏剛度信息。宋義彤等[4]采用無跡卡爾曼濾波算法設計一種車輛狀態和參數的聯合觀測器,其能夠同時辨識和估計車輛的狀態和參數。時艷茹[5]基于達戈夫輪胎模型建立車輛非線性動力學模型,包含7個自由度,再通過UKF濾波估計的方法,結合路面附著系數,以得到關于車輛的側向和縱向速度等信息。張家旭等[6]采用卡爾曼濾波器估計車速的同時,運用交互式多模型算法平滑融合濾波器的輸出,以此得到對系統噪聲統計特性具有自適應能力的濾波器。周兵等[7]使用擴展卡爾曼濾波對輪速估計的車速和無跡卡爾曼濾波算法估計得到的車速進行兩者的融合,實現車輛狀態參數的估計。李剛等[8]提出將Sage-Husa理論融入到EKF算法中,對車輛的狀態參數進行估計,以車輪的輪速信息作輸入,輸出信號為車輛的質心側偏角、橫擺角等車輛狀態信息;王震坡等[9]為了提高狀態估計算法的抗干擾性,將模糊控制引入與UKF算法中,達到對測量噪聲在線調整的目的。上述算法中,濾波的參數雖然隨著過程噪聲和觀測噪聲進行調整,但更多地是依靠人工經驗進行參數設定,具有一定的局限性。
本文提出一種使用遺傳算法與擴展卡爾曼濾波相結合的自適應濾波方法。該算法以前輪轉角和油門/剎車制動踏板開度作為輸入信號,實現對運動狀態下車輛的橫擺角、質心側偏角以及縱向速度的有效評估,最后在Matlab/Simulink與CarSim中建立車輛模型并進行仿真,驗證了算法的準確有效性。
為了達到準確并且實時地對車輛狀態參數進行估計的目標,有必要搭建合適的動力學模型。在選擇車輛模型上,考慮以2自由度車輛模型為基礎[10],建立一個包含橫擺和縱(橫)向運動的車輛非線性3自由度模型,如圖1所示。

圖1 車輛3自由度動力學模型示意圖
其受力模型如下。
橫擺力矩為:

(Fy11-Fy12)sinδ)+
a(Fx11+Fx12)sinδ+
a(Fy11+Fy12)cosδ-
b(Fy21+Fy22)
(1)
橫向受力為:
∑FY=(Fy11+Fy12)cosδ+Fy21+
Fy22+(Fx11+Fx12)sinδ
(2)
縱向受力為:
∑FX=(Fx11+Fx12)cosδ-(Fy11+Fy12)sinδ+
(Fx21+Fx22)
(3)
式中:MZ為車輛繞質心的力矩;FX和FY分別為縱向力和側向力;δ為前輪轉角;a(b)為質心至前(后)軸的距離;tf和tr分別為車輛前后輪輪距。
可得,車輛包含3自由度的微分方程為:

(4)
(5)
式中:m為整車的整備質量;ωr為橫擺角速度;β為質心側偏角;k1、k2分別為前后輪總側偏剛度;vx為縱向速度、vy為側向速度;ax/ay為車輛縱向/側向加速度;Iz為繞z軸的轉動慣量。
在汽車動力學控制中,輪胎的作用力(側向力、縱向力、回正力矩)主要與載荷、胎壓、路面附著系數等因素有關。輪胎是車輛的重要組成,與地面進行直接接觸,其與地面的作用力對汽車的制動性能和操穩性等產生影響,因此,要想對汽車動力性能進行仿真,首要保障車輛輪胎模型的精確性。這其中,作為半經驗模型,Magic-Formula輪胎模型精度高,且當輪胎處于非線性狀態時,能夠較為精確地擬合輪胎的非線性特性[11]。故選用Magic-Formula模型表達輪胎的動力學等特性,其表達式如下:
y=Dsin{Carctan[Bx-E(Bx-arctan(Bx))]}
(6)
Y=y+Sv
(7)
x=X+Sh
(8)
式中:Y為輪胎縱(側)向力、也可代表輪胎作用于Z軸的力矩;X根據Y而定,代表輪胎縱向滑移率或側偏角;D為峰值因子;C為形狀因子;B為剛度因子;Sv為垂直偏移量;Sh為水平偏移量。
在進行車輛的狀態預測時,需要計算輪胎受到的橫縱向力,輪胎的縱向力Fx0為:
(9)
式中,x=λ為滑移率;
輪胎的側向力Fy0為:
(10)
式中:x=α為側偏角;a0~a8;b0~b8為擬合系數,可通過使用CarSim軟件中提供的魔術輪胎模型提供。
對于車輛系統而言,是復雜的且非線性的。而卡爾曼濾波主要用于線性的表達形式,難以作用于非線性的系統,無跡卡爾曼濾波需要保證濾波過程矩陣半正定的性質,濾波過程極易發生崩潰,穩定性較差。故采用擴展卡爾曼濾波解決車輛非線性的狀態測量,保證其具有良好的穩定性。
將車輛3自由度微分方程整理為如下形式:

(11)
式中:x(t)代表狀態方程,x(t)=(ωr,β,vx)T;y(t)代表觀測方程,觀測向量y(t)=(ay);系統輸入向量u(t)=(δ,ax)。w(t)為系統固有的噪聲,其方差為Q,而v(t)為方差為R的觀測噪聲。
EKF濾波是一個遞推迭代的過程,所針對的時間序列是離散化的,故對汽車3自由度方程進行離散化處理,通過前向歐拉法得到如下離散化后的狀態方程:

(12)
式中,F(k)和H(k)分別為線性化處理后的對狀態向量x(k)的偏導,

(13)
(14)
對線性化后的狀態方程和觀測方程賦初值并進行擴展卡爾曼濾波的遞推估計,令模型輸入為u(k),EKF算法遞推過程如下[12]:
預測步:
(15)
(16)
更新步:
(17)
(18)
(19)
在汽車運行時,系統噪聲和觀測噪聲的方差實際上是處于變化的過程,故系統的噪聲協方差矩陣Q和測量噪聲協方差矩陣R是實時變化的,傳統的EKF算法將其假設為定值,這會影響濾波精度。因此,需根據環境和系統運動對過程噪聲協方差陣和測量噪聲協方差陣進行自適應調節[13]。
在對卡爾曼濾波中的協方差矩陣Q和R進行在線調整時,由于同時調整Q與R值極易濾波過程發散[14],故僅對觀測矩陣R進行動態調整。周衛琪等[15]將UKF與遺傳算法相融合,對噪聲進行自適應尋優,提高了狀態估計的精度;但是UKF濾波要求矩陣為半正定,計算過程極易崩潰,很不穩定,楊易等[16]利用遺傳算法優化模糊卡爾曼控制器中的隸屬函數,提高了濾波器的抗干擾性,進而保證了全局估計的準確性;Liu等[17]提出了一種包含無跡卡爾曼濾波(UKF)和遺傳粒子群算法(遺傳粒子群UKF)的混合算法來估計車輛的關鍵狀態,具有更高的精度和更少的計算量。
生物的演變過程實質是基因進行重新組合,包括交叉和變異等。遺傳算法通過采用數學的方式對自然界的進化進行模擬[18],并將自然界的“優勝劣汰”的現象用數學概率表達,以此解決函數中最優解問題[19]。


(20)
式中,λ為適應度系數。
新息序列[20]的定義為:

(21)
將式(12)中的Z(k)代入式(21)可得新息序列的理論協方差:
E[η(k)η(k)T)]theo=H(k)Pk/k-1H(k)T+R(k)
(22)
新息序列的真實協方差為:
(23)
則新息在k時刻的方差的偏差,即實際方差-理論方差得到ek為:
ek=E[η(k)μ(k)T]real-E[η(k)μ(k)T]theo
(24)
建立的遺傳算法以自適應系數λ作為尋優的參數。以新息的實際方差和理論方差的差值ek的平方作為適應度函數,以其值最小為目標進行優化。系數λ的取值范圍由觀測噪聲R的波動程度確定,噪聲波動得越劇烈,其取值范圍越廣。本次實驗選取λ的取值范圍為[0,10],并采用較為廣泛的二進制編碼,求解精度精確到0.01,則由式(25)可確定二進制的位數為n=10。種群的大小一般取20~100個。本次實驗令種群大小為50。再采用基于輪盤賭的選擇法,交叉和變異的概率分別為0.6和0.001[21]。
(25)
加入遺傳算法后的EKF狀態估計算法流程框圖見圖2。

圖2 GA-EKF算法流程框圖
采用Carsim與Simulink聯合仿真,對車輛橫擺角速度、質心側偏角以及車速進行仿真,從而對所提出的狀態估計算法的有效性和準確性進行驗證,并與傳統的濾波算法相比較。仿真過程的車輛的基本參數詳見表1。

表1 車輛基本參數
選擇雙移線工況作為仿真工況,初始速度v0=90 km/h,并設定路面附著系數μ值為80%,采樣周期T為0.001 s。
Carsim與Matlab/Simulink仿真設計過程如圖3所示。

圖3 CarSim與Matlab/Simulink聯合仿真設計過程框圖
結合汽車3自由度狀態方程,狀態變量:x(t)=[ωr,β,vx]T的初值設置為[0,0,25]T。系統的輸入量u(t)=[δ,ax]T,其對應的信號輸入為如圖4所示的形狀。將系統的噪聲的初始協方差定為Q0=I3×3。觀測向量為y(t)=ay,其觀測噪聲為如圖5所示的時變高斯白噪聲,設定觀測噪聲的初始值R0=1 000,同時協方差矩陣設置為P0=I3×3*1。

圖4 輸入信號曲線

圖5 含時變噪聲的觀測信號曲線
仿真時間設定為10 s,仿真結果如圖6—8所示,其中,Carsim表示實際值,EKF表示使用擴展卡爾曼濾波算法得到的值,GA-EKF表示使用遺傳算法改進的自適應擴展卡爾曼濾波算法得到的值。由圖中可以看出,2種估計算法所取得的估計結果都相對較為滿意,但是當觀測噪聲變化時,EKF算法的估計誤差隨之波動,其結果為增大的趨勢,而GA-EKF算法仍然能夠較好地跟蹤。這是因為GA-EKF利用新息序列對觀測噪聲的特性進行了在線評估,動態地追蹤觀測噪聲的特性,從而減輕其對車輛系統的狀態估計帶來的不利影響。因此,GA-EKF算法在保證良好的魯棒性的前提下,較為準確地估計車輛狀態。

圖6 橫擺角速度仿真曲線

圖7 質心側偏角仿真曲線

圖8 縱向速度仿真曲線
為了進一步比較GA-EKF和EKF兩種車輛狀態估計方法的精度,對仿真結果進行了定量計算,得出如表2所示的平均絕對誤差指標和表3所示的均方根誤差指標。

表2 2種算法MAE指標

表3 2種算法的RMSE指標
從表2和表3可以看出,在對上述3個狀態量的估計中,GA-EKF算法得到的指標中,MAE和RSME相對于EKF算法都有不同程度地降低,表明了所提算法的有效性。
本文提出基于車輛3自由度模型的GA-EKF狀態估計算法,將遺傳算法與自適應EKF相結合,在CarSim與Matlab/Simulink軟件下進行聯合仿真,通過對觀測噪聲估計值的動態調整,完成了對橫擺角速度、質心側偏角、縱向速度的有效評估。
GA-EKF算法中,通過遺傳算法有效尋找最優解,達到動態修正觀測噪聲協方差矩陣R的效果,從而降低噪聲所引起的系統誤差。仿真結果表明:GA-EKF算法能更穩定、準確估計車輛行駛過程的各參數,具有更高的精度和抗干擾性。