RS485是一个物理接口,简单的说是硬件。
MODBUS是一种国际标准的通讯协议,用于不同厂商之间的设备交换数据(一般是工业用途);
所谓协议,也可以理解为上面有人说的“语言”吧,简单的说是软件。
一般情况下,两台设备通过MODBUS协议传输数据:
最早是用RS232C作为硬件接口,(也就是普通电脑上的串行通讯口(串口));
也有用RS422的,也有常用的RS485,这种接口传输距离远,在一般工业现场用的比较多MODBUS协议又分MODBUS RTU,MODBUS ASCII和后来发展的MODBUS
TCP三种模式:
其中前两种(MODBUS RTU,MODBUS ASCII)所用的物理硬件接口都是串行(Serial)通讯口(RS232,RS422,RS485)。
而MODBUS TCP则是为了顺应当今世界发展潮流,什么都可以用Ethernet网或Internet来连接,传送数据。所以又MODBUS TCP模式,该模式的硬件接口就是以太网(Ethernet)口了,也就是我们电脑上一般用的网络口了。
modbus总线的can总线与485总线区别为:主从结构不同、错误检测机制不同、培训成本不同。
一、主从结构不同
1、can总线:can总线是多主从结构,每个节点都有CAN控制器,多个节点发送时,以发送的ID号自动进行仲裁,这样就可以实现总线数据不错乱,而且一个节点发完,另一个节点可以探测到总线空闲,而马上发送,这样省去了主机的询问,提高了总线利用率,增强了快速性。
2、485总线:485总线是单主从结构,就是一个总线上只能有一台主机,通讯都由它发起的,它没有下命令,下面的节点不能发送,而且要发完即答,受到答复后,主机才向下一个节点询问,这样是为了防止多个节点向总线发送数据,而造成数据错乱。
二、错误检测机制不同
1、can总线:can总线有CAN控制器,可以对总线任何错误进行检测,如果自身错误超过128个,就自动闭锁。保护总线。如果检测到其他节点错误或者自身错误,都会向总线发送错误帧,来提示其他节点,这个数据是错误的。
2、485总线:485总线只规定了物理层,而没有数据链路层,所以它对错误是无法识别的,除非一些短路等物理错误。这样容易造成一个节点破坏了,拼命向总线发数据,造成整个总线瘫痪。
三、培训成本不同
1、can总线:can总线需要底层工程师了解CAN复杂的层,编写上位机软件也要了解CAN的协议。培训成本较高。
2、485总线:485总线的通讯从软件上是很方便的,只要懂串行通讯,就可以编程。培训成本较低。
扩展资料:
CAN总线通过CAN收发器接口芯片82C250的两个输出端CANH和CANL与物理总线相连,而CANH端的状态只能是高电平或悬浮状态,CANL端只能是低电平或悬浮状态。
这就保证不会在出现在RS-485网络中的现象,即当系统有错误,出现多节点同时向总线发送数据时,导致总线呈现短路,从而损坏某些节点的现象。
而且CAN节点在错误严重的情况下具有自动关闭输出功能,以使总线上其他节点的操作不受影响,从而保证不会出现像在网络中,因个别节点出现问题,使得总线处于“死锁”状态。
而且,CAN具有的完善的通信协议可由CAN控制器芯片及其接口芯片来实现,从而大大降低系统开发难度,缩短了开发周期,这些是仅有电气协议的RS-485所无法比拟的。
另外,与其它现场总线比较而言,CAN总线是具有通信速率高、容易实现、且性价比高等诸多特点的一种已形成国际标准的现场总线。这些也是CAN总线应用于众多领域,具有强劲的市场竞争力的重要原因。
参考资料来源:百度百科——CAN总线
参考资料来源:百度百科——485
参考资料来源:百度百科——Modbus通讯协议
modbus和485的区别是RS485是接线口,modbus是协议。他是建立在RS485是接线口的基础上进行通讯的。所以modbus离不开485,485也离不开MODBUS,前半部分说的基本正确,RS485是接线口与485也离不开MODBUS回答错误。
RS485不不完全是接线口,它是一种电气标准,包含机械特性,电气特性等特点,可以找一些通信书籍看看,描述有很多特点。
Modbus具有以下几个特点:
1、标准、开放:用户可以免费、放心地使用Modbus协议,不需要交纳许可证费,也不会侵犯知识产权。目前,支持Modbus的厂家超过400家,支持Modbus的产品超过600种。
2、Modbus可以支持多种电气接口:如RS-232、RS-485等,还可以在各种介质上传送,如双绞线、光纤、无线等。
3、Modbus的帧格式简单、紧凑,通俗易懂。用户使用容易,厂商开发简单。
转载请注明:片头模版 » 485协议和modbus协议(modbus和485的区别)