故障诊断通讯接口OBD 下载本文

内容发布更新时间 : 2024/5/18 13:47:01星期一 下面是文章的全部内容请认真阅读。

故障诊断通讯接口OBD-II标准简介

早先的故障诊断仪都是由各个整车制造厂或仪器制造商各自开发的,诊断接口和通讯方式各不相同,不能互相通用。以诊断插座为例,福特车系有7针、25针,奔驰车系有圆形9针、38针、长方形16针等等。这种各自为政的局面不仅给维修工作带来了麻烦,而且也增加了维修成本和人员培训费用,反过来也影响了产品在全球范围的销售。

自1987年起,美国加州大气资源局(CARB)规定车载故障自诊断系统必须能够对汽车排气系部件进行监测。1994年CARB颁布了更为严格的废气排放控制法规,规定与排气相关的部件必须与被称为万能扫描工具的故障诊断仪进行通信。同时,美国环境厅(EPA)也采取相应措施在全美推广使用。在CARB的要求下,美国汽车工程学会(SAE)进一步推进了与故障诊断仪相关的标准化工作,形成了诊断仪接口的OBD-II标准。

OBD-II是ON-BOARD DIAGNOSITICS的缩写,即第二代随车电脑诊断系统,它代表了目前大部分诊断仪的技术水平,可以说是一个实际的标准,因而得到了汽车制造商的支持。其主要特点有:

·诊断插座统一为16针插座,并统一安装于驾驶室仪表板下方。诊断插座如图1所示,引脚定义如表1所示;

·串行数据通信协议采用IS09141和SAE两个标准;

·具有统一的5位故障代码。例如P1352,第一个英文字母代表被测控制器,如P代表发动机电脑控制器(Power),B代表车身电脑控制器(Boby),C代表底盘电脑控制器(Chassis),第二个字代表制造厂,第三个字代表SAE定义的故障范围码,最后两个字代表原厂故障码;

·具有用诊断仪直接读取并清除故障码的功能;

·具有行车记录功能,能记录车辆行驶过程中的有关数据资料; ·具有记忆并重新显示故障信息的功能。 3 V.A.G1551功能简介

V.A.G1551是大众集团内部售后服务通用的汽车电子系统维修、诊断仪器,可以读取电子控制汽油喷射发动机、自动变速箱等十多个汽车电子系统的诊断和测试信息。比如在检修发动机电子时,维修人员可以使用其来读取故障代码,同时也可以读取发动机实时状态参数如转速、水温、负荷、电压、喷油时间等,另外还能向ECU的各执行机构发出强制执行命令。操作时,将诊断仪与汽车排档前的诊断插座连接即可。诊断插座符合OBD-II标准,其中引脚4为车身搭铁,引脚 7为B.D.D16为蓄电池正极,其余引脚均为空。

使用时首先要输入检测对象的地址代码,如发动机电子为01,然后要选择功能,如查询故障代码的功能号为02。具体使用方法见相关资料。

即K线),引脚

诊断插座的引脚7应与汽车上各电子控制系统的K线相连接,诊断仪一次只能与一个电子控制系统通信。开始时,诊断仪以广播的方式通过K线发送识别信息(即地址码),但只有与地址码相对应的电子控制系统才作出响应,于是诊断仪和该电子控制系统开始通信,其余各系统仍处于待机状态。

4 V.A.G1551与发动机电子通信规律初探

由于条件限制,本文只研究了V.A.G1551与Engine Electronics的通信规律,并且ECU只限于MOTRONIC M1.54P。 4.1 利用计算机串口截码

考虑到V.A.G1551与ECU的通信码均为串口信号,只是与RS-232标准串口信号的电压不同,标准串口信号的“1”用-12V表示,“0”用+ 12V表示,而K线的“0”用0~1.3V表示,“1”用12V表示,所以只要设计一块转换卡,把K线的串口信号转换为标准串口信号,即可实现利用计算机串口来截取V.A.G1551与ECU的通信码,从而研究它们的通信规律。转换卡除了能完成电平转换功能外,工作频率要大于10kHz,且输入电阻要大,不至于影响V.A.G1551与ECU的通信。图2给出计算机串口截码原理图。

采用转换卡截码的效率很高,每次截码得到的文件也较小,大约1Kbytes多,并可以直接在编辑软件下阅读,使用

非常方便。下面的任务就是对V.A.G1551的各个功能逐个进行截码研究,弄清在发动机的各个工况下它们是如何进行通信的。

4.2 截码数据分析

下面给出V.A.G1551在功能号04数据块000进行通信时截码得到的数据,并进行简单分析。 在V.A.G1551发出地址码后,ECU回答控制器版本号,如表2所示。

接下来,双方发出握手信号以不中断联系,并且ECU等待V.A.G1551发出指令: 03FC OBF4 09F6 03 03FC 0CF3 09F6 03 03FC 0DF2 09F6 03

V.A.G1551发出功能04-000指令,ECU回答相应信息,并且双方不断问答,直到用户输入“→”: 03FC CEF1 11EE 03

0DF2 0FF0 F40B 659A A25D C837 1DE2 807F SBA4 02FD 00FF 07F8 1FE0 03 03FC 10EF 11EE 03

0DF2 11EE F40B 659A A25D C837 1DE2 807F 5BA4 02FD 00FF 07F8 1EE1 03 03FC 12ED 11EE 03

0DF2 13EC F40B 659A A25D C837 1DE2 807F 5BA4 02FD 00FF 07F8 1EE1 03 接下来双方又进行握手等待,直到用户发出结束指令,通信结束: 03FC 14EB 09F6 03 03FC 15EA 09F6 03 03FC 16E9 09F6 03 03FC 17EB 09F6 03 03FC 18E7 06F9 03

在这些数据中,还可以发现一个特殊的码子,即每一行的第二个数据,经分析,这是一个记数码,通信双方每发出一次信息均加一。并且可以看到,在功能号04数据块000时V.A.G1551发出的命令为11,结束指令为06。双方采用的校验方式为反码,即接收方发出接收码的反码,发送方收到反码后就认为对方接收正确(如V.A.G1551发06,ECU答F9)。

经过多次实验,可以获知V.A.G1551在检测发动机电子的各个功能(包括读故障码和消除故障码)时的通信码,这些通信码为研制与V.A.G1551兼容的汽车故障诊断仪打下坚实的基础。