USR-G805p MQTT连接阿里云格式化输出示例
一、资料下载
USR-G805p 说明书http://www.ybljg.com/Download/1163.html
USR-G805p 规格书 http://www.ybljg.com/Download/1164.html
【PC端调试工具】网络调试助手 串口调试助手二合一http://www.ybljg.com/Download/27.html
MQTTfx软件可以百度自行下载。
备注:MQTT功能可以参考USR-DR504/514 边缘计算+MQTT使用资料包:http://www.ybljg.com/Download/990.html
二、硬件连接
1、所需物品
USR-G805p 产品 1台
12V电源适配器 1条
USB-RS485串口线 1条
笔记本电脑 1台
2、硬件连接
USR-G805p的485串口接USB-RS485串口线到电脑USB口,接好4G天线,插好外置SIM卡,然后产品接12V电源适配器,上电。USR-G805p的LAN1网口用网线和电脑直连,电脑获取同网段IP。
3、查看端口号
电脑鼠标点击计算机管理,右击,点开设备管理器,点击端口,查看接USR-G805p的USB-RS485串口线COM口号,COM10。
三、阿里云设置
1、登陆阿里云平台,找到物联网平台,这里用的连接公共实例
(1)登陆阿里云平台
(2)找到物联网平台
(3)开通连接公共实例
2、创建产品
(1)点击产品,点击创建产品
(2)新建产品信息,依次填写:
产品名称举例test——所属品类选择自定义品类——节点类型选择直连设备——联网与数据联网方式选择蜂窝(2G/3G/4G/5G)——数据格式选择透传/自定义——认证方式选择设备秘钥——点击确定,完成创建产品。
3、添加设备
(1)产品创建成功后,添加设备。点击设备,点击添加设备,产品名举例填test,DeviceName填USR-G805p,备注名称填MQTT,点击确认。
(2)添加完设备,如下图展示,设备状态是未激活,等设置完USR-G805p的MQTT连接阿里云参数之后,设备状态才显示在线。
4、查看产品Topic
(1)点击产品,点击查看
(2)点击Topic类列表,点击自定义Topic,找到订阅和发布
设置USR-G805p的MQTT参数,需要按照以下方法设置订阅和A 发布主题。
5、查看设备证书内容,生成USR-G805p连接阿里云的用户名
(1)点击设备,点击查看,再点击DeviceSecret后面的查看。
展示设备证书:
ProductKey: i4u4VIKvRXf
DeviceName: USR-G805p
DeviceSecret: c0121c506936fd0399a598dd056fd2e5
(2)转换USR-G805p连接阿里云的用户名:
用户名: 由设备名 DeviceName、符号(&)和产品 ProductKey 组成。
固定格式:${YourDeviceName}&${YourPrductKey}。
完整示例如:device&alxxxxxxxxxx。
USR-G805p连接阿里云的用户名:USR-G805p&i4u4VIKvRXf
6、查看账号和地域,生成USR-G805p连接阿里云的服务器地址
(1)查看使用的阿里云账号aliyun9810869345
(2)根据地域名称华东2(上海)查询地域ID:cn-shanghai
(3)转换USR-G805p连接阿里云的服务器地址:
格式:${YourProductKey}.iot-as-mqtt.${region}.aliyuncs.com。
其中,${region}需替换为您物联网平台服务所在地域的代码。地域代码,请参见地域和可用区。如:
alxxxxxxxxxx.iot-as-mqtt.cn-shanghai.aliyuncs.com。
USR-G805p连接阿里云的服务器地;aliyun9810869345.iot-as-mqtt.cn-shanghai.aliyuncs.com
USR-G805p连接阿里云的端口用1883
7、使用MQTT签名工具,生成USR-G805p连接阿里云的密码
(1)打开MQTT签名工具
下载USR-DR504/514 边缘计算+MQTT使用资料包,解压缩,找到MQTT签名工具
(2)密码由参数值拼接加密而成
可以使用物联网平台提供的生成工具自动生成 Password,也可以手动生成 Password。
单击下载 Password 生成小工具。解压缩下载包后,双击 sign 文件,即可使用。
➢ 使用 Password 生成小工具的输入参数:
▪ productKey:设备所属产品 Key。可在控制台设备详情页查看。
▪ deviceName:设备名称。可在控制台设备详情页查看。
▪ deviceSecret:设备密钥。可在控制台设备详情页查看。
▪ timestamp:(可选)时间戳。
▪ clientId:设备的 ID 信息,与 Client ID 中${clientId}一致。
▪ method:选择签名算法类型,与 Client ID 中 signmethod 确定的加密方法一致。
(3)转换USR-G805p连接阿里云的密码
填入设备信息:
▪ productKey设备所属产品 Key:i4u4VIKvRXf
▪ deviceName设备名称:USR-G805p
▪ deviceSecret设备密钥:c0121c506936fd0399a598dd056fd2e5
▪ timestamp(可选)时间戳:
▪ clientId设备的 ID 信息:1234567890
▪ method选择签名算法类型:hmacsha1
签名结果:DED8DE3BC1CE8B7591F7648D27E9967395BB4BBD
USR-G805p连接阿里云的的密码:DED8DE3BC1CE8B7591F7648D27E9967395BB4BBD
8、生成USR-G805p连接阿里云的客户端ID
(1)Client ID格式:
生成 mqttClientId,用于 MQTT 的底层协议报文。
格式固定:${clientId}|securemode=3,signmethod=hmacsha1|。
完整示例:12345|securemode=3,signmethod=hmacsha1|。
其中,
${clientId}为设备的 ID 信息。可取任意值,长度在 64 字符以内。建议使用设备的 MAC 地址或 SN
码。
securemode 为安全模式,TCP 直连模式设置为 securemode=3,TLS 直连为 securemode=2。
signmethod 为算法类型,支持 hmacmd5 和 hmacsha1。
(2)转换USR-G805p连接阿里云的Client ID
客户端ID:1234567890|securemode=3,signmethod=hmacsha1|
四、USR-G805p网页参数设置
1、浏览器输入192.168.1.1登陆USR-G806p网页,密码是admin。
2、设置工作模式
网页点击DTU,点击基本参数,工作模式选择MQTT模式。点击应用。
3、串口参数
网页点击DTU,点击基本参数,串口参数保持默认,实际应用接实际485串口设备的时候,需要和所接485串口设备的串口参数一致。点击应用。
4、MQTT配置
(1)网页点击DTU,点击MQTT,服务配置
MQTT地址和端口填要连接的MQTT服务器的地址aliyun9810869345.iot-as-mqtt.cn-shanghai.aliyuncs.com,端口1883。
用户名和密码填MQTT服务器的用户名USR-G805p&i4u4VIKvRXf
密码DED8DE3BC1CE8B7591F7648D27E9967395BB4BBD
数据格式选择格式化输出。
客户端ID为1234567890|securemode=3,signmethod=hmacsha1|,避免和其他MQTT客户端ID重复。
(2)A主题,发布填写/i4u4VIKvRXf/USR-G805p/user/update。
(3)点击应用。
5、主题配置,添加普通订阅主题
网页点击MQTT,点击主题配置,主题ID设置1,主题名称/i4u4VIKvRXf/USR-G805p/user/get,主题Qos填0。点击应用。
6、网页重启
网页点击系统,点击基础设置,点击重启设备。
五、MQTT连接阿里云功能调试
1、查看阿里云设备状态在线
USR-G805p 设置完MQTT连接阿里云参数,联网正常,在阿里云平台可以看到设备状态是在线。
2、数据订阅测试(透传输出)
(2)点击Topic列表,点击发布消息
(3)打开一个串口助手,串口参数设置和USR-G805p串口参数一致,做串口数据接收和发送。
(4)使用阿里云平台发布的消息1234567890,被USR-G805p订阅到,并通过USR-G805p串口发给串口端,数据格式是格式化输出,串口助手接收带格式的数据/i4u4VIKvRXf/USR-G805p/user/get,1234567890
3、数据发布测试
(1)点击设备,点击日志服务
通过串口向发服务器更新设备状态时,需遵循如下数据格式:
主题名(最多100字节) | , | 服务等级 | , | 数据 |
示例:/i4u4VIKvRXf/USR-G805p/user/update,0,1234567890
(注:“,”为英文输入法下的格式)
(3)USR-G805p使用串口助手发送数据/i4u4VIKvRXf/USR-G805p/user/update,0,1234567890,发送完成之后,我们在阿里云平台可以通过日志服务,点击查看,看到USR-G805p串口发到阿里云的数据1234567890。
编写人:金志方 编写日期:2024-07-12
审核人:金志方 审核日期:2024-07-12
订正版本:V1.0 订正内容:初稿