CAN Busoff原理/快慢恢复介绍以及利用Vector VH6501 CAN干扰仪经典CAN2.0/CANFD帧触发Busoff

CAN Busoff原理/快慢恢复介绍以及利用Vector VH6501 CAN干扰仪经典CAN2.0/CANFD帧触发Busoff_第1张图片

 

目录

一、什么是CAN Busoff和快慢恢复的介绍

二、利用VH6501 CAN Disturbance Interface触发经典CAN2.0帧 Busoff

三、利用VH6501 CAN Disturbance Interface触发CANFD帧 Busoff

四、结尾


CANFD/经典CAN2.0/CANXL相关知识点链接:

《CANFD/经典CAN/CANXL》专栏icon-default.png?t=M276https://blog.csdn.net/qfmzhu/category_9753585.html

一、什么是CAN Busoff和快慢恢复的介绍

在《ISO 11898-Part 1-Data link layer and physical signalling-2015.12.15》中有对CAN Busoff进行描述,如下图:

CAN Busoff原理/快慢恢复介绍以及利用Vector VH6501 CAN干扰仪经典CAN2.0/CANFD帧触发Busoff_第2张图片

CAN Busoff原理/快慢恢复介绍以及利用Vector VH6501 CAN干扰仪经典CAN2.0/CANFD帧触发Busoff_第3张图片

如果节点的传输错误计数器(TEC:transmit error counter)大于255(8位发送错误计数器时的进位条件),那么管理者应请求物理层将节点设置为Busoff状态。

处于Busoff状态的节点对总线没有影响。 它不应发送任何帧,也不应确认数据帧或远程帧。这样的节点是否接受来自总线的数据帧取决于实现。

在重新启动请求后,处于Busoff状态的节点应集成到CAN通信中(请参见10.9.4),并且在监视总线上128个空闲情况的发生后,其错误计数器都将置为零,变为错误节点(请参见图28)。

通俗地说:

ECU一直在往CAN总线上发送CAN报文,但不知道什么原因一直发送不出去,如果这个发送错误计数累计到255( ECU发送失败:发送错误计数 + 8 ECU发送成功:发送错误计数 - 1),ECU进入Busoff模式。ECU在Busoff期间不妨碍总线上的其它节点。

一些主机厂对其系统供应商的设备提出了相应的Busoff后恢复时间需求。例如:当ECU 进入Busoff 模式后,首先,ECU 执行快恢复模式,连续n次(TBD值,不同厂商次数要求不一样)快速恢复后,ECU 进入慢恢复模式

注:所谓的快慢恢复,即进入CAN BUSOFF状态后,ECU重新初始化CAN模块,并等待t(tBusOffQuick 或 tBusOffSlow)后,重新使能总线报文的发送。如果报文发送成功,则CAN BUSOFF恢复成功。

当ECU进入Busoff状态后,因为接收不到其它ECU(相关ECU:至少从该节点接收一条报文)的报文,会产生超时错误,故此时应只存储bus-off故障,不应存储其他ECU的报文超时故障。在ECU从Busoff状态恢复后,立即重新启动报文超时监测功能。

二、利用VH6501 CAN Disturbance Interface触发经典CAN2.0帧 Busoff

BusOff所需的测试环境:

  1. 硬件工具VH6501 CAN Disturbance Interface(CAN干扰仪);
  2. 上位机软件CANoe 11.0.55 SP2

本次VH6501 CAN Disturbance Interface(CAN干扰仪)的操作手册以CANoe 11.0.55 SP2中的Demo为例,进行的busoff测试,具体操作步骤如下:

步骤一:打开“Disturbance(CAN)”的DEMO,如下图所示:

CAN Busoff原理/快慢恢复介绍以及利用Vector VH6501 CAN干扰仪经典CAN2.0/CANFD帧触发Busoff_第4张图片

步骤二:通道配置。VH6501需要与真实ECU连接,并且ECU所在CAN网络中需要有终端电阻:

CAN Busoff原理/快慢恢复介绍以及利用Vector VH6501 CAN干扰仪经典CAN2.0/CANFD帧触发Busoff_第5张图片

步骤三确认连接的通道信息,然后点击Start开始运行,此时trace窗口是正确的报文。

CAN Busoff原理/快慢恢复介绍以及利用Vector VH6501 CAN干扰仪经典CAN2.0/CANFD帧触发Busoff_第6张图片

步骤四通过Panel打开MainConfigPanel面板。

CAN Busoff原理/快慢恢复介绍以及利用Vector VH6501 CAN干扰仪经典CAN2.0/CANFD帧触发Busoff_第7张图片

CAN Busoff原理/快慢恢复介绍以及利用Vector VH6501 CAN干扰仪经典CAN2.0/CANFD帧触发Busoff_第8张图片

步骤五:点击MainConfigPanel面板中的Trigger Configuration打开对应如下的配置面板TriggerConfigurationPanel,选择触发位置AckSlot,并且针对特定帧(以Trace中的CAN ID:0x305为例)触发Busoff。

修改前:

CAN Busoff原理/快慢恢复介绍以及利用Vector VH6501 CAN干扰仪经典CAN2.0/CANFD帧触发Busoff_第9张图片

修改后:

CurrentTriggerField填AckSlot;TriggerOffset填0;IDBase填CAN2.0标准帧ID的11位二进制(如果不满11个二进制数,高位补0,凑齐11个二进制数,例如这里的0x305,其二进制等于01100000101)。

CAN Busoff原理/快慢恢复介绍以及利用Vector VH6501 CAN干扰仪经典CAN2.0/CANFD帧触发Busoff_第10张图片

步骤六:点击MainConfigPanel面板中的Sequence Configuration打开对应如下的配置面板SequencePanel,配置显性/隐性干扰。

CAN Busoff原理/快慢恢复介绍以及利用Vector VH6501 CAN干扰仪经典CAN2.0/CANFD帧触发Busoff_第11张图片

 

修改前:

CAN Busoff原理/快慢恢复介绍以及利用Vector VH6501 CAN干扰仪经典CAN2.0/CANFD帧触发Busoff_第12张图片

修改后:

在面板SequencePanel中,Segment value选择Dominant,勾选Arbitration Bit Timing Information,单击Add Segment

CAN Busoff原理/快慢恢复介绍以及利用Vector VH6501 CAN干扰仪经典CAN2.0/CANFD帧触发Busoff_第13张图片

步骤七:回到MainConfigPanel面板,CANoe软件运行时,配置面板中干扰的次数和循环次数。

修改前:

CAN Busoff原理/快慢恢复介绍以及利用Vector VH6501 CAN干扰仪经典CAN2.0/CANFD帧触发Busoff_第14张图片

修改后:

如果进行多次Bus off测试,Cycles填写多个cycle,Repetiions中填写干扰次数为固定的32次(干扰一次,也就是干扰一个cycle,ECU的TEC累加8,在连续32次干扰之后,TEC的值为256,ECU便会进入bus off。)

CAN Busoff原理/快慢恢复介绍以及利用Vector VH6501 CAN干扰仪经典CAN2.0/CANFD帧触发Busoff_第15张图片

注意:

Repetiions一般默认设置为32;

Cycles表示Busoff的次数,对应Autosar的CANSM模块中的CanSMBorCounterL1ToL2,根据实际的项目需求选定,Cycles中设定的值小于CanSMBorCounterL1ToL2,触发对应节点的通信快恢复;而Cycles中设定的值大于等于CanSMBorCounterL1ToL2,触发对应节点的通信慢恢复。在CANSM模块中也定义了快恢复时间CanSMBorTimeL1慢恢复时间CanSMBorTimeL2时间参数,这三个参数根据实际的项目需求选定。

步骤八:点击面板中的Enable On Device,启动Busoff测试。

CAN Busoff原理/快慢恢复介绍以及利用Vector VH6501 CAN干扰仪经典CAN2.0/CANFD帧触发Busoff_第16张图片

如果ECU设置的快慢恢复比较长,CAN干扰仪干扰后,在Trace窗口中,你会看到对应的Busoff ECU所有发送的报文变灰色,说明停止了发送报文。

CAN Busoff原理/快慢恢复介绍以及利用Vector VH6501 CAN干扰仪经典CAN2.0/CANFD帧触发Busoff_第17张图片

三、利用VH6501 CAN Disturbance Interface触发CANFD帧 Busoff

第二章节中,提到通过干扰经典CAN2.0标准帧报文Ack Slot位来实现Bus off测试。

而在CAN FD中,如果干扰Ack Slot位,干扰的结果是两个连续的显性位,但在CAN FD中,两个显性位会被认为是有效的Ack,这就导致上述方法干扰不到Ack Slot位。

CAN Busoff原理/快慢恢复介绍以及利用Vector VH6501 CAN干扰仪经典CAN2.0/CANFD帧触发Busoff_第18张图片

在这种情况下,建议干扰Ack delimiter位。CurrentTriggerField填Ack delimiter,TriggerOffset填0。如下图是干扰一个CANFD标准帧ID:0x305,其它部分的设置与第二章节相同。

CAN Busoff原理/快慢恢复介绍以及利用Vector VH6501 CAN干扰仪经典CAN2.0/CANFD帧触发Busoff_第19张图片

 

四、结尾

获取更多“汽车电子资讯”和“工具链使用”,

请关注“汽车电子助手”(CSDN微信公众号同名),做您的好助手。

CAN Busoff原理/快慢恢复介绍以及利用Vector VH6501 CAN干扰仪经典CAN2.0/CANFD帧触发Busoff_第20张图片

你可能感兴趣的:(#,Vector工具链,网络)