康桂彬
【摘 要】針對車輛的行駛狀態(tài)的估計的研究,對汽車的行駛狀態(tài)的研究更有利于車輛的穩(wěn)定性,主動安全和節(jié)能等方面的提高[2]。從經濟性和工程實用性考慮,此次設計將利用現有的量產車載傳感器所能測出的狀態(tài)信號,通過車輛狀態(tài)技術準確估計得到測量精度不高或難以低成本測量的狀態(tài)信號[6]。搭建基于Adams/MATLAB的軟件實時仿真,對卡爾曼算法本身控制參數以及車輛結構參數進行并行估計,完成對車輛行駛狀態(tài)的估計。
【關鍵詞】車輛行駛狀態(tài);卡爾曼濾波;聯(lián)合仿真
中圖分類號: U463.6 文獻標識碼: A 文章編號: 2095-2457(2019)14-0038-002
DOI:10.19694/j.cnki.issn2095-2457.2019.14.017
【Abstract】For the study of vehicle driving state estimation, the study of vehicle driving state is more conducive to improving vehicle stability,active safety and energy saving.Considering the economy and engineering practicability,this design will use the state signals that can be measured by the existing mass-produced on-board sensors to accurately estimate the state signals which are difficult to measure with low accuracy or low cost through the vehicle state technology.A real-time simulation software based on Adams/MATLAB is built to estimate the control parameters and vehicle structure parameters of the Kalman algorithm in parallel,and to complete the estimation of vehicle driving state.
【Key words】Vehicle driving state;Kalman filter;Joint simulation
1 本文主要研究內容
利用Adams和MATLAB建立模型聯(lián)合仿真,實現基于卡爾曼濾波算法對四輪前驅轎車的行駛狀態(tài)進行估計。
設計基于非線性車輛動力學模型的卡爾曼濾波狀態(tài)估計算法,對卡爾曼算法本身控制參數(系統(tǒng)噪聲協(xié)方差和量測噪聲協(xié)方差)以及車輛結構參數(速度,加速度等狀態(tài)變量)進行并行估計,實現估計算法自適應。搭建基于Adams/MATLAB的軟件實時仿真,完成對車輛行駛狀態(tài)的估計以用于提高車輛的穩(wěn)定性,主動安全和節(jié)能等方面的性能。
2 Adams/view模型的建立和導出
利用Adams/view建立整車動力學模型:隨機干擾路面,基于魔術公式的輪胎模型,建立車輛輪路耦合子模型;前后麥佛遜懸架,轉向器總成,動力總成,四輪盤式制動器,車架及車身等。建立相關狀態(tài)變量,在實現整車模型靜平衡的基礎上并運行仿真,觀測各狀態(tài)變量的實時數據,最后導出機械控制系統(tǒng)。
導出機械系統(tǒng)控制模型至MATLAB。再在MATLAB/simulink中以該模型為原型建立基于卡爾曼濾波的新模型。
3 利用卡爾曼濾波算法進行分析
卡爾曼濾波原理:
系統(tǒng)狀態(tài)方程
這個狀態(tài)方程是根據上一時刻的狀態(tài)和控制變量來推測此刻的狀態(tài),wk-1是服從高斯分布的噪聲,是預測過程的噪聲,它對應了xk中每個分量的噪聲,是期望為0,協(xié)方差為Q的高斯白噪聲wk-1~N(0,Q),Q即下文的過程激勵噪聲Q。
觀測方程:
zk=Hxk+vk
vK是觀測的噪聲,服從高斯分布,vK~N(0,R),R即下文的測量噪聲R。
卡爾曼濾波時間更新方程:
結合行文思路,在MATLAB中建立分析系統(tǒng)仿真模型組成聯(lián)合仿真模型。以垂向速度這一變量為例,其結果效果如下:
function testzs
clc
clear;
% 載入計算結果文件
load('zs.txt');
ts=ADAMS_tout;
% 分別對輸出的數據進行卡爾曼濾波
for i=1:2
y1=ADAMS_yout(:,i);
y1_ = kalman_filter(y1,1e-6,4e-4,0,1)
;
figure;
box on;
plot(ts,y1,'-k',ts,y1_,'r');
legend('old-data','kalman-data')
end
%
function X = kalman_filter(data,Q,R,x0,P0)
% Q方差
% R噪聲方差
% x0初始值
% P0初始值
N = length(data);
K = zeros(N,1);
X = zeros(N,1);
P = zeros(N,1);
X(1) = x0;
P(1) = P0;
for i = 2:N
K(i) = P(i-1) / (P(i-1) + R);
X(i) = X(i-1) + K(i) * (data(i) - X(i-1));
P(i) = P(i-1) - K(i) * P(i-1) + Q;
end
在隨機線性系統(tǒng)中,在高斯白噪聲作用下被估計的狀態(tài)量在卡爾曼濾波算法中被看作是隨機線性系統(tǒng)的輸出量,狀態(tài)空間模型基于時間域,所以卡爾曼濾波算法對平穩(wěn)隨機過程濾波和非平穩(wěn)隨機過程濾波均能適用。
文獻[8]中指出卡爾曼濾波算法具有以下特點:
卡爾曼濾波算法的量測更新過程需要求得卡爾曼濾波增益,但該增益矩陣和觀測過程無關,可以預先在計算機上進行離線計算,這樣可以減少卡爾曼濾波算法的實時計算量,提高實時性。
由于卡爾曼濾波算法的基本方程是時間域內的遞推形式,其計算過程是一個不斷地預測-修正的過程,在一個濾波周期內只需要知道上一時刻的歷史數據,在算法整個的求解過程中無須存儲大量的歷史數據,對硬件內存的需求較小,在計算機或嵌入式實現該算法更簡便,非常適合實時處理。
對于卡爾曼濾波估計結果可以采用以下兩個判據來進行評價:期望狀態(tài)估計均值是否和狀態(tài)實際均值相等,我們希望不出現狀態(tài)估計偏差,實現無偏估計;期望狀態(tài)估計均值是否等于實際狀態(tài)均值,使期望狀態(tài)估計值與實際值之間的偏差盡可能地小,也就是減小誤差的方差值。
在應用經典卡爾曼濾波的時候需要給定初值,并假設系統(tǒng)為時不變系統(tǒng),狀態(tài)空間模型能夠可觀和可控,狀態(tài)方程中的狀態(tài)轉移陣和控制量陣已經觀測方程中的觀測陣為固定值。此外,初始值的選取會影響濾波估計的效果,但其只對初始階段的濾波估計效果產生影響,當濾波時間充分長的時候,隨著時間的推移濾波估計的精度將越來越高并逐漸收斂于實際值,所以初始值的選取與最終的濾波估計效果無關。
如圖(1)可見,再經過卡爾曼濾波算法的處理后,數據圖像會更加接近真實值,這說明卡爾曼濾波對車輛行駛狀態(tài)的估計是可行的。更有益于其他有關車輛的仿真研究;為學者研究車輛的自動駕駛及車輛的主動安全的研究提供的可行的方案。
根據上一時刻的狀態(tài)估計值和噪聲協(xié)方差陣得到當前時刻的狀態(tài)一步預測值和誤差協(xié)方差一步預測陣,根據系統(tǒng)特性相關的狀態(tài)一步轉移矩陣、過程噪聲方差陣和觀測噪聲方差陣等信息確定的誤差協(xié)方差陣用來定量描述預測質量。量測更新過程為了充分利用觀測值,根據判斷時間更新質量的誤差協(xié)防差、觀測噪聲方差陣和觀測轉移陣確定濾波增益,用來計算對時間更新過程中的狀態(tài)修正量以及對誤差協(xié)方差進行校正。
4 總結
通過對簡單易測低成本傳感器信號的信息融合實現四輪前驅轎車在行駛過程中的縱向速度,縱向加速度,橫向速度,橫向加速度,垂向運動的估計,運用Adams和MATLAB進行聯(lián)合仿真試驗,卡爾曼濾波算法在估計精度,實時性和穩(wěn)定性方面具有良好的表現。
本文的創(chuàng)新點是:根據四輪前驅轎車的動力學參數以及道路線形參數,利用Adams提供的魔術輪胎模型和隨機干擾路面,分別創(chuàng)建兩組輪胎的輪胎屬性文件和模擬行駛的路面屬性文件,進而創(chuàng)建車輛輪路耦合子系統(tǒng)模型。讓仿真更貼近真實值。
要進一步對車輛行駛狀態(tài)的分析,有必要從以下幾個方面完善對單軌車輛系統(tǒng)的研究:
1)開展車輛輪胎磨損的機理與控制相關理論的方法研究。
2)對車輛行駛狀態(tài)的多重狀態(tài)變量的綜合分析,以很好的估計車輛行駛狀態(tài)的真實情況。
3)結合狀態(tài)分析在主動安全系統(tǒng),無人自動駕駛等方面的研究還有很多需要深入研究的地方。
【參考文獻】
[1]李增剛.ADAMS入門詳細與實例[M].北京:國防工業(yè)出版社.
[2]周紅妮,袁浩文.基于Matlab/Simulink與Adams/Car的車輛穩(wěn)定性控制系統(tǒng)聯(lián)合仿真[J].湖北汽車工業(yè)學院學報,2012,26(04):20-23.
[3]龔文斌,劉會杰,余金培.基于自適應擴展卡爾曼濾波的載波跟蹤算法[J].航空學報2012,33(07):1319-1328.
[4]耿國慶,韋斌源,江浩斌,華一丁,吳鎮(zhèn).基于NA-EKF的分布式驅動電動汽車行駛狀態(tài)估計研究[J].汽車工程,2018,40(07):770-776.
[5]李剛,李寧,段敏,李貴遠,申彩英.基于Simulink的四輪輪轂電機電動汽車仿真模型開發(fā)[J].遼寧工業(yè)大學學報(自然科學版),2012,32(03):185-189.
[6]李剛,王野,宗長富.四輪輪轂電機電動汽車行駛狀態(tài)估計[J].汽車工程,2018,40(02):150-155.
[7]黃小平,王巖.卡爾曼濾波原理及應用——MATLAB仿真[M].北京:中國工信出版社.
[8]金學波.Kalman濾波器理論與應用--基于MATLAB實現[M].科學出版社.
[9]薛定宇.基于MATLAB/SIMULINK的系統(tǒng)仿真技術與應用(第2版)[M].2011.清華大學出版社.