早期KWP2000/Can协议培训,主要从物理层,链路层方面讲解这两种协议在汽车通信中的物理属性,电气属性,帧结构,交互方式,应答方式等,应用层中只提到了几个常见的应用,如系统进入,读版本信惠,读故障码,清除故障码,读数据流等。在实际通讯数据中,以上应用功能均用到了各种恃定格式的命令,以及命令组合;有些复杂恃殊功能甚至用到了更多的命令组合。这些特定格式的命令组合即为今夫我们要讲的SID、PID应用。
在汽车故障诊断领域,针对诊断设备和汽车ECU之间的数据交换,各大汽车公司几乎都制订了相关的标准和协议。其中,欧洲汽车领域广泛使用的一种车载诊断协议标准是KWP2000 (Keyword Pro-tocol 2000),该协议实现了一套完整的车载诊断服务,并且满足E-OBD(European On Board Diagnose)标准。KWP2000最初是基于K线的诊断协议。由于K线物理层和数据链路层在网络管理和通讯速率上的局限性,使得K线无法满足日趋复杂的车载诊断网络的需求。而CAN (Controller Area Network)网络由于其非破坏性的网络仲裁机制、较高的通讯速率(可达1 M bps )和灵活可靠的通讯方式,在车载网络领域广受青睐,因此,近年来欧洲汽车领域广泛采用了基于CAN总线的KWP2000,即ISO 15765协议,而基于K线的KWP2000物理层和数据链路层协议将逐步被淘汰。
TP2.0 的应用层的数据是根据大众KWP2000 定义的,命令定义及数据流格式相同,编程时用统一的数据转换函数。
本篇文章简要介绍一下基于CAN总线实现的诊断协议的传输层。本文以classical CAN为例,CAN FD原理类似,不单独讲述。
ISO15031支持的汽车OBD口读取的数据项:
其中服务ID,即SID。还有具体一类参数的参数ID,即PID
本篇文章主要从以下几个方面进行讲解
1.OBD用来做什么
2.OBD和UDS的区别
3.OBD硬件接口简介
4.OBD的9大模式介绍