can总线的解决方案与错误处理类型是什么?
扫描二维码
随时随地手机看文章
当前市场行业发展CAN总线虽然有强大的抗干扰和纠错重发机制,但目前CAN大量地运用于电动汽车、充电桩、电力电子、轨道交通等电磁环境比较恶劣的场合,因此对CAN总线的抗干扰能力也会存在挑战,所以对CAN总线的抗干扰能力需要加以重视。当CAN总线出现故障或数据传输异常时,往往会出现多种奇怪的故障现象,干扰也会导致帧错误增加,重发频繁,正确数据不能及时到达,将会大大影响工作的效率和质量。想要确定CAN总线故障在哪里,然后更有目标性的去解决它。
主动错误标志:
主动错误标志由6个连续的显性位组成。处于主动错误状态的节点检测到错误时会发送主动错误标志。主动错误标志会违反位填充规则和位场的固定形式,这会造成其它节点也检测到错误并发送错误标志(错误标志重叠部分形成的原因)。所有节点所发送的显性序列叠加组成错误标志重叠部分。错误标志重叠部分的长度在6-12个显性位之间。Q:会不会存在一个节点处于主动错误状态,其他节点处于被动错误状态?(“4.1 位错误通知_3)”)
被动错误标志:
被动错误标志由6个连续的隐性位组成,被动错误标志可能会被其他节点的显性位改写。(必须为6个连续的隐性位才能代表被动错误标志发送完成),(应当理解为节点发送了6个连续隐性位就行,而不需要关注总线上的状态有没有被其他节点改写。)如果是一个发送节点发送被动错误标志,将会导致接收节点的位填充错误。以下两种情况除外:1:如果处在仲裁期间,且其他节点取得总线控制权;2:被动错误标志发送开始于小于CRC序列结束前的第六位的位置。(因为位填充检测结束于CRC序列)如果一个接受节点需要发送被动错误标志,它不会诱发总线上的任何活动,当检测到6个连续的隐性位才认为被动错误标志被送出。
主动错误:
处于主动错误状态的节点能正常参与总线通信的收发,当检测到错误时将发送主动错误标志,错误标志由6个连续的显性位组成(这种连续的6个显性位与常规的填充位和其它帧固定格式不相同,正因为如此,硬件才容易区别)。
如果是发送节点发送主动错误帧,这种情况相当于刚刚发送的那帧报文我发错了,我现在主动破坏它,其他节点不管接收到什么都不算数;
如果是接收节点发送主动错误帧,这种情况相当于刚刚接收的那帧报文出错了,我现在主动站出来告诉大家这个错误,并把这帧报文破坏掉,刚才你们不管接收到什么都不算数
被动错误:
处于被动错误状态的节点不能发送主动错误标志。它能参与正常通信,但当检测到错误时发送的是被动错误标志。被动错误标志由6个连续的隐性位组成。当发送结束后,处于被动错误状态的节点在下一次再次发送时之前需要等待一些额外时间。
如果是发送节点发出被动错误帧,刚刚被发送的报文被破坏。错误帧发送完成后,接着的是帧间隔(3个隐性位)和“传输延时段”(8个隐性位),这时总线上的其他节点就可以判断总线处于空闲状态并参与总线竞争。这种机制可以让其他处于主动错误状态的节点优先使用总线。
如果是接收节点发出被动错误帧,则不会对总线产生任何影响
CAN总线故障定位
节点测试法
CAN总线是网络系统的控制器区域,是中央网络系统,各节点或者说是车内的电子控制单元就是由CAN所联系起来的。当CAN总线出现干扰异常时,针对短路问题,可以通过逐个断开节点来进行测试,若电压恢复正常,则说明该节点有问题。若断开所有节点后电压还没有变化,则说明线路短路。通过这个方法可以判断是由节点引起的短路还是导线连接引起的短路。
电阻测量法
当某个控制模块CAN L导线或者是CAN H导线断路时,会导致该控制模块无法实现通信,在其他控制模块的通信是不受影响的。但在其他控制模块有读到该故障块故障码的可能。如果多个控制模块的CAN L导线或者是CAN H导线出现断路,那么这些控制模块的通信功能都会受到影响。若出现故障的控制模块带有终端电阻,那么就可以采用电阻测量法。以下就是判断有无终端电阻的测量方法。根据实际的线束特性进行计算可以知道,CAN终端店电阻的阻值大约为120Ω,测量诊断接口的CAN H 与CAN L之间的电阻,若变为120Ω,则说明有一个终端电阻断路。这种情况下则可用电阻测量法进行故障判断。