CAN一致性测验中,有一项测验叫“CANL对地短路测验”,可是咱们测验的时分发现被测设备有时分在对地短路时也能正常通讯,这是什么回事呢?
咱们都知道CAN总线选用差分传输,这样能够极大的防止信号的反射和搅扰,然后按捺共模搅扰,也是CAN容错性能好的原因之一,CAN的波特率最大能够到1Mbps。依据波特率的巨细咱们把CAN总线分为单线CAN、低速CAN、高速CAN。
表 1 CAN 总线类型
CAN 的通讯质量也跟其传输间隔有关,如图1,做CAN的工程师都知道CAN总线上恣意两个节点的最大传输间隔与其波特率有关,CAN 的波特率越大,传输间隔就越短,因为传输线缆自身能够当作一个阻容结构的器材,线缆越长,寄生电容跟电阻就越大。
图 1 CAN波特率跟传输间隔的联系
已然线缆都会有寄生电容,那寄生电容对CAN总线的影响是怎么样的呢?咱们用CANScope模仿给总线上加不同的电容,通过眼图来看看会产生什么,如图2,能够看到跟着电容的增大,显性位跟隐性位的下降沿变得越来越缓。
图 2 线缆不同电容对波形的影响
当总线上CANL对地短路后,那么CAN传输就只有CANH这条线保持了,这种情况下CAN总线就类似于单线CAN,差分传输的优势就化为乌有,那么咱们就看看在高速CAN下,CANL短路会呈现什么情况。
咱们挑选波特率500kbps的通讯速率,用ZLG的CANScope发送CAN报文,CAN卡接纳报文。
先调整Stressz的设置,模仿总线长度为10m,终端电阻为120欧姆,Stressz的设置如图3所示:
图 3 模仿线缆长度为10m
翻开CANScope报文接纳,能够正常接纳报文,将CANL线短接到GND后,从示波器上看CANL电压为0V,可是报文正常接纳,如图4:从示波器上差分电压还能够进行明晰的辨识。
图 4 CANL短路通讯正常
可是实践使用现场,CAN总线的传输间隔比较长,当咱们模仿总线长度为120m时,咱们再看看通讯质量,先把Stressz设置为线缆长度为120m。如图5:
图 5 模仿120m线缆长度
翻开CANScope报文接纳,如图6所示,未短路时能够正常接纳报文,将CANL线短接到GND后,从示波器上看CANL电压为0V,报文呈现很多的过错。
图 6 CANL短路呈现过错
为什么在线缆长度变长后CANL对地短路后会呈现过错呢? 问题就在于线缆长度变长后带来的寄生电容变大使总线电平的下降沿变得很缓,本来就软弱的差分传输信号,在CANL挂掉后,CANH单线传输无法承当传输的重担,所以就呈现了报文过错。如图7:咱们对总线做边缘计算,能够看到下降沿最大到达638ns。依据GMW3122的规范,高速CAN 的边缘区间为30~350ns。
所以在高速CAN的CANL对地短路后,因为差分传输优势没有了,在大的下降沿影响下,导致接纳节点无法正常接纳报文。而CANL没有短路时,CAN总线仍然能够使用差分传输的优势,让节点正常收到正确的报文。
图 7 边缘计算