以使用ZLG致远电子CANScope测试某电车CAN网络为例,20多个CAN节点采样手牵手方式组网,线两端各接120欧电阻,通讯能够正常,但差分信号波形应答位电平偏高较多,如图4所示,从CANScope的波形图中可以清楚的看到ACK电平突增。

can总线ack电平偏高原因分析

图4 CAN数椐帧波形分析

CAN总线通信存在异常?ACK应答有问题?——NO.

分析如下:

首先,我们看一款CAN收发器的典型内部结构图,CANH、CANL连接总线。

can总线ack电平偏高原因分析

图5 CAN收发器的典型内部结构图

总线显性时(逻辑为0),收发器内部Q1、Q2导通,CANH、CANL之间产生压差;隐性时(逻辑为1),Q1、Q2截止,CANH、CANL处于无源状态,压差为0。

按照标准,在总线输出为显性时,CANH=3.5V,CANL=1.5V,差分分电平:CANH-CANL=2V,总线网络电阻为60欧,流经终端电阻的电流约为33mA(2V/60欧);

然而,CAN收发器在输出显性时,CANH电平并不是标准的3.5V,而是5V(VCC)通过一个二极管降压得到的,二极管的压降由负载电流决定。图6所示的VDH为CANH对应的二极管压降,VDL为CANL对于的二极管压降,流过的电流越大,二极管的压降就越大。可知:

CANH的电压=5V-VDH

CANL的电压=0V+VDL

can总线ack电平偏高原因分析

图6 AN收发器等效结构

在CAN总线网络中,当一帧报文被各个节点接收时,在ACK阶段,多个CAN节点同时响应(都发显性),流过终端电阻的电流被各个CAN节点均分,那么平均到每个节点的电流就减小了,如下图所示,VDH、VDL的压降也减小,相应CANH-CANL的差分电压就增大了,即ACK应答电平偏高。

can总线ack电平偏高原因分析

图7 CAN网络等效结构