首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MQTT和MODBUS协议的区别?

MQTT和MODBUS协议的区别?
EN

Stack Overflow用户
提问于 2017-06-07 04:42:35
回答 3查看 4.2K关注 0票数 2

我最近一直在读这两个协议,我不太能理解为什么我们有MODBUS时要使用MQTT (反之亦然)。

因为,MODBUS用于在低带宽下通过串行通信在PLC之间传输数据,但据我所知,MQTT使用其发布/订阅方法也做了同样的事情(我知道MQTT使用代理,而MODBUS不使用,但这不是重点)。

有没有人能说清楚它们之间的区别?

EN

回答 3

Stack Overflow用户

发布于 2017-06-08 21:27:26

Normal Modbus是一种串行通信协议,常用于连接工业电子设备。

MQTTis是在TCP/IP协议之上使用的消息传递协议,通常用于从电子设备向另一方发送测量结果。

也许这个链接会有一点帮助。A Comparison of IoT Gateway Protocols: MQTT and Modbus

票数 2
EN

Stack Overflow用户

发布于 2020-05-18 20:48:30

Modbus有很多变种。但如果我们将Modbus变体与MQTT进行比较,它应该是Modbus TCP。

*MQTT是一种比Modbus更新的协议,并以物联网(IoT)的形式开发。一些旧设备不支持MQTT,但只支持Modbus TCP。

*使用MQTT,您可以通过message broker将数据发送到多个部分,但Modbus TCP仅将数据发送到its服务器。

*MQTT比Modbus TCP协议更安全。

*MQTT得到许多软件语言和主要云服务提供商的支持,如Amazon AWS、Microsoft Azure、IBM Bluemix和Google Cloud。

*因此,如果您的设备和系统支持MQTT,请使用MQTT而不是Modbus TCP。

票数 0
EN

Stack Overflow用户

发布于 2021-12-06 13:45:11

它们很不同,但在各自的时代都很受欢迎。

Modbus最初发布于1979年,主要用于控制/监控软件与有限规模的现场设备进行通信,例如工厂/建筑物。因此,它有以下关键考虑因素,

对于一对多的拓扑结构,总是有一个主机来轮询多个slaves

  • Simplicity而不是灵活性,它只支持请求-响应的pattern

  • deterministic定时而不是性能,它是为了支持

中严格的实时性要求

MQTT诞生于1999年,随着大规模网络和互联网的普及,软件与设备之间需要更复杂的通信方式,如基于事件的、机器对机器的通信。因此,MQTT应运而生,以满足以下需求:

  • Many-to-many拓扑,所有参与者可以通过公共broker.
  • Large规模相互通信,它在大型网络中工作良好,例如internet.
  • Flexibility,所有参与者都是解耦的,并且它提供QoS来满足不同的交付协议。

简而言之,

  • 如果你是一名软件架构师,请尽可能使用MQTT,因为它是为现代IoT世界而设计的。
  • 如果你正在设计一台智能设备,你可以考虑使用Modbus来兼容传统的IoT/SCADA系统。

额外的好处:您可以考虑将Modbus连接到MQTT世界,就像这个modpoll工具一样。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44399492

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档