基于R8C的汽车OBD通用故障诊断仪设计
时间:09-18
来源:作者:黄森仁 郑宏 龚进峰 戎辉
点击:
0 引 言
车载诊断系统(On-Board Diagnostics,OBD)具有识别可能存在故障的区域的功能,并以故障代码的方式将该信息储存在ECU(电子控制单元)的存储器内,通过OBD的故障诊断仪可以将存储于车内ECU的故障代码及相关信息读取出来,以方便车辆管理和维修使用。OBD系统最初是为了控制日益严重的汽车污染问题而提出的,起源于1982年CARB制定的排放法规,随后在1996年实施新的OBD Ⅱ要求。欧共体在2001年也要求欧洲各国汽车制造商生产的轿车都相应配置欧洲电控汽车微机故障诊断系统(European On-board Diagnosis System,EOBD)。在我国,2005年4月国家环境保护总局和国家质量监督检验检疫总局联合颁布了GB18352.3-2005((轻型车辆污染物排放限值及测量方法(中国Ⅲ、Ⅳ阶段)》,简称"国Ⅲ、Ⅳ"。根据国Ⅲ要求,2008年7月1日起第一类汽油车(座位总数不超过6座,且最大总质量不超过2 500 kg的M1类车辆)要求装有OBD系统,在用车符合性检查同步执行。
本文根据GB18352.3对OBD系统及故障诊断装置的要求,在充分研究ISO和SAE有关的OBD标准及通信协议的基础上,设计了一种基于瑞萨公司的 R8C微控制器--R5F21237的汽车OBD通用故障诊断仪。该诊断仪可兼容所有GB18352.3规定的通信协议,可以诊断ISO 15031-5所规定的所有诊断服务,并具有成本低和携带方便的特点。
1 汽车OBD通用故障诊断仪的要求
根据GB18352.3的要求,与车辆OBD系统通信的外部诊断设备必须符合ISO 15031-4"道路车辆--车辆与排放相关的外部诊断设备之间的通信第3部分:外部故障诊断设备的要求"的有关要求。这些要求主要包括了统一诊断连接器,兼容的通信协议,标准的故障代码和诊断服务范围四个方面。
1.1 诊断连接器
OBD通用故障诊断仪与车辆之间的连接器使用统一的诊断连接器,其引脚配置定义如图1所示,其中没有定义的引脚可以保留给诊断仪以后扩展使用。
1.2 通信协议
OBD 通用故障诊断仪与车辆之间的通信系统可以使用的通信协议有ISO 9141,SAE J1850 41,6 Kb/sPWM(脉宽调制),SAEJ1850 10,4 Kb/s VPW(可变脉宽),ISO 14230(KW 2000),ISO 15765-4(CAN),SAE J1939-73(CAN)。根据SAE J1978或ISO15031-5要求,任何车辆只允许使用一种通信协议,为了兼容各种车型的OBD系统,汽车通用故障诊断仪必须支持以上所有协议。
1.3 诊断服务范围
汽车通用故障诊断仪诊断内容包括九个服务模式,详细内容如下:
读取当前动力系统诊断数据 目的是获得排放相关的数据值,包括模拟输入、输出,数字输入、输出和系统状态信息。
读取系统冻结帧 目的是收集动力系统排放相关的冻结帧以及制造商的特殊需要的其他系统冻结帧。读取故障诊断代码 汽车通用故障诊断仪获得车辆各系统的常规故障诊断代码。
清除/重置排放相关的诊断信息汽车通用故障诊断仪提供清除车辆各ECUs故障诊断信息的一种方法。这些故障诊断信息包括:诊断故障代码的数量、诊断故障代码、冻结帧数据的故障代码、冻结帧数据、系统监控测试的状态、车载监控测试结果、MIL激活时行驶的里程、DTC清除后预热的次数、DTC清除后的里程、MIL激活时发动机运转的时间、诊断故障代码清除后的时间以及其他制造商定义的其他记录信息。
读取氧传感器监控测试结果 汽车通用故障诊断仪获得车载氧传感器监控测试结果。
读取车载的特殊监控系统的监控测试结果 汽车通用故障诊断仪获得特殊部件/系统的非连续监控的车载诊断监控测试结果。例如催化器的监控和蒸发监控系统等。
读取在当前或最近的驾驶期间探测到的与排放相关的诊断故障代码 汽车通用故障诊断仪获得在当前或最近的驾驶期间探测到诊断故障代码。目的是帮助技术服务人员在车辆维修后,或清除诊断信息之后,通过单个驾驶周期获得测试维修的效果。
读取随车系统、测试或部件的控制 目的是允许汽车通用故障诊断仪能够控制随车系统、测试或部件的操作。
读取车辆信息 汽车通用故障诊断仪可以请求说明车辆的车辆信息,比如车辆身份识别码和校准ID等。
1.4 诊断故障代码(DTCs_Diagnostic Trouble Code)的显示
通用故障诊断仪读取的OBD诊断故障代码由两字节组成,在显示时要按照1个字母+1位十进制数字+3位十六进制数字的标准显示方式显示。读取的两字节数据到标准显示方式的转换关系如图2所示。DTCs按照开头的字母一共分为四类,其中B表示车身类DTCs,C表示底盘类DTCs,P表示动力类DTCs,U 表示网络类DTCs。
2 汽车通用故障诊断仪的设计
2.1 系统的硬件设计
本设计的硬件部分主要分为四个模块,硬件结构图如图3所示。
车载诊断系统(On-Board Diagnostics,OBD)具有识别可能存在故障的区域的功能,并以故障代码的方式将该信息储存在ECU(电子控制单元)的存储器内,通过OBD的故障诊断仪可以将存储于车内ECU的故障代码及相关信息读取出来,以方便车辆管理和维修使用。OBD系统最初是为了控制日益严重的汽车污染问题而提出的,起源于1982年CARB制定的排放法规,随后在1996年实施新的OBD Ⅱ要求。欧共体在2001年也要求欧洲各国汽车制造商生产的轿车都相应配置欧洲电控汽车微机故障诊断系统(European On-board Diagnosis System,EOBD)。在我国,2005年4月国家环境保护总局和国家质量监督检验检疫总局联合颁布了GB18352.3-2005((轻型车辆污染物排放限值及测量方法(中国Ⅲ、Ⅳ阶段)》,简称"国Ⅲ、Ⅳ"。根据国Ⅲ要求,2008年7月1日起第一类汽油车(座位总数不超过6座,且最大总质量不超过2 500 kg的M1类车辆)要求装有OBD系统,在用车符合性检查同步执行。
本文根据GB18352.3对OBD系统及故障诊断装置的要求,在充分研究ISO和SAE有关的OBD标准及通信协议的基础上,设计了一种基于瑞萨公司的 R8C微控制器--R5F21237的汽车OBD通用故障诊断仪。该诊断仪可兼容所有GB18352.3规定的通信协议,可以诊断ISO 15031-5所规定的所有诊断服务,并具有成本低和携带方便的特点。
1 汽车OBD通用故障诊断仪的要求
根据GB18352.3的要求,与车辆OBD系统通信的外部诊断设备必须符合ISO 15031-4"道路车辆--车辆与排放相关的外部诊断设备之间的通信第3部分:外部故障诊断设备的要求"的有关要求。这些要求主要包括了统一诊断连接器,兼容的通信协议,标准的故障代码和诊断服务范围四个方面。
1.1 诊断连接器
OBD通用故障诊断仪与车辆之间的连接器使用统一的诊断连接器,其引脚配置定义如图1所示,其中没有定义的引脚可以保留给诊断仪以后扩展使用。
1.2 通信协议
OBD 通用故障诊断仪与车辆之间的通信系统可以使用的通信协议有ISO 9141,SAE J1850 41,6 Kb/sPWM(脉宽调制),SAEJ1850 10,4 Kb/s VPW(可变脉宽),ISO 14230(KW 2000),ISO 15765-4(CAN),SAE J1939-73(CAN)。根据SAE J1978或ISO15031-5要求,任何车辆只允许使用一种通信协议,为了兼容各种车型的OBD系统,汽车通用故障诊断仪必须支持以上所有协议。
1.3 诊断服务范围
汽车通用故障诊断仪诊断内容包括九个服务模式,详细内容如下:
读取当前动力系统诊断数据 目的是获得排放相关的数据值,包括模拟输入、输出,数字输入、输出和系统状态信息。
读取系统冻结帧 目的是收集动力系统排放相关的冻结帧以及制造商的特殊需要的其他系统冻结帧。读取故障诊断代码 汽车通用故障诊断仪获得车辆各系统的常规故障诊断代码。
清除/重置排放相关的诊断信息汽车通用故障诊断仪提供清除车辆各ECUs故障诊断信息的一种方法。这些故障诊断信息包括:诊断故障代码的数量、诊断故障代码、冻结帧数据的故障代码、冻结帧数据、系统监控测试的状态、车载监控测试结果、MIL激活时行驶的里程、DTC清除后预热的次数、DTC清除后的里程、MIL激活时发动机运转的时间、诊断故障代码清除后的时间以及其他制造商定义的其他记录信息。
读取氧传感器监控测试结果 汽车通用故障诊断仪获得车载氧传感器监控测试结果。
读取车载的特殊监控系统的监控测试结果 汽车通用故障诊断仪获得特殊部件/系统的非连续监控的车载诊断监控测试结果。例如催化器的监控和蒸发监控系统等。
读取在当前或最近的驾驶期间探测到的与排放相关的诊断故障代码 汽车通用故障诊断仪获得在当前或最近的驾驶期间探测到诊断故障代码。目的是帮助技术服务人员在车辆维修后,或清除诊断信息之后,通过单个驾驶周期获得测试维修的效果。
读取随车系统、测试或部件的控制 目的是允许汽车通用故障诊断仪能够控制随车系统、测试或部件的操作。
读取车辆信息 汽车通用故障诊断仪可以请求说明车辆的车辆信息,比如车辆身份识别码和校准ID等。
1.4 诊断故障代码(DTCs_Diagnostic Trouble Code)的显示
通用故障诊断仪读取的OBD诊断故障代码由两字节组成,在显示时要按照1个字母+1位十进制数字+3位十六进制数字的标准显示方式显示。读取的两字节数据到标准显示方式的转换关系如图2所示。DTCs按照开头的字母一共分为四类,其中B表示车身类DTCs,C表示底盘类DTCs,P表示动力类DTCs,U 表示网络类DTCs。
2 汽车通用故障诊断仪的设计
2.1 系统的硬件设计
本设计的硬件部分主要分为四个模块,硬件结构图如图3所示。