Unit MQTT
SKU:U129
描述
Unit MQTT 是一款以太网 MQTT 通信模块,内嵌 W5500 以太网芯片,采用 UART 通信接口 ( AT 指令控制 ),集成 RJ45 自适应 10 / 100M 网口。支持 4x Topic 订阅。具备极低的网络延迟与高稳定性,适合应用于各种工业自动化、安防监控系统、自动测控系统、设备数据上云应用。
产品特性
- 内嵌W5500以太网芯片
- RJ45网口 10/100Mbps
- 以太网MQTT通信
- 支持4x Topic订阅
- 低延迟
- 开发方式:
- AT指令,UART: 9600bps默认
- 开发平台: UIFlow,Arduino
包含
- 1 x Unit MQTT
- 1 x HY2.0-4P Grove 连接线 (20cm)
应用
规格参数
规格 | 参数 |
模组处理器 | ARM Cortex-M3 |
通信接口 | UART: baud 9600bps 8N1 默认 |
MQTT | 支持4x Topic订阅,不支持MQTTS |
网口 | RJ45自适应10/100M网口 |
延时 | 延迟`10ms |
待机工作电流 | 40.4mA |
净重 | 22.4g |
毛重 | 27.2g |
产品尺寸 | 72 x 26 x 19mm |
包装尺寸 | 73 x 35 x 20mm |
管脚映射
Unit MQTT
HY2.0-4P | Black | Red | Yellow | White |
PORT.C | GND | 5V | UART_TX | UART_RX |
尺寸图
软件开发
Arduino
UiFlow2
通信协议
设置类 AT 指令
AT+NETMAC=
MAC 地址
- 命令说明: 设置模块的 MAC 地址
- MAC 地址必须是以下格式: XX-XX-XX-XX-XX-XX
AT+NETMAC=12-34-56-78-90-AB
+NETMAC=OK
AT+NETSTATICIP=
IP 地址,子网掩码,网关
- 命令说明: 设置模块的静态 IP 地址 (AT+NETSTATICIP=IP 地址,子网掩码,网关)
注意:
当 DHCP 功能开启时,静态 IP 的设置将不会被启用
IP 地址 (文本),表示本地的 IP 地址,可以使 IP 地址或者域名
子网掩码 (文本),必须是 IP 地址格式
网关 (文本),必须是 IP 地址格式
AT+NETSTATICIP="192.168.0.101","255.255.255.0","192.168.0.1"
+NETSTATICIP=OK
AT+NETDHCPEN=
1/0
- 命令说明: 启动/关闭 DHCP 功能 1/0
1:开启 DHCP 功能
0:关闭 DHCP 功能
AT+NETDHCPEN=1
+NETDHCPEN=OK
AT+MQCLIENTID=
客户端名称
- 命令说明: 设置 MQTT 服务器
客户端名称
(文本) MQTT 客户端名称
AT+MQCLIENTID="CLIENT ID"
+MQCLIENTID=OK
AT+MQKEEP=
心跳时长
- 命令说明: 设置连接到 MQTT 服务器的心跳时间长度
心跳时长
自动发送 PINGREQ 包的时间间隔,单位:秒,范围 5~300
AT+MQKEEP=500
+MQKEEP=OK
AT+MQSUBSCRIBE=
主题序号**,1/0,主题名称,**服务质量
- 命令说明: 设置向 MQTT 服务器订阅的主题,本模块可以同时向服务器订阅 4 个主题,通过该命令修改订阅主题后不会立即订阅主题或者取消订阅,于下一次连接到 MQTT 时生效
主题序号数字 1-4
1/01 开启该主题的订阅,0 关闭改主题的订阅,当改参数为 0 时,后面两个参数必须为空
主题名称 (文本) 服务质量必须是 0,1,2 其中一个
AT+MQSUBSCRIBE=1,1,"sub",0
+MQSUBSCRIBE=OK
AT+MQSERVER=
服务器地址**,**服务器端口
- 命令说明: 设置 MQTT 服务器的地址和端口号
服务器地址
(文本),可以使 IP 地址或者域名
服务器端口数字 0~65535
AT+MQSERVER="xxx.mqttserver.com",1883
+MQSERVER=OK
AT+MQUSERPWD=
用户名**,**密码
- 命令说明:
设置用户名和密码用户名 (文本) MQTT 用户名
密码 (文本) MQTT 登陆密码
AT+MQUSERPWD="user","123456"
+MQUSERPWD=OK
AT+MQAUTO=
1/0
- 命令说明:
设置上电时是否直接连接到服务器
1/00:上电时不直接启动连接,1:上电时根据配置好的参数直接启动连接
AT+MQAUTO=1
+MQAUTO=OK
AT+MQRESETCFG
AT+MQRESETCFG
+MQRESETCFG=OK
AT+MQPUBLISH=
主题**,消息,**服务质量
- 命令说明: 发布 MQTT 消息
主题 (文本),要发布的消息的主题名称
消息 (文本),要发布的消息,该参数允许的最大长度为 1000
服务质量QOS,必须是 0,1,2,可以选择不发送该参数,此时 QOS 为 0
AT+BAUD=
波特率
- 命令说明: 设置串口波特率
波特率波特率只能是以下的数值/4800/9600/19200/34800/115200/230400
AT+BAUD=115200
+BAUD=OK
AT+SAVE
- 命令说明: 设置保存参数,在配置完成MQTT参数后,需要执行SAVE命令,并且执行一次RESET软复位,配置才会生效
AT+SAVE
+SAVE=OK
AT+RESET
- 命令说明: 设置模块软复位,在配置完成MQTT参数后,需要执行SAVE命令,并且执行一次RESET软复位,配置才会生效
AT+RESET
+RESET=OK
查询类 AT 指令
AT
AT+MQSUBSCRIBE=
主题序号**?**
- 命令说明: 查询订阅的主题,响应: +MQSUBSCRIBE=OK:主题序号,开启/关闭,主题名称,服务质量等级
主题序号只能是 1~4 其中一个
开启/关闭为 1 时表示当前订阅开启,为 0 是表示当订阅无效
主题名称
服务等级质量只能是 0,1,2 其中一个表示 MQTT 服务质量中的 QOS0,QOS1,QOS2
AT+MQSUBSCRIBE=1?
+MQSUBSCRIBE=OK:1,1,"/topic",0
AT+MQAUTO?
- 命令说明: 查询上电时是否直接启动连接,响应: +MQAUTO=OK:开启/关闭0:上电时不直接启动连接,1:上电时根据配置好的参数直接启动连接
AT+MQAUTO?
+MQAUTO=OK:1
AT+NETMAC?
- 命令说明: 查询模块当前的 MAC 地址,响应: +NETMAC=OK:MAC 地址 格式为:XX-XX-XX-XX-XX-XX
AT+NETMAC?
+NETMAC=OK:12-34-56-78-90-AB
AT+NETSTATICIP?
- 命令说明: 查询模块的静态 IP 设置,响应:+NETSTATICIP=OK:静态 IP 地址,子网掩码,网关
AT+NETSTATICIP?
+NETSTATICIP=OK:"192.168.1.2","255.255.255.0","192.168.1.1"
AT+NETDHCPEN?
- 命令说明: 查询 DHCP 功能启动/关闭,响应: +NETDHCPEN=OK:启动/关闭 1:开启 DHCP 功能 , 0:关闭 DHCP 功能
AT+NETDHCPEN?
+NETDHCPEN=OK:1
AT+MQCLIENTID?
- 命令说明: 查看 MQTT 的客户端名称,响应:+MQCLIENTID=OK:客户端 IP
AT+MQCLIENTID?
+MQCLIENTID=OK:"clientID"
AT+MQSERVER?
- 命令说明: 查询 MQTT 服务器地址和端口号,响应:+MQSERVER=OK:服务器地址,服务器端口号
AT+MQSERVER?
+MQSERVER=OK:"192.168.1.55",1883
AT+MQUSERPWD?
- 命令说明: 查询已经设置的 MQTT 服务器的用户名和密码,响应:+MQUSERPWD=OK:用户名,密码
AT+MQUSERPWD?
+MQUSERPWD=OK:"USER","123456"
AT+MQKEEP?
- 命令说明: 查询连接到 MQTT 服务器的心跳间隔时间长度,响应:+MQKEEP=OK:心跳间隔
AT+MQKEEP?
+MQKEEP=OK:60
AT+BAUD?
- 命令说明: 查询串口的波特率,响应: +BAUD=OK:波特率 默认波特率为 9600
AT+BAUD?
+BAUD=OK:9600
AT+VERSION?
- 命令说明: 查询当前版本号,响应:+VERSION=OK:当前固件版本号
AT+VERSION?
+VERSION=OK:1.0
AT+MQSTATUS?
- 命令说明:
查询 MQTT 连接中/连接已经断开
响应:+MQSTATUS=OK:连接状态
AT+MQSTATUS?
+MQSTATUS=OK:1
AT+NETIP?
- 命令说明: 查询模块的当前实际的 IP 地址
响应:+NETIP=OK:IP 地址,子网掩码,网关,DNS 服务器地址
AT+NETIP?
+NETIP=OK:"192.168.2.121","255.255.255.0","192.168.2.1","192.168.2.1"
主动上发的 AT 指令
+NETUNCONNECT
+MQUNCONNECT
+MQCONNECT
+MQRECV:**主题**,**长度**,**消息**
指令错误时返回的错误代码
ERROR:Error Param
ERROR:Error Param Num
ERROR:Parma is too long
ERROR:Unconnected
ERROR:MQTT Connect Fail
ERROR:MQTT Publish Fail
相关视频