1、概述 随着汽车电子控制单元(ECU)在汽车上的广泛利用,利用车载自诊断(On Board Diagnostics)系统对ECU进行故障诊断的方法是目前汽车故障诊断的主流选择。 目前国内汽车诊断主要以基于CAN线和基于K线为主。基于CAN线的诊断协议有KWP2000和UDS,基于K线的诊断协议为KWP2000。 2、诊断协议标准概述 ISO-9141:早在1996年国际标准化组织颁布基于K线的ISO-9141标准,该标准的应用时间不算太长。 ISO 14230:ISO 14230于1999年出台,又称作Keyword Protocol2000 (kwp2000),该诊断标准是基于K线的,波特率为10.4 kb/s,用单线(K线)通信,也可用双线(K线和L线)通信,目前多用单线通信。IS014230的头格式不是固定的,有3或4个字节,报文传输不用分包,最大可传255个字节数据,K线本质上是一种半双工串行通信总线。过去比较常用,到目前为止,IS014230仍是许多汽车厂商采用的诊断通信标准。 图1ISO 14230 K线数据格式 ISO/DIS 15765:1999年出台ISO/DIS 1 5765(Diagnostics on CAN·based on KWP一2000),此诊断标准是基于ISO 14230在CAN线上的扩充,源于K线的诊断标准。 ISO 15031:2001年6月发布ISO 1 503 1(Communication for emissions—related diag—nostics),此诊断标准的出台主要针对排放系统相关的诊断,其中ISO 1503 1-6中,对故障诊断码的格式进行了详细规定。 ISO 15765:2001年发布了ISO 15765(Diagnostics on CAN—based on UDS),此诊断标准与基于K线的诊断标准不同,这是基于统一诊断服务的诊断。其中的IS015765-3、IS015765—2分别规定了应用层与网络层的实现,在IS015765-2网络层中对ECU的在线上传下载进行了详细的规定。将帧类型分为单帧、第一帧、流控帧和后续帧,此诊断标准对报文进行打包传输,数据以流控帧的机制进行传输,一次最多可传输4095字节的数据。 图2标准CAN帧格式 ISO 14229-1:2006年发布统一诊断服务标准ISO 14229.1(Unified Diagnostic Services)。该国际标准只是规定应用层上诊断规范,该标准的制定是为了针对任何一种连续数据链路,不涉及网络及实现未。定义诊断系统的通用需求,为了实现这一点,该标准基于OSI基本参考模型,如表1所示,其通信系统为7层。其中映射到CAN线上的诊断为IS015765。在其它链路上的映射,如无线局域网、Flexray等的诊断,也将按照IS014229.1(统一诊断标准UDS)执行。 表1 诊断规范与OSI对应关系表 3、K线诊断和CAN线诊断比较 基于K线的ISOl4230相比和基于CAN线的诊断协议IS015765有以下差别: (1)K线通讯速率较低,最大波特率仅为10400bps;CAN总线最大波特率可达1Mbps。 (2)K线采用单端信号传输,抗干扰能力较弱,可靠性较差;CAN总线采用差分信号传输,抗干扰能力强,信号传输的可靠性高。 (3)K线在启动应用层诊断服务之前必须对ECU进行初始化建立连接,且初始化过程比较复杂;基于CAN总线的诊断设备不需要对ECU进行初始化即可进行诊断服务。 (4)K线诊断应用程序开发者必须亲自管理数据传输过程中的字节间定时,并处理底层通讯错误;CAN数据帧以整帧报文的形式进行发送,应用程序开发者不必管理字节间定时,并且CAN总线物理层和数据链路层具备完善的错误检测和错误恢复机制,应用程序不必监视和处理底层通讯错误。 (5)K线网络结构单一,网络管理功能很弱;而利用CAN总线可构建复杂的网络结构,可跨越网段进行远程诊断。 (6)K线网络采用破坏性的仲裁机制,当诊断设备采用功能寻址与多个ECU进行通讯时,为避免总线冲突,ECU开发者必须采取措施保证多个ECU顺序访问总线;而CAN网络采用非破坏性的仲裁机制,并且仲裁过程由数据链路层完成,当诊断设备采用功能寻址与多个ECU进行通讯时,ECU开发者不必考虑总线访问冲突问题。 (7)K线服务报文最大字节长度仅为255,无法满足更长报文的传输要求,并且在长报文的传输过程中用户自己必须采取措施进行连接管理,可靠性和兼容性较差;CAN总线诊断服务报文最大字节长度可达4096(12位),对于长报文的传输,网络层协议还具备标准化和规范化的同步控制、顺序控制、流控制和错误恢复等功能,具备很高的可靠性、兼容性。 (8)在IS015765-2中,明确规定了基于CAN网络的ECU在线上传下载的诊 断通信流程,将上传下载纳入诊断范围内,上传下载的内容按照IS015765-2网络层传输规则进行传输,以实现更标准、更可靠的网络数据传输。 由于K线不能满足数据链路层在网络管理以及通信速率上的局限性,使得K线无法满足越来越复杂的车载诊断网络的需求随着CAN网络在汽车网络上的广泛应用,基于CAN网络的IS015765的诊断则受到广泛应用,它符合现代汽车网络总线的发展趋势,逐渐被越来越多的汽车厂商使用,将成为未来汽车行业的通用诊断标准。 国内外汽车厂商使用较广泛的诊断协议为基于K线的ISO 14230和基于CAN线的IS015765诊断协议。
|