汽车常用的诊断协议

2018-07-12 16:15:02·  来源:电动汽车动力总成  
 
接OBDII的诊断连接器,利用通用型或厂家定制的诊断仪就可以读取车辆的故障信息,特别是排放相关故障以及车辆的特别故障。
接OBDII的诊断连接器,利用通用型或厂家定制的诊断仪就可以读取车辆的故障信息,特别是排放相关故障以及车辆的特别故障。

诊断的主要功能
在线诊断主要如下几个功能:
(1)通过对故障存储器中所存储的信息进行分析,进行针对性的维修。
(2)清除故障存储器中的内容,如故障信息。
(3)利用诊断仪读取控制器的ID值和数据流。
(4)有目的对某个执行器进行激活和测试,以检测其功能。
(5)在EOL下线检测阶段,也可以通过诊断仪对车载控制器进行校验和配置,使得整个Flash-EPROM的编程通过流水线终端编程得以实现。

常用的通信
目前在线诊断常用的通信主要有两种:K线和CAN总线。由于目前大部分车载控制器均配置CAN总线,且CAN总线在速率等方面也占有优势,因此用CAN总线诊断越来越普遍。



图1:诊断系统架构

常用的诊断协议:
(1)KWP71
为串行接口,采用5波特初始化和字节握手信号,采用L线或K线寻址,K线用于双向的数据交互,通讯结构是确定的,服务为标准化。

(2)KWP2000(ISO 14230:1-3)
该诊断协议将诊断仪通过K线与控制器连接,在KWP2000标准中,有不同的建立通信结构的可能性(快速初始化和5波特初始化)。通信服务是确定的,但为用户留下匹配空间。

(3)ISO 15765:1-3(CAN)
将现存的协议ISO14230:1-4移植到CAN上,在不改变诊断仪和控制器之间所交换信息基本结构的情况下,实现CAN总线的传输。



图2:制造商定义的通信OSI参考模型的层

(4)CARB
为CARB要求的通信协议,以当时现有的标准为基础形成。



图3:CARB定义的通信

标定协议:
为满足车辆的控制需求,优化ECU的控制功能及算法,车辆一般需要进行标定,车辆的标定一般也需要使用K线及CAN总线,使用K线的标定协议为McMess协议,使用CAN总线标定的协议为CCP协议。

随着技术的发展,现今车辆使用CAN总线标定的控制器占绝大多数,CAN总线标定用的CCP协议主要是描述在标定过程中标定系统与控制器之间的通信内容,采用CCP协议的标定系统在有效数据传输上要比K线有更高的速率。

CAN通信简介
(1)物理结构
一般地,当前控制器均带有CAN总线硬件收发器,也可以利用该系统进行诊断。

(2)波特率
通常车辆上使用的CAN的波特率为125kbps~1Mbps。例如车身舒适系统上的CAN总线一般采用125kbps,而动力传动系统需考虑实时性的要求,基本要求500kbps以上,而在客车上,采用250kbps的较多。

(3)寻址与消息类型
诊断仪通信主要根据ISO15765标准的要求。ISO15765-3或ISO14229-1中的通信服务和在ISO14230-3中定义的相似。

与K线协议的区别基本在于消息的结构和消息传输。当通过K线传输时,一个消息最大能传输255个数据字节,而CAN仅能传输8个数据字节。为了将消息服务移植到CAN上,数据字节被报文头和校验和分开,被置于一个类似的新的消息结构中。控制器地址就采用CAN自身的标识符,借助不同的CAN标识符便能进行功能的或物理的寻址。

寻址有不同的方法:标准的寻址和扩展的寻址。一般情况下采用标准的寻址。对于较长的消息,无法在一个CAN帧内(标准寻址传输7个字节,扩展寻址传输6个字节)完成传输,须将其分段成多个CAN帧,并由接收者重新进行组合。

(4)不分段的消息
传输的数据字节总数不大于7个字节时(标准寻址情况下),进行单帧传输。第一个要传输的字节是PCI(协议控制信息),PCI的4位高字节用来指示该帧为单帧,低4位用来指示数据长度(DL),如图4。该数据以单一的消息形式由发送者传输给接收者(如图5)。



图4:不分段信息的结构



图5:单帧传输
(5)分段的信息
对大于7个的数据字节(扩展寻址)进行传输,诊断仪首先发送一初始帧到CAN总线上,控制器以一个流控制帧返回进行确认,之后后续的数据再以连续的帧的形式进行传输。



图6:分段传输消息

初始帧包含PCI、附加的长度字节(DL,Data Length),以及前6个数据字节(Data)。PCI在高4位中包含有用于表示为首帧的信息。在低4位字段中是扩展数据长度(XDL)。XDL与DL一起组成一个12位的数据字,用于标示0~4095之间的数。



图7:初始帧结构

发送者发送初始帧,并等待接收者的接收确认,为此,接收者发送流控制帧。该消息也包含PCI。其高4位表示该帧为流控制帧,低4位表示流状态(FS),通过FS来决定随后的数据帧(连续帧)是否允许发送。

信息组大小(BS)提供如下信息:在不需传输后续流控制帧的情况下,可连续接收多少个连续帧。STmin(分割时间)中的值给出了2个连续帧之间必须保持多少的时间间隔。



图8:流控制帧结构

连续帧在流控制帧后发送。连续帧PCI的高4位字段中还是包含识别信息,低4位是序列码(SN)。第一次发动的连续帧SN设置为1,其后每发送一个连续帧,SN加1,超过15后重新归0。根据序列码,接受镇能够判别是够所有的连续帧都已被接收到。



图9:连续帧结构

小结
随着电子产品越来越多,对于其功能的要求也越来越多,除了必要的基本执行功能之外,对其故障模式的识别及在失效模式下如何保证产品的安全性等要求越来越多,Functional safety, Cyber Security及SOTIF(预期功能安全)等重视程度逐渐提升,车辆诊断也随之发展,随着智能网联技术的发展,远程诊断逐渐成为现实,通过云端数据的分析,也可以进行预诊断,带来更方便的用户体验。


分享到:
 
反对 0 举报 0 收藏 0 评论 0
沪ICP备11026917号-25