# 038、AutoSAR项目实战:从需求到模型(ARXML)设计
一、从一次深夜调试说起
上周产线反馈,某个ECU的CAN信号在特定条件下会“丢帧”。查了一整天代码,逻辑看起来没问题,最后发现ARXML里一个ISignal的length被误标成了12位,实际硬件只支持8位——工具链生成代码时静默截断,运行时直接丢包。这件事让我再次意识到:ARXML不是“配置文件”,而是嵌入式软件在模型层的真实运行时描述。今天咱们就聊聊,怎么从需求文档开始,一步步做出靠谱的ARXML设计。
二、需求不是纸,是钢尺
客户给的需求文档往往是Excel或Word,里面混杂着功能描述、信号表、时序要求。第一步不是打开工具,而是做需求清洗。我习惯把需求拆成三张表:
- 信号清单:信号名、ID、周期、DLC、初始值、取值范围
- 网络管理:NM类型(OSEK/Direct)、休眠唤醒阈值
- 诊断需求:DID列表、读写权限、安全等级
这里踩过坑:曾经有同事把“发动机转速”单位写成rpm,但实际信号精度是0.25rpm,ARXML里没标scaling,上线后标定组差点骂街。所以记住:每个数字字段必须带单位和精度注释,哪怕注释只在ARXML里保留。
