一、什麼是AUTOSAR?
AUTOSAR(Automotive Open System Architecture),是一種針對汽車電子系統設計的架構,是由汽車業界的主要廠商和供應商共同創建的一種標準化的軟體平台,以協調汽車行業的需求。
AUTOSAR的目的是提供一個標準化的軟體體系結構,支持汽車電子系統各個方面的軟硬體開發和生命周期管理。該架構包含以下組件:
- 應用程序介面 (APIs)
- 運行時環境 (RTE)
- 操作系統 (OS)
- 通信協議棧 (Com)
- 診斷協議 (Diagnostics)
- 存儲設備介面 (FEE)
- 複位管理 (DEM)
- 控制單元模塊 (CDD)
- 硬體抽象層 (HAL)
- 等等
這些組件協同工作,構成了功能豐富的汽車電子系統。AUTOSAR能夠提高開發效率、降低開發成本和風險、同時保證系統的安全性和可靠性。
二、AUTOSAR的開發流程
在AUTOSAR的開發流程中,系統工程師和軟體工程師會在各自的環節中參與。系統工程師使用AUTOSAR建立電子控制單元 (ECU)的概念和需求,並在系統水平上將它們組合為各個應用程序。軟體工程師使用AUTOSAR來實現這些應用程序,為完成硬體和軟體的集成而創建軟體組件、驅動程序和軟體模型。
下圖展示了AUTOSAR的開發流程:

三、AUTOSAR軟體架構的關鍵組件
1.應用程序介面 (APIs)
AUTOSAR應用程序介面是應用軟體與其他軟體組件之間的介面。它定義了應用程序如何使用底層可重用軟體組件。API由一組標準化的介面定義,有助於提高系統的可維護性、可遵循性和可升級性。
下面是一個示例API定義:
/* Sender application */ void Com_SendSignal(uint8 SignalId, const void *SignalDataPtr); /* Receiver application */ void Com_ReceiveSignal(uint8 SignalId, void *SignalDataPtr);
2.運行時環境 (RTE)
AUTOSAR運行時環境是由AUTOSAR軟體組件間的通信所使用的一組服務。這些服務包括埠接收服務、埠發送服務、組件之間管理服務等。運行時環境在系統配置時自動生成,並為底層軟體組件提供標準介面。它也可以相互適應,並且利用AUTOSAR定義的協議提供了可靠的數據通信和以模塊為基礎的集成運行時環境。
下面是一個示例RTE配置文件:
/* Configuration of port ComSignal1 */ { portComSignal1 = { dataElement = Data1; isQueued = false; sentTimeout = 1000ms; receiveTimeout = 1000ms }; };
3.操作系統 (OS)
AUTOSAR操作系統提供了可重用的高級驅動程序和操作系統服務,如任務管理、事件管理、定時器、內存管理、中斷和異常管理等。操作系統還提供了許多標準的介面和函數,允許開發者自由組裝和設計操作系統功能,以支持更複雜的應用程序。
下面是一個示例操作系統配置文件:
/* Configuration of OS Task */ { Task1 = { ScheduleTableRef = ScheduleTable1; ExecutionTime = 100ms; CycleTime = 500ms; OffsetTime = 0ms; Priority = 1; }; };
4.通信協議棧 (Com)
AUTOSAR通信協議棧包含了許多抽象層和介面,包括物理驅動層、網路層、傳輸層、應用程序層等。這些層次結構的組合和嵌套提供了各種各樣的功能特性,以滿足多種網路傳輸協議的需求。
下面是一個示例通信協議棧配置:
/* Configuration of Com */ { ComConfig = { Signal = { ComSignal1 = { PduId = Pdu1; Com_PduSignalInitValueRef = SignalValue1; }; }; Pdu = { Pdu1 = { ComIPduSignalProcessing = IMMEDIATE; ComIPduSignalProcessing = DEFERRED; }; }; ComIPdu = { Pdu1 = { ComIPduDirection = SEND_RECEIVE; }; }; }; };
5.診斷協議 (Diagnostics)
AUTOSAR診斷協議支持汽車診斷監測、故障指示和車輛狀態信息傳遞。AUTOSAR診斷架構定義了一組協議、介面和數據結構,使每個ECU都可以為汽車提供安全、可靠、高效地服務。
下面是一個示例診斷報文:
/* Diagnostic message format */ Header (DTC, Function Identifier, Variant Identifier) Diagnostics Data (Free Format) Fault Of Event Data (Data Size, Format Identifier, Data)
四、AUTOSAR的應用場景
AUTOSAR的應用場景包括:
- 電動汽車和混合動力汽車所需的高端驅動控制
- 車輛動態控制系統,如自動剎車和改進的穩定性控制
- 車輛感知技術,如全景攝像頭和智能交通燈控制
- 技術特性,如車輛重要部件和計算機高速通信,以及操作和控制電力系統
- 高級功能,如信息娛樂系統、語音識別和GPS
五、小結
本文對AUTOSAR從入門到精通進行了闡述,包括AUTOSAR的定義和目的、AUTOSAR開發流程、AUTOSAR軟體架構的關鍵組件、以及AUTOSAR的應用場景。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/236189.html