CAN (Controller Area Network) ,即控制局域网,是 一种具有高可靠性、支持分布式和实时控制的串行通 信网络。CAN为多主方式工作,网络上任意节点均可 在任意时刻主动地向网络上其他节点发送信息控制工程网版权所有,而不 分主从,且无需站地址等节点信息,通信灵活。CAN 协议模型结构只有3层,即只取OSI模型底层的物理 层、数据链路层和顶层的应用层。物理层使用双绞线, 数据链路层采用了具有优先级控制的载波侦听及冲突 检验机制(CSMA /CD) 。CAN 的最大特点是可靠性 高,其节点在错误严重的情况下具有自动关闭总线的 功能,切断与总线的联系,使总线上其他操作不受影 响。CAN总线的速率在40m内可达1Mbit/ s,最大传 输距离为10km,最大传输距离时的速率可达5kbit/ s。 每条CAN总线可挂接设备数最多可达110个,多条连 用时,容量基本不受限制。
2 CAN总线在船舶中的应用
目前, CAN总线应用于船舶的基本网络模型如图 1所示。
模型中网络分为2层结构,分别为上层网和下层 网(子网) ,子网通过网桥与上层网相连接。采用这种 结构,网络中节点数理论上可以达到1000个,大大扩 充了CAN网络容量,完全可以满足船舶监控系统的需 要。
因为CAN协议本身没有考虑冗余的结构CONTROL ENGINEERING China版权所有,所以各 CAN系统自行设计了冗余方案,其中常见的做法有2 种:一种是子网中每个CAN节点都有2个CAN通信 模块,同时铺设2路总线,当一路总线出现故障时,自 动启用备用总线通信;另一种是每个子网采用环形拓 扑结构,实现方法是只在CAN网桥与子网连接的一端 保留2个CAN通信模块(主干网可采用类似的方法) , 分别接子网总线的两端,构成环形www.cechina.cn,这样每个节点可以 在两个方向上与其他节点通信,某一处总线断开不影 响系统正常工作。
下面结合所开发的模块实例,简要介绍以CAN通 信模块开发的一般方法及软硬件问题的解决。
3. 1 下位节点的设计
本例中CAN网络节点的结构如图2所示。
82C250是CAN控制器与物理总线之间的接口部 件,可完成对总线的差动发送和接收功能。82C250与 ISO /D IS 11898标准完全兼容,具有抗瞬间干扰、降低 射频干扰、热保护、总线与电源及地之间的短路保护等 能力,可支持多达110个节点相连。
本例中, 程序固化在EPROM