由于总线上面挂接的节点距离测试点都不同,所以引起的延时都不一样。我们为了检测出总线最大的延时,通常把测试点放在总线的最远两端,测试的对象也是总线最远两端的两个节点发出来的报文。
我们可以假定报文是从最左边的主机发出来的,那么距离他最远的从机就是最右端的,则最大延迟为:整体导线延迟+最远端节点(即最右端)的电路延迟(包括隔离器件与收发器延迟)。
四、消除延时误差的方法
为了减小延时,增加通讯距离和降低通讯错误率,我们可以采取以下措施:
1、采用磁隔离的CTM1051方案设计接口收发电路;
2、用较粗的导线代替细导线,标准为1.5线缆(延迟为5ns/m);
3、使用镀金或镀银的线缆;
4、增加网桥中继设备CANBridge延长通讯距离。
5、采用光纤传输,如致远电子的CANHUB-AF1S1,同等波特率可延长1倍通讯距离。
五、总结
要想保证CAN总线通讯正常首先要保证合理布置CAN节点,保每一个到达节点的报文不出现延时错误,其次一台好的分析工具也是必不可少的,它不但可以帮助我们精确快速地发现故障所在,还能以模拟方式测试我们总线在各种环境中的工况。