加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
    • 低波特率通信正常,高波特率无法通信
    • 总线电容过大导致的通讯异常
    • CAN总线波形出现明显的共模震荡
    • 总线干扰过大问题
    • 总线错误状态和分析
  • 推荐器件
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

技术小课堂 | CAN总线应用常见问题(2)

07/31 17:36
3645
阅读需 7 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

CAN总线作为一种常用的通信协议,在汽车、工业自动化等领域得到广泛应用。然而,由于各种原因,CAN总线在使用过程中可能会出现各种故障,本文将继续讲解CAN总线应用过程中的常见问题和解决办法。

低波特率通信正常,高波特率无法通信

控制器配置低波特率通信正常而提高通信速率后无法通信的问题,主要是由于终端电阻未匹配导致的。CAN收发器芯片内部的CAN线CANH、CANL引脚是开漏结构,如下图1,总线上的寄生电容在显性状态时会被充电,而从显性状态切换到隐性状态的时候,总线上的电容要放电。如果CANH、CANL之间没有匹配电阻或者匹配的终端电阻太大,就会导致电容上的电荷放电速度过慢,从而在下降沿出现边沿下降过缓的现象,如图2,进而导致控制无法采到正确的电平,引发通信问题。

图1、CAN收发器芯片内部CANH、CANL结构

图2、显性状态切换到隐性状态边沿缓慢

解决方法

  • 匹配适当的终端电阻;
  • 推荐使用思瑞浦的TPT1462,支持主动隐性,在TXD拉高时显性状态可快速切换至隐性状态,保证通信正常。

总线电容过大导致的通讯异常

CAN收发器为了实现CAN的仲裁与错误处理,采用单向驱动结构,即CAN波形的上升沿有驱动,而下降沿是通过整条总线与终端电阻放电产生的,所以终端电阻的第一作用是放电。CAN节点及CAN线束的电容会影响整个网络的电容,电容越大,下降边沿越缓,导致接收节点发生位采样错误,从而产生错误帧。

解决方法

  • 检查CAN总线上是否有外加电容、是否有保护器件(TVS等)的寄生电容过大等问题,适当去除,以降低电容,建议将单个CAN节点电容控制在 40pF~100pF范围内;
  • 降低工作波特率,波特率降低可以延长位时间,减小电容的影响,但若电容过大,则不一定有效;
  • 推荐使用支持CAN SIC的TPT1462,主动隐性功能可保证信号的有效脉宽。

CAN总线波形出现明显的共模震荡

共模振荡通常是由于传输线缆PCB布局走线会耦合感性负载,而信号在感性负载下传输会出现信号共模抖动,可修改终端电阻中点的对地split电容调整信号质量,调整范围1nF~100nF,推荐值4.7nF。

另外,TPT1044、TPT1057和TPT1462都是思瑞浦基于自主设计对称性调节模块专利技术的车规级CAN收发器芯片,可有效调节总线共模,确保差分输出的对称性,即使不增加Split电容,也可以达到传统CAN收发器增加Split后的效果。

图3、调整split电容或更换TPT1044、TPT1057、TPT1462可有效改善信号质量

图4、无split电容时共模抖动

图5、有split电容下共模无抖动

图6、TPT1044不增加Split电容下共模无抖动

总线干扰过大问题

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

为此可采用提高CAN双绞程度、加单双屏蔽层、使用CAN隔离模块、弱电远离强电、优化布线等方式以提高CAN通信抗干扰能力。同样在采用不合理的组网方式时,也可能会导致信号反射严重引起信号振铃,在总线产生振铃时,其总线差模信号会反复在显性电平和隐性电平阈值振荡,导致RXD产生误翻转,从而使接收数据受到干扰。

思瑞浦推出基于其自主创新设计振铃抑制电路专利的车规级CAN SIC(信号改善功能,Signal Improvement Capability)TPT1462Q芯片,可有效抑制总线振铃,允许工程师在多节点、复杂拓扑情况下有效减少总线中的信号反射,降低振铃现象发生的概率,同时TPT1462Q具有国际领先的抗干扰能力,即使在极其恶劣的电磁环境中,仍能维持CAN正常通信,为汽车安全通讯奠定坚实的基础。

图7、常规CAN总线振铃干扰波形

图8、CAN SIC振铃抑制对比波形

总线错误状态和分析

按照CAN协议的规定,CAN总线上的节点始终处于以下三种状态之一:

  • 主动错误状态;
  • 被动错误状态;
  • 总线关闭状态;

这些状态依靠发送错误计数和接收错误计数来管理,错误类型包括位错误、ACK错误、填充错误、CRC错误、格式错误,根据计数值决定进入何种状态。错误状态和计数值的关系如下图所示。

图9、单元的错误状态

节点处于主动错误状态下检测到非法帧格式会主动输出错误帧,错误帧由6个显性位和8个隐性位组成;利用该特性可以使用示波器捕捉错误帧波形,分析错误类型和原因。

例如CAN的仲裁域波特率为500kbps时,以CANH触发为例。选择触发方式为脉宽触发,触发脉宽选择>11μs(保证大于5个连续显性位),触发电平>2.5V,即可抓取错误帧波形。

图10、错误帧波形

推荐器件

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
STM8S003F3P6 1 STMicroelectronics Mainstream Value line 8-bit MCU with 8 Kbytes Flash, 16 MHz CPU, integrated EEPROM

ECAD模型

下载ECAD模型
$1.53 查看
ATXMEGA32E5-MU 1 Atmel Corporation RISC Microcontroller, 16-Bit, FLASH, AVR RISC CPU, 32MHz, CMOS, 5 X 5 MM, 0.50 MM PITCH, GREEN, PLASTIC, MO-220VHHD-2, VQFN-44

ECAD模型

下载ECAD模型
$3 查看
DSPIC33EP512MU814-E/PH 1 Microchip Technology Inc 16-BIT, FLASH, 60 MHz, MICROCONTROLLER, PQFP144, 16 X 16 MM, 1 MM HEIGHT, LEAD FREE, PLASTIC, TQFP-144

ECAD模型

下载ECAD模型
$11.85 查看

相关推荐

电子产业图谱