Restbus 模擬基本原理

綜覽

現今車輛隨著技術智慧成長也變得越來越複雜。隨車輛 IQ 不斷提升的同時,程式碼行數與電子控制單元 (ECU) 數量也大幅增加,必須迅速做出明智決策。這些 ECU 都會與其他 ECU 互動,而且必須仰賴額外的 ECU 才能隨需運作,因為在嘗試測試與驗證 ECU 的嵌入式軟體時,可能會遇到困難。Restbus 模擬是一種檢驗 ECU 功能用技術,透過模擬如 Controller Area Network (CAN) 的部分車用匯流排來進行。企業不需設定完整的車輛網路,或執行昂貴的現場測試,即可使用 Restbus 模擬等驗證技術,來模擬車輛匯流排的實際條件,以了解 ECU 的反應方式,進而大幅縮短測試時間與成本。此篇文件說明 Restbus 模擬的基本原理,例如模型匯入與激發設定檔,並提供模擬特定實際情境的使用方法。

內容

Restbus 模擬適用 NI 工具

此篇文件針對 Restbus 模擬常見用途與策略,提供多款 NI 軟硬體工具。 這些工具可協助您達到 Restbus 模擬所需的功能,並大幅縮短特定用途的設定時間:

Restbus 模擬的 8 項基本技術

可使用 Restbus 模擬來完成多種不同用途與工作,但是多數模擬作業都來自於 8 種不同的技術和基本建立區塊,這些區塊也有多種使用方式。此文件提醒事項將進一步說明此 8 項作業,並描述使用上述工具的實作方式。

1.實際 ECU 與模擬 ECU 之間切換

如前所述,您可使用 Restbus 模擬功能來模擬所有或部分的車用網路。正因為如此,為了針對完整網路的不同部分進行模擬,這類應用的理想功能之一就是,能輕鬆地以實際 ECU 替換模擬 ECU 的能力(反之亦然)。由於大量的 ECU 可透過相同網路進行通訊,因此從實際到模擬,或從模擬到實際的轉換過程,必須儘可能輕鬆順暢。

模擬與實際 ECU.bmp

啟用與停用傳輸觸發器.bmp

圖 1:使用 NI VeriStand 搭配 NI-XNET 介面,即可在模擬實際 ECU 與匯流排上的實際 ECU 之間快速切換。

NI-XNET 車輛匯流排介面卡與 NI VeriStand 可輕鬆完成此項作業。只要針對匯流排上的特定流量設定停用與啟用觸發器,即可在傳輸或不傳輸網路通訊之間輕鬆切換,以便模擬 ECU 或網路上的實際 ECU。這項技術可套用至整個 CAN、LIN 或 FlexRay 埠,也可一次套用至單一架構,這取決於所要模擬的通訊數量。

2.匯入網路模擬模型

透過 NI VeriStand,即可從多種建模環境與程式設計語言來操作模型。可於任何支援的建模環境中執行已編譯模型,也可使用 The MathWorks, Inc. 所建立的未編譯模型 (.mdl 檔案)。Simulink®1 軟體。接著可將這些模型的匯入與匯出埠,與 NI-XNET 裝置的傳入或傳出訊息對應。 

 

匯入模擬模型.bmp

圖 2:正弦波模型範例已匯入 NI VeriStand,以便進行網路通訊。

[1] Simulink® 是 The MathWorks, Inc. 的註冊商標。

3.網路通訊指令執行

除使用模型進行網路通訊之外,您可能也需要針對網路通訊,來編寫客製化指令碼,以執行特定作業。執行指令碼 (Scripting) 不同於以所需速率來傳輸循環訊息,通常必須將特定碼型或設定檔傳輸至匯流排。透過 NI VeriStand Stimulus Profile Editor,即可開發特定的設定檔與序列,將所需的網路通訊設定檔傳輸至匯流排,以測試 ECU 對已知激發的反應。

客製化網路通訊指令碼執行 (Scripting).bmp

圖 3:使用 NI VeriStand Stimulus Profile Editor 建立網路通訊的激發設定檔。

4.訊息傳輸佇列

相較於建立特定訊息或一系列訊息的設定檔,訊息傳輸佇列通常需要使用者設定不同網路訊息的特定傳輸順序,以及每個訊息的觸發器。亦可使用 NI VeriStand Stimulus Profile Editor 來達成相同目的。透過客製化指令碼的相同工具與環境,即可依特定順序來排列網路訊息,並為每個架構設定傳輸觸發器。若僅需以所需速率來傳輸循環訊息的佇列,則可於 NI VeriStand System Explorer 中進行設定,並自動從網路資料庫 (如 FIBEX 與 .DBC 檔案) 匯入訊息。

匯入循環架構.bmp

圖 4:NI VeriStand 環境可自動解析網路資料庫,以設定循環架構的傳輸作業。

5.手動訊息傳輸

您可能還需要傳送事件導向訊息,而這些訊息可隨需或在符合觸發條件時傳送。使用者可將循環傳輸的相同工具套用至事件訊息手動傳輸。

匯入事件架構.bmp

圖 5:亦可使用 NI VeriStand 環境來解析網路資料庫,以協助設定事件導向訊息的傳輸作業。

6.記錄檔案資料重播

透過相同的步驟,即可傳輸先前所記錄的匯流排流量,因此可有效測試 ECU 軟體變更,並監控對已知激發的回應。透過 NI VeriStand System Explorer,即可設定已記錄的車用網路記錄檔案,以原封不動的方式進行傳輸。也可透過使用者專屬設定來設定檔案重播,例如設定觸發條件,以便開始重播包括要傳輸的架構,或從傳輸中排除架構。

資料重播.bmp

圖 6:透過 NI VeriStand 與 NI-XNET 介面,來設定要傳輸的記錄檔案。

7.通訊觸發條件

整合 NI VeriStand 工具與 NI-XNET 介面之後,即可達到多種強大的通訊觸發選項。本文件針對其他眾多 Restbus 模擬基本原理進行設定觸發條件的討論,提供許多選項。此外,亦可選擇多種觸發來源,包含數值變更、特定訊息、使用者專屬通道與其他 I/O。 

8.建立測試報表

僅執行模擬並非完整的程序流程。還需總結結果,並執行測試,以查看裝置是否如預期執行。NI VeriStand Stimulus Profile Editor 可開發客製化的通過/失敗測試,並以 ATML 等標準格式來產生報表,以顯示並分享測試結果。

測試報表.bmp

圖 7:使用 NI VeriStand Stimulus Profile Editor 建立客製化測試與報表,以便分享結果。

結論

從長遠來看,ECU 軟體驗證的 Restbus 模擬等測試技術是一種節省時間與成本的有效方法,但其中也涉及到數種特定元件與技術。了解 Restbus 模擬的基本原理與高效率測試工具,可縮短應用開發時間,並儘早發現錯誤。NI VeriStand、NI VeriStand Stimulus Profile Editor 與 NI-XNET 車輛匯流排介面等 NI 軟硬體工具,均為快速為 Restbus 模擬應用進行完整客製化的必要工具。

Simulink® 是 The MathWorks, Inc. 的註冊商標。所列的其他產品與公司名稱,均為其所屬公司商標與商品名稱。