电子工程专辑
UBM China

AUTOSAR CAN诊断实现研究

上网日期: 2010年03月25日 ?? 作者: 刘小燕 ?? 我来评论 字号:放大 | 缩小 分享到:sina weibo tencent weibo tencent weibo


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友

关键字:AUTOSAR? CAN? 软件架构?

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显著提高了汽车电子嵌入式软件的复用性——层级越高者,复用性越强。值得注意的是:

l 微控制器抽象层层级最低,随微控制器的更换而更换;

l RTE虽然层级仅低于应用层,但由于它承担着应用层和BSW之间的桥梁作用,和硬件的耦合性最高,不具有复用性;

l 应用层(除传感器、执行器相关的软件构件外)完全独立于硬件,具有绝对的复用性。

图1 AUTOSAR分层架构
图1 AUTOSAR分层架构

汽车诊断简介

当前,整车厂和供应商采用在线诊断与离线诊断相结合的诊断方法。在线诊断通过ECU内部软硬件实现自诊断。在汽车运行过程中,自诊断系统实时监控电子控制系统各组成部分的工作状态,从而检测电子控制系统中的故障。自诊断系统一方面将检测出的故障通过一定的方式(比如报警指示灯)向驾驶员发出警告,另一方面将故障代码及相关数据存入ECU存储器。离线诊断通过外部诊断设备读取相应的诊断信息,实现诊断操作。实现离线诊断的关键在于如何实现诊断设备和ECU之间的通信机制和诊断服务,即诊断协议。

目前,诊断协议标准主要分为ISO和SAE两种体系。美国使用SAE标准体系,包括中国在内的多数国家使用ISO标准体系。在乘用车领域,OEM正从自定义诊断协议逐渐转向ISO标准。在商用车领域,OEM沿用SAE诊断,欧洲OEM在此基础上增加了ISO诊断。表1列出了部分ISO和SAE标准对照。

表1 ISO与SAE标准对照(不含SAE J1939)
表1 ISO与SAE标准对照(不含SAE J1939)

AUTOSAR CAN诊断实现

1) 诊断服务

目前,AUTOSAR V3.1诊断部分支持9个OBD服务(如表2所示),14个UDS服务(如表3所示)。

表2 AUTOSAR支持的OBD服务
表2 AUTOSAR支持的OBD服务

表3 AUTOSAR支持的UDS服务
表3 AUTOSAR支持的UDS服务

依据表2和表3可知,AUTOSAR不支持OBD中的0x05服务(请求氧传感器监测结果),原因在于基于CAN线的0x05服务在0x06中实现。不支持UDS中的0x28(通信控制)、0x34(程序下载)、0x35(程序上传)、0x36(数据传输)和0x37(请求传输退出)服务,且0x10服务不支持编程会话和扩展会话这两种子功能。这些服务主要用于ECU重新编程,因此AUTOSAR不支持Bootloader。

虽然AUTOSAR目前不支持上述服务,但并未限制开发者对其进行扩展。

2) 软件架构

AUTOAR架构中和诊断相关的模块如图2所示。

图2 AUTOSAR CAN诊断相关模块
图2 AUTOSAR CAN诊断相关模块


1???2?下一页?最后一页





我来评论 - AUTOSAR CAN诊断实现研究
评论:
*? 您还能输入[0]字
分享到: 新浪微博 qq空间
验证码:
????????????????
?

关注电子工程专辑微信
扫描以下二维码或添加微信号“eet-china”

访问电子工程专辑手机网站
随时把握电子产业动态,请扫描以下二维码

?

5G网络在提供1Gbps至10Gbps吞吐量方面具有很好的前途, 并且功耗要求比今天的网络和手机都要低,同时还能为关键应用提供严格的延时性能。本期封面故事将会与您分享5G的关键技术发展,以及在4G网络上有怎样的进步。

?
?
有问题请反馈
推荐到论坛,赢取4积分X