張麗霞, 葛吳浥, 潘福全, 李寶剛, 趙坤
(青島理工大學(xué)機械與汽車工程學(xué)院, 青島 266071)
車輛智能駕駛是當(dāng)下的研究熱點,也是汽車產(chǎn)業(yè)的發(fā)展趨勢。其關(guān)鍵技術(shù)主要包括環(huán)境感知、路徑規(guī)劃、智能決策以及車輛運動控制[1]。其中,車輛軌跡跟蹤技術(shù)決定了車輛在具體避障環(huán)境下的安全性和穩(wěn)定性。因此,對于智能車輛控制系統(tǒng)的研究具有重要意義。
在軌跡跟蹤研究中,模型預(yù)測控制(model predictive control, MPC)考慮了軌跡跟蹤時的車輛約束,適用于解決多約束優(yōu)化問題,具有較好的準(zhǔn)確性和魯棒性,因此適用于多輸入、多輸出的車輛軌跡跟蹤控制系統(tǒng)。而根據(jù)控制目標(biāo)的不同,車輛軌跡跟蹤控制又可分為橫向控制、縱向控制及橫縱向集成控制[2]。橫向控制主要控制車輛轉(zhuǎn)向系統(tǒng),通過控制前輪轉(zhuǎn)角從而控制車輛跟隨參考軌跡[3-7],縱向控制主要控制車輛制動系統(tǒng)以及驅(qū)動力,通過調(diào)節(jié)車速來控制車輛與參考點的期望距離[8-9]。在當(dāng)前自動駕駛汽車運動控制研究方案中,主要為橫向控制與縱向控制協(xié)同控制整車運動。例如,史鴻楓等[11]將橫向模型預(yù)測控制與縱向滑??刂葡嘟Y(jié)合,考慮縱向車速對于橫向偏移量的影響,將車速作為橫向模型預(yù)測控制的狀態(tài)量,實現(xiàn)橫縱分層協(xié)同控制。吳昊等[12-13]采用分層式模型預(yù)測控制器,由道路信息及橫向誤差,通過模糊規(guī)則計算得期望速度,在跟蹤控制層分別采用橫縱獨立的模型預(yù)測控制器進行跟蹤控制。鄒旭東等[14]在模型預(yù)測控制的基礎(chǔ)上,提出轉(zhuǎn)向與制動聯(lián)合控制,計算最優(yōu)前輪轉(zhuǎn)角與橫擺力偶矩,并通過單輪制動邏輯實現(xiàn)車輛橫縱向的聯(lián)合控制。此類分層控制框架可以針對橫縱向控制選取不同的控制方法,達到快速控制的目的。然而,分層控制需考慮車輛運動學(xué)橫縱向耦合特性[10],在車輛高速行駛過程中,橫向運動與縱向運動相互耦合相互關(guān)聯(lián),若簡單劃分為橫向控制與縱向控制,則各控制器的輸入變量在整車模型中,將無法達到最優(yōu)控制效果。而車輛動力學(xué)模型作為非線性控制模型相對復(fù)雜,在建模過程中難以對其解耦成橫縱相互獨立的動力學(xué)模型。因此,針對存在耦合特性的控制模型,將橫縱向控制集成于一體,通過目標(biāo)函數(shù)綜合計算橫、縱控制量的最優(yōu)解,相比與分層控制將更有優(yōu)勢。
在考慮耦合特性的集成控制研究中,Chebly等[15]將車輛視作多關(guān)節(jié)系統(tǒng),為考慮力的耦合效應(yīng)引用虛擬體關(guān)節(jié),通過分析各關(guān)節(jié)自由度,以矩陣計算形式導(dǎo)出動態(tài)模型,在此基礎(chǔ)上通過控制前輪轉(zhuǎn)角和車輪驅(qū)動/制動扭矩從而實現(xiàn)耦合控制,但其動力學(xué)模型較為復(fù)雜,求解實時性相對較差。許芳等[16]基于非線性模型預(yù)測控制算法,通過跟蹤橫縱向期望速度,以前輪轉(zhuǎn)角與前后輪驅(qū)動力作為控制量,以單控制器形式實現(xiàn)橫縱耦合控制,但該控制器僅適用于巡航工況,不適用于縱向速度變化幅度較大的工況。
由此可見,目前車輛軌跡跟蹤控制的研究存在以下問題[17-19]:①控制方案以橫縱分層協(xié)同控制策略為主,協(xié)同控制并未考慮動力學(xué)模型耦合特性,分層控制所計算得橫縱最優(yōu)控制變量在整車運動模型中并非最優(yōu)控制解;②目前有少數(shù)考慮耦合特性的集成性控制方案,但此類方案的普適性與實時性仍存在缺陷。
針對以上問題,現(xiàn)基于模型預(yù)測控制算法設(shè)計了車輛軌跡跟蹤橫縱向耦合控制器?;谌杂啥溶囕v動力學(xué)模型,將前輪轉(zhuǎn)角以及車輪驅(qū)動力作為控制變量,通過目標(biāo)函數(shù)計算整車模型中的最優(yōu)橫縱控制變量,實現(xiàn)橫縱綜合控制并應(yīng)用于變速軌跡跟蹤。此外,在控制器目標(biāo)函數(shù)中設(shè)計縱向可變權(quán)重系數(shù),縮短速度跟蹤時間。為驗證控制器的變速軌跡跟蹤性能,基于五次多項式理論,設(shè)計變速雙移線軌跡。最后通過聯(lián)合仿真,驗證該方案整體的有效性和實時性。
在保證控制效果實現(xiàn)的情況下對車輛動力學(xué)模型進行簡化,以減少整個控制算法的計算量。在該模型中假定懸架與車輛為剛性系統(tǒng),忽略垂向俯仰和側(cè)傾運動,忽略空氣阻力及載荷轉(zhuǎn)移。只考慮車輛的橫向、縱向和橫擺運動,如圖1建立三自由度車輛動力學(xué)模型,其動力學(xué)方程為
φ為車輛橫擺角;vx、vy分別為縱向速度與橫向速度;V為車輛合速度;β為車輛質(zhì)心側(cè)偏角圖1 車輛動力學(xué)模型Fig.1 Vehicle dynamic model
(1)
輪胎受力通過魔術(shù)公式進行計算,對其泰勒展開,本文假設(shè)在側(cè)偏角相對較小情況下,選取線性部分,即
(2)
式(2)中:cf、cr分別為前、后輪側(cè)偏剛度;αf、αr分別為前、后輪側(cè)偏角。
(3)
為描述車輛的運動軌跡,車輛坐標(biāo)系與大地坐標(biāo)系之間進行轉(zhuǎn)換,車輛在大地坐標(biāo)系下的位置為
(4)
(5)
本文控制框架如圖2所示,主要包含3個方面:期望軌跡模塊、MPC耦合控制器控制量計算模塊與數(shù)據(jù)轉(zhuǎn)換模塊。期望軌跡包含所有狀態(tài)量與控制量的目標(biāo)值,傳遞給MPC耦合控制器進行數(shù)值計算,控制器將實時狀態(tài)量輸入目標(biāo)函數(shù),通過二次規(guī)劃輸出最優(yōu)橫縱向控制結(jié)果。輸出值前輪轉(zhuǎn)角可直接作用于Carsim車輛模型,但驅(qū)動力無法直接作用于車輛模型,需結(jié)合輪胎半徑轉(zhuǎn)換為驅(qū)動力矩,同時正驅(qū)動力矩可傳遞給車輛模型,負驅(qū)動力矩需轉(zhuǎn)換為制動壓力后傳遞給車輛模型。最終車輛模型將實時車輛狀態(tài)結(jié)合期望軌跡信息反饋給控制器。
圖2 控制流程圖Fig.2 Control-flow diagram
結(jié)合上文,車輛動力學(xué)模型可改寫為
(6)
由于智能車輛的運動控制器實時性要求較高。因此采用線性時變模型預(yù)測控制算法,首先需要對非線性模型進行線性化和離散化處理。
基于車輛動力學(xué)模型,預(yù)測模型可表示為如下狀態(tài)空間形式,即
(7)
式(7)可由參考路徑上任一點(ξr(k),ur(k))泰勒展開取一階項線性化為
(8)
運用前向Euler法對式(8)進行離散化,得到離散線性化狀態(tài)空間方程為
(9)
式(9)中:Ak,t=[I+TcA(t)];Bk,t=TcB(t);I為單位矩陣;Tc為跟蹤控制層采樣時間;k=t,t+1,…,t+Np-1,其中t為系統(tǒng)預(yù)測時間,Np為系統(tǒng)預(yù)測時域。
(10)
結(jié)合以上狀態(tài)空間方程,可得系統(tǒng)在預(yù)測時域與控制時域內(nèi)總的輸出矩陣為
Y(k)=Ψkχ(k)+ΘkΔU(k)
(11)
式(11)中:Y(k)為系統(tǒng)在預(yù)測時域內(nèi)每一時刻總的輸出量;ΔU(k)為系統(tǒng)控制時域內(nèi)每一時刻的控制增量;Ψk、Θk為系數(shù)矩陣。
(12)
(13)
為獲得跟蹤過程中的最優(yōu)控制量,構(gòu)建如下目標(biāo)函數(shù),即
(14)
由于本文的控制量為車輪驅(qū)動力以及前輪轉(zhuǎn)角,考慮到驅(qū)動力影響輪胎滑移率從而導(dǎo)致控制效果下降問題,本文主要控制量極限約束,以及控制增量約束,即
(15)
根據(jù)目標(biāo)函數(shù)與約束條件,可將軌跡跟蹤問題轉(zhuǎn)化為如下帶約束的二次規(guī)劃問題,即
(16)
式(16)中:
(17)
式(17)中:H、G為系數(shù)矩陣;Qe、Re為系數(shù)矩陣;E(k)為預(yù)測時域內(nèi)輸出量偏差矩陣;Yref(k)為期望軌跡參考點信息。
針對每個系統(tǒng)周期,計算得一系列控制增量,選取序列中第一個作為輸入增量作用于系統(tǒng)。
vxref是基于五次多項式設(shè)定的連續(xù)參考速度。在軌跡跟蹤初始段,需盡快使車輛速度跟蹤上期望速度。本文結(jié)合動態(tài)方差的方法,針對式(14)目標(biāo)函數(shù)中的速度權(quán)重系數(shù)Qv進行改進,在預(yù)測時域內(nèi)計算實際速度與期望速度方差,使其自適應(yīng)調(diào)整權(quán)重系數(shù)。其具體方差為
(18)
當(dāng)車輛起步或加速/減速階段時,速度偏差相對較大,下一預(yù)測時域內(nèi)兩者方差同樣增大,此時權(quán)重系數(shù)增大,即
(19)
當(dāng)出現(xiàn)方差為零的情況時,為避免縱向控制權(quán)重系數(shù)較小,此時保留同橫向控制相同權(quán)重系數(shù)。
傳統(tǒng)控制器控制效果驗證往往通過雙移線路徑跟蹤實現(xiàn),雙移線路徑可以有效驗證控制器針對車輛橫向運動的控制效果,但是缺乏縱向速度信息。許多研究基于路徑曲率與橫向跟蹤誤差提出獨立的縱向速度規(guī)劃[20-21],該類縱向速度規(guī)劃主要通過分段線性化設(shè)計期望速度曲線。此類方法考驗縱向控制器對于速度超調(diào)量的收斂性,忽略了車速變化的連續(xù)性與速度規(guī)劃針對運動狀態(tài)的合理性。因此,本文研究基于五次多項式理論,提出一種速度連續(xù)變化的復(fù)合函數(shù)變速雙移線軌跡。
傳統(tǒng)雙移線公式參照文獻[22]。
(20)
以上路徑信息均與時間t無關(guān),為了在路徑中結(jié)合速度信息,本文研究將Xr設(shè)定為關(guān)于時間t的函數(shù),使得Yr(X)整體是關(guān)于時間t的復(fù)合函數(shù)。五次多項式方法能夠確保車輛運動過程中位置,速度及加速度的連續(xù)性,因此基于五次多項式理論設(shè)計Xr,即
Xr=a1+a2t+a3t2+a4t3+a5t4+a6t5
(21)
式(21)中:a1~a6為系數(shù),根據(jù)設(shè)定軌跡起點與終點的車輛位置坐標(biāo)、車速、加速度信息共計6個公式計算得出。
分別對Xr、Yr求一階導(dǎo)數(shù),可得期望軌跡速度、橫擺角等信息,求二階導(dǎo)數(shù)可得期望加速度、路徑曲率等信息(二階導(dǎo)數(shù)公式過于冗雜,本文在此不再贅述),即
(22)
通過以上轉(zhuǎn)化可將固定雙移線路徑轉(zhuǎn)化為與時間相關(guān)軌跡,并且根據(jù)實際需要調(diào)整五次多項式參數(shù),得出符合實際需求的期望速度曲線。
基于MATLAB/Simulink和Carsim平臺進行聯(lián)合仿真。仿真工況主要設(shè)定為兩種:低速工況與高速工況。工況1:低速仿真工況設(shè)定為車輛初速度為45 km/h,軌跡初速度為15 m/s即54 km/h,仿真之初車輛與期望軌跡即產(chǎn)生9 km/h速度誤差,用以驗證變化權(quán)重系數(shù)針對速度誤差的收斂速度。工況2:高速仿真工況設(shè)定為車輛初速度為60 km/h,軌跡初速度為20 m/s即72 km/h,仿真之初車輛與期望軌跡即產(chǎn)生12 km/h速度誤差。路面條件選擇Carsim自帶雙移線高附著路面,路面附著系數(shù)為0.85。本文研究中設(shè)置分層控制器作為耦合控制器的參照對象。分層控制器一:采用橫向MPC跟蹤、縱向位置速度雙PID跟蹤控制;分層控制器二:采用橫向LQR跟蹤,縱向MPC跟蹤控制。耦合控制器具體參數(shù)如表1和表2所示。
表1 車輛(4WD)主要參數(shù)Table 1 Main parameters of the vehicle(4WD)
表2 控制器主要參數(shù)Table 2 Main parameters of the controller
低速工況的整體軌跡跟蹤結(jié)果如圖3所示。由圖3(a)跟蹤結(jié)果可以看出,耦合控制器與分層控制器整體跟蹤結(jié)果良好,車輛實際行駛路徑與參考路徑幾乎重合。由圖3(b)橫向跟蹤誤差可以明顯看出耦合控制器的橫向跟蹤精度更高。結(jié)合圖3(c)前輪轉(zhuǎn)角曲線,耦合控制器在轉(zhuǎn)向控制層面更加精準(zhǔn),且轉(zhuǎn)角處于合理范圍之內(nèi)。由圖3(d)和圖3(e)縱向跟蹤結(jié)果可以得出,在存在較大縱向速度誤差的前提下,耦合控制器結(jié)合縱向可變權(quán)重系數(shù)可以迅速收斂誤差,跟蹤上期望車速,并且保持縱向誤差最小。圖3(f)為耦合控制器驅(qū)動力矩與制動系統(tǒng)壓力集成圖。整體系統(tǒng)運行狀態(tài)處于合理范圍內(nèi),制動壓力轉(zhuǎn)換參考文獻[23]中的制動壓力標(biāo)定表。
圖3 初速度45 km/h軌跡跟蹤結(jié)果Fig.3 Tracking results at an initial speed of 45 km/h
高速工況的整體軌跡跟蹤結(jié)果如圖4所示。由圖4(a)得三種控制器均可穩(wěn)定有效跟蹤期望軌跡。由圖4(b)和圖4(c)得,耦合控制器仍能保持最小橫向誤差,并且相比與低速工況下,耦合控制器對比其他兩種分層控制器的誤差優(yōu)化效果更明顯。由圖4(d)和圖4(e)可以看出,耦合控制器速度收斂始終保持三者最快,誤差最小。圖4(f)的驅(qū)動制動曲線表明系統(tǒng)運行狀態(tài)仍處于穩(wěn)定范圍內(nèi)。
圖4 初速度60 km/h軌跡跟蹤結(jié)果Fig.4 Tracking results at an initial speed of 60 km/h
控制器求解時間如圖5所示。在驗證控制器求解時間的實驗中,軟件采用MATLAB2018a以及CarSim2019.1,硬件采用Intel(R) Core(TM) i7-7700HQ CPU @ 2.80 GHz處理器,計算時間通過MATLAB指令獲取。由圖5可以看出所設(shè)計的控制器單次求解時間整體可控制在0.005 s以內(nèi),最高峰值低于0.01 s,對比文獻[24]中優(yōu)化求解計算速率中的0.004 5單次計算時間,表明本文所設(shè)計的路徑跟蹤控制器具有良好的實時性。
圖5 耦合控制器求解時間Fig.5 Coupling controller solving time
基于MPC控制算法設(shè)計了軌跡跟蹤橫縱耦合控制器,在考慮耦合特性的前提下將橫向控制與縱向控制集成在一個控制器中綜合控制,通過目標(biāo)函數(shù)計算出整車模型中的最優(yōu)控制量。并設(shè)計可變權(quán)重系數(shù),進一步提升控制速度與控制精度。同時,設(shè)計了變速雙移線軌跡以驗證控制器的橫縱向綜合控制能力。實驗結(jié)果表明,該耦合控制器橫向跟蹤誤差小、精度高,縱向速度跟蹤快、超調(diào)小,整體計算時間短、實時性強。下一步研究可主要根據(jù)行駛路況,設(shè)計動態(tài)軌跡??筛鶕?jù)期望速度,實時調(diào)整控制器中預(yù)測時域與控制時域參數(shù),進一步提升縱向控制精度。