CAN总线抗干扰的六种解决方案

2019-09-12来源: 互联网关键字:CAN总线  干扰

CAN总线虽然有强大的抗干扰和纠错重发机制,但目前CAN被大量应用于比如新能源汽车、轨道交通、医疗、煤矿、电机驱动等行业,而这些场合的电磁环境比较严重,所以如何抗干扰是工程师最为关心的话题。

 

前段时间有个做模台流水线的用户,一条流水线有两路CAN总线,一条总线有22个控制节点,每当启动模台就会出现严重的失控状态,模台下是由很多电机驱动的,而操控台下放着变频器。使用CANScope测试发现,在未启动电机情况下,控制台的CAN通信正常,帧统计结果显示100%成功率,如图1所示。

 

图1 模台静态状态下帧统计

 

此时CAN波形图如图2所示。

 

图2 模台静态状态下波形图

 

然而当模台电机启动之后,CAN总线质量急剧下滑,使用CANScope帧统计结果显示成功率仅仅为16.33%,如图3所示。

 

图3 模台动态态状态下帧统计

 

此时的CAN波形图如图4所示,可见干扰导致波形严重畸变。

 

图4 模台动态态状态下波形图

 

干扰导致帧错误增加,重发频繁,正确数据不能及时到达。所以如何解决干扰带来的困扰呢,下面就为大家介绍CAN总线抗干扰的六大解决方案。


一、增加CAN接口电气隔离


干扰不但影响信号,更严重的会导致板子死机或者烧毁,所以接口和电源的隔离是抗干扰的第一步。隔离的主要目的是:避免地回流烧毁电路板和限制干扰的幅度。如图5所示,未隔离时,两个节点的地电位不一致,导致有回流电流,产生共模信号,CAN的抗共模干扰能力是-12~7V,超过这个差值则出现错误,如果共模差超过±36V,烧毁收发器或者电路板。

 

图5 差分抗干扰示意图

 

传统用户都采用分立器件自己搭建隔离电路的方式,如今大家更青睐使用隔离收发器做防护隔离。如图6所示的CTM系列隔离收发器的总线隔离技术,与传统分立器件方案相比,产品具备更高的集成度与可靠性,能够有效提升总线通信防护等级,极大程度降低用户的采购与生产成本,大幅缩短开发周期。

 

图6 隔离CAN收发器

 

增加CTM隔离模块后,如图7所示。隔绝了地回流,限制了干扰幅度。

 

图7 隔离地回流

 

二、共CAN收发器的信号地


共CAN收发器的信号地,并且CAN使用三线制信号传输。可以有效抑制共模干扰。注意图8中屏蔽层为近距离外壳等电势的情况下的接线方法。

 

图8 CAN信号共地


三、CAN线保证屏蔽效果与正确接地


带屏蔽层的CAN线,可以良好地抵御电场的干扰,等于整个屏蔽层是一个等势体,避免CAN导线受到干扰。如图9所示,为一个标准的屏蔽双绞线,CANH和CANL通过铝箔和无氧铜丝屏蔽网包裹,如图9所示。需要注意的是和与接插件的连接,在连接部分允许有短于25mm的电缆不用双绞。

 

图9 屏蔽双绞线

 

使用屏蔽线后,在屏蔽层没有良好接大地前,屏蔽线是不起作用的。所以我们要选择一种接地方式。这里有三种外壳接地法:屏蔽层单点接地,可以避免地回流(不同位置的地电位不同而导致的产生电流),如图10所示。节点信号地阻容接自身外壳,如图11所示。屏蔽层分段屏蔽法,如图12所示,多点接地可以加快高频干扰信号的泄放,屏蔽层单点接地可以避免地回流,所以要根据实际情况选择合适的接地方式。

 

图10 屏蔽层单点接地

 

图11 节点信号地阻容接自身外壳地

 

图12 屏蔽层分段屏蔽法

 

在CAN的应用场合,由于距离一般都较远,所以大部分采用屏蔽层单点接地的原则,在干线上找一点将屏蔽层用导线直接接地,该点应是所受干扰最小的点,同时该点位于网络中心附近。


四、提高CAN线双绞程度


CAN总线为了提高抗干扰能力,采用CANH和CANL差分传输,达到效果就是遇到干扰后,可以“同上同下”,最后CANH-CANL的差分值保持不变。如图13所示。

 

图13 差分抗干扰示意图

 

CANH和CANL要紧密地绞在一起,通常双绞线只有33绞/米,而在强干扰场合,双绞程度要到45-55绞/米才能达到较好的抗干扰效果。另外线缆的芯截面积要大于0.35~0.5mm²,CAN_H对CAN_L的线间电容小于75pF/m,如果采用屏蔽双绞线,CAN_H(或CAN_L)对屏蔽层的电容小于110pF/m。可以更好地降低线缆阻抗,从而降低干扰时抖动电压的幅度。

 

表1 双绞线对磁干扰的衰减比

 

 

五、增加信号保护器


增加信号保护器,提高抗浪涌群脉冲等EMC能力。上面的隔离只是阻挡,如果干扰强度很高,比如达到2KV浪涌,隔离也会被破坏。所以要想达到更高的防护等级,必须增加防浪涌电路。如图14所示,为ZLG致远电子高速总线标准防浪涌保护电路。

 

注意,由于电容较大,一条总线最多增加2-3个保护器!

 

 

图14 信号保护电路

 

六、CAN转为光纤传输


增加CAN转光纤转换器。解决超强干扰(比如远程激光与电磁脉冲发射装置)与雷击问题,光纤是一种无法被电磁干扰的传输介质,如图15所示,为使用ZLG致远电子的CANHub-AF1S1和CANHub-AF2S2组合的光纤主干网络。

 

 

 

图15 使用光纤转换器实现光纤主干传输

 

以上就是今天跟大家分享的总线抗干扰的六种解决方案,在文章最后再补充在现场常用的两种手段吧。

 

1、CAN线远离干扰源


远离干扰源是最简单的抗干扰方法,如果CAN线与强电干扰源远离0.5米,干扰就基本影响不到了。可是在实际布线中,经常遇到空间太小而不得不和强电混在一起,如图16所示,为某新能源汽车的驱动系统,CAN线与驱动线混在一起,结果导致干扰很大。只要与CAN并行的驱动线,具备2A/秒的电流变化,就会耦合出强磁场而导致CAN线上出现干扰脉冲。所以CAN线必须要和电流会剧烈变化的线缆远离。比如继电器、电磁阀、逆变器、电机驱动线等。

 

 

图16 干扰现场图

 

而解决这个问题,只能尽量保证强电与弱电分开捆扎,距离上尽量远离。实在避不开,也要垂直交叉,也不能平行布线。

 

2、增加磁环或者共模电感


使用抗干扰的磁环,目的就是削弱特定频率的干扰的影响。如图17所示,为增加磁环的效果。CAN差分线缆可以两线一起加,或者单端单独加。

 

图17 增加磁环

 

需要注意的是增加磁环或者共模电感时,不可随意添加,如果适应频率不对,则会影响正常信号通讯哦。


关键字:CAN总线  干扰 编辑:鲁迪 引用地址:http://news.eeworld.com.cn/qcdz/ic474424.html 本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:特斯拉自动驾驶新专利 “高速布线架构”优化FSD冗余设计
下一篇:技术文章—MCU如何扩展CAN或者CAN FD接口?

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

STM32F103 CAN总线配置总结
stm32的can总线的配置如下:      CAN_InitStructure.CAN_TTCM=DISABLE;//禁止时间触发通信模式      CAN_InitStructure.CAN_ABOM=DISABLE;      CAN_InitStructure.CAN_AWUM=DISABLE;      CAN_InitStructure.CAN_NART=DISABLE;//CAN报文只被发送1次,不管发送的结果如何(成功、出错或仲裁丢失)      
发表于 2019-10-08
STM32 CAN总线调试经验
前言STM32 CAN代码网上很多,但大都是讲如何配置的,对于一些原理以及注意事项没有很清楚的说明。在实际调试过程中,两个设备间的通信只要设备CAN的配置一样基本就可以调通,但在增加设备的过程中,很容易出现多设备无法通信的问题,这里主要就这一问题进行说明。硬件STM32F042G4 + MAX3051测试过程测试板回来后,两个设备间的通信轻松搞定,但在增加设备的过程中,增加的设备总是不能正常通信。详细比对了一下配置,也没有任何问题。后来,仔细研读MAX3051的芯片手册,得到以下几个重要信息:MAX3051有四种工作模式高速模式:数据传输速率可达1Mbps,但抗干扰能力弱,需要双绞线斜率控制:可编程控制最高500kbps的传输速率
发表于 2019-10-08
STM32 CAN总线通信学习笔记(一)
一、CAN总线简介CAN 是控制器局域网络(Controller Area Network, CAN)的简称。CAN采用数据块编码的方式,数据块根据帧的类型,能够让挂载在总线上的不同节点接收到相同的数据,再根据每个节点的配置对信息进行选择性处理(处理or丢弃)。CAN总线具有以下特点:1. 多主控制在总线空闲时,所有的单元都可以发送消息;具有CSMA/CA机制,即最先访问总线的单元可获得发送权;多个单元同时发送消息时,优先级高的标志(ID)单元可获得发送权,其中ID并不是发送的目的地址,而是表示访问总线的消息的优先级,仲裁机制会对消息ID的每个位继续比较,仲裁为高优先级的单元可继续发送消息,仲裁失败的单元则停止发送而进行
发表于 2019-10-08
STM32 CAN总线通信学习笔记(一)
STM32的CAN总线调试——与以太网转CAN联调的小问题
的数据却会丢呢?调试过程:将测试次数减少,只要发生丢失数据的情况就立即停止。于是单片机与服务器继续通信,在丢失第一个数据的时候停下来查看状态,发现单片机发送请求的同时,服务器也在发送请求。那么为什么单片机的请求却失败后没有再次发送?回到单片机的代码当中发现在CAN模块初始化的时候禁止自动重发的功能为使能状态,也就是单片机在发送数据的时候,只发送一次,即使发送失败了也不会去管,而是返回发送完成的状态。所以,单片机在与服务器端用的以太网转CAN模块的较量当中,丢掉了数据,服务器发送成功。那么,还有一个问题,就是为什么单片机给服务器发的响应都会成功?这与上层代码的逻辑有关,因为服务器向单片机发送完请求后会等待单片机响应,此时的总线只有单片机
发表于 2019-10-08
STM32的CAN总线调试——与以太网转CAN联调的小问题
STM32的CAN总线的接收双FIFO使用方法
通过下面的框图我们可以看到,STM32F013有两个接收FIFO但是实际的使用中如何让着两个FIFO都被使用呢,解决办法就在这里,1. STM32F103有0-13共14个过滤器组,每个过滤器组都可以绑定指定的FIFO。2. 特别需要注意的一点是,FIFO0和FIFO1的接收对应不同的中断入口,切记。分别是DCD     USB_LP_CAN1_RX0_IRQHandler ; USB Low  Priority or CAN1 RX0DCD     CAN1_RX1_IRQHandler   
发表于 2019-09-30
STM32的CAN总线的接收双FIFO使用方法
STM32F105 CAN总线数据收发调试
STM32F105 CAN通讯端口:STM32F105有2路CAN,不是两路独立的CAN,而是一个主端口CAN1和一个从端口CAN2,其隐含的意思就是如果只使用1路CAN进行通讯,可以使用主端口CAN1,此时可以忽略CAN2,但是如果只用从端口CAN2进行通讯的话,需要先打开CAN1的时钟,否则CAN2也不能正常工作,如果使用两路CAN同时工作时,需要注意CAN1复位时,CAN2也被复位了,所以如果在CAN2初始化之后CAN1复位,则CAN2还有重新初始化;调试CAN总线的发送:运行发送程序,如果TX引脚有输出信号脉冲,说明引脚的配置正确,如果引脚没有输出脉冲,需要检查GPIO的配置;用示波器检测TX引脚的信号波形,查看波特率是否
发表于 2019-09-30
小广播
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2019 EEWORLD.com.cn, Inc. All rights reserved