本文介绍了一种使用手持式CAN总线诊断仪(PCAN-Diag)来检测CAN网络故障的方法。该诊断仪可以接收、发送、记录和回放CAN报文,检测终端电阻,测试总线负载,带有各种特殊触发方式的示波器。
由于CAN总线具有可靠性高、实时性好及成本合理等优点,已在汽车、船舶、航天、医疗、工业测控与工业自动化等领域得到的应用,成为了应用最广泛的现场总线之一。在应用CAN网络的过程中,难免会出现各种各样的问题,比如网络不能正常通信等。特别是在现场,要找出CAN网络中的错误将会非常繁琐。本文介绍的使用PCAN-Diag检测CAN网络故障的方法可以很好地解决这个问题。
手持诊断仪
导致CAN网络通信出现故障的原因多种多样,例如:在设计阶段CAN网络拓扑结构设计不合理,节点PCB板设计不合理等;在实际应用阶段网络终端匹配不合理,通信线路出现短路、断路等引起信号衰减或失真。本文着重讨论在应用阶段CAN网络中会出现的问题及其检测方法。
广州虹科提供的PCAN-Diag(见图1)是一款手持式诊断仪,具有广泛的功能:可用于检测CAN总线,例如CAN总线波特率、总线负载和终端电阻;也能够接收、发送CAN报文,其内存卡可以跟踪和回放CAN报文;内置两通道示波器可以显示CAN信号波形;多种触发方式,如CAN ID、CAN错误帧等。
图1 PCAN-Diag
CAN网络故障检测方法
本文主要从CAN网络监控、CAN总线检测和CAN波形分析三个方面介绍CAN网络故障检测方法。
1.CAN网络监控
CAN网络监控主要是监控当前CAN网络中的报文传输情况,查看是否有应当发送的报文没有发送,网络中是否有不正常的报文出现(见图2)。PCAN-Diag上面可以很清晰地看到网络中传输了哪些ID的报文。如果检测者很清楚网络的情况,那么就可以根据这个来判断当前网络中哪些ID的报文没有正常传送,是哪个节点的。另外,如果加载了CAN数据库文件,也可以直接显示具体的物理量,如温度、速度及开关量状态等。
除了监控网络中的报文,也可以自己根据需要编辑CAN报文,然后发送;或者将监控到的报文保存下来,后期提取出来并做进一步的分析;当然也可以按照接收的顺序回放保存的报文。
2.CAN总线检测
当一个CAN网络中节点很多,传输的报文很多的时候,总线的负载率可能会比较高,一般来说如果总线负载率超过30%就会造成报文延时的概率增大。广州虹科提供的PCAN-Diag可以实时显示当前总线负载率并持续更新,可将当前的视图保存为图片到SD卡中(见图3)。
在CAN网络中,总线上最远的两个端点,需要配置终端电阻,这两个终端电阻的主要作用是与传输线的阻抗相匹配,因为如果阻抗不连续或者不匹配,会导致信号反射,从而影响正常的通信。一般双绞线和同轴电缆的特性阻抗约为120Ω,所以最常见的终端电阻是120Ω。PCAN-Diag可以直接测量当前网络中的终端电阻值:如果网络两端都有120Ω的终端电阻,那么测量出的终端电阻值应该是60Ω;如果网络中只有一个,可以直接打开PCAN-Diag本身自带的120Ω的终端电阻。此外,广州虹科提供的PCAN-Diag还具有实时测量CAN_H与CAN_L电压值的功能。
3.CAN波形分析
由于通信线路短路、断路及线路物理性质变化引起的通信信号衰减或失真的链路故障,是CAN总线网络类故障中概率较高的一种。当线路中出现这些故障的时候, CAN_H与CAN_L的波形也会出现相应的变化(见图4)。由图4可以看出,广州虹科提供的PCAN-Diag还具有解码CAN波形的功能,可以将波形和报文的ID、DLC和数据域一一对应起来。
使用PCAN-Diag特殊的触发方式,我们可以方便地定位CAN报文和错误。主要触发方式有:帧起始、帧结束、CAN ID、CAN Error和外部触发,还有一种方式是无需触发,直接采集当前信号。这里主要利用CAN ID 和CAN Error这两种特殊的触发方式。关于CAN ID触发,我们可以设置具体的ID,如101,设置好之后,当总线上出现这个就会开始采集这个ID的波形。而CAN Error这种触发方式是要在总线上出现有错误的时候才会开始采集。设置好之后可以很方便地监控当前网络上是否有错误。
总结
使用广州虹科的PCAN-Diag提供的网络监控、总线检测示和波器三个方面的功能,可以方便地诊断和测试CAN网络的故障。另外由于其具有体积小、无需外部电源等特点,特别适合于现场调试。
获取更多评论