datasheet

技术文章—找到CAN总线(故障)节点的三种办法

2019-08-08来源: EEWORLD关键字:CAN总线

摘要:CAN总线的出现为分布式控制系统实现各节点之间实时、可靠的数据通信提供了强有力的技术支持,在带来便利的同时,也为工程师们故障排查增加了难度,所以本文主要给大家介绍了找到CAN总线(故障)节点的三种办法。

 

一、将所有节点都拔掉,依次往上接。

 

当CAN总线出现故障后将所有节点都拔掉,之后一个一个节点往上接,接到系统出错时,即找到最后一个插入节点为故障节点。如下这种情况,图1为新能源车控制总线,车辆启动后仪表显示滞后,显示错误。导致司机判断延迟与错误,影响交通安全。将所有节点拔掉之后,采用此方法挨个节点往上接,直到电机控制器接到总线上出现了通信故障,初步判断为电动机运行产生的强干扰,串扰到CAN总线上,导致帧错误增加,重发频繁,正确数据不能及时到达。

 

 

图1  新能源车控制总线

 

二、根据电平特征,找到出错节点方位

 

我们接着上面的案例按照此方法验证,下图2是我们使用CANScope接方向盘下的 OBD 接口测试的错误帧波形图。

 

 

图2  错误帧的波形图

 

从蓝色标记可以看到,ACK 应答后,先有一个低台阶,再二次抬高的错误帧。此错误标志是由主动错误标志+错误标志叠加而成,二次抬高的是 6 个连续显性电平,因某节点错误后全局通知,各节点错误标志叠加造成的。也就是说车网络上有某一 CAN 节点较容易受到干扰,出现局部错误。

 

如何快速分析出错误节点呢?使用CANScope 接入车前端的 OBD 接口和车尾部的电机控制器分别测试,结果如图 3 所示:

 

 

图3  共模干扰对比

 

由上图所示,在 OBD 接口测试的共模幅值为 700 多 mV,在电机控制器节点测试的共模幅值为 1.3V 左右,同时可看到周期性的干扰脉冲。通过对异常共模信号做 FFT 频谱分析,快速定位共模干扰频率,测试结果如图4 所示:

 

 

图4  干扰频率

 

测试出的干扰频率与电机驱动器频率吻合,推断为驱动器逆变产生的巨大电流形成强干扰,串扰到 CAN 总线上,导致距离其较近的节点出现局部错误。

 

三、用多路CAN卡查找故障节点

 

如图5所示,使用的USBCAN-8E-U通过USB接入CAN网络,最高可对8路CAN总线的数据进行同步监听、采集数据。

 

 

图5  CAN卡监测

 

并配合上位机一体化分析流程,可追溯数据错误来源,如图6所示,框1是原始报文,框2是错误信息,框3是统计信息,可对总线深入诊断分析,找出故障节点。

 

 

图6  CAN视图


关键字:CAN总线

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

上一篇:麦格纳推出汽车以太网多总线数据记录仪
下一篇:技术文章—CAN接口异常分析指南

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

推荐阅读

技术文章—CAN总线分支过多或过长问题的五种解决方案

摘要:CAN总线作为可靠性、稳定性最高的总线之一,在工业现场、汽车电子、轨道交通等行业都有广泛的应用。但是在实际使用CAN总线中还是会遇到一些问题,今天我们就总线分支过长/过多引起的总线问题进行深入的剖析。 CAN总线的布线受现场环境、产品形状等因素的影响,可能导致现场布线中出现总线的分支过长/过多等现象,某系统中A、B(AB各有120电阻)一条CAN线上挂有CDEF等节点,若将C支线延长100m,则F全部关闭,系统会报错,去掉100m延长线,F任意状态系统都不会报错。 当总线支线过长,上升沿和下降沿产生台阶现象,当台阶正好处于0.5V逻辑识别阈值附近时,容易导致位宽度失调,从而使接收节点接收错误,针对此类错误
发表于 2019-08-15
技术文章—CAN总线分支过多或过长问题的五种解决方案

STM32-(37):CAN总线(协议帧)

CAN协议帧的概念帧帧用途数据帧用于发送单元向接收单元传送数据的帧。遥控帧用于接收单元向具有相同ID的发送单元请求数据的帧。错误帧用于检测出错误时向其它单元通知错误的帧。过载帧用于接收单元通知其尚未做好接收准备的帧。帧间隔用于将数据帧及遥控帧与前面的帧分离开来的帧。另外,数据帧和遥控帧有标准格式和扩展格式两种格式。标准格式有11个位的标识符(Identifier:以下称ID),扩展格式有29个位的ID。数据帧的组成SOF(start of frame):帧的起始位数据帧详解:(1)帧起始(标准、扩展格式相同)表示帧开始的段。1个位的显性位。显性电平和隐形电平总线上的电平有显性电平和隐形电平两种。总线上执行逻辑上的线“与”时,显性
发表于 2019-08-13
STM32-(37):CAN总线(协议帧)

STM32-(36):CAN总线(概述)

,并被广泛地应用于工业自动化、船舶、医疗设备、工业设备等方面。车载网络联想CAN总线拓扑图CAN总线特点(1)多主控制在总线空闲时,所有的单元都可开始发送消息(多主控制)。最先访问总线的单元可获得发送权(CSMA/CA力式)。多个单元同时开始发送时,发送高优先级 ID 消息的单元可获得发送权。(2)消息的发送在CAN协议中,所有的消息都以固定的格式发送。总线空闲时,所有与总线相连的单元都可开始发送新消息。两个以上的单元同时开始发送消息时,根据标识符(Identifier以下称为ID)决定优先级。ID并不是表示发送的目的地址,而是表示访问总线的消息的优先级。两个以上的单元同时开始发送消息时,对各消息ID的每个位进行逐个仲裁比较。仲裁获胜
发表于 2019-08-13
STM32-(36):CAN总线(概述)

找到CAN总线(故障)节点的三种办法

CAN总线的出现为分布式控制系统实现各节点之间实时、可靠的数据通信提供了强有力的技术支持,在带来便利的同时,也为工程师们故障排查增加了难度,所以本文主要给大家介绍了找到CAN总线(故障)节点的三种办法。 1、 将所有节点都拔掉,依次往上接。当CAN总线出现故障后将所有节点都拔掉,之后一个一个节点往上接,接到系统出错时,即找到最后一个插入节点为故障节点。如下这种情况,图1为新能源车控制总线,车辆启动后仪表显示滞后,显示错误。导致司机判断延迟与错误,影响交通安全。将所有节点拔掉之后,采用此方法挨个节点往上接,直到电机控制器接到总线上出现了通信故障,初步判断为电动机运行产生的强干扰,串扰到CAN总线上,导致帧错误增加,重发频繁
发表于 2019-08-07
找到CAN总线(故障)节点的三种办法

基于stm32/linux系统的can总线的电机与485的全方位机器人通讯

之前做的是仿pioneer3at的机器人,做过两个版本,第一版完全仿的,国内机械加工,很多厂不愿意加工这种小活,加工出来的精度不够,很多问题第二版做出来的问题是带传动,当负载过大时,会产生跳齿等问题,自己画图生产,当时也没认真做效果只能说一般电机使用的是富兴公司的伺服电机  第三版由4个转向电机4个轮毂电机及4个编码器组成在linux控制电机程序为:https://download.csdn.net/download/jankin_by/10342919调试最后总出现编码器CRC校验错误,怀疑为linux下多串口通信的问题改为用单片机直接控制https://download.csdn.net/download
发表于 2019-07-27
基于stm32/linux系统的can总线的电机与485的全方位机器人通讯

小广播

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2019 EEWORLD.com.cn, Inc. All rights reserved