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

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

3天内不再提示

新能源汽车CAN总线如何进行错误处理

电子设计 来源:电子设计 作者:电子设计 2020-12-26 13:59 次阅读

本文介绍CAN总线关闭对新能源汽车的功能和安全性能产生的影响,并对此提出一些合理的建议。

2019年10月26日第三届中国(佛山)氢能源大会中展示了氢燃料电池城市客车,与目前的纯电动汽车和传统汽车相比,作为一种新的驱动形式出现。但是,新能源汽车整车网络的实现依旧离不开CAN总线通讯。

工程师们通过CAN总线读取车上的车速、转速等信号可以控制整车上众多的ECU单元。但是,你知道CAN总线关闭会对新能源汽车的功能带来哪些影响吗?本文来做详细分析。

为何CAN总线依旧能在新能源汽车中扮演重要角色?

从事汽车相关行业的小伙伴们,都知道CAN总线,它是当今汽车各电控单元之间通信的总线标准,现在几乎所有的汽车厂家都选择使用CAN总线通信。CAN总线起初便是基于BOSCH公司为了解决汽车的电子控制单元增多带来的布线空间矛盾、汽车重量增加等诸多问题而诞生的。同时,CAN总线将汽车内部各电控单元之间连接成一个局域网络,实现了信息的共享,大大减少了汽车的线束,如图1所示:

图1 汽车整车网络

相比于,目前流行的以太网和485总线,CAN总线具有以下的特点:

总线访问——非破坏性仲裁的载波侦听、多路访问、冲突避免;

多主机广播式结构,自动优先级仲裁,实时性很强;

传输错误自动重发,自动CRC校验接收,数据出错率极低;

差分信号传输抗干扰能力强,适合汽车内部强干扰的环境;

硬件报文滤波功能,减轻CPU负担。

基于以上的特点,CAN总线能保证实时可靠的数据传输,保证汽车整车网络的通讯正常,在新能源汽车行业具有不可替代的地位。

什么是CAN总线关闭?

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

图2 安全气囊ECU工作示意图

那么,什么是CAN总线关闭呢?

CAN控制器可以判断出错误的类型是总线上暂时的数据错误(如外部干扰等)还是持续的数据错误(如单元内部故障、驱动器故障、断线、短路等)。由此,当总线上发生持续数据错误时,CAN控制器内部的错误计数器累积到总线关闭的阀值,可将引起此故障单元从总线上隔离出去,不参与跟总线其他节点的网络通信。如图3所示:

图3 错误检测机制

CAN总线关闭的成因分析

引起错误的原因大多是由物理故障引起的,主要是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,总线上的节点需要做一些动作,例如重启CAN控制器或是重新上电,但是这些都只是一些补救措施,最根本的还是需要找到引起BUS OFF的根源。

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

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

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

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

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

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

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

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

CAN网络黑匣子-CANDTU

新能源汽车在发送总线关闭情况时,我们也希望能够有对应的CAN报文去分析,尤其是针对偶发性的故障时,我们更需要有可靠的CAN报文来作为判断依据。

广州致远电子有限公司推出CAN网络总线“黑匣子”,我们称之为CANDTU,如图4所示,CANDTU集成有2路或4路符合ISO11898标准的独立CAN-bus通道,并可标配存储介质为32G高速SD卡,可以进行长时间记录、条件记录、预触发记录和定时记录等多种模式,并可以将记录的数据转换为CSV格式,或者CANOE、CANScope等各种主流分析软件的格式供后期处理分析。

图4 CANDTU系列产品示意图

CANDTU可以长时间记录CAN报文,以便于工程师查找数据,但是对于网络稳定性和偶发性故障无法进行定位和分析。

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

    关注

    140

    文章

    9686

    浏览量

    97785
  • CAN总线
    +关注

    关注

    145

    文章

    1812

    浏览量

    129592
收藏 人收藏

    评论

    相关推荐

    【换道赛车:新能源汽车的中国道路 | 阅读体验】 新能源到底新在何处?新能源在国内如何发展?

    、三四级供应商对等。。。呈现网状生态 产业化发展的几个关键节点 新能源战略起点——2009 10城千辆——2012 节能与新能源产业发展规划 快速增长——2015,我国新能源产销量全球第一 保持增长
    发表于 03-19 13:22

    CAN总线错误帧及其排查方法简单介绍#汽车CAN总线 

    CAN总线汽车电子
    北汇信息POLELINK
    发布于 :2024年03月15日 14:14:40

    【换道赛车:新能源汽车的中国道路 | 阅读体验】新能源汽车值得买吗?未来又会如何发展

    新能源汽车开年的第一个重磅消息,就是比亚迪打出“电比油低”的营销口号,开始了声势浩大的全线降价。一声枪响,消费者纷纷摩拳擦掌,跃跃欲试,但观望者仍不在少数。笔者身边就有很多朋友,依然对电车的安全性
    发表于 03-08 17:33

    C语言中的错误处理机制解析

    C 语言不提供对错误处理的直接支持,但是作为一种系统编程语言,它以返回值的形式允许您访问底层数据。
    的头像 发表于 02-26 11:19 220次阅读

    名单公布【书籍评测活动NO.27】换道赛车:新能源汽车的中国道路

    发展等新发展理念。中国科协主席万钢作序推荐。 2、解读政府顶层设计和政策引导,洞察新能源汽车未来发展趋势 本书是对我国新能源汽车产业变革的观察手记,是对
    发表于 01-18 16:36

    西门子博图:错误处理机制概览

    可通过以下几种不同的错误处理机制进行参数跟踪或编程或访问错误
    的头像 发表于 11-25 11:35 1008次阅读
    西门子博图:<b class='flag-5'>错误处理</b>机制概览

    新能源汽车产业中,笙泉MCU的应用 (充电枪/桩)

    论是直流型还是交流型,控制整个充电流程,仍得藉由MCU来控制的,而笙泉科技因应新能源汽车市场需求而生的MCU, 可以发挥那些功效呢?让我们接着往下看。 MG32F157系列笙泉科技首颗带CAN
    发表于 11-23 16:59

    汽车CAN总线系统的挑战与设计

    CAN总线技术已在汽车上广泛应用,随着新能源车型以及自动驾驶技术的推广,总线问题也对汽车的安全带
    的头像 发表于 11-03 10:17 666次阅读
    <b class='flag-5'>汽车</b><b class='flag-5'>CAN</b><b class='flag-5'>总线</b>系统的挑战与设计

    RS232通信时怎么处理错误?RS232通信中的错误处理方法

    RS232通信时怎么处理错误?RS232通信中的错误处理方法  RS232通信是一种电气标准,它定义了计算机和串行通信设备之间的通信协议。尽管RS232通信很稳定,但仍然可能会出现错误
    的头像 发表于 10-17 16:33 1824次阅读

    CAN总线错误处理介绍

    每个节点维护两个错误计数器:传送错误计数器和接收错误计数器。有几个规则规定这些计数器怎样增加和/或减少计数。总的来讲,检测到故障的传送器增加其传送错误计数器比侦听节点增加其接收
    的头像 发表于 09-20 17:09 951次阅读
    <b class='flag-5'>CAN</b><b class='flag-5'>总线</b><b class='flag-5'>错误处理</b>介绍

    Rust语言中错误处理的机制

    可能的错误,实际运行中仍然可能出现各种各样的错误,比如文件不存在、网络连接失败等等。对于这些不可预测的错误,我们必须使用错误处理机制来进行
    的头像 发表于 09-19 14:54 777次阅读

    认识CAN总线错误 CAN总线错误分析与解决

    认识CAN 总线错误的第一步就是了解认识CAN 总线协议和它的具体功能,这样才能更容易地理解CAN
    发表于 08-14 15:18 3610次阅读
    认识<b class='flag-5'>CAN</b><b class='flag-5'>总线</b><b class='flag-5'>错误</b> <b class='flag-5'>CAN</b><b class='flag-5'>总线</b><b class='flag-5'>错误</b>分析与解决

    一文读懂CAN总线错误处理

    为了防止故障节点干扰甚至阻塞整个CAN网络系统,CAN协议实现了复杂的故障限制机制。为了保证通信的正常,CAN 2.0 总线协议总线中各节点
    发表于 06-21 17:14 2128次阅读
    一文读懂<b class='flag-5'>CAN</b><b class='flag-5'>总线</b><b class='flag-5'>错误处理</b>

    CAN 总线错误检测机制#can总线

    CAN 总线
    北汇信息POLELINK
    发布于 :2023年05月26日 13:54:03

    嵌入式编程错误处理机制设计

    本文主要总结嵌入式系统C语言编程中,主要的错误处理方式。文中涉及的代码运行环境如下。
    发表于 04-28 09:59 543次阅读
    嵌入式编程<b class='flag-5'>错误处理</b>机制设计