You are on page 1of 56

CANScope 成功应用客户榜

轨道交通

四方车辆研究所有限公司 永济新时速电机电器有限责任公司
SIFANG ROLLING STOCK RESEARCH INSTITUTE CO.,LTD YONGJI XINSHISU ELECTRIC EQUIPMENT CO.,LTD.

中国北车集团大连机车研究所有限公司
北京全路通信信号研究设计院有限公司
Beijing National Railway Research & Design Institute of
CNR Dalian Locomotive Research Institute Co.,Ltd.
Signal & Communication Co.,Ltd.

汽车电子

电梯行业 船舶电子

中船重工第七O四研究所 中船重工第七O九研究所 中船重工第七一二研究所

电力行业

中电装备许继风电科技有限公司
CET XJ WINDPOWER TECHNOLOGY COMPANY 北京国网普瑞特高压输电技术有限公司

煤矿行业 电梯行业
电梯行业

中国煤炭科工集团
煤炭科学研究总院 林肯电梯(中国)有限公司

航空航天 医疗设备 工程机械

中国航天科技集团公司
ACADEMY OF OPTO-ELECTRONICS,CHINESE ACADEMY OF SCIENCES
CASC China Aerospace Science and Technology Corporation
目录

1.前言............................................................................................................................. 1
2.测试设备简介............................................................................................................. 2
2.1 CANScope 功能特点与型号分类............................................................................ 2
2.2 报文界面 ................................................................................................................... 4
2.3 示波器界面 ............................................................................................................... 5
2.4 波形界面 ................................................................................................................... 5
2.5 波形与报文联动观察界面 ....................................................................................... 5
2.6 CANStressZ 模拟信号测试扩展板.......................................................................... 6
3.测试前的准备工作..................................................................................................... 8
3.1 操作方法 ................................................................................................................... 8
4.排查步骤 1——测量波特率排查位定时异常节点................................................ 10
4.1 操作方法 ................................................................................................................. 10
4.2 典型案例(125K 的波特率偏差) ....................................................................... 11
4.3 解决方案 ................................................................................................................. 12
5.排查步骤 2——总线工作状态与信号质量“体检”............................................ 13
5.1 操作方法 ................................................................................................................. 13
5.2 典型案例(整改成果量化统计) ......................................................................... 15
5.3 解决方案 ................................................................................................................. 16
6.排查步骤 3——流量分析与总线利用率排查传输堵塞........................................ 17
6.1 操作方法 ................................................................................................................. 17
6.2 典型案例(矿山瓦斯监测数据堵塞问题) ......................................................... 19
6.3 解决方案 ................................................................................................................. 19
7.排查步骤 4——排查干扰导致的通讯异常............................................................ 20
7.1 操作方法 ................................................................................................................. 20
7.2 典型案例(新能源汽车的困惑) ......................................................................... 23
7.3 解决方案 ................................................................................................................. 24
8.排查步骤 5——信号幅值质量排查长距离或非规范线缆导致异常.................... 26
8.1 操作步骤 ................................................................................................................. 26
8.2 典型案例(煤矿长距离通讯问题) ..................................................................... 27
8.3 解决方案 ................................................................................................................. 28
9.排查步骤 6——测量总线延迟排查延迟导致的通讯异常.................................... 30
9.1 操作步骤 ................................................................................................................. 31
9.2 典型案例(高速铁路) ......................................................................................... 32
9.3 解决方案 ................................................................................................................. 32
10.排查步骤 7——带宽测量排查导线是否匹配传输.............................................. 33
10.1 操作方法 ................................................................................................................. 33
10.2 典型案例(门禁行业 CAN 通讯问题)............................................................... 34
10.3 解决方案 ................................................................................................................. 36
11.排查步骤 8——软件眼图追踪故障节点 .............................................................. 37
11.1 操作方法 ................................................................................................................. 37

2
12.排查步骤 9——评估总线阻抗、感抗、容抗对信号质量的影响...................... 44
12.1 操作步骤 ................................................................................................................. 44
13.排查步骤 10——总线阻抗压力测试排查环境影响因素.................................... 47
13.1 操作方法 ................................................................................................................. 47
14.免责声明................................................................................................................. 51

3
1. 前言

撰写本文的主要目的是指导 CAN 总线的研发与测试人员,排查 CAN 总线常见的故障,并


且提出相应的解决方案,弥补国内此类文章的空白。由于篇幅有限,如果读者还不熟悉 CAN 总
线原理,请先阅读《项目驱动——CAN-bus 现场总线基础教程》。
本文所有测试与分析都是基于广州致远电子股份有限公司生产的专业版 CAN 总线分析仪
——CANScope-Pro。分析排查步骤与解决方案,为笔者数年 CAN 总线研发与现场支持的经验,
按此步骤可以发现与解决 CAN 总线 95%以上的问题。若您有不解或者文章没有提及的,欢迎与
我司联系:Email:CANScope@zlg.cn
本文可用于 CAN 总线故障检测、常规检修、技术支持维护人员培训。
若排查出故障节点,建议将故障节点单独取下,按另外一篇《CAN 节点及网络的测试与标
定》的步骤来检查具体故障原因。

1
2. 测试设备简介

CANScope 分析仪是 CAN 总线开发与测试的专业工具,集海量存储示波器、网络分析仪、


误码率分析仪、协议分析仪及可靠性测试工具于一身,并把各种仪器有机的整合和关连;重新
定义 CAN 总线的开发测试方法,可对 CAN 网络通信正确性、可靠性、合理性进行多角度全方
位的评估。如图 2.1 所示。

图 2.1CANScope 外观图

超长的波形存储、可靠的报文记录、精准的出错定位、实时的示波器显示、丰富的高层协
议分析帮助用户快速定位故障节点,解决 CAN 总线应用的各种问题,是 CAN 总线开发测试
的终极工具。如图 2.2 所示,为其测量原理。即将信号分为模拟通道和数字通道进行处理,然
后再结合后存储。提供给上位机软件分析。

图 2.2CANScope 测量原理

2.1 CANScope 功能特点与型号分类


1. 100MHz 示波器,实时显示总线状态,并且能进行至少 13000 帧波形的存储
2. 所有报文(包括错误帧)的记录、分析,全面把握报文信息
3. 强大的报文重播,精确重现总线错误
4. 强大的总线干扰与测试,有效测试总线抗干扰能力

2
5. 支持多种高层协议,图形化仿真各种仪表盘
6. 实用的事件标记,最大限度存储用户关心的波形
7. 从物理层、协议层、应用层对 CAN 总线进行多层次分析
8. 支持软硬件眼图,辅助评估总线质量,并且能通过眼图准确定位问题节点

表 1CANScope 分类

模块 功能项 CANScope-basic CANScope-standard CANScope-Pro


测量通道 1个 1个 1个
通信接口 480Mbps 480Mbps 480Mbps
示波器采样率 - 100M 100M
示波器存储容量 - 2K 8K
硬 波形存储容量 - 512M 512M
件 波形记录个数 - 13000 个 13000 个
基 模拟带宽 - 60MHz 60MHz
本 垂直测量范围 - 1V-50V 1V-50V
功 实时示波器 - 支持 支持
能 报文接收 支持 支持 支持
报文发送 支持 支持 支持
任意序列发送 支持 支持 支持
终端电阻开关 支持 支持 支持
自动侦测波特率 支持 支持 支持
硬件眼图 - 支持 支持
硬 网络分析 - 不支持 支持
件 模拟干扰 - 不支持 支持
扩 数字干扰 不支持 不支持 支持
展 事件标记 不支持 不支持 支持
功 对称性测试 支持 支持 支持
能 终端电阻可调 - 不支持 支持
网络负载电容可调 - 不支持 支持
SDK 开放 支持 支持 支持
帧统计 支持 支持 支持
流量分析 支持 支持 支持
软 总线利用率 支持 支持 支持
件 报文重播 支持 支持 支持
功 高层协议分析 支持 支持 支持
能 自定义协议分析 支持 支持 支持
网络共享 支持 支持 支持
虚拟硬件 支持 支持 支持
软件眼图 - 不支持 支持

软件主界面如图 2.3 所示。分别为报文串口,实时波形窗口,记录波形窗口,眼图窗口。

3
所以 CANScope 相当于 CAN 接口卡、示波器、逻辑分析仪三者合一的综合分析仪器,能解决
CAN 总线绝大部分的问题。

图 2.3CANScope 分析软件界面

2.2 报文界面
CANScope 的 CAN 报文界面可以容纳无数个 CAN 帧,只要您的 PC 内存足够大,就可以
一直保存下去,并且有导出功能。这个 CAN 报文界面与那些带 CAN 控制器的设备(比如
USBCAN)不同,它可以实时捕获总线错误状态,就是说可以记录错误帧。比如在“状态”栏
里面输入“错误”即可以将所有错误帧筛选出来。并可以很方便地进行报文发送(重播)
。另外
还有一个重要的选项,就是总线应答,如果不勾选,则 CANSCOPE 是作为一台只听设备,不
会应答总线上的报文,如果勾选,则 CANSCOPE 能作为一台标准的 CAN 节点工作,可以发送
数据。如图 2.4 所示。

图 2.4CANScope 报文界面

4
2.3 示波器界面
CANScope 集成 100MHZ 实时示波器,开机后即可自动进行匹配波特率。可以对 CANH,
CANL,CAN 差分进行分别测量。获得位宽、幅值、过冲、共模电压等等常规信息。另外还能
对波形进行实时傅里叶变换(FFT) ,将不同频率的信号分离出来,从而实现发现干扰源的目的。
如图 2.5 所示。

图 2.5 CAN 示波器

2.4 波形界面
由于实时示波器只能看即时窗口的波形,所以为了更好地发现总线上面的物理问题,
CANScope 自带 512M 超大波形存储,可以将波形数据存储 13000 帧作为分析数据。并且在分析
时,已经将模拟信号、数字信号、协议分析都按时间解析好,方便工程师对应查看故障所在。
比如某个 CAN 报文出错,但这个错误是什么波形,就可以一目了然获知。如图 2.6 所示。

图 2.6 波形存储界面

2.5 波形与报文联动观察界面
按照测试习惯,为了方便查看和分析,CANScope 还可以同步建立水平选项卡,这样就可
以同步查看报文与对应波形。当然我们最重要的不是用来看正常的报文,只要在筛选框中输入
错误,即可筛选出错误报文,然后点击即可查看到错误帧的波形。如图 2.7 所示。

5
图 2.7 CAN 报文与波形同步观察界面

2.6 CANScope-StressZ 模拟信号测试扩展板


CANScope-StressZ 是配套 CANScope-Pro 专业版 CAN 总线分析仪的扩展板。
如图 2.8 所示。

图 2.8CANScope-StressZ 模拟信号测试扩展板

CANStressZ 内部集成了 CAN 总线压力测试模块和网络线缆分析模块。


※压力测试模块包括模拟干扰(数字干扰在 CANScope 已标配) ,CAN-bus 应用终端的工
作状态模拟、错误模拟能力。可以在物理层上进行 CAN 总线短路、总线长度模拟、总线负载以
及终端电阻匹配等多种测试,可以完整地评估出一个系统在信号干扰或失效的情况下是否仍能
稳定可靠地工作。
※网络线缆分析模块具有无源二端网络的阻抗测量分析的能力。可以测试导线在不同频率
下的匹配电阻、寄生电容、电感。标定导线在何种波特率下具备最佳的通讯效果。
两个模块联合使用可以帮助用户快速而准确地发现并定位错误,完成对节点的性能评估与
验证,大大缩短开发周期,方便实现网络系统稳定性、可靠性、抗干扰测试和验证等复杂工作,
是 CAN-bus 网络测试工程师的好帮手。如图 2.9 所示,为和 CANScope-Pro 设备连接后的测量
连接图。

6
图 2.9 连接测试图

7
3. 测试前的准备工作

我们在使用 CANSCOPE 测试前,需要做一下准备工作,避免测试设备本身影响总线。

3.1 操作方法
1. 去掉仪器自带的终端电阻,避免影响总线
打开软件,点击 PORT 板,将启用终端电阻勾掉,保证 CANSCOPE 本身自带的 120 欧终
端电阻不并到总线上。影响测试结果。如图 3.1 所示。

图 3.1 去掉自带终端电阻

2. 如果加有 StressZ 模拟扩展板,需要打开控制面板恢复初始状态


如图 3.2 所示这个状态,先点击重置配置,然后点击 RHL 将 120 欧断开。点击红色三角开
启。即保证处于一种不干扰总线状态。注意一般不可将 RHL 使能后,设置为 0,因为这是一种
短路状态。

图 3.2 将扩展板的终端电阻去掉

3. 保证 CANScope 处于只听状态,在 CAN 报文界面,将总线应答勾去掉。如图 3.3 所


示。

8
图 3.3 总线应答

4. 接线时小心,不要将 CANH 和 CANL 接反。


5. 一般只要接 CANH 和 CANL 即可,共地只是在容错 CAN 时使用。
6. 一般使用默认的数学差分的方法测量即可,如果被测设备干扰特别严重,必须使用硬
件差分+隔离外部地+电池供电,以隔离干扰。防止仪器损坏。如图 3.4 所示。

图 3.4 硬件差分

7. 收到一定的样本数据,先将测试夹头与被测总线脱离,点击保存,再分析,避免电脑
死机、掉电、软件死机等造成不必要的麻烦。如图 3.5 所示。
注意:保存的时候要勾选保存波形,这样我们就可以离线用 13000 帧波形来分析总线模拟信号
了,无需在现场分析。

图 3.5 保存数据和波形

9
4. 排查步骤 1——测量波特率排查位定时异常节点

波特率(也称位定时,就是信号位的最小脉宽)是 CAN 总线通讯的最基本要素。如果波特


率不匹配或者波特率有所偏差,会导致识别信号的错误,造成无法通讯或者通讯异常。所以任
何情况下,对异常的 CAN 总线测试,首先都要测试波特率的准确性。波特率偏差主要发生在如
下情况:使用了非整数值的晶振(比如 11.0592MHZ)、极端温度导致晶振偏差、CAN 控制器
内部波特率发生器偏差。
CANScope 具备自动匹配与统计波特率的功能,可以直观地反映总线上的波特率状况。

4.1 操作方法
1. 将 CANScope 的 CANH、CANL 接入总线,打开软件,在 CAN 报文界面,使能侦测波特率,
等待一段时间,CANScope 将自动匹配波特率结果。如图 4.1 所示。

图 4.1 自动匹配波特率

2. 点击开启,然后点击自动量程,CANScope 自动匹配测量,如图 4.2 所示。

图 4.2 自动量程

然后打开 CAN 眼图菜单,点击开启眼图,如图 4.3 所示。

图 4.3 CAN 眼图开启

然后就可以生成 CAN 眼图,如图 4.4 所示,用户可以点击电压测量和时间测量,来对眼图的位

10
宽和位高进行测量,位宽度就是波特率的倒数,这样就可以非常精确获取波特率准确值。注意,
如果没有眼图出现,可以在报文界面多点击几次自动量程,或者是由于波形过少,可以等待一
段时间,让波形叠加次数增加。

图 4.4 眼图实际测量波特率精准度

4.2 典型案例(125K 的波特率偏差)


这个号称 125K 波特率的总线上,CANScope 测出 125.4K 的波特率,如图 4.5 所示。

图 4.5 波特率偏差

因为这个波特率是仪器通过大量的位宽平均统计出来的,排除了由于测量误差造成的偏差。
这个值是真实可靠的。所以我们可以肯定是总线上某些节点的波特率有所偏差,即“一粒老鼠
屎坏一锅粥”。
一旦波特率有所偏差就会导致出错的概率大大增加,重发的无效数据次数增多,数据传输
延迟等现象,降低了 CAN 重同步纠错能力。所以保证准确的波特率是 CAN 通讯中最重要的因
素。PS:之所以选择 125K 为例,是因为 125K 是最经常出问题的波特率。

11
4.3 解决方案
1. 通过 CANScope 眼图反溯功能(见排查步骤 7)
,找到波特率不匹配的节点,对其程序
中的位定时寄存器或者晶振进行修正为正确位时间;
2. 将总线上每个节点单独上电,用 CANScope 的眼图功能单独测试其波特率,找到故障节
点,亦对其程序中的位定时寄存器或者晶振进行修正为正确位时间。
3. 如果无法修改故障节点的程序,或者已经是同样的波特率还是无法正常通讯。这时需
要考虑到可能是采样点不一致导致。所以建议修改正常节点的程序。需要提高正常节点波特率
寄存器中的同步跳转宽度 SJW 值(加大到 3 个单位时间),则可以加大位宽度和采样点的容忍度。
4. 如果所有节点都无法修改,则建议购买致远电子的 CAN 网桥 CANbridge 串联在故障节
点上,由 CAN 网桥来调整两端的波特率寄存器匹配值,保证通讯。

12
5. 排查步骤 2——总线工作状态与信号质量“体检”

评价一个 CAN 总线到底工作状况如何,节点信号质量是否正常,是我们检查的基本步骤。


以前即使对于正常工作的节点,我们也只能模糊的回答“从通讯上看是正常的”或者“偶尔不
正常”
,这时心里也是没底的。所以我们可以使用 CANScope 的报文统计和信号质量功能,定量
评价总线与节点。就像医院里面的各种常规检查,来评价一个人是健康还是亚健康,还是疾病。

5.1 操作方法
1. 打开 CANScope,在 CAN 报文界面点击开启,这时 CANScope 默认进行一次匹配波特率
和示波器自动量程,可以切换到 CAN 示波器界面,等待自动量程结束后。如图 5.1 所示。
为了保证数据正确性(因为自动匹配时可能会有异常数据),所以需要再切换到 CAN 报文界
面,点击停止,然后再点击启动,以清除刚才的异常数据。记录一定时间的报文,推荐记录 1
万-10 万帧作为一个评价基数。然后点击停止,进行下面的统计工作。

图 5.1 启动 CANScope 进行报文接收

2. 点击报文界面右上角的工具中的帧统计功能,就有一个框对所有收到的报文进行分类。
如图 5.2 所示。

图 5.2 帧统计功能

13
比如这个总线的成功 CAN 帧占 83.8%,其他的都是错误的,每种错误类型和百分比都一目
了然,而且可以展开错误帧进行具体定位。这样我们就可以量化评价一个总线好坏。
成功率 状态
80%以下 基本不能工作(信号延迟、丢失等情况非常严重)
80%-90% 亚健康待整改(信号经常有延迟、丢失等情况)
90%-95% 可工作(信号偶尔有延迟、丢失等情况)
97%以上 工作状况较好(总线错误对通讯影响较小)

由于 CAN 传输的 CRC 校验机制,保证了错误不会被 CAN 节点接收,但错误的报文也会占用


总线时间,导致正确的报文延时或者总线堵塞。所以提高传输成功率就是保证系统工作正常的
保证。
3. 信号质量分析。用户可以点击菜单栏上的信号质量,如图 5.3 所示。

图 5.3 信号质量

4. 点击开始评估后,默认按 ID 来进行信号质量进行评分,客户也可以使用 DeviceNet


源地址或者 J1939 源地址分类,从而获得每个节点的信号质量。如图 5.4 所示。
用户可以使用这个功能,快速评估总线节点的物理层质量。比如汽车产线的总装后检测。
如果遇到评分较低的,则可以快速拆换对应设备,从而保证生产进度。也可以用于现场故障排
查时,快速确定故障节点。

图 5.4 信号质量分析结果

14
“信号质量”分析插件可以通过分析每个 CAN 节点发出的波形,自动对其的最小电压幅
值、最大电压幅值、信号幅值、波形上升沿时间、波形下降沿时间、信号时间进行综合“评分”,
然后通过柱状图来直观显示出每个 CAN 帧 ID 的信号质量。用户无需深入了解 CAN 总线协议、
眼图、斜率、幅值、振铃、地弹等等专业知识。只需使用 CANScope 采集一段时间后,点击鼠
标即可自动完成分析工作。如图 5.5 所示。为六个测量评价的参数。

图 5.5 CANScope 信号质量分析参数

5.2 典型案例(整改成果量化统计)
我们做 CAN 的测试和整改工作,如何反映整改效果?怎么才能体现出我们的努力?从大的
来说可以给党和人民一个交代,从小的来说,对得起自己的辛勤劳动。所以必须用报文统计功
能来导出报表,量化整改成果。比如,我们在整改之前,先统计一下报表,发现成功率只有 83.3,
而整改后,提高到 99.9%,很明显我们的整改工作是有效的。如图 5.6 所示。

图 5.6 整改成果展示

15
5.3 解决方案
从帧统计中如果发现有错误,则可以双击这个错误,即可在报文上面定位到这一帧,然后
在选项卡右边右击,新建水平窗口。如图 5.7 所示。

图 5.7 新建水平选项卡

然后就可以查看对应的波形,达到发现问题所在的目的。如图 5.8 所示。

图 5.8 定位错误帧波形

如果在信号质量分析中,发现有评分较低的,则可以快速拆换对应设备,从而保证快速恢
复系统。现场故障排查时,快速确定故障节点。

16
6. 排查步骤 3——流量分析与总线利用率排查传输堵塞

CAN 总线本质上还是半双工通讯,就是“单行道”,即一个节点发送的时候其他节点无法
发送数据。虽然 CAN 报文 ID 有优先级的区分,但如果高优先级一直占用总线,导致低优先级
的节点就无法发出数据,这就是堵塞现象。所以控制流量,防止堵塞是总线健康正常通讯的基
本要素。

6.1 操作方法
1. 操作 CANScope 能正常接收报文后,然后打开总线利用率。即可获得目前总线的基本流
量概况。如图 6.1 所示。

图 6.1 总线利用率

点击刷新时间,改为较快。观察一段时间:
如果利用率都没有超过 30%,则说明总线流量较好,没有明显的拥堵情况;
如果利用率突发超过 70%,则说有堵塞情况,建议进行下面第二步流量分析的排查。
如果平均利用率都在 70%以上,则说明总线严重拥堵,必须进行流量分析整改。

17
2. 与排查步骤 2 类似,先取得 1 万-10 万帧的评价基数。然后点击流量分析,在 CAN 报
文下面生成以时间轴排列的 CAN 报文时序图。如图 6.2 所示。

图 6.2 流量分析

这样我们就可以发现有拥堵的位置。如图 6.3 所示。

图 6.3 发现拥堵位置

可以按住 CTL,鼠标左键放大查看对应区域,看看是哪些 ID 导致了堵塞。如图 6.4 所示。

可以将鼠标停在帧之间,可以自动测量帧间隔宽度。

图 6.4 查看拥堵原因

18
3. 拥堵的还有一个重要的危害就是发生报文竞争,导致仲裁。在仲裁结束时,容易产生
尖峰脉冲,有导致位翻转的隐患,特别是在容抗较大场合,容易导致位错误。如图 6.5 所示。

图 6.5 竞争时导致的尖峰

6.2 典型案例(矿山瓦斯监测数据堵塞问题)
由于煤矿通讯的距离很远,所以波特率通常都是设置为 5K,每秒的最大带宽只有 40 帧/秒,
因此如果同时有 50 个节点平均 1 秒各发 1 帧数据,肯定有 10 个低优先级的节点数据发不出来。
实际情况是当节点数量超过 30 以后,就经常有节点上传延迟。如图 6.6 所示。

图 6.6 矿山瓦斯监控拥堵

6.3 解决方案
1. 子节点拉大定时上传的周期,比如此案例,可以将所有节点的上传周期改为 2 秒;
2. 采用“平时主机轮询式通讯,突发事件子节点上传数据”的方式,保证了正常通讯秩
序与突发事件的实时响应速度;
3. 采用主机定时发送心跳,子节点按时间片轮转的方式上传,如果某个子节点遇到突发
事件,子节点可打破规则,即时上传数据。
4. 提高通讯波特率,提高传输带宽。但要小心这样会缩短通讯距离,有可能导致通讯异
常。
5. 采用光纤传输,提高传输带宽。因为光纤传输延迟是双绞线的 1/2,所以同样距离,
使用光纤介质可以提高 1 倍传输波特率,这里推荐使用致远电子的 CANHUB-AF1S1 光纤转换器,
其特色是在光纤上面依然保持 CAN 链路层信号。获得最佳的带宽和实时性。

19
7. 排查步骤 4——排查干扰导致的通讯异常

CAN 总线虽然有强大的抗干扰和纠错重发机制,但我们要认识到,由于最早 CAN 是被应


用于汽车行业,而汽车内部的电磁环境并不恶劣,最高电压很少超过 36V。但目前 CAN 被大量
应用于其他很多行业,比如轨道交通、医疗、煤矿、电机驱动等。而这些场合的电磁环境则恶
劣许多。所以目前 CAN 的非汽车现场应用中,被干扰导致的异常约占 30%之多。
所以排查干扰是我们检查和评估 CAN 总线通讯异常的必需步骤。一般干扰分为正弦频率干
扰与周期脉冲干扰。针对前者 CANScope 提供 FFT 分析,即傅里叶变换,把信号进行频域上面
的分解,并且能滤除正常信号,这样就可以很方便地看出干扰频率。
如果是周期脉冲干扰需要人工在波形中发现与测量,这个多发生在有电磁阀、继电器、或
者电流周期通断的场合。在变化的时候产生很强的耦合信号导致 CAN 通讯中断

7.1 操作方法
1. 与排查步骤 2 类似,但这个分析必需要有波形,而 CANScope 最多存储 13000 帧波形,
所以建议是在整个系统满负荷工作情况下,再启动 CANScope。这样取得 13000 帧的波形比较有
代表意义。
如果是单帧分析,即 CAN 报文中有波形的任意一帧,然后切换到 CAN 波形中(或者使用新
建水平窗口)。即可看到这帧的波形,点击右上方的 FFT 分析。如图 7.1 所示。

图 7.1 FFT 分析

2. 随即弹出分析结果,选择 CAN 共模的方式,可以滤除正常信号,让干扰信号水落石出。


右边表格排列的是干扰频率的排名,我们只需关心最高频率即可。如图 7.2 所示。注意如果是
0Hz 的幅值最高,可以略去。

20
图 7.2 FFT 共模干扰分析

但对于现场排查故障的工作来说,单帧分析无法全面了解干扰的情况,所以在报文界面的
工具栏中,有“FFT 共模干扰“的统计分析。如图 7.3 所示。

图 7.3 共模干扰统计

点击后,即出现“共模干扰统计”框,设置好干扰幅度门限(默认为 0.2V),点击开始统
计即可。软件自动将干扰幅值从大到小进行排序。用户也可以双击进行对应帧查看。

图 7.4 共模干扰统计出干扰频率

21
可见,这个波形主要受到 1.2422MHZ 左右的正弦频率干扰,幅值可高达 222 毫伏。一般
来说如果超过 200 毫伏即有影响正常通讯的风险(CAN 显性电平为 0.9V,一般需要高于 1.1V
才能保证基本的通讯)。
找到干扰频率后,我们需要查看系统中哪些部件是这个频率,这样我们可以针对性做解决
方案。
3. 如果是周期脉冲性干扰,在 FFT 变化后,由于不是正弦的信号,所以大部分能量还是
集中在 0HZ,所以这个情况下需要人工进行测量。如图 7.5 所示。

图 7.5 周期性脉冲干扰

可见这个周期性的脉冲是 20KHZ,如果是 FFT 的结果是看不出来的。如图 7.6 所示。

图 7.6 脉冲性干扰无法 FFT

22
7.2 典型案例(新能源汽车的困惑)
新能源汽车通常是指纯电动汽车或者混合动力汽车,与传统汽车不同,其是使用电池、电
容来存储能量,然后通过逆变的方式变成交流,带动电动机驱动车辆。所以带来的就是复杂的
电磁环境。
作为国家大力发展的方向,基本各大车厂都有自己的新能源汽车产品,其控制总线仍然延
续用 CAN-bus,国家标准协议为 J1939 协议及衍生自定义。实现车辆控制与充电管理。如图 7.7
所示。

图 7.7 新能源汽车

主要问题:逆变产生的巨大电流形成强干扰,串扰到 CAN 总线上,导致控制器死机、损坏或


者通讯延迟及中断,车辆运行不稳定。用户的现象是:仪表显示滞后,显示错误。导致司机判
断延迟与错误,影响交通安全。
通过将 CANScope 接入电动车的 CAN 总线,进行 FFT 分析,我们可以发现,原有的波形
在逆变打开后(或者加速踏板踩下后),即会有干扰产生。如图 7.8 所示,正常的波形被干扰后,
目测即可看出有干扰频率。

图 7.8 干扰导致波形畸变

然后我们进行 FFT 分析,选择 CAN 共模,即可找到是 1275KHZ 的干扰频率。如图 7.9


所示。

23
图 7.9 FFT 查找干扰频率

我们可以发现这个正弦频率与系统中电动机的频率吻合,即可断定是电动机的动力线缆与
CAN 总线靠得太紧,导致磁耦合,产生脉冲群。如图 7.10 所示。

整车控制器
VMS 仪表

由于干扰导致帧数据错误

电机控制器

电池管理ECU

图 7.10 查找干扰源

干扰导致帧错误增加,重发频繁,正确数据不能及时到达。所以如何定位干扰与消除干扰
是每个制造厂商与维护商必须要处理的。

7.3 解决方案
1. 由于强电流产生的是空间磁干扰,所以屏蔽层效果很小,应该将 CAN 线缆双绞程度加
大,即 2 线靠的更紧点,保证差模信号被干扰的程度减小,这对于周期正弦干扰又很强的抑制
性;
2. 将动力线缆与 CAN 线缆远离,最近距离不得小于 0.5 米,这个对于抑制周期脉冲干扰
是最有效的;

24
3. CAN 接口设计采用 CTM1051 隔离收发器,隔离、限幅,防止 ECU 因为强干扰死机;
4. CAN 接口增加磁环、共模电感等抗浪涌效果较好的感性防护器件。
5. 外接专用的信号保护器消除干扰,如 ZF-12Y2 消耗干扰强度和 CANbridge 网桥做隔离。
6. 采用光纤传输,比如致远电子的 CANHUB-AF1S1,完全隔绝干扰。
7. 程序做抗干扰处理,通常在监测到总线关闭后,50 毫秒后重新复位 CAN 控制器,清除
错误计数。连续复位 10 次后,这个时延长到 1 秒。

25
8. 排查步骤 5——信号幅值质量排查长距离或非规范线缆导致异常

CAN 总线上面的信号幅值是接收节点能正确识别逻辑信号的保证。一般来说差分电平
(CANH-CANL)的幅值只有大于 0.9V 才能被 100%识别成显性电平,同理如果幅值低于 0.9V
就有被识别出隐形电平的可能。
差分电平幅值 识别成的逻辑值
>0.9V 显性电平(0)
0.5~0.9V 不确定区域
<0.5V 隐形电平(1)
上表中的 0.5V~0.9V 是不确定区域,这个根据不同收发器而异,与温度也有关系。所以检
查通讯中幅值最小的那个(那些)节点,是我们的进行问题排查的重要步骤。因为如果幅值过
低容易导致时通时断等现象。

8.1 操作步骤
为了跟清晰地统计所有位的幅值,所以需要用到 CANScope 的眼图功能。所谓眼图即将总
线上所有位进行叠加,然后可以进行观察是否有异常位。
1. 启动 CANScope 后,与排查步骤 2 类似,先进入可以正常采集的状态。然后进入 CAN
眼图界面,确保通道为 CAN-DIF,然后点击开启。然后就可以生成眼图。
可以调用 CAN 眼图窗口的电压测量和时间测量,测量出位的脉宽和幅值。并且可以拖动这
些测量线,对关心的值进行测量,比如上升时间之类。如图 8.1 所示。

图 8.1 眼图测量

这张眼图是实验室测量出来的,可以获得非常漂亮的 CAN 波形,所以生成的眼图也很好看,


传输的每个位都很规整,节点距离也不远,幅值都差不多。
而在实际现场,通常捕捉到的眼图,由于每个节点的距离不同,导线分压等原因造成传输
到测试点的幅值不同,所以产生了很多条亮线。如图 8.2 所示。

26
图 8.2 现场实际的眼图

所以我们在现场要对这样的眼图进行分析。假设在现场做出来的眼图很模糊,可以点击“眼
图轮廓”来清晰化。如果还是很乱,说明干扰非常严重,则就要使用排查步骤 9 的软件眼图来
进行分析。

8.2 典型案例(煤矿长距离通讯问题)
煤矿的瓦斯监测、人员定位等都属于长距离 CAN 通讯的典型应用,通常的布线都在 1 公里
以上,最高可达 6-8 公里。而且拓扑结构非常复杂。而远距离通讯带来的就是导线阻抗无法忽
略的问题。如图 8.3 所示。

图 8.3 井下远距离布线

如果采用常规的 120 欧终端电阻方式,则导线的分压将会降低传输信号的幅值。比如标准

27
的 1.5 平方毫米屏蔽双绞线,每公里的每根是 12.8 欧的直流阻抗。所以 5 公里的传输距离上与
120 欧电阻分压,最终将 2V 的差分电平削减到 1V,如图 8.4 所示。

图 8.4 远距离幅值降低

而 CAN 的显性电平标准为 0.9V,所以微小的抖动和干扰都会导致位错误。从而导致节点


错误增加,进入错误被动状态(错误计数器>128),而这个状态发送的错误帧是隐形的,不会引
起发送节点从发,所以就会导致接收不到数据的情况。

8.3 解决方案
为了保证通讯质量。考虑在温度变化、干扰等因素,我们通常要求现场调试 CAN 的差分幅
值通常都要求在 1.3V 以上。所以我们可以通过 CANSCOPE 的眼图分析找出幅值最小的亮线,
保证在调整后,它处于 1.3V 以上。

找到幅值最小的亮线,保
证其幅值要大于 1.3V。

图 8.5 保证最小幅值大于 1.3V

28
为了提高幅值,我们有以下几种办法:
1. 使用线径更大的线缆,减小导线阻抗,需要强调的是 CAN 通讯禁止使用网线和电话线,
因为其阻抗极大,100 米就相当于 1000 米的标准距离;
2
2. 调整终端电阻值,提高幅值。这个是 1.5mm 线缆的匹配值。

29
9. 排查步骤 6——测量总线延迟排查延迟导致的通讯异常

CAN 总线主要制约其传输距离的,就是总线传输延迟,因为导线通常延时为 5ns/m,还有


隔离器件的延时,所以导致传输延迟,如果 CAN 的重同步也不足以弥补这个延迟,就会导致采
样错误,最终 CRC 校验错误。由于 CAN 的重同步功能,测量延时只能从应答场反映出来。如
图 9.1 所示。

图 9.1 延时的危害

这个延时有各方面的原因,包括导线材质(镀金的 0.2 平方毫米线相当于 1.0 平方毫米的铜


线)、CAN 收发器与隔离器件(比如光耦的延时高达 25ns,而磁隔离只有 3-5ns)。
如图 9.2 所示即为一个由于延时导致的错误(CRC 校验错误)

图 9.2 延迟导致的错误

由于 CRC 前面的传输延时,导致某个节点采样错误,最终 CRC 校验失败,所以在 ACK 界


定符之后发出了错误帧,进行全局通知,其他节点响应错误。让发送节点重新发送。因此控制
延迟,留有裕量是保证 CAN 通讯质量中很重要的因素。

30
9.1 操作步骤
很简单,只要在记录好的 CAN 报文界面中的工具栏中,找到“传输延时“的统计分析。点
击即可进行延时分析。如图 9.3 所示。

图 9.3 传输延时

统计完毕后我们会得到一个延迟列表(延时从大到小排列)。如图 9.4 所示。可以点击对应


的序号定位到对应的帧。在下方统计表格给出了这个最大延时等效的导线长度,并且与标准极
限长度最对照。

图 9.4 延时统计与等效导线长度

这个范围中,最大延时是指在此测量点测到的最大延迟节点的传输延迟,要控制小于 0.245
倍位时间,比如 1M 波特率,要控制最大值小于 245ns,否则会有应答错误风险。
0.245 这个值是这样算的:因为传输是来回,所以 CAN2.0B 协议规定,传输延迟如果达到
0.5 倍的位时间,这时的传输距离是理论上的最大传输距离。为了保证可靠,我们要控制在 70%
的理论传输距离。但现在我们一般在每个节点上面都加了隔离,所以即使发送节点发出来的报
文,就已经带有延时了,所以计算就要 0.5*0.7*0.7=0.245,才能保证一个稳定运行状态。
由于总线上面挂接的节点距离测试点都不同,所以引起的延时都不一样。我们为了检测出总
线最大的延迟,通常建议测试点放在总线最远两端,测试的对象也是总线最远两端的两个个节
点发出来的报文。如图 9.5 所示。

31
图 9.5 延时测量

这样可以研究到总线的最大延迟。例如:假定测量延时的这个帧,是最左边节点发出的,
测量点如果在发送节点这端,则最大应答延迟为整体导线延迟+最远端节点(即最右端)的电路
延迟(包括隔离器件与收发器延迟)
;测量点如果在最右端,则最大应答延迟只包含这个最右端
节点的电路延迟(包括隔离器件与收发器延迟)。
所以用这个方法也可以测量某个节点的电路延迟。

9.2 典型案例(高速铁路)
在高速铁路的列控系统中,由于实时性要求,通常都是在 500K 以上的波特率传输,甚至
到 1M 波特率。而这样的波特率下对于总线延迟有着严格的要求。同样的导线,使用不同的隔
离器件的延迟会影响传输距离。
使用隔离器件 1Mbp 最大通讯距离
无 40 米
6N137 等光耦 27 米
CTM1051 等磁隔离收发器 36 米

9.3 解决方案
为了减小延时,增加通讯距离和降低通讯错误率。我们要采取以下措施。
1. 采用磁隔离的 CTM1051 方案设计接口收发电路;
2
2. 用越粗(线径越大)的导线,延迟越小,标准的 1.5mm 线缆延迟为 5ns/m。
3. 使用镀金或者镀银的线缆;
4. 增加网桥中继设备 CANBridge 延长通讯距离。
5. 采用光纤传输,如致远电子的 CANHUB-AF1S1,同等波特率可以延长 1 倍通讯距离。

32
10. 排查步骤 7——带宽测量排查导线是否匹配传输

前面几个排查步骤我们知道,线缆等传输介质对于 CAN 通讯有重大影响。但如何非常直观


地体现出线缆是否匹配传输呢。可以使用 CANScope 的带宽测量功能。

10.1 操作方法
只要在记录好的 CAN 报文界面中选定某个有波形的 CAN 帧,在 CAN 波形界面中,点击
边沿测量。如图 10.1 所示。

图 10.1 边沿测量

然后我们就可以看到这个帧的信号的上升斜率、下降斜率和带宽情况。如图 10.2 所示。

图 10.2 边沿带宽测量

比如,总线的波特率是 500K,测出来的带宽是 3.378MHZ,说明带宽大于 5 倍的波特率(通


常的指标),所以这个网络状况是适合 500K 传输的。
为了方便用户准确查找出斜率异常节点,CANScope 特制作了边沿统计功能,如图 10.3 所
示。

图 10.3 边沿统计

33
可以统计出斜率与带宽,并且进行排序,如图 10.4 所示。

图 10.4 边沿与带宽统计

10.2 典型案例(门禁行业 CAN 通讯问题)


由于门禁行业对于成本要求很高,所以线缆也是经常被“省”。最经常遇到的就是用网线替
代正常的双绞线来跑 CAN 信号。
从 CANScope 的波形看,已经比较难看了,主要体现在下降沿非常缓,这主要是网线的分
布电容很大,显性电平回到隐性电平需要的放电时间加大。对信号来说就是会缩短隐性电平时
间,容易导致位错误。如图 10.5 所示。

34
图 10.5 非规范导线的波形

这个总线的波特率是 10K,从边沿测量可以看出,带宽只有 29K,只有 3 倍的波特率,所


以这样的导线是不符合这个波特率传输的。如图 10.6 所示。

图 10.6 非规范导线边沿测量

这里补充一个 CAN 知识,由于 CAN 收发器结构,从隐形变成显性有晶体管驱动,所以都


是很陡的,但从显性回到隐形,却需要终端电阻来放电,否则就会由于导线分布电容,缓慢放
电,导致位宽错误。所以所谓的近距离、低波特率 CAN 总线不加终端电阻的做法,都是错误
的。

35
10.3 解决方案
如果现场已经布了不符合传输的线缆。只有 3 个解决方案:
1. 换线;
2. 减小终端电阻值,降低幅值,从而加快放电速度,减小分布电容的影响。
3. 增加中继设备,比如 CANBridge。

36
11. 排查步骤 8——软件眼图追踪故障节点

前面 7 个排查步骤是现场分析的必须方法。如果在现场无法当场分析出来原因,可以先把
波形记录下来,保存到 PC 上面,回到驻地再使用软件眼图的方法,重构现场情况,来追踪故
障节点。也就是说软件眼图是离线分析的重要方法。

11.1 操作方法
测试步骤:
步骤 1:采集报文和波形
将总线上的信号采集回来,并且进行保存波形。回到实验室后,使用软件打开工程。
步骤 2:对原始的波形做眼图
点击“测试”中的“软件眼图”
,如图所示。

图 11.1 打开软件眼图

然后弹出软件眼图的设置框,点击添加配置。

图 11.2 软件眼图实操_添加配置

在眼图设置中,先点击“自动调节”与勾选“过滤 ACK 区域对应的波形”,因为 ACK 一


般幅值很高而且有延时。如图 11.3 所示。

37
图 11.3 设置自动调节与波形过滤

这时,需要对要做眼图的对象进行过滤。如果按照默认,则对所有的波形进行做眼图,主
要用于快速定位故障节点,如果指定某个 ID 的波形做眼图,则是观察发送这个 ID 的节点是否
有问题。这里以前者为例,点击帧 ID 范围的设置。全部选择,如图 11.4 所示。

图 11.4 选择帧 ID 范围

38
点击确定后,回到软件眼图设置界面,点击确定。
步骤 3:生成眼图
可以看到刚才的配置以及被添加到软件眼图视图框中,如图 11.5 所示,点击生成眼图。出现进
度条,这个过程比较长。

图 11.5 生成眼图

步骤 4:新建自定义模板
生成眼图完毕后,点击查看眼图,如图 11.6 所示。

图 11.6 查看眼图

然后在 CAN 眼图的界面中,看到生成的眼图,发现在 70%位置有个异常的突起,所以我们

39
现在要研究是哪个帧产生了它。故点击编辑模版。使用鼠标左键或者添加多边形,将这个突起
框起来,点击设置模板。如图 11.7 所示。

图 11.7 框住异常电平设置模板

然后点击菜单栏上的导出模板,起个名字点击确定,如图 11.8 所示。

图 11.8 导出模板

步骤 5:导入自定义模板再次生成眼图
返回软件眼图,点击修改配置,如图 11.9 所示。

40
图 11.9 修改配置

然后在模板选择右边选择设置,选中刚才保存的模板,点击导入。如图 11.10 所示。

图 11.10 导入自定义模板

41
其他配置不做改动,然后点击确定。再次点击生成眼图。如图 11.11 所示。

图 11.11 再次生成眼图

步骤 6:查看异常波形的源头
生成完毕,可以看到软件眼图视图中的碰撞结果,如图 11.12 所示。为 ID:0x392 这个报
文产生了这个异常。

图 11.12 眼图碰撞结果

双击这个帧 ID,CAN 报文界面可以定位到这个帧。用户可以获知产生这个帧的具体发生时间


和数据情况。如果切换到 CAN 波形,还可以看到具体异常的位置,如图 11.13 所示。

42
图 11.13 定位 CAN 报文与波形

小结:CANScope 软件眼图功能具备还原现场物理状况的能力,主要用于:
1. 异常波形反诉溯找出对应的 CAN 报文(CAN 节点)
,确定其发生的时间和原因;
2. 某一个 CAN 报文的眼图,测量其幅值、位宽等特性。

43
12. 排查步骤 9——评估总线阻抗、感抗、容抗对信号质量的影响

我们平时所说的特征阻抗、分布电容、导线感抗之类都停留在理论和书本。而在真正的 CAN
实践中往往都忽视这些要素。而一旦出现问题又不会想到这些,往往都很迷惑,依靠“经验”
和一些低端的如万用表、示波器之类来猜是什么问题。
所以为了更好发现故障,我们将测量总线的特征阻抗,分布电容,导线感抗。用实实在在
的现象来解释问题,才能更好地解决问题。

12.1 操作步骤
使用 CANStress 扩展板,可以测量出总线的阻抗和容抗。由于需要进行测量,所以需要将
总线上面所有节点都接上,然后不能上电的情况下进行测量。
配套 CANScope 软件,连接好通讯线缆,所有节点都不上电,打开如下界面操作。如图 12.1
所示。
1.对于测试与应用工程师来说,只需要点击等效阻抗模型的开始即可自动生成结果;
2.对于研发工程师来说可以选择左边开始频率和步进频率、步进次数,然后点击开始扫描:

图 12.1 阻抗测量

下面给出测试终端电阻为 60Ω 的 CAN 网络的幅频特性及相频特性,


如图 12.2 图 12.3 所示。

44
图 12.260Ω 终端电阻幅值测量

图 12.360Ω 终端电阻相位测量

下面为测试寄生电容为 104 的 CAN 网络的幅频特性及相频特性,如图 12.4 图 12.5 所示。

图 12.4104 容抗幅值测量

45
图 12.5104 容抗相位测量

下面给出测试 15mH 电感的 CAN 网络的幅频特性及相频特性,如图 12.6 图 12.7 所示。

图 12.615mH 感抗幅值测量

图 12.715mH 感抗相位测量

46
13. 排查步骤 10——总线阻抗压力测试排查环境影响因素

这个步骤主要是排查一些偶尔出现的故障,就是通过模拟调整总线阻抗,测试是否是由于
导线长度、温度或者环境导致的通讯介质异常。

13.1 操作方法
使用 CANStress 扩展板,调整上面的 RHL(匹配电阻)、CHL(分布电容)、RSH 和 RSL( 导
线阻抗)。即可模拟不同的导线情况。或者通过拖动线缆长度模拟,来模拟一段导线长度。如图
13.1 所示。

图 13.1CANScope-StressZ 模拟导线

47
48
14. 免责声明
本手册所陈述的产品文本及相关软件版权均属广州致远电子股份有限公司所有,其产权受
国家法律绝对保护,未经本公司授权,其它公司、单位、代理商及个人不得非法使用和拷贝,
否则将受到国家法律的严厉制裁。
您若需要我公司产品及相关信息,请及时与我们联系,我们将热情接待。广州致远电子股
份有限公司保留在任何时候修订本用户手册且不需通知的权利。

49
欢迎拨打全国服务热线

致远电子官方微信 周立功单片机官方微信

天猫商城:ZLG旗舰店 网址:http://zlgwj.tmall.com

上海分公司 深圳办事处 成都办事处


( 上海 ) 地址:深圳市福田区深南中路 2072 号电子大厦 地址:成都市一环路南 2 段 1 号数码科技大厦 319 室
地址:上海市北京东路 668 号科技京城东座 12E 室 12 楼 1203 室 电话:028-85437446-804
电话:021-53083451-829 电话:0755-83780058 传真:028-85437896
传真:021-53083491 传真:0755-83793285
西安办事处
( 南京 ) 武汉办事处 地址:西安市长安北路 54 号太平洋大厦 1201 室
地址: 南京市秦淮区汉中路 27 号友谊广场 17 层 F、G 区 地址:武汉市武昌区武珞路 282 号思特大厦 807 室 电话:029-87881295
电话: 025-68123910 电话:027-87168497-613 传真:029-87880865
传真: 025-68123900 传真:027-87163755
苏州办事处:0512-68266786
( 杭州 ) 重庆办事处
地址:杭州市天目山路 217 号江南电子大厦 502 室 地址:重庆市石桥铺科园一路二号大西洋国际大厦 天津办事处:135 0105 1347
电话:0571-89719492 (赛格电子市场)2705 室
厦门办事处:186 5019 5588
传真:0571-89719494 电话:023-68796438
传真:023-68796439
青岛办事处:138 1079 4370
广州销售部
地址:广州市天河区车陂路黄洲工业区 7 栋 2 楼 北京分公司 宁波办事处:135 8819 7661
电话:020-28872450 地址:北京市海淀区知春路 108 号豪景大厦 A 座 19 层
传真:020-28267891 电话:010-62536178-117 沈阳办事处:189 4003 5738
传真:010-82614433

★ 本文中的产品指标和说明可不经通知而更改★ 想更多了解我们,请登录公司网站:www.zlg.cn

VOL.005

You might also like