AUTOSAR 汽车开放系统架构
为什么现在搞汽车软件必须懂它?
1.软件组件和VFB
1 VFB视图
抽象化特性: VFB(Virtual Functional Bus)是对 ECU功能进行抽象描述的视图,所有软件组件(SW-C)通过port连接到VFB上,不关心具体ECU位置和通讯方式。
通讯功能: 可进行SW-C间的数据交换和服务调用,既表示ECU内部通讯(如内部总线),也表示外部总线通讯(如CAN/LIN总线)。
开发优势: 使应用层开发完全独立于ECU映射和物理特性,专注于功能开发。
2.软件组件的分类
最⼩单元: Atomic component是AUTOSAR中最⼩的逻辑单元,⽆法再分割。
应⽤组件:主要实现算法功能,能在各ECU上⾃由映射。
组合组件:由数个SWC组成的逻辑集合,如图中的Light Control Composition(里面是 对车门状态的跟踪,一个是调光器)。
Switch...是传感器点的SWC,
传感器和执⾏器组件
Autosar和ECU协调对应图
传感器组件:为Application提供I/O量,与ECU绑定(如Switch Sensor Component)。
执⾏器组件:使应⽤层SWC能操作ECU(如Actuator Component)。
硬件抽象:通过ECU抽象层和MCAL(单⽚机抽象层)实现硬件接⼝的标准化。
3.软件组件的运⾏实体
函数本质:Runnable是SWC内部包含具体逻辑算法或操作的函数,如示例中的Void SA_Door_Left()
触发⽅式:由RTE周期性(如每500ms)或事件触发调⽤。
映射机制:通过RTE将Runnable映射到OS的task中执⾏。
Sender和Receiver可以进行一对一,一对多
4.VFB的通讯机制
数据元素:包含多种数据类型的data elements(如布尔型、浮点型)。
通讯特点:⽀持⼀对⼀或⼀对多通讯,如door left open信号通过总线映射为抽象信
号。
抽象优势: RTE/VFB统⼀抽象内部和外部通讯,应⽤层⽆需区分来源。
客户端-服务器端⼝
操作请求:主要⽤于请求operation,通讯⽅式为⼀对⼀或n对⼀。
调⽤⽅式:⽀持同步(等待服务完成)和异步(⽴即继续执⾏)两种调⽤模式。
组合特性:⼀个port可包含多个operation,⽀持单独调⽤。
5.RTE
VFB的具体实现
在VFB在ECU上的实现,对底层软件进行抽象
双重功能:实现数据通讯和任务调度,将Runnable映射到OS task。
配置内容:需配置task信息、event和时钟alarm等OS相关参数。
ECU特性:需针对不同ECU定制,抽象操作系统和BSW访问。
其他特性
数据保障:保证数据⼀致性(如exclusive area机制)。
格式⽀持:⽀持简单数据和复杂数据(如records结构体)。
多副本:允许同⼀SWC⽣成多个实例。
2.接⼝类型
标准接⼝:⽤特定语⾔定义的标准化函数,仅限ECU内部使⽤。
AUTOSAR接⼝:定义SWC间及SWC与BSW通讯的标准化端⼝。
标准化接⼝:在AUTOSAR接⼝基础上进⼀步规范语法语义,⽤于提供标准化服务。
总结
| 知识点 | 核⼼内容 | 关键特性/易混淆点 | 技术关联 |
| Virtual Function Bus (VFB) | ECU 功能抽象描述视图,连接所有 SWC 组件 | ・隐藏底层通讯细节; ・统一内部 / 外部总线接口; ・支持数据交换和服务调用 | RTE 实现基础 |
| Software Component (SWC) | AUTOSAR 最小逻辑单元,分为三类:Application SWC(算法实现); Sensor SWC(传感器输入); Actuator SWC(执行器控制); | 原子性组件; 开发时不关心 ECU 映射; 示例:车门状态判断 + 调光器控制组合 | 通过 Port 与 VFB 交互 |
| Port 类型 | 1. Sender/Receiver Port(数据传输);- 直线 / 五边形符号;- 支持一对多通讯; 2. Client/Server Port(服务调用);- 圆形 / 弧形符号;- 同步 / 异步调用 | ・Data Element 支持多种数据类型; ・Operation 可单独调用; ・示例:door_left_open 信号抽象 | RTE 通讯基础 |
| Runnable Entity | SWC 内部执行单元(函数级) | ・周期性 / 事件触发; ・通过 RTE 映射到 OS Task; ・示例:500ms 调度的 door 状态检测函数 | 需 RTE 事件触发 |
| RTE (Runtime Environment) | VFB 在 ECU 的具体实现 | 双重功能: 数据通讯抽象; 任务调度管理; 隐藏 BSW 层细节 | 与 ECU 强相关需定制 |
| 接口类型 | 1. 标准接口(ECU 内部专用); 2. AUTOSAR 接口(SWC 间通讯); 3. 标准化 AUTOSAR 接口(服务类) | ・语法 / 语义标准化差异; ・Service 组件使用标准化接口 | 兼容性约束 |