KEPServerEX 中MQTT应用 北京东方鼎晨科技有限公司 目录 3.2. IOT Gateway Plug-in 中的MQTT Client 配置......................................................... 7 1. MQTT 简介物联网最近曝光率越来越高。虽然HTTP是网页的事实标准,不过机器之间的大规模沟通需要不同的通讯模式,之前的请求/回答 模式不再合适,取而代之的是发布/订阅 模式。这就是轻量级、可扩展的MQTT可以施展拳脚的舞台。 MQTT是一个轻型协议,使用基于 TCP/IP 协议的发布/订阅消息转发模式。 MQTT 协议的中心是 MQTT 服务器或代理 (broker) ,支持发布程序和订阅程序进行访问,如下图所示: 2. KEPServerEX中的MQTT应用在KEPServerEX软件中MQTT有两种应用,一个是Driver层面的应用:MQTT Client Driver ,一个是Plug-in层面的应用:IoT Gateway Plug-in。 2.1. MQTT Client Driver应用MQTT Client Driver提供了一种获取设备数据的方法,这些来自设备的数据通过MQTT协议发送。许多设备和传感器使用不同的或专有的通信协议。使用MQTT可以统一数据收集和发布。此驱动程序连接到MQTT服务器(代理)并订阅指定的主题。当接收到关于这些主题的更新时,将解析有效负载并将这些数据给到OPC标签,然后可以通过OPC客户端访问这些标签,从而构建有意义的数据模型和仪表板。 MQTT客户机驱动程序支持: 1) 分析有效的JSON数据格式 2) 从MQTT服务器读取数据(当前不支持写入) 3) 身份验证和TLS/SSL加密 4) 使用MQTT 3.1和3.1.1协议连接到MQTT服务器 5) 与ThingWorx平台和其他HMI、SCADA、物联网和基于云的解决方案集成 6) 基于用户管理器和安全策略插件的用户级访问 2.2. IOT Gateway Plug-in应用物联网网关是一个可选功能,允许通过基于行业标准IP的协议将系统和设备标签发布到第三方端点。当已配置标签的值发生更改或满足发布速率时,将以标准JSON格式向相应的第三方端点发送更新,更新的有效负载为标记ID、值、质量和时间戳。 物联网网关提供以下功能: 1) 能够从服务器中的任何数据源(例如驱动程序、插件或系统标记)发布由名称、值、质量和时间戳组成的数据 2) 标准的可读JSON数据格式 3) 通过MQTT和REST客户机代理支持发布 4) 支持从MQTT客户机和REST服务器代理读取数据 5) 可配置的数据收集速率,REST和MQTT客户机的频率为10毫秒,最多为每27.77小时(999999900毫秒)一次 6) 可配置的数据发布速率,REST和MQTT客户机的频率为10毫秒,最多为每27.77小时一次(999999900毫秒) 7) 在所有代理上支持身份验证和TLS/SSL加密 8) 支持基于用户管理器和安全策略插件的用户级访问 9) 用于与不同第三方端点集成的可配置头和负载信息 架构如下图: 3. KEPServerEX中的MQTT配置3.1. MQTT Client Driver 配置3.1.1. 建立通道3.1.2. 建立设备3.1.3. 建立标签标记地址的格式为mqtt_topic+payload_item。 mqtt_主题是要发布所需数据值的主题。 payload_item是有效负载中指向需要数据的特定项的路径。 Topic: vendor/device/data { "s":4, "t":"2017-09-29T19:52:19Z", "q":192, "c":6, "tempint":67.1, "vbatt":3.28, "ai1":8.92, "ai2":0.03, "temp1":46.4, "temp2":68.0 } 3.1.4. Quick Client 查看数据3.2. IOT Gateway Plug-in 中的MQTT Client 配置3.2.1. 建立Agent1) QoS QoS(Quality of Service,QoS)为服务质量, MQTT支持三种不同级别的服务质量为不同场景提供消息可靠性。 选项包括:0(最多一次)、1(至少一次)、2(正好一次)。 2) Format 宽格式:生成一个输出,该输出包含Agent中所有启用的标记。此格式保证每次发布时数据格式一致。宽格式只发送每个标记的最新值,没有数据缓存。如果在使用宽格式时发布失败,则下一次发布是每个标记的最新扫描值。 窄格式:根据已更改值或质量的标记生成输出。此格式有缓存数据,并将所有标记数据更改发布到Endpoint。 3.2.2. 建立Item新建Item时,可以通过Tag Browser 界面浏览选择驱动、插件的标签和系统标签 。 Item属性里有两种发布方式。 1) Only on Data Changes(仅在数据更改时):仅在值更改时发布此标记的数据。 死区:定义触发发布的更改阈值的值更改百分比。 2) 每次扫描:这将强制将此标签的数据发布到Endpoint,即使标签值没有更改。 注意:质量为“坏”的标记发送一个具有该质量的更新,然后在质量恢复为“好”之前不发送更新。 |
|
来自: 昵称32835062 > 《待分类》