uds帧格式_UDS汽车协议总结(一)

关于UDS的介绍,知乎上已经有很多大佬讲过了,小白也自我总结一下。

首先了解车载通信,ECU发送信息给其他ECU同时也接收来自其他ECU的信息,这个过程是ECU通过车载网络完成的,例如CAN 总线网络。

诊断通信的过程就是诊断仪和ECU交换数据,诊断仪连接到车载网络,当诊断仪发送request请求给指定的ECU,ECU会针对request进行response回复,从而完成诊断通信,诊断通信需要一个诊断协议,来定义这些request和response的格式和内容,其中包含一系列的通信参数和诊断服务(request/response),典型的诊断协议包含KWP2000和UDS。

ISO 14229-1(UDS)和ISO 15765-3(Diagnostic on CAN)结合起来共同构成了诊断协议UDS on CAN。

CAN总线诊断OSI诊断规范

ISO 14229-1 对应于OSI的层7,即应用层,它定义了诊断服务的格式

ISO 15765-2是诊断服务在CAN总线上传输的实现方式,对应于OSI是层4,传输层。对于classical CAN总线来说,它一帧只能承载8个字节,而上层的诊断服务却可能超过8个字节,这时候就需要传输层对数据进行分包重组流控制

ISO 11898是CAN总线的规范,对应于OSI是层一和层二,即物理层和数据链路层。对于物理层来说,定义了CAN总线信号在双绞线上的电压形式,对于数据链路层来说,定义了CAN帧的各个域的用途。

这三部分协议一起使用,就可以实现完整的诊断功能了。总结来说,ISO 14229-1生成诊断服务,ISO 15765-2对诊断服务进行分包并把分包后的数据交给ISO 11898,ISO 11898给收到的数据加上CAN总线特有的包头和包尾,然后通过双绞线以电压差的形式发送出去。

///看了张工 @张丁 的专栏介绍对诊断了解很多,收益颇深

关于UDS的介绍,知乎上已经有很多大佬讲过了,小白也自我总结一下。 首先了解车载通信,ECU发送信息给其他ECU同时也接收来自其他ECU的信息,这个过程是ECU通过车载网络完成的,例如CAN 总线网络。 诊断通信的过程就是诊断仪和ECU交换数据,诊断仪连接到车载网络,当诊断仪发送request请求给指定的ECU,ECU会针对request进行response回复,从而完成诊断通信,诊断通信需要一个诊断协议,来定义这些request和response的格式和内容,其中包含一系列的通信参数和诊断服务(request/response),典型的诊断协议包含KWP2000和UDS。 ISO 14229-1(UDS)和ISO 15765-3(Diagnostic on CAN)结合起来共同构成了诊断协议UDS on CAN。 CAN总线诊断OSI诊断规范 ISO 14229-1 对应于OSI的层7,即应用层,它定义了诊断服务的格式 ISO 15765-2是诊断服务在CAN总线上传输的实现方式,对应于OSI是层4,传输层。对于classical CAN总线来说,它一帧只能承载8个字节,而上层的诊断服务却可能超过8个字节,这时候就需要传输层对数据进行分包重组流控制 ISO 11898是CAN总线的规范,对应于OSI是层一和层二,即物理层和数据链路层。对于物理层来说,定义了CAN总线信号在双绞线上的电压形式,对于数据链路层来说,定义了CAN帧的各个域的用途。 这三部分协议一起使用,就可以实现完整的诊断功能了。总结来说,ISO 14229-1生成诊断服务,ISO 15765-2对诊断服务进行分包并把分包后的数据交给ISO 11898,ISO 11898给收到的数据加上CAN总线特有的包头和包尾,然后通过双绞线以电压差的形式发送出去。 ///看了张工 @张丁 的专栏介绍对诊断了解很多,收益颇深
经验分享 程序员 微信小程序 职场和发展