一种多功能故障诊断仪系统的设计与实现

2018-05-09 01:29赵文杰张晓东董建奇
汽车电器 2018年4期
关键词:诊断系统诊断仪适配器

赵文杰,张晓东,李 静,董建奇

(北奔重汽(北京)汽车研发有限公司,北京 102308)

随着整车电控系统的不断增多,整车电控系统故障诊断各自分离,像发动机、变速器、防抱死系统、车身系统等,它们都有各自专用诊断工具,诊断工具品种多,传输协议不一致,连接接口不一致,诊断效率低。为了提高整车电控系统故障诊断效率,解决主机厂集成诊断的问题,在整车网络架构基础上,基于控制器诊断协议以及主机厂故障解决经验,结合系统台架、实车测试手段,开发一款诊断功能覆盖全面、扩展性强的多功能诊断仪系统,满足主机厂和售后服务系统诊断需求。

1 整车网络架构分析

首先对北奔重型载货汽车的网络架构进行分析。目前北奔重型载货汽车主要由车身总线和动力总线组成。以北奔重型载货某款车型为例,车身总线主要有组合仪表IC、车载终端TP、驾驶员门模块TMFTMB、车身控制器CBCU等节点。动力总线主要有发动机控制器EMS、后处理单元DCU、防抱死系统ABS、变速器单元TCU、缓速器单元RCU等节点。根据整车网络规划以及控制器诊断需求,车身总线、动力总线以及部分控制器诊断总线均在整车OBD预留点位定义口。整车网络如图1所示。

2 控制器诊断协议分析

根据对不同厂家控制器的诊断协议调研,目前控制器的诊断主要有K线诊断和CAN线诊断。

2.1 K线诊断

K线诊断主要采用的是Keyword Protocol 2000(KWP2000)协议,采用ISO 14230标准。其OSI参考模型如图2所示。

ISO 14230-1中规定了K线通信的信号和电气特性,包括信号传输电压、波特率、编码方式等信息。根据对供应商控制器诊断协议调研,K线采用的波特率为10 400b/s。

图1 某车型网络架构

图2 KWP2000 OSI参考模型

ISO 14230-2中规定了数据链路层规范,包括报文结构、初始化过程、通信连接管理、定时参数和错误处理等内容。KWP2000协议报文结构由报文头、数据字节以及校验和3部分组成。如图3所示。

图3 KWP2000报文数据格式

1)报文头。最大由4个字节组成:①格式字节(Fmt)包含了报文的形式和形态信息。2个比特位(A0和A1)给出寻址信息,6个比特位(L0-L5)给出数据字节。②目标地址(Tgt)指明向哪个通信节点传输信息。③源地址(Src)指出信息来自哪一条通信节点。④长度(Len)确定有用数据字节的数量,最大255个字节。目标字节、源地址以及长度字节都与格式字节的参数有关。

2)数据域。每个报文可发送最高255个字节的有用数据,有用数据的第一个字节总是服务标识字节(Sid),之后紧跟着的是与该服务有关的数据字节。

3)校验和。除校验和自己之外的报文中全部字节的模数值。

ISO标准中给出了2种初始化方法:5波特率初始化和快速初始化。目前控制器使用的是快速初始化。在快速初始化时,诊断仪发送1个唤醒模式(WuP)。该模式由一个25 ms的低电平和一个25 ms的高电平组成。在WuP发送完后,诊断仪发送10 400b/s波特率的通信服务,控制器回复1个包括关键字节在内的主动应答。此后结束初始化,可以开始常规通信。如图4所示。

图4 K线初始化

ISO 14230-3规定了应用层的服务规范,包括诊断管理功能组、数据传输功能组、诊断信息传输功能组、输入/输出控制功能组、远程启动ECU例程功能组、数据上载/下载功能组和扩展功能组等服务。

2.2 CAN线诊断

CAN线主要采用的协议为UDS(Unified diagnostic services)协议。其OSI参考模型如图5所示。

基于CAN总线的KWP2000协议,即ISO15765协议,其中ISO 15765-1为物理层和数据链路层,ISO 15765-2对应网络层,ISO 15765-3对应于应用层。在早期的版本中,ISO 15765使用的是ISO 14230的应用层,在以后的版本中采用的是ISO 14229的标准。ISO 15765-3规定了服务命令的格式,没有规定服务的具体内容,ISO 14229-1规定了服务的具体内容。基于CAN总线的UDS是在ISO 15765-3和ISO 14229-1两个相关的协议基础上定义的诊断服务。

在基于CAN总线的诊断协议中,物理层和数据链路层采用基于ISO 11898的CAN总线底层协议。调研的诊断协议中波特率分为250kb/s和1Mb/s两种。采用物理寻址的方式。物理地址格式如表1所示。

图5 UDS OSI参考模型

表1 CAN ID格式

网络层15765-2中定义了数据的封装与解封装、分包和组包、多帧处理等问题。其中数据帧分为以下4种情况:单帧(SF)、首帧(FF)、连续帧(CF)、流控制(FC)。如表2所示。

表2 帧格式

应用层采用ISO 14229-1和ISO 14230-3协议,主要定义了诊断服务功能,包括诊断服务管理、数据传输、输入输出控制、启动例程等服务。

2.3 总结

经过调研,控制器诊断协议主要分为CAN线诊断和K线诊断。K线诊断的控制器在物理层和数据链路层都基本一致,在应用层诊断协议有所差异。CAN线诊断的控制器在波特率和应用层诊断协议有差异,其他基本一致。如表3所示。

在应用层协议中,不同控制器使用的诊断服务不同,比如K线的控制器在读取故障码功能时,使用的服务有18(readDiagnosticTroubleCodesByStatus)和13(readDiagnosticTroubleCodes)服务。CAN线的控制器在读取故障码功能时,使用的服务有17(readStatusOfDiagnostic TroubleCodes)、19(readDTCInformation)和18(readDiag nosticTroubleCodesByStatus)服务。各控制器诊断服务的子服务也存在较大差别。

表3 控制器诊断协议汇总

3 诊断系统设计

根据整车网络架构以及控制器诊断协议的分析,结合主机厂实际诊断需求设计诊断系统。

3.1 诊断系统功能设计

根据上述诊断协议分析,设计诊断系统诊断功能如下。

1)系统识别功能 诊断仪可以识别不同控制器的软、硬件版本等信息。

2)读取/清除故障码功能 ①读故障码:诊断仪可以读取控制器当前故障和历史故障;②清故障码:通过诊断仪能够实现历史故障的清除;③冻结帧:诊断仪可以读取控制器故障码的冻结帧。

3)执行器动作测试 诊断仪可以对电控单元发送命令,使其执行负载动作,对负载进行检测。

4)控制器标定 诊断仪能对控制器参数进行标定。

5)数据流监控 诊断仪可以动态监控控制器端口信号的输入输出状况。

6)数据刷写 诊断仪可以实现控制器应用层数据的刷写。

7)故障维修指导 诊断仪配备整车电控系统故障维修数据库,当出现故障时,诊断仪可以给出相应故障的维修指导,方便用户排查故障。

3.2 诊断系统总体架构

诊断系统主要由PC软件和硬件适配器组成。在诊断应用模块中,进行控制器诊断参数(诊断协议、波特率、诊断方式、适配器参数等)配置,之后调用协议栈模块进行诊断命令请求发送,硬件驱动模块驱动适配器发送报文与整车网络中的控制器进行信息交互,诊断响应模块根据控制器响应命令进行逻辑处理,之后将信息传输给报文解析模块并向上层输出显示接口,最后界面显示模块进行数据显示。数据管理模块用于用户权限、控制器分类、诊断参数等信息管理。数据库模块用于诊断系统数据存储管理。维修帮助模块用于整车电控系统故障维修指导管理。系统框架如图6所示。

3.3 诊断系统软件架构设计

图6 诊断系统框架

根据不同控制器的诊断协议以及诊断功能的设计,诊断系统软件架构设计为适配器驱动层、标准协议层、业务逻辑层、业务显示层和控制器业务显示层。如图7所示。

1)适配器驱动层 将适配器驱动进行二次封装,输出统一接口供上层调用。

图7 软件架构

2)标准协议层 实现标准协议的各种标准服务(各标准协议对应OSI模型中的数据链路层、网络层、应用层的实现),为上一层提供标准服务调用接口。

3)业务逻辑层 实现读/清故障码、系统信息、数据流、执行器测试、参数标定、数据刷写等各种业务的通信逻辑,并向上一层输出显示结果。

4)业务显示层 UI设计,实现各个业务的显示,供上层动态调用。

5)控制器业务显示层 实现用户权限管理、车型分类、控制器选择等功能,并根据配置信息调用下层接口,显示控制器诊断功能。

3.4 诊断系统硬件设计

硬件适配器的主要功能就是对整车网路中CAN线、K线数据进行收发,并将数据转化为USB数据或WIFI数据传给上位机。

根据控制器诊断协议分析以及整车控制器网络架构设计适配器。适配器一端通过USB/WIFI方式与上位机通信,另一端直接连接整车OBD口。适配器收到上位机发送的信号后,控制跳线器电路,将适配器的CAN/K路与所需的整车OBD口的CAN路/K路导通,随后MCU即可发送CAN/K数据与整车网络中的控制器进行数据交互。硬件结构如图8所示。

图8 系统硬件结构

4 诊断系统测试

经过台架和实车测试,多功能诊断仪系统可以根据需要与整车任意CAN/K网络通信。设计的多功能诊断仪系统可以实现不同厂家控制器的诊断功能,可以实现控制器信息读取、历史故障码清除、故障码查看、冻结帧查看、动态数据流监测、执行器动作测试、参数标定、控制器应用层程序刷写等诊断功能。多功能诊断仪系统配备故障维修系统,提供相关故障维修指导帮助,方便指导用户快速维修故障。

5 结论

通过以上方法设计的多功能诊断仪系统,实现了一套系统即可实现不同控制器的诊断,实现北奔全系列车型电控系统的诊断功能。北奔多功能诊断仪系统具备可扩展性,可以快速增加新控制的诊断功能。目前北奔多功能诊断仪系统已经批量应用于北奔研发系统、生产系统和售后服务系统,有效解决了电控系统故障诊断问题,提高故障诊断效率,得到广大用户的一致好评。

参考文献:

[1] 郭凯凯.CAN总线UDS的研究与应用[D]. 淮南:安徽理工大学,2013.

[2] 李锐.基于ISO15765的车载CAN网络诊断设计[J].计算机工程,2012(38):36-38.

[3] 张宏, 詹德凯, 林长加. 基于CAN 总线的汽车故障诊断系统[J]. 汽车工程, 2008, 30(10):934-937.

[4] ISO 15765-2:2004 Road vehieles-Diagnostics on Controller Area Networks (CAN) -Part2:Network layer services[S].

[5] ISO 15765-3:2004 Road vehieles-Diagnostics on Controller Area Networks (CAN) –Part3:Implementation of unified diagnostic services(UDS on CAN) [S].

[6]ISO14230-3:Keyword protocol 2000 - Part 3:ApplicationLayer[S].

[7][德]莱夫(Reif,K.). BOSH汽车电气与电子[M].孙泽昌,译.北京:北京理工大学出版社,2014.

猜你喜欢
诊断系统诊断仪适配器
医用超声诊断仪超声源计量检定问题分析
日立EUB 8500E彩色超声诊断仪的维修与升级
迈腾B8轿车启动防盗系统故障分析
汽车故障的综合诊断方法
欧克诊断仪推出行业高配极致双模诊断系统
基于3D打印的轻型导弹适配器
断路器检测系统与诊断系统研究
电源适配器怎么选
数控机床故障诊断系统的设计与实现
6款电力线网络适配器横向评测