CAN(Controller Area Network)和RS485是目前工业控制系统最常用的两种现场总线,CAN是一种有效支持分布式实时控制的串行通信网络。较之基于RS-485总线构建的分布式控制系统而言, 基于CAN总线的分布式控制系统在以下方面具有明显的优越性:
1) CAN控制器工作于多主方式,网络中的各节点都可根据总线访问优先权(取决于报文标识符)采用无损结构的逐位仲裁方式竞争向总线发送数据,且CAN协议废除了站地址编码,而代之以对通信数据进行编码,这可使不同的节点同时接收到相同的数据,这些特点使得CAN总线构成的网络各节点之间的数据通信实时性强,并且容易构成冗余结构,提高系统的可靠性和系统的灵活性。而利用RS-485只能构成主从式结构系统,通信方式也只能以主站轮询的方式进行,系统的实时性、可靠性较差。
2) CAN总线通过CAN控制器接口芯片82C250的两个输出端CANH和CANL与物理总线相连,而CANH端的状态只能是高电平或悬浮状态,CANL端只能是低电平或悬浮状态。这就保证不会出现象在RS-485网络中,当系统有错误,出现多节点同时向总线发送数据时,导致总线呈现短路,从而损坏某些节点的现象。而且CAN节点在错误严重的情况下具有自动关闭输出功能,以使总线上其他节点的操作不受影响,从而保证不会出现象在网络中,因个别节点出现问题,使得总线处于“死锁”状态。
3) CAN具有完善的通信协议,可由CAN控制器芯片及其接口芯片来实现,从而大大降低了系统的开发难度,缩短了开发周期;而RS-485仅有电气协议,其通信协议由用户自己定义,这对于单点通信时有性价比高的优势,但对于多点分布式系统来说,反而增加了系统的开发和维护难度。
特性 | RS-485 | CAN-bus |
单点成本 | 低廉 | 稍高 |
系统成本 | 高 | 较低 |
总线利用率 | 低 | 高 |
网络特性 | 单主网络 | 多主网络 |
数据传输率 | 低 | 高 |
容错机制 | 无 | 可靠的错误处理和检错机制 |
通讯失败率 | 高 | 极低 |
节点错误的影响 | 导致整个网络的瘫痪 | 无任何影响 |
通讯距离 | <1.5km | 可达10km(5kbps) |
网络调试 | 困难 | 非常容易 |
开发难度 | 标准Modbus协议 | 标准CAN-bus协议 |
后期维护成本 | 高 | 低 |
dwwzl 2010-11-24 09:59