目录
扩展生产错误(Extended Production Errors)
往期推荐
- ETAS工具链自动化实战指南<一>
- ETAS工具链自动化实战指南<二>
- ETAS工具链自动化实战指南<三>
- AUTOSAR工程师必读:Artop的核心功能
- Vector工具链自动化实战指南<一>
- isolar高手秘籍| ECU Configuration三分钟速成!
- 掌握核心步骤:RTA-BSW以太网配置全解析
- 一文详解TC399 CAN MCAL 配置
- LSL常见应用场景及示例<一>
- LSL常见应用场景及示例<二>
- LSL常见应用场景及示例<三>
- 为什么Autosar钟情arxml而非json?大揭秘!
- 深入浅出:SOME/IP-SD的工作原理与应用
- 【技术进阶】|一文掌握Autosar ComStack的精髓!
- Autosar培训笔记整理<一>
- 【AutoSAR进阶】|实战详解ETAS工具链UDS 0x2f服务核心配置!
- 实战详解ETAS工具链CanTp模块自动化配置
在 AUTOSAR(AUTomotive Open System ARchitecture)标准化的软件架构中,BSW(Basic Software,基础软件) 模块会根据其生命周期状态,将错误分类为五种类型:
-
开发错误(Development Error)
-
运行时错误(Runtime Error)
-
瞬态故障(Transient Fault)
-
生产错误(Production Error)
-
扩展生产错误(Extended Production Error)
开发错误(Development Errors)
定义:
开发错误是指在软件开发和调试阶段,由于不符合 AUTOSAR 规范的 API 使用方式、参数配置错误或非法调用导致的错误。这类错误通常会在开发过程中被检测,并且不会进入量产版本。
示例:
-
调用 API 时传递了无效参数,例如向 API 提供超出范围的索引值。
-
违反了 AUTOSAR 规范的 API 调用顺序,例如在调用
Com_ReceiveSignal()
之前未正确初始化Com_Init()
. -
模块未初始化就调用其 API(比如在
ECU State Manager(EcuM)
初始化前调用NvM_WriteBlock()
).
应用场景:
-
开发和测试过程中,BSW 或 ASW(应用软件)工程师通过 DET(Development Error Tracer) 记录并修复错误。
-
主要用于单元测试、集成测试和软件调试阶段,确保软件符合 AUTOSAR 规范。
-
不会 进入量产版本,因为 DET 只在开发模式下启用。
运行时错误(Runtime Errors)
定义:
运行时错误发生在软件运行过程中,即 ECU 进入正常工作状态后仍可能遇到的错误。通常由于外部输入、系统状态或硬件资源不足等问题导致。
示例:
-
内存分配失败(例如
MemStack
申请内存超出系统可用内存)。 -
CAN 通信故障(如
Com_SendSignal()
失败,导致消息未发送)。 -
NvM(Non-Volatile Memory Manager)在 Flash 读写过程中遇到非法地址。
应用场景:
-
需要 BSW 层进行 错误处理和恢复,如 调用错误回调函数(Error Hook)或 FIM(Failure Injection Mechanism)。
-
运行时错误可用于 诊断系统(DTC,Diagnostic Trouble Codes) 记录故障码。
瞬态故障(Transient Faults)
定义:
瞬态故障是指由于 外部环境或硬件波动(如电源、电磁干扰)导致的软件错误。该错误可能是短暂的,并且在重新执行任务后可能会消失。
示例:
-
由于临时电磁干扰(EMI),CAN 信号出现 CRC 校验错误,但下一帧数据正常。
-
LIN 总线由于电压波动,出现临时的通信失败,但总线重试后恢复。
-
由于 ECU 供电波动,导致 ADC 采样数据短暂异常。
应用场景:
-
BSW 采用 冗余机制或错误恢复策略(例如 重试机制、软件滤波)。
-
配合 WDG(Watchdog) 检测系统是否因短暂故障需要复位。
-
适用于需要高可靠性的实时系统,例如 动力系统控制、自动驾驶软件。
生产错误(Production Errors)
定义:
生产错误是在 ECU 生产或制造过程中检测到的错误。这些错误可能与硬件生产缺陷、ECU 编程错误或装配问题有关。
示例:
-
EEPROM 编程失败,导致 ECU 无法正确存储标定参数。
-
在制造过程中,某个 BSW 配置参数未正确写入 Flash(如
ECU_SERIAL_NUMBER
为空)。 -
生产环境中的 ECU ID 不匹配,导致整车网络(如 CAN、Ethernet)通信失败。
应用场景:
-
生产线通过 End-of-Line(EOL)测试 进行故障检测,并决定是否重新烧录 ECU。
-
生产错误通常不会在 ECU 运行时触发,而是在 生产、质检 环节暴露。
扩展生产错误(Extended Production Errors)
定义:
扩展生产错误是一种更详细的生产错误类别,用于生产后的长期监测,通常适用于 OEM(主机厂)和供应商的 车队管理 或 远程诊断 场景。
示例:
-
车辆运行一段时间后,发现 Flash 存储块老化,导致数据存储错误。
-
OTA(Over-the-Air)远程更新时,因 EEPROM 访问问题导致升级失败。
-
由于 ECU 供应商的硬件容差问题,导致部分 ECU 在极端温度下表现异常。
应用场景:
-
OEM 采用 远程诊断(如 UDS,ISO 14229) 监测 ECU 健康状态。
-
结合 车联网(V2X) 进行数据分析,以优化 ECU 可靠性设计。
总结
这些错误分类帮助 AUTOSAR 提高软件可靠性,确保 ECU 在 开发、生产、使用 各个阶段能够检测和应对错误,提高整车系统的安全性和稳定性。