如何准确测量CAN节点的Busoff恢复时间?

当CAN通信出现故障时,CAN控制器会让故障节点从主动错误状态进入被动错误状态,甚至进入总线关闭(Busoff)状态,使故障节点脱离总线的通信,使其不影响正常节点的通信,但该控制方案将导致在系统重新上电之前,进入总线关闭状态的节点会持续无法与其他节点做数据的交互,如若节点只是暂时的故障,那让节点实现自恢复的功能,则是更为上乘的控制方法。所以CAN总线设计规范对于CAN节点的Busoff自恢复方式做了严格的规定,充分考虑了偶发故障与持续故障的处理。具体规范如表 1所示,为测试标准“GMW14242 BusOff后的恢复时间”。目前多家整车厂对其系统供应商的设备也都提出了相应的Busoff后恢复时间的控制策略要求。

所以每个厂家在球盟会(中国)官方网站投入使用前,都要进行CAN节点DUT(被测设备)Busoff后的恢复时间测试。但由于测试中要实施对通信信号的干扰,并判断节点是否已进入Busoff状态,然后才能去测量其恢复的时间,即使是使用示波器去观察信号,也很难做出准确的测量。为了解决该问题,广州致远电子股份有限公司改进了测试方法,使用CANScope-Pro总线分析仪、CANScope-StressZ扩展板进行全自动测试操作,在完成操作后,使用其瞬态流量分析插件,即可准备判断测量CAN节点在Busoff后的自恢复时间。

试验原理:由测试设备触发DUT发送报文,然后制造干扰(CANH对地短路、破坏帧内容等),导致DUT的报文发送失败,在导致连续32次发送失败后,DUT即进入BusOff状态。测量到下一次DUT发送报文的时间间隔即为BusOff后的恢复时间。

测试方案如下:

1. 本测试使用CANScope-Pro和CANScope-StressZ。需要DUT上电后,初始化控制器后,发送CAN报文或者通过CANScope触发DUT发送报文。CANScope勾选总线应答。如图 1所示,进行测试连接。使能CANScope-StressZ的RHL为60欧。

图1 BusOff后的处理测试连接

2. 启动CANScope-Pro,将RHL调节为60欧,设置好和被测DUT相同的波特率,点击开启。控制DUT能发出各种预期的报文,并且能被CANScope-Pro收到。

3. 打开CANScope-Pro的“错误与干扰”,将“接受干扰”使能,并且将“持续时间”改为100,点击“应用”。如图 2所示。此时即可实现较高的干扰强度,保证每一个DUT发出的报文都可以被干扰。

图2 启用接收干扰

4. 干扰一段时间后,点击报文界面的“停止”。打开CANScope-Pro的“流量分析”,找到某一个连续32个干扰结果,如图3所示。

图3 流量分析干扰结果

然后将流量分析界面缩小,测量两个干扰团之间的时间间隔,即为BusOff后的恢复时间。如图 4所示为70.7915ms。

CANScope总线分析仪广州致远电子股份有限公司研发的一款综合性的CAN总线开发与测试的专业工具,集海量存储示波器、网络分析仪、误码率分析仪、协议分析仪及可靠性测试工具于一身,并把各种仪器有机的整合和关联;重新定义CAN总线的开发测试方法,可对CAN网络通信正确性、可靠性、合理性进行多角度全方位的评估;帮助用户快速定位故障节点,解决CAN总线应用的各种问题,是CAN总线开发测试的有效工具。

CANScope总线分析仪