CAN总线传输距离的相关因素
1、ACK应答
CAN 总线采用多主通信模式、非破坏式总线仲裁机制。以标准数椐帧为例,从结构上看分成7段,分别为起始段、仲裁段、控制段、数椐段、CRC校验段、ACK应答段、帧结束段,如图1所示:
![](https://pic2.zhimg.com/80/v2-4707bbbf7e68f38c3f6e277978b88775_hd.jpg)
2、CAN总线位时间组成
CAN网络通信位定时参数如图2所示。
![](https://pic1.zhimg.com/80/v2-3304df09aea9f68633aa313c14f41fd4_hd.jpg)
同步段:用于总线诸节点之间的同步;
时间段1:由传播段与相位段1组成,传播段用于补偿信号的物理传播延时;
时间段2:即相位缓冲段2,相位段1 和相位段2 用于补偿沿的相位误差。
在实际控制器设计中,通过调整时间段1、时间段2 的值可以改变对总线传播延时的补偿时间。
3、CAN总线延时理论分析
由图1可知,发送节点在发完CRC 场之后,会发出一位应答隙,在这一位的时间内,接收节点应该输出显式位作为回应,发送节点如果在应答隙内没有检测到有效的显式位,则会判定总线错误,所以限制CAN 总线系统信号传播延时上限的根本条件就是必须确保发送节点在应答隙内接收到有效的应答信号。
为了满足这一根本条件,以 1 Mbit/s 波特率,单点采样模式为例,依据采样点在设置同步段、时间段1、时间段2 内的前后变化,当设置为75%位宽度时(即采样点位于距位起始的75%位宽度,为750 ns),在应答隙要使得发送节点采集到有效的显式位,理论上来讲,必须满足整个信号传播延时小于750 ns。即隔离器件、总线驱动器、线缆等的延时总和小于750ns才能保证应答有效。如图3所示:
![](https://pic2.zhimg.com/80/v2-fdb23778caa5d7ceadb355c5b5864a81_hd.jpg)
首先,我们看CAN网络上节点之间通信的传播延时情况,如图4所示,t2、t5为收发器循环延时、t3、t6为隔离延时、t4、t7为CAN控制器处理延时,t1 为线缆传输延时。
![](https://pic1.zhimg.com/80/v2-356b68929696eb0942e330e9461a2520_hd.jpg)
1、隔离器件延时
为了提高CAN节点的可靠性,CAN底层硬件通常会使用隔离设计。常用解决方案有采用光耦+CAN收发器,如图5所示(6N137+TJA1051),光耦6N137具有典型的60ns单向延时,而全部双向信号必须经过4个光耦,总隔离延时达240ns,在位时间配置不变的情况下,大大地缩短了CAN系统的容许线缆长度。
![](https://pic3.zhimg.com/80/v2-5c8172904e2b2c818ce220d5d1a91232_hd.jpg)
![](https://pic2.zhimg.com/80/v2-e76fbe4ebe4474b5a9dd69ce3005c605_hd.jpg)
![](https://pic1.zhimg.com/80/v2-6336a0d09e9095613c36c1de05c73a00_hd.jpg)
什么是循环延时?对于CAN收发器,是指从TXD输入的数字流被转换成相应的模拟总线信号,同时总线收发器监控总线,将模拟总线信号转换成相应的数字位流从RXD输出的过程。如图8所示:
![](https://pic2.zhimg.com/80/v2-d6bd5011e7090722299a3e24c3013e81_hd.jpg)
![](https://pic2.zhimg.com/80/v2-a2dbd66e077748d95b2ceae566639815_hd.jpg)
软件延时:是应用进程中,主CPU将数据从CAN控制器中读出/写入并作初步处理所耗费的时间。
CAN控制器延时:是CAN控制器为实现接收/发送缓存器中的信息和串行化的信息的相互转化所开销时间。
软件和控制器导致的延时与具体应用、主控器、CAN控制器和接口芯片有关。考虑到总线控制器在设计时已经考虑到内部处理时间,所以延时应该在纳秒级以下,在此可以不计。
4、线缆传播延时
线缆的选型不同,其延时率也不同,传输的距离也会有较大影响,在CAN控制器、收发器、隔离等外围元器件确的情况下,如何计算线缆的通信长度呢?
若线缆的通信距离为L(以m 为单位)、通信速率为B(以bit/s为单位)、采样位置为P(如75%)、隔离器件传播延时为tg(以ns 为单位,如t3,t6)、收发器传播延时为tq(以ns 为单位,如t2,t5)、线缆传播延时为tx(以ns/m为单位)。
可以得到线缆通信长度的估算公式:L=[(1/B)•P–4(tg+tq)]/2tx
由公式可知:线缆延时率越小,在相同条件下,传输的距离越远,所以在线缆选型中,建议用较粗的导线(线径越大,延迟越小),或者使用镀金或者镀银的线缆。
在实际应用中,如何快速评估CAN网络的延时情况呢?使用电子CANscope做总线延时分析,测试结果如图10所示:
![](https://pic2.zhimg.com/80/v2-c9cf8952cf87216455d9a3b14059cac9_hd.jpg)
隔离器件等外围电路的引入和收发器增加长时间显性关断功能等,都增加了CAN总线的延时时间,导致了越新型的收发器,回环延迟加大,减少了实际通讯距离。若想增大CAN总线通信距离,必须了解CAN通信的原理及信号线传输的原理,通过提高收发器、隔离器件的性能和线缆的选型来减小CAN信号传输的延时时间,从而提高实际通信的距离。
来源:致远电子