本篇文章源自于我在实际应用过程中遇到的问题,正常情况下CAN总线通信距离可以达到5000-10000米(通信波特率5K),可是客户现场在几百米情况下就已经不能正常通信了(通信电缆使用的是市场随意采购的网线)。于是对产品做了详细的测试。产品是使用一款PIC18F的单片机通过SPI总线控制CAN协议芯片MCP2551,总线驱动芯片使用PCA82C251,通信波特率5K。(因为CAN总线有许多驱动芯片,所以原理图我就不再贴出了,有朋友想看的话可以回复我)
试验名称:引导控制器CAN总线通信距离测试
实验器材:引导控制器2台,市场买的“次品”网线一箱 ≈ 300米,5000米仿真线(具体制作方法可参考周立功)
试验过程:
1、使用0.3mm2的通信线20cm连接CAN总线通信正常(确保产品正常工作)
2、使用5000米仿真线,CAN总线通信成功。示波器测量结果:
a) 发送端CAN_H – CAN_L = 2.5V
b) 接收端CAN_H – CAN_L = 1.1V
3、使用次品网线的“棕白、棕”配对颜色线,加上120欧的匹配电阻。CAN总线通信不成功。示波器测量结果:
a) 发送端CAN_H – CAN_L = 2.5V
b) 接收端CAN_H – CAN_L = 0.4V
CAN总线要求接收端CAN_H – CAN_L ≥ 0.9V。故通信未能成功
4、使用次品网线的“橙白、橙”配对颜色线,加上120欧的匹配电阻。CAN总线通信成功。示波器测量结果:
a) 发送端CAN_H – CAN_L = 2.5V
b) 接收端CAN_H – CAN_L = 0.8V
CAN总线要求接收端CAN_H – CAN_L ≥ 0.9V。故通信成功,也在临界状态。
5、测量网线电阻值:
a) 橙白、橙、绿白、绿 ≈ 300米的电阻值约为 120欧姆棕白、棕、兰白、兰 ≈ 300米的电阻值约为 370欧姆
试验计算:
CAN总线通信纯电阻直流通路:
通过实际测量可知:发送端压差2.5V,为保证正常接收,接收端压差大于0.9V(这里选取1.0V)
可得出Rx = 90欧姆。
试验结论:
1、次品网线电阻值列表(按网线标准线序排列,整箱网线长度 ≈ 300米):
故:现场施工尽量不选用网线作为长距离的传输线使用,在特殊情况必须使用时:
应选用:橙白、橙、绿白、绿4种颜色
不应选用:兰白、兰、棕白、棕4种颜色
1、CAN总线现场施工的通信线要求:实际线上阻抗≤90欧姆,匹配电阻120欧姆
试验附录:CAN-bus网络电缆的选择
1、最低要求
通常,CAN-bus总线采用差分信号传输方式,以双绞线作为物理层,需要有2根线作为差分信号线(CAN_H、CAN_L)。如果使用屏蔽双绞线,屏蔽层应被连接到CAN_Shield或外壳。
2、电缆有效电阻
特别提醒:在实际通信组网过程中需要对施工方进行通信电缆的培训或要求。而且告诉了大家,市场上的网线厂家可谓是用心良苦(大家参见我的实验数据,当我们布TCP网线的时候只要橙白、橙、绿白、绿这4根线工作正常即可而不使用兰白、兰、棕白、棕这4种颜色所以厂家就会对这4根线使用不合格产品一般都是使用多次回收铜制作)实际生产生活中一定要细心,对自己使用的产品要做到全面把握。
用户422235 2014-7-26 23:50
用户1378619 2013-1-25 17:21
用户403664 2012-12-18 15:38
用户402158 2012-9-27 17:12
handong123123_906892115 2012-9-18 10:21
用户377235 2012-9-17 21:32