485与can协议的区别
1.引言
1986年2月,Robert Bosch公司在SAE 汽车工程协会大会上介绍了一种新型的串行总线CAN控制器局域网,那是CAN 诞生的时刻。今天在欧洲几乎每一辆新客车均装配有CAN 局域网,同样CAN也用于其他类型的交通工具从火车到轮船或者用于工业控制。CAN 已经成为全球范围内最重要的总线之一,甚至领导着串行总线,在1999年接近6 千万个CAN 控制器投入应用,2000年市场销售超过1 亿个CAN 器件。但在国内,基于历史或者其他的原因,大多数的厂商工程师在设计产品工程立项时,第一想到的是应用RS-485总线系统。但是,随着社会的发展,对计算机控制要求越来越高,现场应用的条件越来越复杂,所以,CAN网络总线替代RS-485网络总线将成为历史的必然趋势。
2.RS-485和CAN网络总线性能比较
RS-485是一种半双工、全双工异步通信总线,是为弥补RS-232 通信距离短、速率低等缺点而产生的。RS-485只规定了平衡驱动器和接收器的电气特性,而没有规定接插件、传输电缆和应用层通信协议,因而在当时看来是一种相对经济、具有相当高噪声抑制、相对高的传输速率、传输距离远和宽共模范围的平台。RS-485总线上只能有一个主机,往往应用在集中控制枢纽与分散控制单元之间。但是,CAN-bus 是一种多主方式的串行通讯总线,基本设计规范要求有高的位速率、高抗电磁干扰性而且能够检测出产生的任何错误。CAN- bus总线在通信能力可靠性、实时性、灵活性、易用性、传输距离远、成本低等方面有着明显的优势,成为业界最有前途的现场总线之一。RS-485与CAN总线性能比较见表1:
通过表1比较可知:RS-485 网络除了硬件成本开发难度比CAN-bus 网络稍具优势外,其他性能方面都没有可比性。在产品更新速度特别快的今天,如果将产品的上市时间产品的后期维护、软件开发难度等计算在一起,RS-485 的硬件成本优势也变得不十分明显,因而用CAN 总线取代R S-485 总线是一种比较彻底的方案。
特性RS-485 CAN-bus
成本低廉稍高,多20-30元/节点
总线利用率低高
网络特性单主节点多主节点
数据传输率低高
容错机制无可靠的错误处理和检错机制
通讯失败率高极低
节点错误的影响导致整个网络瘫痪无任何影响
通讯距离<1.5Km 可达10Km(5Kbps)
网络调试困难容易
开发难度简单需要一定的技术基础
后期维护成本很高低
表1:RS-485与CAN-bus 优缺点比较
3. RS 485 总线网络与CAN-bus 总线网络的互联
一下子完全放弃RS-485 网络系统有困难的,尤其是在已经具有现成的硬件网络中。因此可以考虑一种折衷的、暂时的方法,就是在保留现有RS-485 系统硬件结构的基础上,添加一个CAN-bus 接口。这里,可以选择CAN485 智能转换器来实现RS-485 网络与CAN 网络的互联。CAN48 5 智能CAN 转换器用于实现CAN 总线接口和RS-485 总线接口之间的转换,可以很方便的使用在采用RS-485 接口的主机或从机(如现场控制单元智能网络节点等),这样,不需要改变已有的硬件结构即可使得设备获得CAN 的接口,实现基于CAN 网的网络数据和命令的传输,也可用于连接C AN 网络和RS-485 网络解决了不同网络终端设备的互连问题,适用于原有RS-485 网络到CAN 网络升级。-
如图1所示,利用CAN485智能CAN 转化器,实现了RS-485 网络CAN-bus 网络的数据互换。但是作为一种过渡性的方案,系统性能受限于RS-485 网络,并不能充分体现CAN-bus 系统优越的性能。该方案仅仅适合那些在新旧系统并存、性能要求不高、新系统与旧系统有相同运行机制的地方。
插图1 CAN485 智能转换器应用图示
4.CAN-bus总线网络完全替代RS-485总线网络
对于系统性能实时性、可靠性要求高的场合,可以考虑完全摒弃RS-485 系统来构建一个新的CAN-bus 系统。构建CAN bus 系统需要考虑网络布局、节点电路的设计等。
4 .1 CAN-bus总线网络布局
于CAN-bus与RS-485在电气特性、网络拓扑、传播媒体等有太多相似的地方,所以CAN-bus网络替换RS-485 网络是非常方便节省成本的。图2和图3分别为CAN-bus和RS-485 的电气连接图。
插图2 CAN-bus的电气连接图
插图3 RS-485典型的二线制网络连接图
从上图比较可知CAN与RS-485的网络拓扑一般都采用终端匹配的总线型结构,而且也都没有规定总线电缆的机械和材料参数。如果RS-485 的传播媒体是光纤,那么原有的网络布局不需要作任何改动(包括网线),只需要用CAN节点来替换RS-485节点即可;但是如果是应用双绞线(屏蔽或不屏蔽),则CAN网络必须要满足如表2所示的物理媒体参数。如果旧的RS-485网络的双绞线(屏蔽或不屏蔽)不符合表中的参数,为了获得最佳的系统性能,那只有重新铺设网络电缆,并用C AN节点来替换RS-485 节点。实际的RS-485系统中,大多数双绞线的阻抗特性在102至120之间。如果系统中应用的波特率不是很高、传输距离不是很远,则可以保留原有的网络电缆,要注意网络两端的终端电阻值为120左右。
参数标志单位最小值标称值最大值条件
阻抗Z
108 120 132 单线之间
与长度有关的电阻r
70
规定线延迟ns/m
0 5 位时间+接收、发送延迟
表2 符合CAN 网络的双线屏蔽或不屏蔽的物理媒体参数
4 .2 CAN-bus 总线节点设计
任何CAN 节点至少要包括微控制器(MCU)、CAN 协议控制器、CAN 收发器三部分。随着CAN技术的普及,CAN 器件的种类也越来越丰富,有许多的MCU 、DSP 中都集成了CAN 协议控制器,根据不同的需要可以选择不同的器件。如果有特别的需要,在CAN 收发器与总线之间或者是CAN 协议控制器与CAN 收发器之间加入光电隔离,以提高系统的抗干扰能力。对于节点性能要求比较高的场合,CAN-bus 部分选择独立的CAN 控制器SJA1000,微处理器则可以灵活选择各种高速器件如高速51 、ARM 、DSP 、PowerPC X86 等以适应不同的应用环境。图4 描述了P8 7C52X2在CAN-bus 节点中的经典应用。