当前位置: 首页 > news >正文

4G模块 ML307A通过MQTT协议连接到阿里云

命令说明

基础AT指令
ATi显示产品的标志信息
AT+CIMI查询IMSI
AT+CGSN查询产品序列号
AT+CPIN查询卡状态
AT+CSQ查询信号强度
AT+CGATT查询当前PS域状态
AT+CREG查询GPRS注册状态
AT+CEREG查询4G注册状态
AT+CGPADDR查询PDP地址
AT+CMGF选择短信格式
AT+CMGS发送短信
MQTT配置指令
AT+MQTTCFG 配置连接参数
AT+MQTTCONN 连接
AT+MQTTSUB 订阅主题
AT+MQTTUNSUB 取消订阅
AT+MQTTPUB 发布消息
AT+MQTTREAD 读取消息
AT+MQTTSTATE 查询状态
AT+MQTTDISC 主动断开连接

2.流程

阿里云-计算,为了无法计算的价值https://www.aliyun.com/

第一步:配置阿里云平台

登录个人账号后,在系统界面点击进入控制台,于功能菜单中选择 “物联网平台” 模块,进入平台页面后点击“公共实例”选项,即可跳转至公共实例的管理后台界面。

在页面左侧导航栏中,沿着层级路径依次点击「设备管理」选项,进入二级菜单后找到并点击「产品」,在产品管理界面中点击「创建产品」按钮,随后跳转至产品创建页面,在此处完成产品名称等基本信息的配置填写。

在产品列表找到已创建产品,点击对应产品的查看按钮,进入产品开发详情页。

在产品开发详情页,选择[功能定义]→[前往编辑草稿]

可选自定义功能,按需填写功能名称、数据类型、标识符等信息。

编辑草稿完,选择[发布上线]。

在页面左侧导航栏中,先找到 “设备管理” 分类并展开,点击其下的 “设备” 选项进入设备管理页面,接着点击页面中的 “添加设备” 按钮,在弹出的添加设备窗口中填写设备名称、设备类型、所属产品等相关信息。

经上述步骤,阿里云平台相关配置已全部完成。

第二步:ML307A模块接线

ML307A模块-----USB转TTL

VCC-----5V

GND-----GND

TX-----RX

RX-----TX

此模块需插入电话卡方可正常使用。

实物接线

第三步:连接阿里云云平台

将USB转TTL模块接入设备,打开串口调试助手,选定对应通信端口,设置波特率为115200。之后通过发送AT指令,即可实现设备与阿里云平台的连接,完成数据的上传与数据下发操作。

AT命令流程及命令结果:

1.查询模块信息

发送指令:ATI

说明:查询模块型号、固件版本等基础信息。

预期响应:CMCC

ML307A

ML307A-DSLN-MTSH1S00

OK

2.查询国际移动用户识别码

发送指令:AT+CIMI

说明:获取SIM卡的国际移动用户识别码,用于唯一标识移动用户。

预期响应:460023606806489

OK

3.查询设备序列号

发送指令:AT+CGSN

说明:获取移动设备的国际移动设备识别码(IMEI)或序列号,用于唯一标识设备。

预期响应:20209M0029748J002114

OK

4.查询PIN码状态

发送指令:AT+CPIN?

说明:查询SIM卡的PIN码状态,判断是否需要输入PIN码解锁。

预期响应:+CPIN:READY  OK(表示PIN码已解锁,状态正常)

5.查询信号强度

发送指令:AT+CSQ

说明:获取当前网络信号强度,数值越大信号越好。

预期响应:+CSQ:22,99   OK(示例,前值为信号强度值,范围0-31)

6.查询当前PS域状态

发送指令:AT+CGATT?

说明:查询设备是否已附着到GPRS网络,附着成功才能建立数据连接。

预期响应:+CGATT:1  OK(1表示已附着,0表示未附着)

7.查询GPRS域注册状态

发送指令:AT+CREG?

说明:查询网络注册状态。

预期响应:+CREG:0,6  OK

8.查询EPS域注册状态

发送指令:AT+CEREG?

说明:查询设备在演进分组系统(EPS)域的网络注册状态,用于4G等分组域服务。

预期响应:+CEREG:0,1  OK(示例,后值1表示已注册到本地网络)

9.配置MQTT协议版本

发送指令:AT+MQTTCFG="version",4

说明:设置MQTT客户端使用MQTTv3.1.1协议版本。

预期响应:OK

10.建立MQTT连接

发送指令:

AT+MQTTCONN=0,"hxffngKIBke.iot-as-mqtt.cn-shanghai.aliyuncs.com",1883,"hxffngKIBke.Test|securemode=3,signmethod=hmacsha1,timestamp=1751339070|","Test&hxffngKIBke","84297ce7e265491701621b69449f8c29f007cf33"

说明:通过客户端连接到指定MQTT服务器,连接超时60秒,清除会话标志为1,携带用户名和加密签名参数。其中,"hxffngKIBke.iot-as-mqtt.cn-shanghai.aliyuncs.com"为MqttHost URL,"hxffngKIBke.Test|securemode=3,signmethod=hmacsha1,timestamp=1751339070|"为客户端ID,"Test&hxffngKIBke"为username用户名,

"84297ce7e265491701621b69449f8c29f007cf33"为password密钥,该参数均为Token获取。

预期响应:OK

+MQTTURC: "conn",0,0

其中Token获取:点击设备的“查看详情”界面后,找到“DeviceSecret”字段并点击其对应的“查看”选项,获取相关密钥信息。随后,在生成Token时需填入相关参数。Token获取连接在文章末。

11.订阅MQTT主题

发送指令:

AT+MQTTSUB=0,"/sys/hxffngKIBke/Test/thing/service/property/set",2

说明:MQTT客户端订阅主题"/sys/hxffngKIBke/Test/thing/service/property/set",QoS等级为2,其中hxffngKIBke为ProductKey,Test为设备名称。

预期响应:+MQTTSUB: 0,57729

OK

+MQTTURC: "suback",0,57729,1

12.发布MQTT消息

发送指令:

AT+MQTTPUB=0,"/sys/hxffngKIBke/Test/thing/event/property/post",0,0,0,42,"{"id":"123","params":{"temperature":22.8}}"

说明:MQTT客户端向主题"/sys/hxffngKIBke/Test/thing/event/property/post"发布消息,QoS数据长度为42,发送数据:{"id":"123","params":{"temperature":22.8}}

最终响应:+MQTTPUB: 0,57730,93

OK

阿里云平台数据交互操作:

数据上报成功后,可通过阿里云平台实时查看数据:

在平台控制台找到已创建的设备后,点击“查看”进入设备详情页,再点击“物模型数据”即可直观查看设备成功上报的实时数据。

平台数据下发操作

在左侧导航栏中选择【监控运维】→【在线调试】,然后选择需要调试的设备。

在串口调试助手中,可实时监控设备接收数据的状态:

总结命令流程

ATi
AT+CIMI
AT+CGSN
AT+CPIN?
AT+CSQ
AT+CGATT?
AT+CREG?
AT+CEREG?
AT+MQTTCFG="version",4
AT+MQTTCONN=0,"hxffngKIBke.iot-as-mqtt.cn-shanghai.aliyuncs.com",1883,"hxffngKIBke.Test|securemode=3,signmethod=hmacsha1,timestamp=1751339070|","Test&hxffngKIBke","84297ce7e265491701621b69449f8c29f007cf33"
AT+MQTTSUB=0,"/sys/hxffngKIBke/Test/thing/service/property/set",2
AT+MQTTPUB=0,"/sys/hxffngKIBke/Test/thing/event/property/post",0,0,0,42,"{"id":"123","params":{"temperature":22.8}}"
Token软件及获取Token密钥方式链接: https://pan.baidu.com/s/1FMKOybgvJ_rniJfiSsCUIg?pwd=yths 提取码: yths
http://www.dtcms.com/a/328662.html

相关文章:

  • 数据科学与爬虫技术学习笔记
  • 基于机器学习的自动驾驶汽车新型失效运行方法
  • Win11和Mac设置环境变量
  • 【汽车标定数据】动态优先级线程池在异步多文件解析中的应用
  • 2022 年全国硕士研究生招生考试真题笔记
  • 深度学习赋能汽车制造缺陷检测
  • “我店模式”:零售转型中的场景化突围
  • 美团搜索推荐统一Agent之交互协议与多Agent协同
  • 【计算机网络 | 第6篇】计算机体系结构与参考模型
  • go学习笔记-匿名函数
  • 算法题笔记
  • Java连接MySQL数据库
  • Socket 套接字常用方法
  • Java多源AI接口融合框架:动态模型切换与智能路由实战
  • pybind11绑定C++项目心得
  • Sentinel 和 Hystrix
  • MySQL 存储过程终止执行的方法
  • 力扣热题100------279.完全平方数
  • XGBoost 的适用场景以及与 CNN、LSTM 的区别
  • AQS的原理与ReentrantLock的关系
  • 基于Rocky Linux 9的容器化部署方案,使用Alpine镜像实现轻量化
  • 企业高性能web服务器(3)
  • Linux学习-应用软件编程(文件IO)
  • 【科研绘图系列】R语言绘制特定区域颜色标记散点图
  • Pytest项目_day13(usefixture方法、params、ids)
  • 【不动依赖】Kali Linux 2025.2 中安装mongosh
  • 【数据结构】二叉树详细解析
  • 安路Anlogic FPGA下载器的驱动安装与测试教程
  • C++联合体的定义
  • 数据结构 二叉树(2)堆