EB tresos Classic AUTOSAR:
Mode Management 模式管理
詳細介紹 ECU 各狀態階段中 EcuM 與 BswM 職責分工、Watchdog 運作機制及 ComM 狀態機遷移過程。
本篇文章基於 Elektrobit 提供的「EB tresos Classic AUTOSAR-Mode Management 模式管理模塊基礎軟件培訓」影片內容整理。影片介紹了 AUTOSAR 模式管理模組的基本概念與模組劃分,詳細介紹了 ECU 各狀態階段中 EcuM 與 BswM 的職責分工,Watchdog Stack 的運作機制,以及 ComM 和 CanNm 狀態機的遷移過程,同時歸納了相關模組的常見功能。此培訓將協助汽車電子開發者掌握 AUTOSAR 模式管理技術,提升開發效率。
1. 模式管理的定位與目標
模式管理的主要任務是協調整個 ECU 內部各個軟體組件與基礎軟體模組的狀態切換。其核心目標在於:
battery_charging_full 控制電源消耗
透過管理休眠與喚醒流程來節省能源。
settings_input_antenna 管理通訊狀態
控制各個通訊通道(CAN, Lin, Eth)的開啟與關閉。
rule 確保系統一致性
確保當系統切換模式時(例如從「正常運行」切換到「刷寫模式」),所有相關模組都能同步進入正確狀態。
2. 模式管理的三大核心模組 (EcuM, BswM, ComM)
影片將模式管理體系拆解為三個緊密協作的「支柱」模組:
power_settings_new EcuM (ECU State Manager) — 壽命週期管理者
EcuM 負責管理 ECU 的整體狀態流程。
- 主要階段:包含啟動 (Startup)、關機 (Shutdown)、休眠 (Sleep) 與喚醒 (Wake-up)。
- 任務:它負責最底層的硬體初始化引導,並在最後關頭關閉 OS。它分為 Fixed(固定式)與 Flexible(靈活式)兩種配置方式。
psychology BswM (Basic Software Mode Manager) — 決策中樞
BswM 是整個模式管理系統的「大腦」,負責複雜的邏輯判斷,基於「規則 (Rules)」運作。
- 收集輸入:接收來自 SWC 的請求或 BSW 模組的狀態指示。
- 規則評估:根據預設的邏輯條件(Condition)判斷是否符合觸發規則。
- 執行動作 (Action):如果規則成立,執行對應的動作(例如切換另一個模組的模式或呼叫特定 API)。
sensors ComM (Communication Manager) — 通訊管理者
ComM 專門負責管理 ECU 的網路通訊狀態。
- 通訊模式:主要分為 No Communication(無通訊)、Silent Communication(只收不發)與 Full Communication(正常收發)。
- 功能:簡化了上層應用對通訊網路的控制。應用層只需向 ComM 請求「我需要通訊」,ComM 就會自動協調底層的通訊堆疊(CanSM, LinSM 等)開啟對應的硬體。
3. 模式管理的交互協作
在實際運作中,這三個模組通常是聯動的:
-
1
EcuM 啟動 OS 後將控制權交給 BswM。
-
2
BswM 根據當前車輛狀態,通知 ComM 開啟通訊。
-
3
ComM 驅動底層通訊模組,並將通訊狀態反饋給 BswM。
-
4
當需要關機時,BswM 協調各模組停止工作,最後由 EcuM 執行斷電。
4. 在 EB tresos 中的開發重點
在 EB tresos Studio 中進行配置時,開發者需要重點關注:
在 BswM 中定義規則與動作鏈。
在 EcuM 中配置哪些硬體信號(如 CAN 報文或外部引腳)可以喚醒 ECU。
在 ComM 中定義哪些軟體組件(Users)具備請求網路通訊的權限。
這篇文章總結了模式管理模組的基本架構。透過這套機制,AUTOSAR 確保了 ECU 在複雜的車輛環境中能夠穩定、安全且節能地在各個運行狀態間切換。