0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一套快速实现LoRa转MQTT的一对多通信方案

AGk5_ZLG_zhiyua 来源:ZLG致远电子 2022-12-28 11:39 次阅读

在一个LoRa无线网络中,往往是一个网关南向需要管理多个终端并与其通信,北向通过MQTT协议与服务器通信,本文提供了一套快速实现LoRa转MQTT的一对多通信方案以供参考。

终端与MQTT客户端实现一对多通信简介

终端与网关中的LoRa模组使用广州致远电子股有限公司开发的ZLGLink智能组网协议。在终端与网关进行组网后,网关会为每一个组网终端分配设备地址(在该网络中每个终端的地址都是唯一的),通过设备地址网关与终端可以实现单播与广播通信。

根据终端与网关可以通过设备地址进行通信的机制,在MQTT主题的订阅/发布中添加设备地址信息便可以实现终端与MQTT客户端的一对多通信。 MQTT客户端与网关订阅/发布MQTT主题的配置表,如表1所示。 表1订阅/发布主题配置表

设备 订阅 发布 备注
网关 subtopic/+ pubtopic/{addr} 1.订阅主题使用通配符“+”可订阅不同地址的终端或客户端数据;
2.网关发布使用关键字“addr”可发布不同地址的终端数据;
3.MQTT客户端发布主题使用如“addr0x0001”可发布数据到指定终端;
4.MQTT客户端发布主题使用“addr0xFFFF”可发布数据到所有终端。
MQT客户端 pubtopic/+ 1.subtopic/addr0x0001
2.subtopic/addr0xFFFF

无线转MQTT透传示意图,如图1所示。

poYBAGOrupKARTi4AACQil8s4pY905.jpg
图1无线转MQTT透传示意图

ZLGLink终端与MQTT客户端一对多传输

1. 网关配置

网关配置主要包括协议转换配置,MQTT配置和网关ZLGLink配置三个部分。

1.1 协议转换配置

打开网关的网页配置页面,左边栏选择【协议转换】,在转换选择页面里选择【ZLGlink转MQTT】,然后点击【保存】,网关自动重启,如图2所示。

pYYBAGOruqiAW0dWAABXIrsbfnw819.jpg

图2协议转换选择

1.2 MQTT配置

左边栏选择【网络配置】,在网络配置里选择【MQTT】标签页。

在【基本配置】里配置网关需要连接的MQTT服务器的地址、端口号、MQTT用户名、密码和客户端ID。

在【订阅主题】里配置网关订阅的主题和服务质量。

在【发布主题】里配置网关发布消息的主题和服务质量,如图3所示。

poYBAGOruruAdFzSAAA7Mr_2JP8663.jpg

图3网关MQTT配置

1.3 ZLGLink配置

左边栏选择【ZLGLink配置】标签页。

在【基本配置】里配置ZLGLink的基本配置参数

在【组网控制】里配置使能自组网并允许入网,如图4所示。

pYYBAGOrus2AehXuAAA_SAYuyJA132.jpg

图4网关ZLGLink配置 2. ZLGLink终端配置

使用Wireless Tool上位机配置ZLGLink终端参数,如图5所示。

poYBAGOrut-APyxVAABUF18feGI471.jpg

图5ZLGLink终端配置 3.MQTT客户端配置

MQTT客户端设置MQTT服务器的地址、端口号、MQTT用户名、密码和客户端ID并订阅从机信息。本文以MQTTX客户端上位机做演示,如图6所示。

poYBAGOruvWAI5o7AABYRleMpJI041.jpg

图6MQTT客户端配置 4.成果展示

ZLGLink终端与MQTT客户端进行一对多数据传输结果,如图7所示。

poYBAGOruwmAPMtuAABitFdnOhg640.jpg

图7ZLGLink终端与MQTT客户端通信展示





审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 无线网络
    +关注

    关注

    6

    文章

    1417

    浏览量

    65836
  • MQTT协议
    +关注

    关注

    0

    文章

    96

    浏览量

    5334
  • LoRa模块
    +关注

    关注

    5

    文章

    134

    浏览量

    13856
收藏 人收藏

    评论

    相关推荐

    怎么样使用NRF24L01实现一对通信,最后将信息传回PC

    大家好,我是小白枚。现在想实现个这个功能。用个NRF24L01实现一对
    发表于 06-19 22:41

    蓝牙一对怎么实现

    请教下各位大神。最近想用蓝牙搭建个局域网。想要实现的功能就是设置个蓝牙模块为主机设置 多个从机模块。让从级模块连接主机从而实现
    发表于 05-28 22:20

    nrf24l01进行一对通信怎么实现

    请问有谁实现了nrf24l01进行一对通信的?
    发表于 05-18 23:10

    2.4G模块怎么实现一对通信

    请问原子哥,2.4G模块如何实现一对通信,麻烦解答下,谢谢!!!
    发表于 06-08 04:35

    如何设计并实现一套基于LORA协议的无线传感器网络

    总结下之前做的个项目。项目简介:设计并实现一套基于LORA协议的无线传感器网络,将其运用到某酒厂,
    发表于 12-07 08:11

    如何实现NRF24无线通信一对通信

    如何实现NRF24无线通信一对通信
    发表于 12-17 06:17

    一对聊天系统的实现方案

    可在线编程的电子延期雷管设计_本文实现了基于Android 平台通过蓝牙进行通信一对聊天系统。选择蓝牙作为通信手段是由于蓝牙连接简单.
    发表于 11-18 15:05 4662次阅读
    <b class='flag-5'>一对</b><b class='flag-5'>多</b>聊天系统的<b class='flag-5'>实现</b><b class='flag-5'>方案</b>

    LoRa模块一对通信

    实验简介基于sx1268芯片封装的lora模块,实现个模块发送,其他模块接收的功能,用电脑的串口调试助手显示接收和发送的数据。 实验框图硬件环境3个lora模块3个usb
    发表于 12-13 16:45 19次下载
    <b class='flag-5'>LoRa</b>模块<b class='flag-5'>一对</b><b class='flag-5'>多</b><b class='flag-5'>通信</b>

    【产品应用】GLCOM-NET网关分钟实现LoRaMQTT(初阶版)

    随着无线物联网中数据流量的增加,为了能够有效收集、存储和分析海量的数据,需要将数据交由服务器处理,而简单轻量的MQTT协议则是将数据传输到服务器的首选。本文提供了一套快速实现
    的头像 发表于 12-21 12:05 700次阅读

    【产品应用】GLCOM-NET网关分钟实现LoRaMQTT(高阶版)

    LoRa无线网络中,往往是个网关南向需要管理多个终端并与其通信,北向通过MQTT协议与服务器通信
    的头像 发表于 12-28 11:40 607次阅读

    【产品应用】GLCOM-NET网关分钟实现LoRaMQTT(高阶版)

    LoRa无线网络中,往往是个网关南向需要管理多个终端并与其通信,北向通过MQTT协议与服务器通信
    的头像 发表于 12-28 11:39 2163次阅读

    一对一一对的eHLK-L06 LoRa模块通信解决方案

    HLK-L06是海凌科推出的第三款 LoRa模块,对比前面两款LoRa模块HLK-L02、HLK-L05,其特点在于单价更低、性价比更高、同时实现一对一
    发表于 03-27 14:37 2012次阅读

    【产品应用】GLCOM-NET网关分钟实现LoRaMQTT(初阶版)

    随着无线物联网中数据流量的增加,为了能够有效收集、存储和分析海量的数据,需要将数据交由服务器处理,而简单轻量的MQTT协议则是将数据传输到服务器的首选。本文提供了一套快速实现
    的头像 发表于 01-05 14:17 859次阅读
    【产品应用】GLCOM-NET网关<b class='flag-5'>一</b>分钟<b class='flag-5'>实现</b><b class='flag-5'>LoRa</b><b class='flag-5'>转</b><b class='flag-5'>MQTT</b>(初阶版)

    【产品应用】GLCOM-NET网关分钟实现LoRaMQTT(高阶版)

    LoRa无线网络中,往往是个网关南向需要管理多个终端并与其通信,北向通过MQTT协议与服务器通信
    的头像 发表于 01-13 09:30 549次阅读
    【产品应用】GLCOM-NET网关<b class='flag-5'>一</b>分钟<b class='flag-5'>实现</b><b class='flag-5'>LoRa</b><b class='flag-5'>转</b><b class='flag-5'>MQTT</b>(高阶版)

    如何实现一套linux进程间通信的机制

    我们知道linux的进程的间通信的组件有管道,消息队列,socket, 信号量,共享内存等。但是我们如果自己实现一套进程间通信的机制的话,要怎么做?了解android 开发的可能会知道
    的头像 发表于 11-10 14:56 593次阅读
    如何<b class='flag-5'>实现</b><b class='flag-5'>一套</b>linux进程间<b class='flag-5'>通信</b>的机制