彭邦煌, 劉梓曼, 劉倡廉
(比亞迪汽車工程研究院, 廣東 深圳 518118)
坡度值可由車載產品以CAN報文的形式發出, 對于一些未帶該配置的車型, 坡度值就需要根據其它信號進行計算, 但計算的坡度值在平路轉彎、 換擋等工況時, 會出現大范圍跳變現象。
坡度值的跳變會使其它需要用到坡度信號的產品策略失效, 導致非預期的結果。 例如遙控駕駛判斷策略, 若在平路上使用遙控駕駛功能, 而由于坡度的跳變導致該功能未能成功判斷處于平地, 從而進入不了遙控駕駛功能, 對用戶的體驗帶來很大影響, 同時坡度值的顯示跳變也會給駕駛員或乘客帶來不佳的體驗。
目前對于坡度值的計算方法主要有兩種: 基于動力學模型的方法和基于運動學模型的方法。 文獻[1]給出了一種基于動力學模型的坡度估算方法, 此種方法的坡度估計精度依賴于車輛模型, 而車輛模型中的各參數受高頻噪聲影響大。 文獻[3]則基于運動學模型的方法, 通過利用加速度傳感器進行坡度值的計算, 但文中只考慮了直線行駛工況下對坡度值的估算, 并未對轉向、 換擋工況下坡度值計算進行研究。
為了解決車輛坡度在特定工況下跳變不準的問題, 本文擬提出一種優化后的坡度計算算法。 此算法基于運動學模型, 只需陀螺儀和車速信號, 通過引入橫向、 縱向加速度以及擋位影響因素, 提升算法的準確性和穩定性, 從而提高坡度計算值的準確度和合理性。
基于運動學模型的坡度值算法是一種典型坡度算法模型, 其原理見圖1。 該算法通過加速度傳感器采集車輛運動過程中x方向 (汽車行駛方向) 的加速度, 結合整車車速信號, 利用運動學模型公式, 計算出對應坡度值。

圖1 算法原理圖

式中: θ——斜坡角度; A——傳感器x軸 (車輛運動方向) 橫向加速度; v——車速; dv/dt——車輛加速度;po——坡度。
基于動力學行駛方程的坡度算法是將整車視作為一個剛體, 利用牛頓第二定律構建整車的動力學模型, 則汽車動力學方程為:

式中: F——汽車驅動力; F——滾動阻力; F——空氣阻力; F——坡度阻力; F——加速阻力。
基于動力學行駛方程的坡度算法在實際應用中, 多采用帶遺忘因子的遞歸最小二乘法 (RLS) 來對坡度值進行估算, 如文獻[4]。 此種方法需要對整車質量和坡度進行解耦, 運算量較大且不適用。
而基于運動學模型的坡度算法需要利用傳感器加速度信息和整車CAN信號來進行坡度值計算。 在實際應用場景下, 外部操作導致整車CAN信號數值的跳變以及轉彎工況下離心力導致傳感器x, y方向加速度數據的偏差, 會導致坡度值異常跳變與數值不準。
針對上述問題, 本文在原有運動學模型算法的基礎上,提出一種基于雙軸加速度的坡度優化算法, 下文將詳細闡述此算法的具體實現。
本文涉及坡度計算的參數均由整車通過CAN信號給出,具體參數如表1所示。

表1 整車CAN信號參數表
坡度算法需要對數據進行濾波, 在本文算法設計中,選取500ms進行濾波處理。 結合上述參數CAN報文周期, 本文算法每25個信號進行一次濾波。
在本文算法實現中, 需要對傳感器實際加速度和車輛加速度進行處理。
2.1.1 車輛加速度數據處理
由整車CAN報文獲得的車速單位為km/h, 需要對車速量綱進行轉化, 將第i個車速V(km/h) 轉換成車速v(m/s),則有:

由于外界噪聲的影響, 式 (4) 處理的整車車速v數值會有振蕩 (見圖2的車速濾波處理), 數據需要進行濾波處理, 本文采用500ms均值濾波, 則濾波后的平均車速v為:


圖2 車速濾波處理
針對式 (5) 處理后的車速, 采用車速微商轉差商處理方法來獲得車輛加速度, 令a=dv/dt, 則車輛加速度a為:

2.1.2 傳感器實際加速度數據處理
考慮轉向工況下對慣量傳感器x軸與y軸方向加速度值的影響, 則實際加速度A、 A為:


圖3 Ax濾波
由于車輛轉向工況 (圖4), 對車輛y向產生離心力作用。 式 (7) 為車輛相對x向數值, 而車輛在運動過程中有平動、 轉動疊加效果, 所以需要綜合考慮, 見圖5。需要說明的是慣性傳感器橫向加速度A方向與車輛y 向為同一方向 (圖4)。

圖4 轉向工況物理圖

圖5 轉向工況濾波
慣量傳感器物理模型見圖6, 慣量傳感器為二階振蕩模型, 如式 (11)。 由于車輛輸入為低頻周期力,慣量傳感器振蕩為高頻周期, 滿足指數衰減, 不對車輛低頻周期力產生影響,故本文中不考慮系統固有振蕩頻率的影響。


圖6 慣量傳感器物理模型
式 (15) 和式 (16) 為傳感器x、y向位移與測量的加速度量值關系。
為計算方便, 本文認為k=k。 聯立式(13)~式(16), 則有:


圖7 慣量傳感器微觀分析

圖8 Ax、 Ay濾波

將由式 (24) 計算得到的θ帶入式 (2) 中計算即可得到坡度值, 由于坡度為穩態量, 需要進行濾波處理。 本文采用3s均值濾波, 在對濾波后的數值進行取整, 由公式(25) 和 (26) 即得到軟件處理后最終坡度值。

在具體實施中, 本文選取某混動車型A和某燃油車型B進行實際擬合, 實車標定b=9.8, 分別在平路加減速、 換擋、 上坡、 下坡、 轉彎工況下進行坡度算法驗證。 其中車型A坡度值由網關產品計算出, 車型B坡度值由TCU產品計算出。
3.2.1 小坡度工況擬合
算法坡度即本文處理后的坡度, 網關坡度為某產品測試坡度。 在小坡度工況下對車型A進行加減速和換擋操作,采集相應報文數據。 對該數據利用本文算法進行處理, 處理后如圖9、 圖10所示。

圖9 小坡度加減速工況

圖10 小坡度換擋工況
從圖中可以看出, 本文設計的算法能在一定程度上減少加減速工況下坡度值頻繁跳變情況; 在換擋工況下, 能顯著減少坡度值的異常跳變, 計算給出的坡度值更為準確。
3.2.2 上坡工況擬合
分別采集并記錄車型A、 車型B上坡工況下報文數據,使用本文坡度算法處理后的數據如圖11、 圖12所示。 其中算法坡度即本文處理坡度, 網關、 TCU坡度為某產品測試坡度。
結合圖11、 圖12可知, 對比網關坡度, 本文算法能較好地抑制上坡工況下坡度值異常跳動, 算法計算出的坡度值曲線變化更連續, 更符合實際情況。 而相較于TCU坡度算法, 在上坡階段, 本文計算給出的坡度值變化更均勻,且數值未出現異常跳變的情況。

圖11 車型A上坡工況

圖12 車型B上坡工況
3.2.3 下坡工況擬合
分別采集并記錄車型A、 車型B下坡工況下報文數據,使用本文坡度算法處理后的數據見圖13、 圖14。

圖13 車型A下坡工況

圖14 車型B下坡工況
從圖13和圖14中能看出, 本文算法能很好地抑制下坡工況下坡度值的振蕩, 能很好地抑制短時間尺度內坡度值異常跳變, 計算給出的坡度值更符合實際工況。
3.2.4 平路轉向工況擬合
分別采集并記錄車型A、 車型B平路轉向工況下報文數據, 使用本文坡度算法處理后的數據見圖15、 圖16。

圖15 車型A轉彎工況

圖16 車型A轉彎工況
從圖15和圖16中能看出, 在平路轉向工況下, 相比與其它兩種算法, 本文算法計算出的坡度值更為準確和穩定,很好地抑制外部操作導致的坡度值跳變, 符合預期目標。
本文坡度算法考慮了橫向、 縱向加速度以及擋位的影響, 根據整車實際參數的CAN報文周期選取對應的數據段,對各個參數進行濾波、 修正, 得到最終的算法后選取兩種車型進行算法擬合, 并對比現有產品的坡度算法驗證本文算法的有效性。
通過以上工況驗證, 本文設計車輛坡度算法, 在各工況下擬合效果明顯, 能夠有效解決車輛在加減速、 換擋、轉向過程中坡度跳變導致坡度不穩的問題, 保證了坡度信號的準確性, 對其他涉及坡度信號條件判斷、 坡度顯示的產品提供了可靠性依據。