产品
有人云 — 物联网云平台 零编程,组态拖拽即可实现远程监控。同时支持私有部署,拥有属于自己的软硬件一体化方案
200
+
私有云项目
数据本地化
业务个性化
10
+
万 公有云注册用户
80%公有云功能免费
付费VIP享自定义品牌服务
有人云官网
有人智造 — ODM/EMS 依托自动化、智能化、柔性化、透明化的智能工厂,
提供代研、代料、代工一站式OEM/ODM服务
有人智造官网
有人智能 — 解决方案 打包提供云、管、边、端整体解决方案
从问题诊断、方案设计,到实施落地、系统运维
有人智能官网
支持中心
USR-G771(轻边缘)连接MQTT服务器透传上报示例
2024-07-03



USR-G771(轻边缘)连接MQTT服务器透传上报示例

一、资料下载

USR-G771&G780s使用说明书(轻边缘)链接:https://www.usr.cn/Download/1435.html

USR-G771&G780s标准AT指令集(轻边缘)链接:https://www.usr.cn/Download/1437.html

USR-CAT1 设置软件(轻边缘)链接:https://www.usr.cn/Download/1438.html

MQTT调试软件comnet_bin软件可以百度自行下载

MODBUS SLAVE软件可以百度自行下载

二、硬件连接

1、所需物品

USR-G771 产品 1台

12V电源适配器 1个

USB-RS485串口线 1条

笔记本电脑 1台

2、硬件连接

USR-G771 的485串口接USB-RS485串口线到电脑USB口,然后产品接12V电源适配器上电。

电脑下载并打开 USR-CAT1 设置软件(轻边缘),安装MODBUS SLAVE软件、 MQTT调试软件comnet_bin软件。

3、查看端口号

电脑鼠标点击计算机管理,右击,点开设备管理器,点击端口,查看接USR-G771的USB-RS485串口线COM口号,COM10。

三、USR-G771参数设置

1、打开USR-G771的设置软件

2、点击进入配置状态

3、点击获取当前参数,查询固件版本号

备注:固件VER:V2.4.01.000000.0000及以上版本支持Modbus轮询。

4、配置通道一参数

通道一:

工作模式:MQTT模式

MQTTClient连接:勾选通用MQTT

服务器地址和端口:填写要连接的MQTT服务器地址和端口

用户名和密码:填写要连接的MQTT服务器的用户名和密码

客户端ID:设置不要和MQTTfx及其他MQTT客户端一样。这里自定义写了1234567890。

MQTT串口传输模式设置:透传模式

订阅主题:勾选主题1,设置/USR-G771/get

推送主题:勾选主题1,设置/USR-G771/update

5、配置MODBUS轮询采集参数

MODBUS轮询采集:

启动Modbus轮询:勾选

轮询上报方式:选择透传上报

Modbus轮询采集点位配置界面:添加3个变量。

No1 变量名1,从机地址1,功能码(保持寄存器功能码03),寄存器地址0,数据类型16位无符号,倍率1,上报方式(直接上报)

No1 变量名2,从机地址1,功能码(保持寄存器功能码03),寄存器地址1,数据类型16位无符号,倍率1,上报方式(直接上报)

No1 变量名1,从机地址1,功能码(保持寄存器功能码03),寄存器地址2,数据类型16位无符号,倍率1,上报方式(直接上报)

备注:

(1)这里添加的从机寄存器地址和变量,需要和MODBUS SLAVE模拟的串口从机寄存器地址和变量保持一致。

(2)使用JSON下发命令,里面的变量名需要和这里的变量名一一对应。

6、点击设置并保存所有参数

四、MQTT调试软件comnet_bin参数设置

1、打开MQTT调试软件comnet_bin

2、配置参数做另一个MQTT客户端

(1)点击网络,点击下面的MQTT

(2)服务器地址填和USR-G771连接的同一个MQTT服务器地址

(3)端口填MQTT服务器端口1883

(4)客户端ID这里是MQTT软件做客户端的ID,保持默认,注意和USR-G771的客户端ID不要一样,如果相同会冲突。

(5)用户名和密码,输入MQTT服务器的用户名,输入MQTT服务器的密码。

(6)订阅主题填/USR-G771/update,发布主题填/USR-G771/get。

3、所有参数设置完成之后,勾选启用

4、点击订阅主题

五、通讯测试

1、MODBUS SLAVE软件设置

(1)点击Setup,Slave ID从机地址用1,Function功能码用03,Address寄存器起始地址用0,Quantity寄存器地址数量用3。

就是模拟从机地址1,采集3个寄存器地址0、地址1、地址2的数据。

(2)点击Connection,选择串口,对应USR-G771所接USB-RS485串口线的COM口号,串口参数和USR-G771串口参数保持一致。 Mode选择RTU,模拟MODBUS RTU协议串口。

(3)寄存器地址0填数据10,寄存器地址1填数据20,寄存器地址3填数据30。

2、透传上报,MQTT软件订阅

网关会按照设定的轮询规则,主动采集从机的数据,并以透传格式上报数据给MQTT服务器。需要接收数据的MQTT客户端订阅联网模块的发布主题就能收到设备的上报信息。

寄存器地址0数据十进制10对应十六进制0A

寄存器地址1数据十进制20对应十六进制14

寄存器地址2数据十进制30对应十六进制1E

3、MQTT软件推送,Json下发命令

MQTT服务器可以往联网模块订阅的主题发送命令来实现交互,例如往从机写数据。可以看到slave从机收到指令进行了回复,同时参数发生了改变。

(1)Json下发命令如下,去修改从机1,寄存器地址0的数据更新100,寄存器地址1的数据更新200,寄存器地址3的数据更新300。

{

"rw_prot": {

"Ver": "1.0.1",

"dir": "down",

"id": "00601924061200038538",

"r_data": [{

"name": "1"

},

{

"name": "2"

},

{

"name": "3"

} ] ,

"w_data": [{

"name": "1",

"value": "100"

},

{

"name": "2",

"value": "200"

},

{

"name": "3",

"value": "300"

} ]

}

}

(2)MQTT软件,在下面的发送框输入Json下发命令,点击发布消息,发送给USR-G771串口,往从机写数据。可以看到slave从机收到指令进行了回复,同时参数发生了改变。寄存器地址0写数据100,寄存器地址1写数据200,寄存器地址2写数据300。

(3)更新后的数据,再上报采集。寄存器地址0写数据100,寄存器地址1写数据200,寄存器地址2写数据300。

4、使用JSON下发命令,id是信息ID号,由服务器下发,设备回复保持一致即可。如服务器不下发, 则忽略。上报中,默认采用设备SN作为ID。




编写人:金志方 编写日期:2024-07-03

审核人:金志方 审核日期:2024-07-03

订正版本:V1.0 订正内容:初稿    


工作日每天: 14:00~17:00
抖音、天猫 "有人旗舰店"

关注有人微信公众号
了解更多信息