通信出现故障是时常会遇到的事情,小则无伤大雅,大可殃及城池。因此,处理故障的方法便显得至关重要,确认处理方式是否能可靠运作更是重中之重。
当CAN通信出现故障时,CAN控制器会让故障节点从主动错误状态进入被动错误状态,甚至进入总线关闭(Busoff)状态,使故障节点脱离总线的通信,使其不影响正常节点的通信,但该控制方案将导致在系统重新上电之前,进入总线关闭状态的节点会持续无法与其他节点做数据的交互,如若节点只是暂时的故障,那让节点实现自恢复的功能,则是更为上乘的控制方法。所以CAN总线设计规范对于CAN节点的Busoff自恢复方式做了严格的规定,充分考虑了偶发故障与持续故障的处理。具体规范如表1所示,为测试标准“GMW14242
BusOff后的恢复时间”。目前多家整车厂对其系统供应商的设备也都提出了相应的Busoff后恢复时间的控制策略要求。
试验原理:由测试设备触发DUT发送报文,然后制造干扰(CANH对地短路、破坏帧内容等),导致DUT的报文发送失败,在导致连续32次发送失败后,DUT即进入BusOff状态。测量到下一次DUT发送报文的时间间隔即为BusOff后的恢复时间。
测试方案如下:
1. 本测试使用CANScope-Pro和CANScope-StressZ。需要DUT上电后,初始化控制器后,发送CAN报文或者通过CANScope触发DUT发送报文。CANScope勾选总线应答。如图1所示,进行测试连接。使能CANScope-StressZ的RHL为60欧。
3. 打开CANScope-Pro的“错误与干扰”,将“接受干扰”使能,并且将“持续时间”改为100,点击“应用”。如图2所示。此时即可实现较高的干扰强度,保证每一个DUT发出的报文都可以被干扰。