这是本公众号「AUTOSAR 工程铺路」系列的第二篇。上一篇我们把 R25-11 全部 218 份文档的地图画了出来。这一篇,我们落进地图里最"接地气"的一个房间——《Explanation of Application Interfaces of the Body and Comfort Domain》(AUTOSAR 文档编号 268,EXP 系列)。车身域是 ECU 数量最多、供应商最杂、接口最碎的一个域:门锁、车灯、雨刮、座椅、防盗、钥匙……每个功能背后都藏着一整套"功能集群怎么切、接口怎么定、信号怎么流"的官方答案。本文把这些答案一页一页翻开讲透。 📢 PDF 文档翻译服务:AUTOSAR 规范、ISO 标准、芯片手册、通信协议、白皮书——一切英文技术 PDF 读不懂,都可以私信博主帮你跨越语言障碍、快速掌握信息。
一、为什么这份 EXP 值得你精读
EXP_AIBodyAndComfort,就是 22 份里"应用接口(AI)六件套"中的车身舒适那一份——和它同族的还有 ADAS/车辆运动控制、底盘、HMI/多媒体、乘员安全、动力总成各一份。1.1 这份文档解决什么问题
主表(MOD_AISpecification 里的 AI 表格):规定每个端口、每个数据元素的名字和类型——冷冰冰; 268 号文档:解释每一个设计决策背后的理由——为什么这样拆 SW-C、为什么这个端口存在、这个信号从哪来、到哪去。
“This document explains all design decisions that lead to the AI contents. In case of inconsistencies between pictures and explanations in this document and the AI, the information in the AI has to be considered as prior.”
1.2 版本史透露的两个信号
| 一次大改 | ||
| 每年基本只有"编辑性修改"(editorial changes) |
二、全景:车身域的功能集群怎么划分
2.1 划分的两个坐标轴
被控执行器的类别:电机(座椅、雨刮、后视镜)、灯泡/光源(内外灯)、以及其他特殊装置(门锁机构、除霜加热丝、喇叭、防盗装置); 操作的类型:车辆访问(access)、照明(lighting)、舒适(comfort)、声学提示(acoustic signalling),以及间接操作(如端子钳控制 Terminal Clamp Control、电池监控 Battery Monitor——后者还是"未来功能")。
2.2 16 个功能集群一览
2.3 子系统之间的"软连接"
“The defined subsystems do not always mean a strong link between the included function components. The subsystems are also linked between them by a set of interfaces. For example the Access subsystem is strongly linked with a part of the Visibility subsystem.”
三、分解的哲学:“可采购的 SW-C”——先划供应商边界,再谈技术
3.1 四层流水线结构
传感器组件(Sensor) → 适配器组件(Adapter) → 核心功能组件(Manager) → 执行器组件(Actuator)3.2 为什么不是原子组件?
“The intent is for the decomposition to get not to atomic SW-Cs but to ‘purchasable’ SW-Cs. These SW-Cs will be obtained as a unit so that all the internal (and hence not AUTOSAR standardized) interfaces are controlled by a single vendor, even if there are SW-Cs within the bought unit that reside on different ECUs. All interfaces between SW-Cs from different vendors should be standardized.”
分解的目标不是"拆到原子组件",而是"拆到可以被整体采购的单元"(purchasable SW-C); 一个采购单元内部,所有接口故意不做标准化——因为里面可能跨多个 ECU,但都由同一家供应商控制,让他们自己关起门来定; 不同供应商之间的接口,必须标准化——这就是 AUTOSAR AI 存在的意义:让 Tier1 和 Tier2 之间、OEM 和供应商之间的接口长一个样。
3.3 虚线与实线的区别
3.4 另外两条细节约定
传感器/执行器 SW-C 形式上也是组合(composition)——纯粹是建模形式上的原因,不影响理解(文档 2.1 节); 所有端口都带 AUTOSAR 数据质量属性,需要无效化(invalidation)的地方统一用"带内无效化"(in-band invalidation),合适的地方给出初值(“off”、“idle”、“undefined”、“unknown”……)。
四、接口设计的通用"宪法":五个约定贯穿全部集群
4.1 约定一:带内无效化(in-band invalidation)
invalid 值,而不是另开一个有效性位——这样能最小化接口的位宽。相对的"带外无效化"(outband,单独用一个有效性信号去标记另一个信号是否有效)对这类接口是浪费的,因为一个数据元素要么有效要么无效,二选一,不需要额外的通道。工程含义:你在配置车身信号时,看到枚举里有个 invalid值,别删——它是规范的组成部分,接收方靠它识别"传感器坏了/没数据"。
4.2 约定二:初值必须明确
4.3 约定三:范围在 VFB 层面,不谈时序、不谈变体
| 没有 | |
| 项目特定 | |
| 实现相关 |
4.4 约定四:占位符命名法
[Seat] | ||
[SeatAxis] | ||
[DoorLockFrnt] | ||
[DoorLockRe] | ||
[ext_light] | ||
[IntrLiActr] |
4.5 约定五:可事件驱动,也可周期发送
五、功能集群逐个详解:怎么切、怎么接、信号怎么流
5.1 雨刮洗涤(Wiper/Washer)
功能定位
SW-C 分解
关键接口与信号流
备注:文档中该集群唯一具名信号为 RainAmountStatus;其余数据流为描述性说明,具体端口名以 AI 主表为准。
设计要点
5.2 后视镜调节与防眩(Mirror Adjustment & Tinting)
功能定位
SW-C 分解(调节 + 防眩两套)
| 合并并仲裁 | ||
关键接口与信号流
备注:本文档后视镜章节未给出具名信号(接口名以 AI 主表为准,端口以 Mirror / Tinting 前缀命名)。
设计要点
5.3 内饰灯(Interior Light)——最细致的接口标本
功能定位
SW-C 分解
传感器层(HMI)的四大职责
光源清单(全部实例名,完整展开)
LightSource[IntrLiActr] 可替换为以下任一完整实例名:IntrLiGroup0..IntrLiGroup15——每个虚拟组可由任意数量的上述光源构成,按实现配置。IntrLiGroup。关键接口与信号流
执行器的两条硬约束(易踩坑)
5.4 座椅调节(Seat Adjustment)——占位符命名法的巅峰
功能定位
合法命名表(直接抄进你的命名规范)
SW-C 分解(每个需要调节的座椅都有一整套)
关键接口与信号流(全部具名信号)
个性化用例
5.5 中央门锁(Central Locking)——机械世界与软件世界的映射
功能定位
SW-C 分解
关键接口与信号流
备注:本文档中央门锁章节未给出具名信号(接口名以 AI 主表为准,端口以 Lockg / Door / KeyPad 前缀命名)。
个性化用例
Known Defects(已知缺陷)
5.6 外部照明(Exterior Light)——全文最复杂、信息量最大的集群
功能定位
三层架构(全集群的核心骨架)
HMI(开关传感器)→[ExteriorLightManager/FlashManager/ BrakeLightManager](决策)→[ExteriorLightAdapter Front/Rear/Trailer](翻译/替换策略)→[ExteriorLightActuator](点亮具体光源)职责:从各种请求生成当前闪烁模式;生成正常/特殊闪烁动态(基于闪烁模式、端子钳状态、动态描述); 输出 IndcrTurnCmd1(五字段记录):
可选输出 IndcrPatCmd1(IndcrNrPat + TiOn + TiOff)——仅当需要"静态指示模式"之外的模式时使用;明确约定:复杂的位模式不期望由 ExteriorLightActuator 执行——执行器只按节奏开关,不解释花哨序列。
BriCmd1 | |
ExtrLiActr[ext_light] | |
LightSource[ext_light] 全部实例名):外灯全部具名信号汇总
外部接口(跨域信号流)
术语表与已知缺陷
术语表(4.6.14):文档给出 30+ 条外部光源术语(AFS、Backup Lamp、Brake Lights、CHMSL、Cornering Lamps、DRL、Direction Indicators、Hazard Warning、High Beam、HID、License Plate、Low Beam、Parking Lamps、Rear Fog、Reflex Reflectors、Reverse Lighting、Side Repeaters、Static Bending/Cornering、Stop/Tail/Turn Lights……)。提醒:Beam/Bulb/Lamp/Light/Illumination/Signal 这些词可互换;该表只是理解辅助,不能作为法规光源要求(灯具颜色等要查法规文件)。 已知缺陷(4.6.16):个性化参数与接口未定;生命周期相关变体编码(如运输模式下禁用布防反馈)未定;诊断编码/接口未定;传感器/执行器分解(灯型相关/无关)未定;AFS(自适应前照灯)未标准化——仅静态转角灯被认为足够。
5.7 防盗报警(ATWS)
功能定位
报警触发源
状态指示与状态机
SW-C 分解与信号流
备注:本文档 ATWS 章节未给出具名信号;其对外信号(布防反馈、报警请求)借道外部照明(AlmVisCmd1)与喇叭(FbAlrmAcoust / FbPanicAlrmAcoust),见 5.6/5.8。
5.8 喇叭(Horn)
功能定位
输入/输出(Figure 4.24 全部端口与接口名)
注:HornActvn 是执行器侧接收 HornCmd1 的端口名;AlrmAcoustCmd1 是"防盗报警声学命令"接口名(端口 ImobAlrmReq)。
5.9 除霜控制(Defrost Control)
功能定位
SW-C 分解
关键接口与信号流(指示灯 ≠ 执行器)
备注:本文档除霜章节未给出具名信号(接口名以 AI 主表为准,端口以 Dfrst 前缀命名)。
5.10 端子钳控制(Terminal Clamp Control)——整车电源模式的大脑
功能定位
SW-C 分解
关键接口与信号流(全部具名信号)
| 最终目标模式 | ||
四个用例(讲状态机必引)
5.11 发动机防盗(Immobilizer)
功能定位
输入/输出/接口
具名信号(对外报警/状态)
核心与安全设计
约束/限制
5.12 座椅通风加热(Seat Climatization)
功能定位
SW-C 分解与信号流
具名信号
[OFF, AdapterTemperatureLevel1, AdapterTemperatureLevel2, ...] |
5.13 被动进入(PASE)——接口最密集的集群
功能定位
SW-C 分解
关键接口与信号流(Table 4.6 全部接口,按实例逐行展开)
LockgCenReq1、TrsmAuthent1、TrsmId1、TrsmPosn1 等接口被多对端口重复实例化——以下逐一列出,不合并:| 发射器位置 | ||
5.14 遥控钥匙(RKE)
功能定位
KeyRemoteManager 的两段式架构(设计精华)
周边模块
备注:本文档 RKE 章节未给出具名信号(RKE 系统相关端口见 AI 主表;文档以模块职责描述为主)。
5.15 敞篷控制(Convertible Control)
功能定位
输入/输出
备注:本文档敞篷章节未给出具名信号(接口名以 AI 主表为准)。
5.16 车身传感器(BodySensors)
功能定位
SnsrBody 组件把一堆开关型传感器"翻译"成标准接口(Table 4.7)。这是外部照明和雨刮的"信号源头"之一。关键接口与信号流(Table 4.7 全部接口,含全部端口实例)
LiExtReq1 一个接口被 10 个开关端口复用(端口列即物理来源)——逐一列出,不合并:设计要点
LiExtReq1 一个接口被 10 个开关共用——开关的语义(近光/远光/雾灯/危险警告)由"哪个端口发出来的"决定,接口本身是"请求一个外部灯光模式"。这是"接口复用"的官方示范:接口按"数据内容"抽象,端口按"物理来源"实例化。KeyPad(按键板)则直接指回中央门锁章节(它是中央门锁的输入)。六、贯穿全篇的设计模式:你能直接带走的东西
6.1 "四层流水线"是车身域的万能骨架
6.2 传感器与执行器"只报状态,不做决策"
6.3 "指示 ≠ 执行"要专门设计
6.4 替换策略 = 配置表,不是代码
6.5 占位符命名 + 接口复用 = 接口数量可控
[Seat]×9、[SeatAxis]×16、[DoorLockFrnt]×2、LiExtReq1×10 个开关复用……用"接口按语义抽象、端口按物理实例化"的套路,把几十上百个具名端口压回十几个接口定义。你维护接口清单时,第一反应应该是"能不能用占位符/复用现有接口",而不是"再新建一个接口"。6.6 跨域接口是集成的雷区,也是接口清单的"另一半"
6.7 落地自查清单(对照 268 号文档检查你的项目)
七、数据字典:车身域信号命名规范与缩略语总表
CbnLiFrntCen、AxisActrBackBlstrRi、TrsmAuthentFromPaseMgr 这样的名字。这一章把它们背后的造词规则和缩略语穷举成一张字典:掌握了它,车身域 95% 以上的标准信号名,你拿到手就能拆开、看懂、写对。7.1 命名规范:五条构词规则
「域前缀 / 功能词根 / 方位位置 / 语义后缀」按固定顺序驼峰拼接,缩略语连写,接口名以数字 1 收尾。
| 缩略语连写,驼峰拼接 | AxisActrHei | ||
| 方位顺序固定:行位 → 侧位 | CbnLiFrntLeIndcrReRi(后右) | ||
| 语义后缀收尾 | Sts1Req1/Cmd1/PosnSts1/Dfct1 | ||
| 接口名以数字 1 结尾 | 1,区分同名族接口;端口(Port)名通常不带数字 | TrsmPosn1、端口 TrsmPosnFor-Pase | |
| 占位符实例化 | [Seat][SeatAxis]/[ext_light]/[IntrLiActr] 等占位符批量生成具名实例 | [ext_light]BrkLiLe、FogLiFrntLe… |
7.2 语义后缀(信号"类型"词尾)——最常见 12 个
7.3 方位与位置词根(构词的"坐标")
7.4 功能词根总表(按域分组穷举)
Li = Light,前缀置前或置中):Seat / Axis / Actr 组合):Lock / Pase / Trsm / Keyls):7.5 官方缩写表(文档 Acronyms 原文,22 条)
7.6 外灯术语表(4.6.14,常用光源名词,读外灯接口必用)
7.7 三个易踩的坑(同形异义警告)
| Re ≠ Ri | ReRi = Right(右)。IndcrReLe = 左后转向灯,IndcrFrntRi = 右前转向灯 | |
| Tr ≠ Trlr | TrTrlr = Trailer(拖车,如 BrkLiTrlrLe) | |
| Ce vs Cen | Cen 常见(CbnLiFrntCen),Ce 是缩写变体(仅 SideMkrCeLe / CornrMkrCeRi 等少数) | |
| Alrm vs Alm | ||
| Hi/Lo 双义 | BeamHi/BeamLoHiMntd = High Mounted(高位安装) | |
| Sts1 vs Sts | 1(Sts1),端口名不带(如端口 LockgFb vs 接口 LockgFbReq1) |
八、附录:全文信号索引总表
雨刮洗涤
内饰灯
座椅调节
外部照明
喇叭
端子钳控制
发动机防盗
座椅通风加热
被动进入(PASE)
| 3 个实例 | ||
| 2 个实例 | ||
| 2 个实例 | ||
| 3 个实例 | ||
车身传感器
索引说明:RKE、中央门锁、除霜、ATWS、后视镜、雨刮(除 RainAmountStatus 外)、敞篷等集群在 268 号文档中未给出具名信号,其接口名以 AI 主表(MOD_AISpecification)为准——这也正是"读接口表看 AI 主表"这条规则的落点。
九、结语:车身域的"稳定"是最大的红利
文末彩蛋:PDF 文档翻译服务
英文技术文档,读得懂单词,串不起逻辑? ——这个问题,本号可以帮你解决。
purchasable SW-C、in-band invalidation、lights-off-glitch 这种"单词都认识、连起来懵"的句子。如果你正被这类文档挡在门口,或者要给团队准备一份能直接落地的中文版本——后台回复「翻译」,把 PDF 发过来即可评估报价。PDF精翻:中文+中英对照
「翻译」→ 获取 PDF 文档翻译服务详情;
夜雨聆风