MQTT和Modbus 如何在物联网中互相补充
一起学嵌入式 2023-11-02

物联网 (IoT) 不只是新技术,还是与旧技术的集成,其关键在于通信。可用的通信方法各不相同,但是,各种不同的协议在将海量 “事物” 连接到互联网时发挥着重要的作用。本文介绍了两种物联网补充协议:用于短距离设备连接的本地协议 Modbus 以及支持物联网进行全局通信的可扩展互联网协议 “消息队列遥测传输 (MQTT)”。Modbus 是一个串行通信协议,首次出现于 1979 年,是连接行业设备实际使用的标准协议。MQTT 早在 20 年前便已出现,但是将这两个协议结合在一起使用,能够为深度嵌入式设备提供物联网的规模和连接性。图 1. 物联网 (IoT) 网关作为物联网通信的支持解决方案 我们来看一下 Modbus 和 MQTT,以了解其区别以及如何在物联网中互相补充。

1、Modbus

自 1979 年首次出现至今,Modbus 已经演变为一套全面的支持多种物理链接的协议集(如 RS-485)。Modbus 的核心是一个串行通信协议,采用主从模式。主机向从机发送请求,从机予以回复。在标准 Modbus 网络中,有一台主机以及最多 247 台从机(但是,如果采用 2 字节寻址,则可显著提高这一界限)。借助 RS-485,主从机之间的通信发生在指示功能码的帧中。该功能码可识别要操作的功能,如读取独立输入;读取先进先出队列;或执行诊断函数。然后,从机根据收到的功能码进行响应,该响应较为简单,由一组字节指示。因此,从机可以是智能设备,也可以是只有一个传感器的简单设备。从该描述中,您可以看到 Modbus 协议非常简单,但是其作为协议的开放性使其成为整个行业或 SCADA 系统的实际通信协议。

2、消息队列遥测传输

MQTT 是一个开放的轻量级机器对机器协议,专为物联网交互设计。MQTT 网络包含一个 MQTT 经纪人 (broker),负责协调 MQTT 代理之间的交互。代理是发布器,负责发布供用户使用的信息(参见图 2)。图 2. 消息队列遥测传输网络中的作用因素

MQTT 的要求非常少,因为它专为资源有限的嵌入式设备设计。除了占地空间少之外,MQTT 还可提供出色的通信高效性(即使通过低带宽网络进行通信)和非常少的开销(较之 HTTP 等协议)。在 3G 网络中,MQTT 的吞吐量速度是使用 HTTP 的表述性状态转移 (REST) 的 93 倍。MQTT 可使用最少的方法指示要在特定主题上实施的操作,进而实施发布 / 订阅模式。代理先连接到经纪人,然后再发布或订阅主题。完成后,代理将从经纪人上断开连接。MQTT 方法定义:连接 - 建立与 MQTT 经纪人之间的连接。断开连接 - 断开与 MQTT 经纪人之间的连接。发布 - 在 MQTT 经纪人上发布主题。订阅 - 从 MQTT 经纪人上订阅主题。退订 - 从 MQTT 经纪人上退订主题。图 3 展示了发布者与订阅者使用 MQTT 经纪人进行的简单交互。如图所示,信息创建者 (producer) 连接至 MQTT 经纪人。同样,信息消费者 (consumer) 连接至 MQTT 经纪人。消费者订阅主题(此处定义为 /home/alarms/1/status)。本示例主题可识别主页上针对区域 1 的警报系统的状态变化。当创建者有信息要分享时,它会向经纪人发布一条消息,然后经纪人将会将信息分享给所有订阅该主题的用户。图 3. 消息队列遥测传输代理之间的简单交互

请注意此处分享的主题结构。它与文件系统层次结构相似,这可简化主题的结构。这种资源层次形式也常见于协议架构中,如 REST。MQTT 甚至允许使用通配符的形式,以简化订阅流程。如果用户想要获取所有警报的状态,则可直接订阅 /home/alarms/+/status,该主题可通知用户所有的警报状态变化。整个子树还可使用主题 /home/# 进行订阅,该主题可以订阅 /home 下的所有事件。

2.1 服务质量

MQTT 允许定义服务质量 (QoS)。MQTT 中有三个等级的 QoS:QoS 0。该等级表示 “最多一次” 交付(最佳状况)。消息不会得到确认,因而,这是一种一劳永与的方法。QoS 1。该等级表示 “至少一次” 交付。用户可能不止一次获得消息,但是允许收到的人确认已经收到。QoS 2。最慢但是最有保障的服务质量等级即为等级 2。QoS 2 表示 “只有一次”,并包含四个阶段的交付握手。该等级最慢,但是最安全。您选择的 QoS 等级将取决于数据及其交付的重要性。

2.2 消息队列遥测传输经纪人

随着越来越多的物联网采用 MQTT 作为支持协议,您将会发现许多开源应用和产品中出现了 MQTT。英特尔 ® 物联网网关解决方案则是其中一款采用 MQTT 的全面物联网解决方案。该系列产品支持传感器、设备和云之间安全交互。这些预验证的应用就绪型平台支持出色的可管理性、安全性和多种连接选项,如 ZigBee*、蜂窝网络、蓝牙 *、USB、Wi-Fi*,当然还有 MQTT 和 Modbus 等协议。英特尔根据市场需求提供了三个版本的英特尔 ® 物联网网关,分别包含不同的输入 / 输出选项,并针对工业和能源、交通运输以及综合产业等不同领域。虽有不同之处,但它们无一例外都包括通用的可管理性和供应、数据和端点安全性以及运行时环境。它们分别运行在安全且稳定的 Wind River* Linux* 上。英特尔 ® 物联网网关的主要优势是 McAfee® 嵌入式控制安全技术。McAfee® 嵌入式控制可根据策略处理设备变化,同时能够追踪所有变化,提供完整的可视性和可说明性,以便进行持续的审计跟踪。


总结

MQTT 和 Modbus 能够互相补充提高物联网的性能。使用 Modbus 作为本地接口来管理设备,使用 MQTT 作为全局协议来扩展设备的范围,二者都起到了重要的作用。英特尔 ® 物联网网关可为现在以及未来构建物联网提供一个简单、安全的方式。

声明: 本文转载自其它媒体或授权刊载,目的在于信息传递,并不代表本站赞同其观点和对其真实性负责,如有新闻稿件和图片作品的内容、版权以及其它问题的,请联系我们及时删除。(联系我们,邮箱:evan.li@aspencore.com )
0
评论
  • 相关技术文库
  • 物联网
  • 蓝牙
  • WIFI
  • LoRa
  • 智能家居的传统居住功能

    智能家居是未来发展趋势,在喜爱科技化的小伙伴家中,智能家居也是必不可少的组件。为增进大家对智能家居的认识,本文将对智能家居、智能家居系统的安装予以介绍。如果你对智能家居具有兴趣,不妨和小编一起继续往...

    07-23
  • 工业物联网应用层如何实现所感知信息的应用服务?

    物联网" target="_blank">工业物联网的应用具有实时性、自动化、嵌入式(软件)、安全性、和信息互通互联性等特点,在上篇文章中,小编对工业物联网感知层、现场管理层、网络层有所阐述。为增进大家对工业物联网的认...

    07-08
  • 物联网安全性:建立单独网络的重要性

    物联网IoT这个概念,已经发展了好多年了,想必大家对于物联网这3个字早已不再陌生了。为增进大家对物联网的认识,本文将对提升物联网安全性的10个技巧予以介绍。如果你对物联网或是本文内容具有兴趣,不妨继续往下...

    07-08
  • 云存储的三大分类和两个隐患

    存储是各电子设备均存在的组件或者能力之一,通过存储,能够帮我们存储运行过程中产生的数据。依据存储的不同,可分为对象存储、文件存储等。目前,最火热的存储方式之一,便是云存储。为增进大家对云存储的认识,...

    06-21
  • 云存储的3大类型

    云存储作为目前最火热的存储方式之一,自然受到不少人的关注。上篇文章中,小编对云存储的分类以及云存储的版本、隐私问题有所阐述。本文中,为增进大家对云存储的认识,将对云存储的选择、云存储的一些弊端予以介...

    06-21
  • 云存储的优势及文件管控

    前两篇文章中,小编对云存储分类、云存储版权问题、云存储的选择以及云存储的弊端有所阐述。为增进大家对云存储的认识,本文将对云存储的优势以及云存储文件管控予以介绍。如果你对云存储具有兴趣,不妨继续往下阅...

    06-21
  • BLE抗干扰的几种解决方案

    蓝牙作为常用技术,早已被现代居民所接受。但是,大家想过一个问题吗?蓝牙为什么被称为蓝牙呢?蓝牙的命名缘由是什么?本文中,小编将对该问题予以探讨。此外,小编还将介绍蓝牙技术存在的几个问题,以及蓝牙抗干扰的...

    06-21
  • AGV远程控制及工作环境实时监控的实现

    1 总体方案设计 物流中心自动引导小车(AGV)控制系统由AGV智能控制模块、监视模块、及无线网络通讯模块等三大部分组成。工作过程是通过接入互联网的手机或者微机客户端通过无线网络向远程的AGV发送控制指令代码,期...

    06-14
  • 深入解析:车载以太网DOIP协议

    DoIP 不 用 做 独 立 的 应 用 层 协 议 , 被 ISO在ISO 13400系列文档中被标准化。该协议被视为TCP/IP与更高级别协议,如ISO 14229(UDS)之间的接口。

    01-30
下载排行榜
更多
评测报告
更多
广告