趙奉奎,成海飛,朱少華,張 涌
(南京林業(yè)大學(xué) 汽車與交通工程學(xué)院,江蘇 南京 210037)
近年來,汽車在朝著智能化和網(wǎng)聯(lián)化的方向飛速發(fā)展,無人駕駛是最終的發(fā)展目的。無人駕駛可以有效地減少交通事故發(fā)生的概率以及推動其他相關(guān)領(lǐng)域的技術(shù)發(fā)展。按照分層遞階系統(tǒng)架構(gòu),智能汽車可分為感知、規(guī)劃決策與控制3個層次。路徑跟蹤控制是控制層面的關(guān)鍵研究內(nèi)容,在汽車自主控制駕駛方面扮演著重要的角色。路徑跟蹤控制是在車輛動力學(xué)基礎(chǔ)上,通過添加控制量和控制增量約束條件來實現(xiàn)對預(yù)先路徑軌跡的跟蹤控制[1]。
現(xiàn)階段的路徑跟蹤控制研究中,所用控制理論主要集中在PID控制[2]、變結(jié)構(gòu)控制[3]、H∞控制[4]以及模糊控制[5]等。PID在閉環(huán)控制方面有著較優(yōu)的效果,通過參數(shù)整定使響應(yīng)命令達到快、準、穩(wěn),但是因為汽車在真實行駛工況下,會被外界帶來的擾動影響,使得在進行補償過程中無法調(diào)控較大范圍內(nèi)的漸進循環(huán)控制。變結(jié)構(gòu)控制(滑??刂?[6]可以根據(jù)系統(tǒng)當前的狀態(tài)軌跡做出相應(yīng)的應(yīng)答與動作,使得系統(tǒng)不得不向預(yù)期軌跡接近,克服了非線性控制系統(tǒng)的不確定性,如J.ACKERMANN等[7]利用滑??刂茖崿F(xiàn)橫擺角速度跟蹤參考橫擺角速度,但是滑??刂茣谖唇⒛P偷母哳l動態(tài)特性時發(fā)生抖動,如果傳感器信號波動劇烈或者執(zhí)行器的控制效果不好時,狀態(tài)軌跡難以嚴格遵守滑動模態(tài)面向平衡點靠攏,車輛的操縱穩(wěn)定性就無法得到保證。H∞控制通過抑制噪聲與理想輸出之間的偏度來使得系統(tǒng)得到的結(jié)果滿足預(yù)期模型效果,在應(yīng)用到汽車跟蹤控制時,需要求控制器具有較高的控制階數(shù)與計算復(fù)雜度[8]。模糊控制不需要對系統(tǒng)進行精確建模,但是模糊控制要實現(xiàn)必須在先驗知識基礎(chǔ)上建立實用的規(guī)則庫,因此理論穩(wěn)定性是無法論證的。模型預(yù)測控制(MPC)具有較強的多模型約束處理能力,能夠很好地協(xié)調(diào)自動駕駛過程中運動學(xué)和動力學(xué)兩者之間存在的限制,能夠?qū)崿F(xiàn)帶有多種約束的控制系統(tǒng)最優(yōu)求解[9]。
筆者設(shè)計基于MPC的自動駕駛車輛控制系統(tǒng),建立車輛三自由度動力學(xué)模型,在添加控制量和控制增量約束條件外還額外考慮了輸出量質(zhì)心側(cè)偏角和輪胎側(cè)偏角的約束,設(shè)計了一種基于動力學(xué)約束模型預(yù)測控制的路徑跟蹤控制器,通過MATLAB/CarSim聯(lián)合仿真,對控制算法進行了驗證。
車輛動力學(xué)模型可以反映車輛的實際駕駛狀況[10],但隨著約束條件或者復(fù)雜程度的增加,會直接導(dǎo)致求解過程的困難。因此,筆者在對汽車動力學(xué)建模時相對簡化了汽車動力學(xué)約束,并做出以下假設(shè):
1)車輛行駛的工況為良好平坦路面。
2)可忽略垂直方向的平動或者轉(zhuǎn)動運動,因為車輛和懸架系統(tǒng)是剛性連接結(jié)構(gòu)。
3)不考慮左右輪胎在行駛過程中垂向載荷的轉(zhuǎn)移。
4)忽略不計行駛過程中產(chǎn)生的空氣阻力。
5)轉(zhuǎn)向控制的輸入為前輪轉(zhuǎn)角,所以可以將轉(zhuǎn)向系統(tǒng)忽略。
通過限定的各種約束,最終建立了一個汽車沿x、y軸平動、繞z軸轉(zhuǎn)動的三自由度的車輛動力學(xué)模型。其示意如圖1。
圖1 車輛動力學(xué)模型Fig. 1 Vehicle dynamics model
車輛質(zhì)心在3個軸位的微分方程為:
(1)
由于式(1)中三角函數(shù)的影響,造成了模型在模擬過程中冗雜度增加。為了方便計算,筆者引入以下假設(shè):車輛前輪轉(zhuǎn)角和輪胎側(cè)偏角的關(guān)系較接近,即應(yīng)用等價關(guān)系如式(2):
(2)
由于車身坐標系與大地坐標系的設(shè)定基準不一樣,所以必須通過兩坐標系之間的紐帶進行轉(zhuǎn)換,由此可以得到相應(yīng)迭代后的式(1),使得車輛非線性動力模型如式(3),φ為車輛橫擺角:
(3)
式(3)描述的動力學(xué)模型是非線性系統(tǒng),為了簡化分析過程,對式(3)所示動力學(xué)模型進行線性化[11]。由于文中研究的路徑跟蹤問題的預(yù)期軌跡存在某些狀態(tài)信息點無法滿足的現(xiàn)象,因此特地采用狀態(tài)軌跡的方法來使車輛動力學(xué)方程線性化。該方法的特點是施加恒定不變的系統(tǒng)控制量,以此得到一條合乎預(yù)測曲線的狀態(tài)軌跡,并通過與實際偏差的對比模型預(yù)測控制算法進行協(xié)調(diào)。不需要預(yù)先可知預(yù)期軌跡上所有工作點的位置是這個方法的一個優(yōu)點,也就是說實時路徑上的點位與控制信息是可觀的。
式(3)建立的非線性車輛動力學(xué)模型可以采用修正狀態(tài)軌跡的方法處理,得到線性模型隨時間變化的方程為:
(4)
對式(4)采用一階差分的方法進行離散化處理,得到離散狀態(tài)控制表達式為:
(5)
式中:T為采樣周期;Ak,t=In+T×A(t);Bk,t=T×B(t);In為單位矩陣;Δu(k)為控制量增量。
該系統(tǒng)模型的輸出結(jié)果是一一對應(yīng)的,其表達式為:
λ(k)=Ck,t×ξ(k)
(6)
在對車輛動力學(xué)模型模糊化處理后,其可以寫成相應(yīng)的關(guān)系式為:
(7)
MPC是一種典型的過程控制策略。其具有基于模型的控制預(yù)測、滾動優(yōu)化、閉環(huán)反饋校正的基本特征,尤其適用于難以建立精確數(shù)學(xué)模型或者具有約束的控制系統(tǒng)。
典型的MPC控制流程如圖2。在每個采樣時刻,這是通過收集系統(tǒng)的瞬時狀態(tài)信息來估計的,并且該信號應(yīng)盡可能在系統(tǒng)上的狀態(tài)預(yù)測中用作初始條件。分配給受控對象的值是通過有限的預(yù)測時域中的在線開環(huán)優(yōu)化問題獲得的。目前最優(yōu)控制序列的第1個元素。在下一次采樣時,系統(tǒng)的未來初始條件將以新條件或狀態(tài)估計為特征,并且在不中斷前面步驟的情況下重復(fù)上述步驟[12]。
圖2 MPC流程Fig. 2 MPC flow chart
可以從ξ(t)中的當前狀態(tài)量和控制時域中的控制增量ΔU(t)獲得預(yù)測時域中的狀態(tài)量。但是,無法在通過傳感器或估算值控制的平臺上獲得系統(tǒng)控制增量,需要通過設(shè)置合理的優(yōu)化目標來解決。 通過計算組態(tài)的目標函數(shù),可以獲得一系列最佳控制增量。并在上一節(jié)中將序列的第1個元素添加到將來系統(tǒng)狀態(tài)的計算和輸出中。求解過程中考慮到車輛穩(wěn)定性,采用如下形式的目標函數(shù)為:
(8)
式(8)系統(tǒng)跟蹤過程的準確性是由第1項求解參考路徑與系統(tǒng)輸出之間的誤差來表達。車輛穩(wěn)定性的能力是由這個公式里的第2項在跟蹤過程中來保持的。Q和R是系統(tǒng)權(quán)重矩陣,可以專注于系統(tǒng)的準確性和穩(wěn)定性??偟膩碚f,系統(tǒng)在跟蹤控制階段在保持準確性的同時也要保持車輛行駛穩(wěn)定性。這是整個目標函數(shù)的功能和目的,也是初始系統(tǒng)的要求。
為了得到未來一段時域的控制序列,在這一節(jié)中對帶約束的目標函數(shù)進行了求解。由于系統(tǒng)是實時的,可能會出現(xiàn)有的時刻目標函數(shù)出現(xiàn)無解現(xiàn)象。為了規(guī)避這種不可控情況的發(fā)生,筆者又添加了可調(diào)整因子。這樣就可以很大程度上減免系統(tǒng)因為目標函數(shù)解不存在而導(dǎo)致崩潰或者卡死的現(xiàn)象。如式(9):
(9)
為了便于計算機語言的編寫,需要對目標函數(shù)進行再次處理,主要通過一系列矩陣的運算,轉(zhuǎn)換為目標函數(shù)二次型形式,如式(10):
J[ξ(t),u(t-1),ΔU(t)]=
[ΔU(t)T,ε]THt[ΔU(t)T,ε]+Gt[ΔU(t)T,ε]+P
(10)
式中:
P=E(t)TQE(t)。
在每個控制周期內(nèi),對式(10)進行求解。會得到一段控制增量序列為:
ΔU(t)=[Δut,Δut+1,…,Δut+Nc-1]T
(11)
將上面所得的一段序列中的第1個加入到未來輸出量的計算中去,即:
u(t)=u(t-1)+Δu(t)
(12)
該控制增量僅適用于系統(tǒng)中的當前時刻。下一刻將添加新的預(yù)測輸出。為了解決本節(jié)中描述的目標函數(shù)以獲取新的控制序列信號問題,在系統(tǒng)中應(yīng)用它,其目的是為系統(tǒng)創(chuàng)建最佳的滾動控制。
在路徑跟蹤的問題中主要的約束條件是關(guān)于對控制因數(shù)以及輸出結(jié)果的限制。另外,在路線跟蹤過程中,需要考慮或增加動態(tài)車輛約束,以提高車輛穩(wěn)定性。
首先對前輪的輪胎轉(zhuǎn)角及其輪胎轉(zhuǎn)角增量進行約束。根據(jù)車輛側(cè)向跟蹤能力試驗,汽車前輪轉(zhuǎn)角δ及其增量極限約束條件設(shè)置為:
(13)
在良好的道路附著條件下,當輪胎側(cè)偏角滿足不超過5°時,側(cè)向力會保持在線性區(qū)域內(nèi)。在道路的附著條件比較差的情況下,輪胎側(cè)偏角要限制在2°以下,才會使側(cè)向力保持在線性區(qū)域內(nèi)。為確保自動駕駛汽車在換道過程中的穩(wěn)定性,因此對輪胎側(cè)偏角做如下約束為:
-2.5°≤α≤+2.5°
(14)
當質(zhì)心側(cè)偏角在側(cè)向力線性區(qū)域以外的時候,這種情況則對車輛的穩(wěn)定性影響很大。因此為了使其保持在相對穩(wěn)定的范圍內(nèi),需要對車輛的質(zhì)心側(cè)偏角進行設(shè)定。通過考慮車道變換轉(zhuǎn)向時的行駛工況,根據(jù)相關(guān)文獻進行的車輛穩(wěn)定性研究,取其在低附著路面上的極限閾值進行約束,約束條件設(shè)置為:
-3°≤β≤+3°
(15)
通過Simulink和CarSim聯(lián)合搭建車輛控制實驗仿真平臺。其中車輛的輸入和輸出的接口設(shè)置以及動力學(xué)參數(shù)問題主要由CarSim來設(shè)定完成,也就是車輛的動力學(xué)模塊由CarSim提供。路徑跟蹤的控制器在Simulink中搭建,由系統(tǒng)函數(shù)格式編譯控制程序/代碼。在輸入以及輸出的接口處,仿真只對車輛的前轉(zhuǎn)向輪進行操作,這也表明了由控制器提供前輪轉(zhuǎn)向角度的輸出,并且控制器中的控制求解過程要求輸出端口表征汽車動力學(xué)系統(tǒng)的6個狀態(tài)量。4個輪胎的轉(zhuǎn)向角度的輸入是靠Carsim來完成的。另外,Simulink和CarSim中對角度和速度單位的定義與設(shè)定方式是不一致的,所以單位的轉(zhuǎn)換是必要的步驟。
在參考了大量研究文獻之后,將模擬仿真路面設(shè)置為車速為10 、30 m/s,路面附著系數(shù)為μ=0.8的常規(guī)路面,并獲得以下的相關(guān)分析結(jié)論與曲線示意。
1)路面附著系數(shù)為μ=0.8,車速為10 m/s時,仿真結(jié)果如圖4及圖5。
在常規(guī)路面下,從圖3和圖4可以看出,控制器具有良好的路線跟蹤效果。路面附著系數(shù)為0.8、速度為10 m/s時,該控制器可以準確地跟蹤參考路線,實際路徑曲線與參考路徑非常吻合,并且在低速情況下有非常好的魯棒性。由圖4可知,橫擺角雖然與理論有所偏差,但波動范圍在可控范圍之內(nèi)。
圖3 u=0.8, 車速為10 m/s時橫向路徑跟蹤Fig. 3 Lateral path tracking when u=0.8 and vehicle speedis 10 m/s
圖4 u=0.8,車速為10 m/s時橫擺角跟蹤Fig. 4 Yaw angle tracking when u=0.8 and vehicle speedis 10 m/s
2)路面附著系數(shù)為μ=0.8,車速為30 m/s時,仿真結(jié)果如圖5及圖6。從圖5中可以看出,控制器對路徑跟蹤在較高車速的情況下仍然可以保持良好的跟蹤效果。這說明了車速發(fā)生較大變化時此控制器也有著較優(yōu)的路徑跟蹤能力。由圖6可知,在高速情況下,在t=3.5 s附近,輸出橫擺角速度有微弱的波動,但是偏差非常小,在整個仿真時間段內(nèi),輸出橫擺角速度與參考橫擺角速度基本一致。
圖5 u=0.8, 車速為30 m/s時橫向路徑跟蹤Fig. 5 Lateral path tracking when u=0.8 and vehicle speed is30 m/s
圖6 u=0.8, 車速為30 m/s時橫擺角跟蹤Fig. 6 Yaw angle tracking when u=0.8 the vehicle speedis 30 m/s
以上分析驗證了所設(shè)計系統(tǒng)能夠在常規(guī)路面的路徑跟蹤情況,為了進一步驗證系統(tǒng)的路徑跟蹤能力,在濕滑路面對系統(tǒng)進行仿真驗證,設(shè)置路面附著系數(shù)μ=0.5,并在車速為10、30 m/s的條件下分別進行仿真分析。
3)路面附著系數(shù)為μ=0.5,車速為10 m/s時,仿真結(jié)果如圖7及圖8。
在濕滑或者雨天情況下,附著系數(shù)雖然有所下降,從圖7和圖8可以看出,在路面附著系數(shù)為0.5,速度為10 m/s時,控制器仍能夠?qū)崿F(xiàn)路徑跟蹤。在速度為10 m/s時,由圖7可知,實際路徑曲線與參考路徑橫向偏差微小,由圖8可知,相同時間點時,橫擺角偏差微小,經(jīng)計算小于0.3°。
圖7 u=0.5, 車速為10 m/s時橫向路徑跟蹤Fig. 7 Lateral path tracking when u=0.5 and vehicle speedis 10 m/s
圖8 u=0.5, 車速為10 m/s時橫擺角跟蹤Fig. 8 Yaw angle tracking when u=0.5 and vehicle speedis 10 m/s
4)路面附著系數(shù)為μ=0.5,車速為30 m/s時,仿真結(jié)果如圖9與圖10。
從圖9和圖10可以看出,在速度為30 m/s時,控制器仍能夠?qū)崿F(xiàn)路徑跟蹤。由圖9可知,實際路徑曲線與參考路徑橫向偏差微小,由圖10可知,由于路面附著系數(shù)較低,在時間為3.5 s時,橫擺角有了小幅波動,但最大波動值也僅為0.1°,仍能夠保持車輛轉(zhuǎn)向的穩(wěn)定。說明所設(shè)計系統(tǒng)在低路面附著系數(shù)高速行駛時,仍能實現(xiàn)路徑跟蹤。
圖9 u=0.5, 車速為30 m/s時橫向路徑跟蹤Fig. 9 Lateral path tracking when u=0.5 and vehicle speedis 30 m/s
圖10 u=0.5, 車速為30 m/s時橫擺角跟蹤Fig. 10 Yaw angle tracking when u=0.5 and vehicle speedis 30 m/s
綜上所述,基于模型預(yù)測控制的路徑跟蹤系統(tǒng)在不同路面附著系數(shù),可實現(xiàn)低速和高速的路徑跟蹤。
筆者研究自動駕駛汽車路徑跟蹤控制問題過程中,建立了車輛三自由度動力學(xué)模型,區(qū)別于一些文獻中提到只通過添加控制量和控制增量約束條件,這往往會使理想與實際路線的規(guī)劃控制存在較大的波動。除了考慮以上因素之外,還添加了輸出量質(zhì)心側(cè)偏角和輪胎側(cè)偏角的約束,設(shè)計了一種基于動力學(xué)約束模型預(yù)測控制的路徑跟蹤控制器,以此確保車輛在路徑跟蹤過程中的可控性和穩(wěn)定性。進行了CarSim和Simulink聯(lián)合仿真,結(jié)果表明:筆者所設(shè)計的MPC路徑跟蹤控制器,道路附著系數(shù)無論在0.8還是0.5的情況下,車速為10 m/s和30 m/s均有較強的跟蹤能力,有著具有較好的魯棒性。使得汽車有適度的不足轉(zhuǎn)向,從而提高操縱穩(wěn)定性。下一步的工作將對車輛動力學(xué)的多方面因素進行綜合考慮,對模型目標函數(shù)的選用或者權(quán)重因子進行優(yōu)化設(shè)置,達到路徑跟蹤控制過程中車輛的穩(wěn)定性與信號的響應(yīng)程度更進一步接近理想效果。