CANL 对地短路了为什么还能通讯?

时间:2017-11-22 15:24来源:ZLG 致远电子

摘要:CAN一致性测试中,有一项测试叫“CANL对地短路测试”,但是我们测试的时候发现被测设备有时候在对地短路时也能正常通讯,这是什么回事呢?

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  边沿统计
免责声明:本文若是转载新闻稿,转载此文目的是在于传递更多的信息,版权归原作者所有。文章所用文字、图片、视频等素材如涉及作品版权问题,请联系本网编辑予以删除。
我要投稿
近期活动
帖子推荐更多

Copyright 2008-2024 21dianyuan.com All Rights Reserved 备案许可证号为:津ICP备10002348号-2