如何检测CAN总线的常见故障

接口/总线/驱动

1141人已加入

描述

由于CAN网络采用多种协议,每个控制模块的端口在正常的情况下都有标准电压,因此电压测量法可用于判断线路是否有对地或电源短路、相线间短路等问题。 为了确定CAN H 或CAN L 导线是否损坏或信号是否正常,可以测量其对地电压(平均电压)。测量点通常在OBD诊断接口处,如下图所示。   诊断接口的6号针脚连接CAN H 导线,14号针脚连接CAN L 导线。如果诊断接口上连接有两组CAN总线,那么动力CAN总线使用6号和14号针脚,舒适总线使用3号和11号针脚。诊断接口的针脚含义如下图所示。

控制模块

正常情况下,当CAN总线唤醒后,CAN H 对地电压约为2.656V,CAN L 对地电压约为2.319V,而且两者相加为4.975V  ▼

控制模块

正常的CAN H 电压

控制模块

正常的CAN L 电压 CAN故障通常的原因有CAN线短路、对电源短路、对地短路、相互接反。 1

CAN-H与CAN-L短路

当CAN H 与CAN L 短路时,CAN网络会关闭,无法再进行通信。会有相应的网络故障码。CAN H 与CAN L 短路的总线波形如下图所示。  

控制模块

当两者相互短路之后,CAN电压电位置于隐性电压值(约2.5V)。实际测量两条CAN导线的电压,会发现始终在2.5V左右,基本不变化,如下所示。

控制模块

故障排除方法:通过插拔CAN总线上的控制模块(节点),可以判断是由节点引起的短路还是导线连接引起的短路。 逐个断开节点,若电压恢复正常,则说明该节点有问题。若断开所有节点后电压还没有变化,则说明线路短路。 2

CAN-H对正极短路

此时CAN H 电压电位被置于12V,CAN L 线的隐性电压被置于大约12V。CAN H 对电源短路的总线波形如下图所示。

控制模块

实际测量电压,若CAN H 电压为12V,CAN L 电压被置于约为11V,则说明出现此类故障。CAN H 对电源短路的CAN H 电压如下图所示。

控制模块

CAN H 对电源短路的CAN L 电压如下图所示。

控制模块

故障原因:如果不是CAN H 导线对外部电源短路引起的,那么这种故障就有可能是控制模块内部的CAN收发器损坏造成的。故障查找方法同上。 3

CAN-H对地短路

当出现CAN H 对地短路这种故障时,根据CAN总线的容错特性,可能出现整个CAN网络无法通信的情况或产生相关故障码。

CAN H 的电压位于0V,CAN L 电压也位于0V,可是在CAN L 导线上还能够看到一小部分的电压变化。CAN H 对地短路的总线波形如下图所示。

控制模块

实际测量电压,若CAN H 和CAN L 电压均约为0V,且无断路问题,则说明出现此类故障。CAN H 对地短路的CAN H 电压如下图所示。

控制模块

CAN H 对地短路的CAN L 电压如下图所示。

控制模块

故障原因:如果不是CAN H 导线对外部地线短路引起的,那么这种故障就可能是控制模块内部的CAN收发器损坏造成的。故障查找方法同上。   4

CAN-L对地短路

此时CAN L 电压约为0V。CAN H 线的隐性电压被降至0V,但显性电压基本不变,因此波形被拉长,依然可以传输数据,由此可说明CAN L 对地短路的容错特性较好原因。CAN L 对地短路的总线波形如下图所示。 实际测量CAN导线电压,若CAN L 电压为0V,CAN H 为1V左右,则说明出现此类故障。CAN L 对地短路的CAN L 电压如下图所示。

控制模块

CAN L 对地短路的CAN H 电压如下图所示。

控制模块

故障原因:如果不是CAN-L导线对外部地线短路引起的,那么这种故障是控制模块内部的CAN收发器损坏造成的。故障查找方法同上。 5

CAN-L对电源短路

当出现CAN L 对电源(正极)短路这种故障时,根据CAN总线的容错特性,可能出现整个CAN网络无法通信的情况或产生相关故障码。 由于CAN L 对电源短路,因此CAN H 电压也被置于12V。CAN L 对电源短路的总线波形如下图所示。

控制模块

实际测量CAN导线的电压,若CAN L 和CAN H 导线电压都约为12V,则说明出现此类故障。CAN L 对电源短路的CAN L 电压如下图所示。

控制模块

CAN L 对电源短路的CAN H 电压如下图所示。

控制模块

故障原因:如果不是CAN L 导线对外部电源短路引起的,那么这种故障就有可能是控制模块内部的CAN收发器损坏造成的。故障查找方法同上。 6

CAN-H断路

当某个控制模块CAN H 导线断路时,会导致该控制模块无法实现通信,但其他控制模块的通信还是有的。在其他的控制模块可能读到此故障模块的故障码。如果多个控制模块的CAN H 导线出现断路。那么这些控制模块的通信功能都会受到影响。CAN H 断路的总线波形如下图所示。

控制模块

如果出现故障的控制模块带有终端电阻,可以用电阻测量法来判断。测量诊断接口的CAN H 与CAN L 之间的电阻,若变为120Ω,则说明有一个终端电阻断路。如果出现故障的控制模块不带终端电阻,那么需要测量该控制模块的CAN导线的导通性。 替换有故障码内容涉及的控制模块,可以快速判断故障是否由该控制模块本身造成的。此外,要结合网络图来查找断点,因为在整个网络中会设置相应的总线集线器,断点部位不同,受影响的部件也不同,同时也会决定诊断仪能够进行诊断的控制模块。CAN网络与集线器分布如下图所示。 7

CAN-L断路

当某个控制模块CAN L 导线断路时,会导致该控制模块无法实现通信,但其他控制模块的通信还是有的。在其他控制模块可能读到此故障模块的故障码。如果多个控制模块的CAN L 导线出现断路,那么这些控制模块的通信功能都会受到影响。 如果出现故障的控制模块带有终端电阻,可以用电阻测量法来判断。测量诊断接口的CAN H 与CAN L 之间的电阻,若变为120Ω,则说明有一个终端电阻断路。如果出现故障的控制模块不带终端电阻,那么需要测量该控制模块的CAN导线的导通性。CAN L 断路的总线波形如下图所示。

控制模块

替换有故障码内容涉及的控制模块,可以快速判断故障是否是由该控制模块本身造成的。此外,要结合网络图来查找断点,从而准确找到原因,排除故障。 8

CAN-H和CAN-L反接

当出现CAN L 与CAN H 导线互相接反这种故障时,一般情况下,接错的那个控制模块将无法通信,其他控制模块的通信则正常。CAN L 与CAN H 导线互相接反的示意图如下图所示。

控制模块

在怀疑有问题的控制模块的CAN导线针脚处测量其电压,验证电压是否正常。结合CAN网络图核对线路连接情况进行检查,判断是否存在这种故障。若存在,则对CAN网络进行修复。替换有故障码内容涉及的控制模块,判断故障是否是由该控制模块造成的。

审核编辑:黄飞

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分