前言
傳統的汽車ECU通過診斷刷寫來實現軟件更新,數據量較小,一般在幾十KB到幾十MB;隨著汽車的新四化進程持續推進,汽車上的域控制器或中央計算器的架構已經演變為MPU/SOC+MCU的方案,而針對MPU/SOC軟件升級的數據量往往是幾百MB甚至幾GB,使用DoIP加診斷服務(0x34、0x36)來傳輸升級包數據,過程比較繁瑣,并且帶寬利用率較低。通過DoIP發送36服務,需等待傳輸層的應答即TCP ACK,再等待DoIP的0x8002報文(簡化版不使用0x8002),最后必須等待控制器的診斷肯定響應才能繼續發送數據。因此,針對數據量較大的升級包,各廠商紛紛采用多種新的方法來實現域控制器軟件升級。
上海北匯信息根據既有的經驗,為大家介紹其中一種拋棄了傳統方案,一種新型軟件升級技術及測試方案,該方案基于“一種支持SOA的協議 +傳統IT的傳輸協議”組合實現。以下簡稱“SOA協議”和“IT協議”。
域控制器升級流程簡介
圖1升級流程示意圖
如上圖所示,實現從節點域控升級,是由主節點來發起升級任務,此流程主要在車內進行。主節點首先通過“SOA協議”給從節點建立升級任務,再將升級包通過”IT協議”發送給從節點,同時通過”SOA協議”控制升級流程;相比使用診斷服務實現升級,此流程簡潔高效,能快速實現升級軟件的目的。
測試用例的構成
針對從節點的升級測試,主要分為以下幾個部分:1.正向流程測試;2.狀態跳轉測試;3.故障碼測試;4.場景測試
圖2部分測試用例
域控制器升級測試的主要環境
北匯主要使用Vector的CANoe+VN56xx來開發測試用例與執行測試,加上基本外設,如程控電源等,可以快速搭建好測試環境,示意圖如下所示:
圖3測試環境示意圖
在測試腳本中,使用CANoe仿真主節點,主要實現的是”SOA協議”與”IT協議”兩個模塊功能;1.仿真CANoe作為主節點,發送”SOA協議”請求給DUT,來控制升級流程;2.仿真CANoe作為”IT協議” Server,收到DUT的”IT協議”請求后,將升級包通過”IT協議”發送給DUT。
圖4測試腳本框圖
域控制器升級測試實例
數據傳輸過程
CANoe仿真主節點給從節點建立升級任務后,從節點便發送”IT協議”請求升級包路徑,仿真主節點響應升級包路徑,從節點則發送”IT協議”獲取升級包。仿真主節點使用”IT協議”發送升級包,在傳輸過程中可以使用SOA協議周期讀取傳輸進度,等待傳輸完成后,仿真主節點發送安裝請求,在安裝過程中周期讀取安裝進度。以下是測試報告和測試數據的示例。
圖5建立任務與傳輸過程測試報告
圖6安裝升級包測試報告
總結
本文介紹實現域控制器升級的一種新興技術方案,其在汽車電子領域已廣為接受并采用。此方案相比使用診斷服務實現升級,主要有以下兩個優點:
- 升級流程簡潔高效
- 傳輸升級包效率更高
北匯信息緊跟技術發展的脈搏,在此領域已經積累了測試規范開發、測試腳本開發、測試執行的經驗,同時根據北匯在汽車電子豐富的測試經驗,開發具有深度的用例覆蓋不同場景,為客戶的汽車電子產品軟件升級質量保駕護航,加快車型研發進度!
-
域控制器
+關注
關注
0文章
249瀏覽量
2676
發布評論請先 登錄
相關推薦
評論