can总线与485总线有何异同,详细说说
扫描二维码
随时随地手机看文章
CAN总线和485总线都是常见的串行通信协议,它们在工业自动化、机器人控制等领域被广泛应用。本文将从物理层、数据传输方式、网络拓扑结构、通信速率和应用范围等方面比较CAN总线和485总线的区别。
485总线是一种半双工、全双工异步通信总线,是为了摆脱232总线的通信速率低和通信距离过短而产生的。485总线仅仅规定了驱动器和接收器的电气特性,却没有规定接插件、传输电缆和应用层通信协议,所以对于当时来说,是一种非常实惠、而且传输的速率相对比较高的总线。
CAN总线是一种双绞线,具有高抗干扰性,高速率性,更重要的是能够检测出来任何的错误。CAN总线具有通信能力的实时性、灵活性、传输距离远、可靠性成本低等优势,所以被认为是最有希望的现场总线。
第一,传输距离比较,CAN总线和485总线的物理层标准不同。CAN总线采用双绞线,分为高、低两根线,CAN总线的信号是差分信号,具有良好的抗干扰能力,最长传输距离可达1km。而485总线一般采用双绞线或者是双绞线加屏蔽层,它的信号是单向传输的,即一个节点发送,其他节点接收,485总线最长传输距离可达1200m。
第二,数据传输速率比较,CAN总线的最大通信速率为1000Kbps,不算特别大和以太网相比,但也还可以。相比而言,485总线的最大通信速率为10Mbps,是CAN总线的十倍。在通信速率上,485总线显然是更占优势的。CAN总线的高速通信速率使得它适用于需要高速数据传输的应用场合,例如汽车控制系统。而485总线适用于需要长距离传输和多节点通信的应用场合,例如楼宇自动化控制系统。
第三,数据传输方式,CAN总线采用基于帧的通信方式,数据被打包成帧进行传输,数据传输速率可以根据实际需求进行调整。在CAN总线中,所有节点都可以发送和接收数据,并且具有优先级控制功能。数据传输的可靠性很高,因为CAN总线具有冗余校验和错误重传机制,可以保证数据传输的正确性。
485总线采用基于字符的通信方式,它没有CAN总线的冲突检测和纠错机制,因此传输速率相对较低,但是可以实现多节点通信。在485总线中,一个节点发送数据时,其他节点必须处于接收状态才能接收到数据,因此在设计网络拓扑结构时需要注意节点之间的排列顺序。
第四,应用范围,CAN总线主要应用于高速数据传输和实时控制系统,例如汽车电子控制单元(ECU)、工业机器人等。而485总线主要应用于低速数据传输和数据采集系统,例如温度、湿度、压力等传感器的数据采集。
RS-485总线技术是相较于底层的应用层协议,作为应用开发者一般关注的是其应用,你可以将它理解为一种固定的硬件层电气接口,至于我们在基于485硬件就绪的条件下进行应用开发只需考虑它的软件通信协议,有主流的Modbus RTU通信协议,也可以自己定义自己的一套协议标准进行相应传输,只要不丢失数据就行;设备想要用485进行通信的话需要借用串口这个中介将MCU的数据传输到RS-485总线上再继续传输,所以在硬件电路板上需要设计一个串口转485电路,485接口可以通过485双绞屏蔽线连接外部设备,也可以通过485转USB连接电脑调试助手(Modbus)都可以。
CAN总线有可靠的错误处理和检错机制,节点在错误严重的情况下具有自动退出总线的功能,还有发送的信息若遭到破坏后,可自动重发;还可通过标识符的优先级进行总线仲裁解决发送信息的冲突问题,485总线则是通过一主多从的方式避免数据冲突;CAN总线是用于汽车控制系统的标准总线,CAN是规定了物理层和链路层,485总线仅仅规定了驱动器和接收器的电气特性,却没有规定接插件、传输电缆和应用层通信协议;CAN和485都属于半双工的差分传输方式,对线材有一定要求,最好是屏蔽双绞线,都需要120欧姆的终端匹配电阻解决信号反射的问题。