盧曉暉, 張智超, 李 哲
(1.長春工業大學 汽車工程研究院, 吉林 長春 130012;2.長春工業大學 機電工程學院, 吉林 長春 130012)
傳統自動控制系統開發過程中,需要不斷反復測試和修改軟件代碼,往往系統硬件完成后才暴露出問題,硬件架構要有所優化調整,隨之依托于硬件的軟件編碼也要改善。在控制系統越來越復雜化的今天,這樣使得研發周期無限期延長、研發費超支,控制系統的魯棒性得不到保障,甚至具有良好潛在價值的優秀項目都有可能付之東流。為了避免這樣的損失發生,融入新型“V”開發模式的快速控制原型技術(Rapid Control Prototype, RCP)和硬件在回路仿真(Hardware in Loop, HIL),主要是通過在虛擬環境中對產品進行設計,以此達到降低產品的設計周期以及所花費的成本[1-3]。
dSPACE實時仿真系統是一個基于半實物仿真及MATLAB/Simulink控制系統的軟硬件工作平臺,dSPACE系統具有實時性強、可靠性強、擴充性好等優點,而且系統中的處理器具有很強的計算性能,可以根據自己的需要進行組合[4-6],很好地實現代碼的自動生成、下載、調試等功能。dSPACE系統具有高度的模塊性和集成性,允許用戶無論是在軟件還是硬件可以根據需要來創建自己的系統,對被控制的對象進行研究,驗證所建方案的正確性,提高了開發的效率。
文中基于dSPACE軟硬件搭建了汽車自動變速器換擋規律優化方案的硬件在回路仿真平臺,并針對運行用動態規劃理論制定出的換擋規律進行了快速控制原型仿真實驗。
整車仿真模型作為換擋決策優化設計過程中的重要部分,其精度的優劣決定了仿真實驗結果的準確性與合理性[7]。為了高精度描述整車系統,文中采用商業仿真軟件AMESim和Matlab/Simulink作為平臺搭建了五擋AMT乘用車仿真模型。
在AMEsim軟件中搭建整車模型,包括駕駛員、發動機、整車、變速器、行駛工況模塊五大模塊。在Simulink中運用stateflow搭建了換擋邏輯控制模塊。兩者共同組成離線聯合仿真實驗平臺。
汽車整車模型如圖1所示。

圖1 汽車整車模型
選取三個循環工況對汽車的行駛狀況進行模擬,分別是時間為1 180 s的NEDC、1 370 s的UDDS和660 s的1015工況。NEDC、UDDS和1015循環工況下車速與時間的關系如圖2所示。

(a) NEDC工況

(b) UDDS工況

(c) 1015工況
在MATLAB/Simulink中進行換擋邏輯控制模塊的搭建,分別在AMESim和Simulink中添加interface接口和s-function函數進行信息的交互傳遞,利用Stateflow建立了換擋邏輯控制器,實現各擋位之間的相互轉換,Stateflow換擋原理部分如圖3所示。
圖3中,共有6個擋位狀態,其中gear_e=0表示為空擋。每兩個相鄰的擋位之間分別通過“up”和“down”這兩個狀態遷移事件來實現擋位之間的遷移。行駛過程中,擋位的變換過程見圖3下框,實時車速v與換擋規律中的升擋點的值Vup滿足表達式「v>up_th1」,則up事件被激活,進行升擋操作,即擋位從初始穩定狀態“steady-state”遷移至升擋狀態“upshifting”,同時擋位狀態gear也被更新并記憶保存。擋位就沿著升擋事件up的箭頭升向高一級的擋位。同理,當車速v與降擋點值Vdown滿足表達式「v>down_th1」,則down事件被激活,進行降擋操作,即擋位從初始穩定狀態“steady-state”遷移至降擋狀態“downshifting”,同時擋位狀態gear也被更新并記憶保存。擋位就沿著降擋事件down的箭頭降到低一級的擋位,完成降擋過程。
AMESim模塊:此模塊負責與整車模型實現實時通訊,將得到的實時仿真數據反饋到Simulink工具箱中搭建的換擋邏輯控制器模塊中進行運算,并且能在各模塊中提取相應仿真工況下數據參數,供分析使用,如發動機轉速、轉矩、油門開度等。
Simulink中的換擋邏輯控制模塊:汽車實時狀態與已經儲存制定好的換擋規律不停地進行比較,當車輛的狀態數據滿足換擋規律中的換擋要求時,車輛的換擋規律控制器就被激活,根據換擋規律做出升擋或者降擋的決策。若未達到換擋規律的換擋條件,則維持當前擋位。

圖3 控制邏輯Stateflow
汽車實際狀態的參數與制定好的換擋規律參數進行不斷的對比,如果車輛的實際狀態達到換擋要求,則汽車執行換擋,如果實際數據沒有達到換擋要求條件,則汽車保持當前擋位不變。
動態規劃既是一種數學優化方法,也是一種計算機編程方法。在這兩種情況下,是以遞歸的方式將復雜的問題分解成更簡單的子問題來簡化。雖然某些決策問題不能以這種方式分解,但跨越幾個時間點的決策往往會遞歸地分解,貝爾曼將此稱為最優性原則[8-9]。同樣,在計算機科學中,通過將問題分解成子問題,然后遞歸地找到子問題的最優解,就可以得到最優的子結構。如果子問題可以遞歸地嵌套在整體的大問題中,從而使動態規劃方法適用,那么大問題的解與子問題的解之間就有關系了。在相關優化算法文獻中,這種關系被描繪為貝爾曼方程。
動態規劃有如下特點[10]:
1)從終點開始整體決策最優路線,先通過遞推法比較各段性能指標,然后正向計算完成整體決策,將一個多階段決策問題轉化為多個單段決策問題來處理。
2)動態規劃的理論基礎是最優性原理,而最優性原理能將一個N段最優決策問題轉化為N個一段最優決策問題,與窮舉法相比,可大大減小計算量。
在對AMT汽車傳動系工作過程進行分析之后,確定將擋位ng(k)作為狀態變量,換擋命令ug(k)作為控制變量。
狀態變量轉移方程為:
ng(k+1)=f(ng(k)+ug(k))
(1)
其中,f為動力學系統函數,對離散的換擋指令ug(k)施加一個約束會影響到換擋的動力性,并且也會影響到優化后的結果。對于5速AMT,ug(k)本應屬于集合{-5,…,-1,0,1…,5}。但考慮到汽車駕駛性能的問題,選擇ug(k)={-1,0,1}作為換擋指令,以避免在某一時刻的換擋過程中發動機轉速發生巨大變化。鑒于AMT的平均換擋時間少于1 s,在1 s的時間步長內只降或者升一個擋位是合理的。其中,“-1”代表降一個擋位;“0”代表維持當前擋位;“1”代表升一個擋位。
由于實驗對象為5擋AMT,齒輪的速比是離散間斷的,無法對速比進行關于時間的求導運算。因此,需要對AMT汽車傳動系模型進行離散化處理,離散后結果如下:
(2)

(3)
優化目標函數:
(4)
式中:Q----燃油消耗量,g;
b(k)----燃油消耗率,g/(kW·h);

動態規劃理論是解決多階段決策優化問題的最佳方法。動態規劃多階段決策過程如圖4所示。

圖4 動態規劃多階段決策過程
圖4為一個多階段決策過程,在循環工況k時刻,狀態變量為擋位ng(k),控制變量為換擋指令ug(k),優化目標為燃油消耗量Q(k)。
在優化過程中,有必要考慮由物理限制引起的約束,以確保發動機的安全和平穩運行。一般來說,這些約束可用數學形式表達:
ωmin≤ω(k)≤ωmax
0≤Te(k)≤Te,max
(5)
式中:ωmin----發動機最小轉速;
ωmax----發動機最大轉速;
ω(k)----k時刻發動機轉速;
Te,max----發動機最大轉矩;
Te(k)----k時刻發動機扭矩。
變速器中的約束變量為:
(6)

(7)
在緊急加速和制動的工況下,由于相對于油門和制動突然變化,車速的變化會滯后一些。這樣很容易會使AMT汽車產生循環換擋現象。而這些循環換擋是沒有必要的,不僅加快了變速器和離合器部件的摩擦損耗,還會減少變速器體內嚙合齒輪的使用壽命,降低乘車舒適性,增加油耗[11]。因此,需要設置換擋頻繁懲罰函數來抑制循環換擋現象的發生,其函數為:
nk=λ|ng(k+1)-ng(k)|
(8)
式中:λ----限制換擋次數的權重因子。
因此,目標函數的最終表達式為:

(9)
動態規劃是解決非線性、非凸優化問題強有力的方法。在混合多種約束的情況下,能獲得一個具有全局優化性、時變和狀態反饋的解決方案。通過上述對動態規劃過程的分析,其遞歸方程如下:
第N步:
(10)
第k步,k∈[0,1,…,N-1]:
(11)
從循環工況第N階段開始至第1階段結束,遞推計算根據狀態轉移方程得到各時刻所有狀態變量ng(k)值上的最優控制解。遞推計算完成后進行遞歸計算,獲得各時刻相應狀態取值點的最優控制解,遞歸計算完成后,全部動態規劃計算過程結束,便得出整體循環工況下全局最優控制解。
五擋AMT汽車分別在這三個循環工況下的優化計算結果如圖5所示。

(a) NEDC工況

(b) UDDS工況

(c) 1015工況
這三張圖分別是運用動態規劃算法計算出在NEDC、UDDS和1015工況下,燃油消耗最小的擋位序列最優解。也就是說,按照圖中換擋時刻和擋位在對應工況下進行換擋操作,整個工況下來,油耗量是最少的。
以NEDC工況為例,把仿真模型行駛工況設為NEDC,將運用動態規劃算法在NEDC循環工況下得出的擋位最優控制序列解制成表格,作為整車仿真模型中變速器模塊端口1的輸入。
將仿真時間設置為1 180 s,運行整車模型。在仿真結束之后,分別提取發動機模塊中的油門開度、駕駛員模塊中的車速和變速器模塊中的擋位數據。然后,分別對1015和UDDS設置660 s和1 370 s的仿真時間,提出對應的油門開度、車速以及擋位數據。
分別將這三個工況下所提取的信號數據共同畫到一張圖上,如圖6所示。

圖6 NEDC、UDDS和1015三種循環工況下變速器擋位工作點分布
不同顏色和形狀的點代表五個擋位的工作點部分情況。由圖中可以看出,變速器1擋工作點主要分布在0~5 m/s的車速范圍內;變速器2擋工作點主要分布在4~10 m/s的車速范圍內;變速器3擋工作點主要分布在8~15 m/s的車速范圍內;變速器4擋工作點主要分布在10~15 m/s車速范圍內;變速器5擋工作點主要分布在13 m/s以上的車速范圍內。其中,1擋和2擋的工作點重合區域大致在2~6 m/s的車速之間;2擋和3擋的工作點重合區域大致在4~14 m/s的車速之間;3擋和4擋的工作點重合區域大致在6~18 m/s的車速之間;4擋和5擋的工作點重合區域大致在9~28 m/s的車速之間。
在相鄰擋位重合區域部分作出的換擋曲線就是同時滿足多個循環工況經濟性要求的基于動態規劃的換擋規律map。在相鄰擋位工作點重合區域部分初步制定出換擋規律的升擋線。文中采用以車速v和油門開度d作為換擋控制參數,為了避免換擋循環和頻繁換擋現象的發生,用等延遲法制定出與換擋規律升擋線相應的降擋線[12]。制定出的基于動態規劃理論的換擋規律map圖如圖7所示。

圖7 基于動態規劃理論制定的換擋規律map圖
為驗證換擋邏輯控制器的實時性能及基于動態規劃的換擋規律有效性,制定實時實驗方案,如圖8所示。

圖8 實時實驗設計方案
在AMEsim中搭建的整車模型通過s-function與Matlab/Simulink搭建的換擋控制器聯合,利用MATLB的RTW模塊生成實時代碼。然后,通過dSPACE上位機專用通信板卡下載至dSPACE主機中,這樣可以很好地模擬虛擬仿真控制對象。
實驗時,首先要把在電腦機上完成的整車搭建模型和控制器轉換為可執行的程序代碼寫入到dSPACE主機中,然后通過主機對可識別代碼的運行來實現對控制有效性的驗證工作。在此過程中,如何將控制方案用代碼的方式得以實現是一個重要的環節。在模型搭建方面,文中用到了AMEsim和Matlab/Simulink兩個軟件,所以在實驗前要在這兩個軟件中進行環境設置工作。
實時實驗實物圖如圖9所示。

圖9 實時實驗實物圖
實驗設備dSPACE應用A/D,D/A模塊接口,并配備了DS1006處理器以及DS2211 I/O 板卡,運行仿真步長設為1 ms,仿真時間為1 180 s。分別提取了NEDC工況下的發動機轉速、轉矩擋位、油門開度和油耗情況,如圖10所示。
從圖10可以看出,發動機轉速大致分布在1 000~3 500 r/min之間,最高轉速為3 483 r/min,多為發動機高效區工作;發動機扭矩輸出正常,最大扭矩為134 N·m;換擋過程中沒有循環換擋和頻繁換擋的現象發生;油門開度均在0.8以下,沒有急加速情況,都在合理范圍內。這說明實時實驗過程中車速跟隨性較好,動力性良好。最終油耗為634.8 g,相比基于動力性換擋規律的油耗減少了5%。綜合以上結果,實時實驗表明了這個控制方案具有很好的實時效果。基于dSPAEC系統的實時仿真實驗結果與AMEsim和MATLAB/Simulink聯合離線仿真實驗結果基本一致。這驗證了換擋規律控制方案的有效性,為以后的控制器硬件實現和實車實驗驗證打下了良好的基礎。

(a) 發動機轉速變化曲線

(b) 發動機轉矩變化曲線

(d) 油門開度變化曲線
根據換擋過程的特性提出運用動態規劃理論制定換擋規律的方法,優化出在保證動力性的前提下,具有良好經濟性的換擋規律map;在AMEsim和Matlab/Simulink中搭建離線聯合實驗仿真平臺;為了加快軟件開發進程,將整個控制方案下載到dSPACE主機中,做了基于dSPACE的快速控制原型硬件實驗。實驗結果與離線仿真一致,說明該方案具有良好的實時性和有效性。