谢邀,这个问题是要好好的聊一下。
1.OBD是车载故障系统。obd其实是一系列标准的集合。应用层,传输层,数据链路层和物理层。物理层是sae 1969和j1939是诊断接口的定义,数据链路层有k线,can总线和kwp2000等等,这些都是不同年代的产物。obd只是把这些标准集合了起来。在使用obd的时候最主要的特征就是发送PID来请求电控系统数据流和故障码,这个不同的协议实现是不同的。这样在开发诊断设备时,可能要学习不同年代的协议。这个实现基本上是ECU->诊断设备。一般开发诊断设备都要硬件软件一起来。国内的x431就是典型的例子。
2.UDS就是统一诊断服务
UDS和OBD最大的区别就是实现了模块化汽车诊断。ECU->MVCI->诊断设备。中间加了一个MVCI(modular vehicle communication interface)的接口设备。上层的诊断设备只要发送同样的命令就可以得到电控系统的数据,而不关心底层的数据链路和物理层是怎么实现的。这样硬件和软件可以分别开发,是完全不同于obd的开发规范。例子有博世kt700
PS.UDS是大势所趋,目前也在逐步替代OBD,但是可能需要个几年的时间,十年后应该都是UDS了,但是对汽车电子厂商要求比较高。目前德国人走在前面。因为iso有一个分委员会关于车载网络的就是德国人在承担。
来源:知乎 www.zhihu.com
作者:杜宝雷
【知乎日报】千万用户的选择,做朋友圈里的新鲜事分享大牛。
点击下载
此问题还有 1 个回答,查看全部。