您现在所在的是:

泓格论坛

回帖:1个,阅读:766 [上一页] [1] [下一页]
1722
泓格 版主
文章数:174
年度积分:50
历史总积分:1722
品牌积分(泓格):94
注册时间:2017/2/5
发站内信
发表于:2020/7/15 9:42:14
#0楼
  MQTT(Message Queuing Telemetry Transport)是一种开放、简单、易于实作的轻量级发布/ 订阅式消息传输协议,可在低频宽的网络环境中提供可靠的网络服务。这些特性使其非常适合在各种受限的环境下使用,例如机器对机器(M2M) 和物联网(IoT)等程序码空间受限、网络频宽受限,又要求实时性、安全性、且数据传输次数密集的通信系统。

  何谓发布/ 订阅式消息传输协议?

  MQTT 架构可分为三大部分:Broker、Publisher 和Subscriber,Broker 是传递讯息的代理人。在MQTT 架构中Broker 扮演了Server 的角色,任何讯息都需经过Broker的处理才能送达,Broker 利用讯息的Topic( 主题名称) 转发给正确的Client。Publisher 和Subscriber 都是Broker的Client 端,Publisher 会将特定Topic 的更新讯息送往Broker。当特定Topic 的讯息更新时,Broker 便会将新的讯息转发给已订阅的Subscriber,所以只需要知道主题名称,任何Client 都能兼任Publisher 和Subscriber。
附件 1.jpg

  ET-2200 系列的MQTT功能

  ET-2200 系列为DI、DO 模块,新增的MQTT 功能设计为搭配DI、DO 使用。Publish 功能主要有三种不同的模式,分别为Power-On、State-Change 以及Periodic。Power-On 功能仅在模块重启或是刚上电时作用, 当模块发生供电异常或触发看门狗功能重启后, 有开启Power-OnPublish 功能的DO 将会在与Broker 连线后立即发布当前状态通知所有订阅端。State-Change Publish 在指定的DI、DO 状态发生改变时才会更新主题讯息,而Periodic Publish 则是在固定的时间间隔不断发布当前状态。Subscribe 功能为DO 仅有,可应用于远程设定DO 状态。

  应用案例

  通过开源软件Mosquitto 可以在Windows、macOS 和Linux 等操作系统上架设MQTT 架构的Server 端(Broker),另外使用Chrome 线上商店的免费软件MQTTLens可以模拟MQTT 架构的Client 端(Publisher和Subscriber)。配合上述两个软件可以简单应用ET-2200 系列模块的MQTT 功能,请参阅下方详细步骤。

  与Broker 建立连线

  MQTTLens – 点击”+” 并输入Broker的IP Address 后,建立与Broker 的连线。
附件 2.jpg

  ET-2200 – 登入Web Server 后点击MQTT 页面, 将MQTT 设定为Enable 并在Broker 栏位输入Broker 的IP Address 后点击Update Settings 套用设定。
附件 3.jpg

  Publisher 功能

  Step 1 开启MQTT 的DO、DI Publish 功能
附件 4.jpg

  Step 2 MQTT 页面点选RestartService,确保设定已套用
附件 5.jpg

  Step 3 使用MQTTLens 订阅Step 1 开启的DO、DI 主题名称( 此范例rb_all 为例)
附件 6.jpg

  Step 4 观察MQTTlens 可以看到订阅的主题”rb_all”每隔9000ms(Periodic 预设值)会更新主题讯息,讯息内容为所有DO 当前状态。
附件 7.jpg

  Subscriber 功能

  Step 1 开启MQTT 的DO Subscribe 功能
附件 8.jpg

  Step 2 MQTT 页面点选RestartService,确保设定已套用
附件 9.jpg

  Step 3 使用MQTTLens 发布Step 1 开启的DO 主题名称( 此范例do_all 为例)
附件 10.jpg

  Step 4 回到ET-2200 Web Server 的Home 页面,观察DO 状态是否与发布讯息相同
附件 11.jpg

  透过MQTT 实现ET-2200 的I/OPair-connection 功能
附件 12.jpg

  Step 1 使用ET-2200 # 1 模块的MQTTDI 页面开启State-Change Publish 功能并自订一个Topic ( 例如pair-connection)
附件 13.jpg

  Step 2 使用ET-2200 # 2 模块的MQTTDO 页面开启Subscribe 功能并输入Step 1设定的Topic ( 例如 pair-connection)
附件 14.jpg

  Step 3 回到各自的MQTT 页面点选Restart Service,确保设定已套用
附件 14.jpg

  Step 4 对ET-2200 # 1 模块的DI 输入讯号改变DI 状态,观察ET-2200 # 2 模块Home 页面的DO 状态是否与ET-2200 # 1模块的DI 一同改变。以上图为例,当ET-2200 # 1 的DI 状态发生改变时,ET-2200 #1 会向Broker 发布当前DI 状态,Broker 收到讯息后会将最新的讯息发布给”已订阅”的ET-2200 # 2, 而ET-2200 # 2 收到Broker 的讯息后将DO 调整为对应讯息的状态。
[此贴子已经被作者于2020/7/15 9:45:11编辑过]
泓格科技(ICP DAS)成立于1993年 ,是专注于工业数据采集产品开发并行销全世界的企业。
当年畅销大陆的牛顿7000和iDAM7000模块,就是以OEM的方式由泓格生产的。多年来泓格
在工业自动化的数据采集、传输和控制领域不断耕耘,目前可以提供数百款产品。包
括:“PAC可编程自动化控制器 ”、“ 分布式I/O模块”、“ PCI和ISA接口工业数据采集卡”、“无线
通讯模块 ”“WinCE平台控制器”、“ 信号调理模块”、“ 运动控制卡”、“ 人机界面”以及“组态软
件”等等。
-327
dingjm
文章数:65
年度积分:-327
历史总积分:-327
品牌积分(泓格):6
注册时间:2023/2/1
发站内信
发表于:2023/2/28 14:04:32
#1楼
此楼内容不符合板块规定,不予显示! 查看原帖内容>>

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

46.8003