近年来CAN总线逐渐被工程师认知,并以其突出特点,逐渐在取代RS485等总线,本文将以CAN与RS485为例总结各自优势,为您解疑“为什么CAN能取代RS485”。
现场总线是90年代初国际上发展形成的,目前广泛应用于现场总线技术过程自动化、制造自动化、楼宇自动化等领域的现场智能设备互连通讯网络。
图1 点对点连接方式
采用点对点通讯时,连线多,线路复杂,两两连线需要两两连线,需要n(n-1)/2根线。
图2 总线连接方式
信息在一条公共通道上传输,信息接收者从通道上接收所有信息,并根据规则过滤发送给自己的信息。连线少,结构清晰,仅需≤n+1根线。
目前工业现场主流的总线方式包括RS232、RS485、CAN、Devicenet等,那么多总线类型,都有什么特点和应用呢?本文就以最常用的RS485和热门的CAN总线进行对比分析,帮助您选择更加合适的通讯方案。
图3 目前主流的现场总线
CAN是控制网络ControlAreaNetwork的简称,最早由德国BOSCH公司推出,用于汽车内部测量与执行部件之间的数据通信。
一、CAN 现场总线
图4 CAN在汽车网络拓扑结构
CAN总线特点:
国际标准的工业级现场总线,传输可靠,实时性高;
传输距离远(最远10Km),传输速率快(最高1MHz bps);
单条总线最多可接110个节点,并可方便的扩充节点数;
多主结构,各节点的地位平等,方便区域组网,总线利用率高;
实时性高,非破坏总线仲裁技术,优先级高的节点无延时;
出错的CAN节点会自动关闭并切断和总线的联系,不影响总线的通讯;
报文为短帧结构并有硬件CRC校验,受干扰概率小,数据出错率极低;
自动检测报文发送成功与否,可硬件自动重发,传输可靠性很高;
硬件报文滤波功能,只接收必要信息,减轻cpu负担,简化软件编制;
通讯介质可用普通的双绞线,同轴电缆或光纤等;
CAN总线系统结构简单,有极高的性价比。
二、RS485 总线
RS-485是从 RS-422基础上发展而来的,可以采用二线与四线两种不同的方式,二线制可实现真正的多点双向通信。而采用四线连接时,只能实现点对多点的通信。即只能有一个主设备(Master),其余为从设备(Slave)。
RS485接口标准特点:
RS-485的电气特性:两线间的电压差范围为±(2-6)V表示,接口信号电平降低,不易损坏接口电路的芯片,且该电平与TTL电平兼容,可方便与TTL 电路连接;
RS-485的数据最高传输速率为10Mbps;
RS-485接口是采用平衡驱动器和差分接收器的组合,抗共模干能力增强,即抗噪声干扰性好;
RS-485接口的最大传输距离标准值为4000英尺,实际上可达 3000米。RS-485接口在总线上是允许连接多达128个收发器。即具有多站能力,但RS-485总线上任何时候只能有一发送器发送;
RS-485接口具有良好的抗噪声干扰性,长的传输距离和多站能力等优点就使其成为首选的串行接口;
RS485接口组成的半双工网络,一般只需二根连线,接口均采用屏蔽双绞线传输。
三、CAN 总线与RS485的比较
1、速度与距离:CAN与RS485以1Mbit/S的高速率传输的距离都不超过100M,可谓高速上的距离差不多。但是低速CAN以5Kbit/S时,距离可达10KM。而增强型RS485收发器在最低的速率时亦能传输超过10KM(都无中继),两者在长距离的传输上也难分伯仲。
图5 CAN长距离通讯优势在智能家居中应用
2、总线利用率:RS485是单主从结构,就是一个总线上只能有一台主机,通讯都由它发起的,它没有下命令,下面的节点不能发送,而且要发完即答,受到答复后,主机才向下一个节点询问,这样是为了防止多个节点向总线发送数据,而造成数据错乱。而CAN-bus是多主从结构,每个节点都有CAN控制器,多个节点发送时,以发送的ID号自动进行仲裁,这样就可以实现总线数据不错乱,而且一个节点发完,另一个节点可以探测到总线空闲,而马上发送,这样省去了主机的询问,提高了总线利用率,增强了快速性。所以在汽车等实性要求高的系统,都是用CAN总线,或者其他类似的总线。
3、错误检测机制:RS485只规定了物理层,而没有数据链路层,所以它对错误是无法识别的,除非一些短路等物理错误。这样容易造成一个节点破坏了,拼命向总线发数据(一直发1),这样造成整个总线瘫痪。所以RS485一旦坏一个节点,这个总线网络都挂。而CAN总线有CAN控制器,可以对总线任何错误进行检测,自动转换错误状态,适时关闭总线,进而保护总线。如果检测到其他节点错误或者自身错误,都会向总线发送错误帧,来提示其他节点,这个数据是错误的,大家小心。这样CAN总线一旦有一个节点程序跑飞了,它的控制器自动闭锁,保护总线。所以在安全性要求高的网路,CAN是很强的。
4、器件价格:随着CAN总线迅猛发展,目前CAN隔离收发器单价大有与RS485价格持平的趋势,RS485收发器逐渐失去价格优势。
5、开发难度:CAN具有完善的通信协议,底层机制由CAN控制器芯片及其接口芯片来实现,研发工程师只需要了解面向客户的应用层,从而大大降低了系统的开发难度,缩短了开发周期。而RS-485协议仅仅只有电气协议,客户开发需要自己开发链路层和应用层,开发难度较大。
四、总结对比
-
CAN
+关注
关注
57文章
2744浏览量
463606 -
RS485
+关注
关注
39文章
1156浏览量
82290
原文标题:为什么CAN能取代RS485?
文章出处:【微信号:ZLG_zhiyuan,微信公众号:ZLG致远电子】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论