解析解析AUTOSAR CAN诊断实现诊断实现
AUTOSAR是由汽车OEM和供货商共同推出的一种汽车电子嵌入式软件分层架构。该分层架构由微控制器抽象
层、ECU抽象层、服务层、执行时环境(RTE)和应用层组成,前三层被统称为基础软件(BSW)。 AUTOSAR
各层软件的通信通过三类接口实现,分别是标准接口、AUTOSAR接口和标准AUTOSAR接口。其中,标准接口
用于BSW各个模块之间的通信,已用C语言定义,如void Adc_Init(const Adc_ConfigType* ConfigPtr)。
AUTOSAR接口用于软件构件(SW-C)之间的通信或者软件构件和ECU固件(IO硬件抽象、复杂设备驱动)之间的
通信,这类接口命名以“
AUTOSAR是由汽车OEM和供货商共同推出的一种汽车电子嵌入式软件分层架构。该分层架构由微控制器抽象层、ECU抽
象层、服务层、执行时环境(RTE)和应用层组成,前三层被统称为基础软件(BSW)。
AUTOSAR各层软件的通信通过三类接口实现,分别是标准接口、AUTOSAR接口和标准AUTOSAR接口。其中,标准接
口用于BSW各个模块之间的通信,已用C语言定义,如void Adc_Init(const Adc_ConfigType* ConfigPtr)。AUTOSAR接口用
于软件构件(SW-C)之间的通信或者软件构件和ECU固件(IO硬件抽象、复杂设备驱动)之间的通信,这类接口命名以“Rte_”为前
缀。标准AUTOSAR接口用于软件构件存取AUTOSAR服务。依赖这种分层架构和接口定义,AUTOSR显著提高了汽车电子嵌
入式软件的可重用性——层级越高者,可重用性越强。值得注意的是:
* 微控制器抽象层层级,随微控制器的更换而更换;
* RTE虽然层级仅低于应用层,但由于它负责着应用层和BSW之间的桥梁作用,和硬件的耦合性,不具有可重用性;
* 应用层(除传感器、执行器相关的软件构件外)完全独立于硬件,具有的可重用性。
图1:AUTOSAR分层架构。
汽车诊断简介汽车诊断简介
目前,整车厂和供货商采用在线诊断与脱机诊断相结合的诊断方法。在线诊断通过ECU内部软硬件实现自诊断。在汽车
执行过程中,自诊断系统实时监控电子控制系统各组成部分的工作状态,因而检测电子控制系统中的故障。自诊断系统一方面
将检测出的故障通过一定的方式(比如警报指示灯)向驾驶员发出警告,另一方面将故障程序代码及相关数据存入ECU内存。脱
机诊断通过外部诊断设备读取相应的诊断信息,实现诊断作业。实现脱机诊断的关键在于如何实现诊断设备和ECU之间的通
信机制和诊断服务,即诊断协议。
目前,诊断协议标准主要分为ISO和SAE两种体系。美国使用SAE标准体系,包括中国在内的多数国家使用ISO标准体
系。在乘用车领域,OEM正从自定义诊断协议逐渐转向ISO标准。在商用车领域,OEM沿用SAE诊断,欧洲OEM在此基础上
增加了ISO诊断。表1列出了部分ISO和SAE标准对照。
评论1