0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

CAN总线Bus Off原理及恢复解决方案

jf_EksNQtU6 来源:谈思实验室 作者:谈思实验室 2022-12-16 09:26 次阅读

汽车内部挂有很多的ECU节点,当其中一个节点发生故障进入总线关闭状态时,会很大程度上影响整车CAN网络的通讯。例如,当汽车发生碰撞时,传感器将电信号传送给安全气囊ECU,将信号进行处理,当确定需要打开安全气囊时,ECU会立即发出点火信号,气体发生器才会充满气囊,对驾驶员和乘客提供安全保护,如下图1所示。若此时安全气囊ECU处于总线关闭状态,则无法正常弹出气囊,会导致严重后果。

图1 ECU工作示意图

因此,对于新能源汽车行业工程师,了解CAN总线Bus Off原理是非常有必要的。CAN控制器可以判断出错误的类型是总线上暂时的数据错误(如外部干扰等)还是持续的数据错误(如单元内部故障、驱动器故障、断线、短路等)。由此,当总线上发生持续数据错误时,CAN控制器内部的错误计数器累积到总线关闭的阈值,可将引起此故障单元从总线上隔离出去,不参与跟总线其他节点的网络通信。如图2所示:

图2 错误检测机制

哪些因素会导致CAN总线Bus Off?

引起错误的原因大多是由物理故障引起的,主要是CAN线路产生的。其中包括:CAN_H开路、CAN_L开路、CAN_H对CAN_L短路/开路、CAN_L对VBAT短路、CAN_H对GND短路、CAN_L对GND短路、终端电阻开路等。

除了物理层线路因素,还有可能因为CAN控制器或收发器元器件故障导致。同时,也有可能是由于CAN总线信号干扰导致的CAN信号收发不正确,严重时会导致不能正常发送报文,从而更容易导致CAN总线关闭。

例如,新能源汽车通常是指纯电动汽车或者混合动力汽车,其特色是使用电池、电容来存储能力,然后通过逆变的方式变成交流,带动电动机驱动车辆。逆变产生的巨大电流形成强干扰,串扰到CAN总线上,导致控制器死机、损坏或者通讯中断,车辆运行不稳定。详情请关注公众号【车端】

CAN总线Bus Off恢复的解决方案

如果出现了Bus Off,总线上的节点需要做一些动作,例如重启CAN控制器或是重新上电,但是这些都只是一些补救措施,最根本的还是需要找到引起Bus Off的根源。

当发生CAN总线关闭时,我们可以检查Bus Off寄存器的值,对CAN控制器的驱动及相关寄存器进行初始化操作。初始化完成后,CAN总线关闭故障就会立即解除。为了避免该节点在CAN网络中频繁发生总线关闭问题,建议在初始化后,不要立即对外发送CAN报文。

从下图所示可以看出,当节点进入总线关闭状态后,如果MCU仅是开启自动恢复功能,CAN控制器在检测到128次11个连续的隐性位后即可恢复通信,在实际的CAN通信总线中,这一条件是很容易达到的。我们已经知道,当进入总线关闭状态时,节点已经发生了严重的错误,处于不可信状态,如果迅速恢复参与总线通信,具有较高的风险,因此实际应用中,往往会通过MCU对CAN控制器总线关闭状态的恢复过程进行编程处理,以控制节点从总线关闭状态恢复到错误主动状态的等待时间,如图4所示,具体包括“快恢复”和“慢恢复”策略,两种策略一般同时应用。

图3

上文也提到过,由于汽车内部存在强干扰,也会导致CAN总线关闭。针对这种现象,我们通过以下方式进行处理:

由于汽车内部存在强电流产生的空间磁干扰,应该将CAN线缆双绞程度加大;

CAN接口设计采用CTM1051隔离收发器、隔离限幅,防止ECU死机;

CAN接口增加磁环、共模电感等效果好的感性防护器件;

外接专用的信号保护器消除干扰,如ZF-12Y2;

使用网桥中继设备CANBridge对部分强干扰源进行隔离。

综合上述,汽车CAN总线关闭故障发生时,应分析物理层包括CAN线路、CAN控制器及收发器、CAN信号干扰等外在因素,同时分析CAN寄存器及软件处理,重新初始化CAN驱动和恢复正常后,定时尝试往外发送报文。

审核编辑:郭婷

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

    关注

    10

    文章

    3424

    浏览量

    105961
  • 控制器
    +关注

    关注

    112

    文章

    16332

    浏览量

    177808
  • CAN总线
    +关注

    关注

    145

    文章

    1946

    浏览量

    130726

原文标题:CAN总线Bus Off原理

文章出处:【微信号:谈思实验室,微信公众号:谈思实验室】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    CAN总线基础知识汇总#CAN #CANoe #汽车总线

    CAN总线
    北汇信息POLELINK
    发布于 :2024年11月04日 13:35:54

    什么是CAN时钟?#CAN #汽车CAN总线  #CANoe

    CAN总线
    北汇信息POLELINK
    发布于 :2024年10月29日 12:23:36

    CAN总线关闭故障的解决方案

    是一种较为严重的故障状态。本文将详细解释CAN总线关闭故障的含义、原因及解决方案,以期为相关技术人员提供参考。
    的头像 发表于 09-30 11:37 2109次阅读

    CAN总线控制器是什么意思

    CAN总线控制器(Controller Area Network Bus Controller)是CAN总线通信系统中的核心部件,它扮演着接
    的头像 发表于 09-03 14:16 971次阅读

    AMEYA360:上海雷卯电子CAN BUS芯片静电浪涌击穿整改方案

    在现代电子系统中,CAN Bus(Controller Area Network Bus,控制器局域网络总线)作为一种常用的通信协议,标准CAN
    的头像 发表于 07-31 15:38 4638次阅读
    AMEYA360:上海雷卯电子<b class='flag-5'>CAN</b> <b class='flag-5'>BUS</b>芯片静电浪涌击穿整改<b class='flag-5'>方案</b>

    CAN盒使用问题及解决方案

    CAN盒使用问题及其可能的解决方案: 1.硬件连接问题 问题描述: CAN盒与计算机或CAN总线的连接不稳定,导致数据传输中断或无法通信。
    的头像 发表于 07-15 18:12 1835次阅读

    CAN总线几种正常的“异常”波形

    CAN波形一定都是标标准准的方波吗?其实并非如此,今天就把CAN总线上的幅值“异常”归归类。CAN-bus信号产生原理众所周知,一个标准CAN
    的头像 发表于 06-26 08:25 2728次阅读
    <b class='flag-5'>CAN</b><b class='flag-5'>总线</b>几种正常的“异常”波形

    CAN-bus应用笔记:节点篇

    CAN-bus电路设计中,理论上收发器支持节点数最多可做到110个,但实际应用中往往达不到这个数量。今天我们就来谈谈如何通过合理的CAN-bus总线设计,保证CAN网络中的通讯的可靠
    的头像 发表于 05-12 08:24 553次阅读
    <b class='flag-5'>CAN-bus</b>应用笔记:节点篇

    STM32F03进入CANBUS OFF时间能不能缩短?

    开启BUS OFF中断后,该中断更新时间怎么这么长,能不能缩短?
    发表于 03-22 07:54

    医疗设备CAN/CANopen总线数据传输解决方案

    盟通提出的医疗设备CAN/CANopen总线数据传输解决方案是基于IXXAT的高性能CAN设备,助力您实现稳定、便捷的数据采集和分析,为您的项目创新提供有利支持。
    的头像 发表于 03-18 14:26 1477次阅读
    医疗设备<b class='flag-5'>CAN</b>/CANopen<b class='flag-5'>总线</b>数据传输<b class='flag-5'>解决方案</b>

    什么是CANBUS-OFF,如何恢复BUS-OFF?#CAN #汽车电子 #单片机

    单片机mcu
    聚沃科技
    发布于 :2024年02月22日 10:56:31

    什么是CANBUS-OFF,如何恢复BUS-OFF

    CAN作为一款强大的工业总线,其高性能和高可靠性让其应用特别广泛。一个小知识:汽车里面各个模块之间的通讯就是使用CAN来实现的哦。
    的头像 发表于 02-21 09:42 4224次阅读
    什么是<b class='flag-5'>CAN</b>的<b class='flag-5'>BUS-OFF</b>,如何<b class='flag-5'>恢复</b><b class='flag-5'>BUS-OFF</b>?

    CYT2B75CAD CANbus off状态如何检测的?

    使用芯片为:CYT2B75CAD,CANbus off状态如何检测的,CAN的错误以及发送完成等?是否有相关例程可以参考?
    发表于 02-02 08:36

    将TC397的MCMCAN模块的canh和canl短接到GND,MCMCAN模块进入到bus off状态后无法继续正常发送的原因?

    将TC397的MCMCAN模块的canh和canl短接到GND。按照网络上的资料:此时CAN总线会进入到bus off状态,但当故障移除后即通信线正常连接后,
    发表于 02-01 07:21

    CAN总线接口保护方案

    CAN总线的应用范围广,应用环境相当复杂,一些静电、浪涌等干扰很容易耦合到总线上,并直接作用于CAN总线接口。为了满足一些高等级EMC的要求
    的头像 发表于 01-13 08:27 695次阅读
    <b class='flag-5'>CAN</b><b class='flag-5'>总线</b>接口保护<b class='flag-5'>方案</b>