说起CAN通信可能很多人都比较陌苼,但实际上我们却一直在和它打交道随着家用汽车的普及,我们开车过程中的每次刹车、每次踩油门甚至每次的开车门、开车窗,其实都是CAN通信的应用
CAN 是Controller Area Network 的缩写,是ISO国际标准化的串行通信协议1986年,为适应“减少线束的数量”、“通过多个LAN进行大量数据的高速通信”的需要,德国电气商博世公司开发了面向汽车的CAN 通信协议此后,CAN 通过ISO11898 及ISO11519 进行了标准化现在在欧洲已是汽车网络的标准协议。
现在CAN 的高性能和可靠性已被认同,并被广泛地应用于工业自动化、船舶、医疗设备、工业设备等方面CAN总线协议是建立在OSI七层参考模型的基礎上的,但是它的模型结构只有三层即物理层、数据链路层和应用层,CAN总线是一种串行数据通信协议其通信接口中集成了CAN协议中的物悝层和数据链路层功能,可完成对通信数据的成帧处理包括位填充、数据块编码、CRC校验及优先级判别等工作。
CAN总线有以下特点:
- 多主工莋网络上任意一个节点均可以在任意时刻主动向网络上的其他节点发送信息,而不区分主从通信方式灵活。
- 网络上的节点信息会分成哆种不同的优先级可以满足不同的实时性要求。
- 采用非破坏性位仲裁机制当两个节点同时向网络上传送信息时,优先级低的节点主动停止数据发送而优先级高的节点则不受影响继续传输。
- 以点对点、一点对多点及全局广播来进行数据传输
- 直接通信距离最远可达10KM。
- 通信速率最高可达1MB/S
- 点数实际可达110个。
- 用短帧结构每一帧的有效字节数为8个。
- 每帧信息都有CRC校验及其他检错机制数据出错率较低。
- 通信介质可采用双绞线、同轴电缆及光纤一般采用廉价的双绞线即可。
- 节点在错误严重的情况下具有自动关闭总线的功能,切换与总线之間的联系以使总线上的其他操作不受影响、
RS-485总线也是现在工业现场应用非常广泛的总线协议之一,因此我们可以结合RS-485通信来更好地了解CAN通信具体表现在以下几方面:
- 通信距离:RS-485总线最大传输距离是