命令说明

基础AT指令
ATi显示产品的标志信息
AT+CIMI查询IMSI
AT+CICCID从SIM卡读取ICCID
AT+CGSN查询产品序列号
AT+CPIN查询卡状态
AT+CSQ查询信号强度
AT+CGATT查询当前PS域状态
AT+CREG查询GPRS注册状态
AT+CEREG查询4G注册状态
AT+CGPADDR查询PDP地址
AT+CMGF选择短信格式
AT+CMGS发送短信
MQTT配置指令
AT+CMQTTSTART启动MQTT服务
AT+CMQTTACCQ申请MQTT客户端
AT+CMQTTCFG配置MQTT主题参数
AT+CMQTTCONNECT连接客户端到MQTT服务器.
AT+CMQTTSUB订阅主题
AT+CMQTTUNSUB退订主题
AT+CMQTTPUB发布消息
AT+CMQTTDISC客户端断开与MQTT服务器的连接

2.流程

第一步:配置华为云平台

访问华为云官网(共建智能世界云底座-华为云),输入账号密码登录。

点击页面右上角“控制台”,进入管理后台。在控制台左上角的服务列表中,搜索“设备接入IoTDA”并点击进入。

在IoTDA服务页面点击“实例”,进入后台管理界面。

在左侧导航栏依次选择[产品]→[创建产品]。填写产品名称(如“智能传感器”)、所属资源空间、协议类型(如MQTT)、设备类型(自定义或标准品类)等。

在产品列表找到已创建产品,点击详情,进入产品开发详情页。

点击“自定义模型”,填写模型基本信息(如模型名称、描述)。

添加完之后,在该界面点击新增属性,填写属性名称(如“温度”)、数据类型(int/float/string 等)、访问权限(可读/可写)、单位(℃)等,点击“确定”。

点击“新增命令”,配置命令名称(如“设置温度阈值”)、参数列表(如阈值数值)、响应参数等,点击“确定”。

退出产品详情页,在左侧导航栏选择[设备]→[所有设备]。点击“注册设备”,选择已创建的产品,填写设备名称等。

通过以上步骤,即可完成华为云IoTDA平台的设备接入配置。

第二步:A7860模块接线

A7860模块-----USB转TTLVCC-----5VGND-----GNDTX-----RXRX-----TX

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

实物接线

第三步:连接华为云云平台

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

AT命令流程及命令结果:

1.查询模块信息

发送指令:ATI

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

预期响应:Manufacturer: INCORPORATED

Model: A7680C-LAAS

Revision: A7680M6_V1.11.1

IMEI: 861210056676532

+GCAP: +CGSM,+FCLASS,+DS

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

发送指令:AT+CIMI

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

预期响应:460023606806489

3.查询集成电路卡识别码

发送指令:AT+CICCID

说明:读取SIM卡的集成电路卡识别码,用于标识SIM卡物理实体。

预期响应:898600261322F1000989

4.查询设备序列号

发送指令:AT+CGSN

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

预期响应:861210056676532

5.查询PIN码状态

发送指令:AT+CPIN?

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

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

6.查询信号强度

发送指令:AT+CSQ

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

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

7.查询当前PS域状态

发送指令:AT+CGATT?

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

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

8.查询GPRS域注册状态

发送指令:AT+CREG?

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

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

9.查询EPS域注册状态

发送指令:AT+CEREG?

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

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

10.查询PDP地址

发送指令:AT+CGPADDR

说明:查询PDP上下文对应的IP地址,PDP用于建立数据连接。

预期响应: +CGPADDR: 1,10.127.138.30

+CGPADDR: 8,254.128.0.0.0.0.0.0.24.82.79.224.155.59.88.210  OK

(示例,1为PDP上下文索引,后为对应的IP地址)

11.配置短信格式为文本模式

发送指令:AT+CMGF=1

说明:设置短信格式为文本模式(而非PDU模式),便于直接发送和接收文本短信。

预期响应:OK

12.启动MQTT服务

发送指令:AT+CMQTTSTART

说明:初始化并启动MQTT协议服务,为后续MQTT连接做准备。

预期响应:OK

13.申请MQTT客户端ID

发送指令:AT+CMQTTACCQ=0,"6865fd3d94a9a05c336eb16e_TEST_0_0_2025071602",0

说明:申请MQTT客户端ID为0,“6865fd3d94a9a05c336eb16e_TEST_0_0_2025071602”为clientID,平台上查看。

预期响应:OK

14.配置MQTT主题参数

发送指令:AT+CMQTTCFG="argtopic",0,1

说明:设置MQTT客户端的主题参数配置,此处开启主题参数功能。

预期响应:OK

15.配置MQTT协议版本

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

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

预期响应:OK

16.建立MQTT连接

发送指令:

AT+CMQTTCONNECT=0,"tcp://a1469f2300.st1.iotda-device.cn-east-3.myhuaweicloud.com:1883",60,1,"6865fd3d94a9a05c336eb16e_TEST","18e387f98207544bb8dee6a1e2c5e6496553cd3a5553de84de825dda082d75ae"

说明:通过客户端连接到指定MQTT服务器,连接超时60秒,清除会话标志为1,携带用户名和加密签名参数。其中,"6865fd3d94a9a05c336eb16e_TEST"为username用户名,

"18e387f98207544bb8dee6a1e2c5e6496553cd3a5553de84de825dda082d75ae"为密钥。

预期响应:OK

实际响应:+CME ERROR: AT command timeout,AT 命令超时但实际已连接上华为云平台,这是因为模块在解析域名时耗时过长导致超时。

17.订阅MQTT主题

发送指令:

AT+CMQTTSUB=0,"$oc/devices/6865fd3d94a9a05c336eb16e_TEST/sys/messages/down",2

说明:MQTT客户端订阅主题“$oc/devices/6865fd3d94a9a05c336eb16e_TEST/sys/messages/down”,QoS等级为2,其中6865fd3d94a9a05c336eb16e_TEST为username用户名。

预期响应:OK

18.发布MQTT消息

发送指令:

AT+CMQTTPUB=0,"$oc/devices/6865fd3d94a9a05c336eb16e_TEST/sys/properties/report",1,61

说明:MQTT客户端向主题“$oc/devices/6865fd3d94a9a05c336eb16e_TEST/sys/properties/report”发布消息,QoS等级为1,数据长度为61。

预期响应:<(表示发布请求已发送)

此时发送数据:{"services":[{"service_id":"Test","properties":{"temp":50}}]}

最终响应:OK  +CMQTTPUB: 0,0  

华为云平台数据交互操作:

在华为云IoTDA控制台左侧导航栏中,依次选择[设备]→[所有设备],点击目标设备名称进入详情页。可查看设备基本信息(如设备ID、在线状态、注册时间)、属性上报数据(如温度)。

平台数据下发操作

在控制台左侧导航栏选择[监控运维]→[在线调试],点击“选择设备”按钮,从列表中选中目标设备(需确保设备在线)。选择服务:对应设备模型中定义的服务名称(如“Temp”)。选择命令:根据服务类型选择具体命令(如“setTemperature”)。填写下发数据:按命令参数要求输入值(如78)。点击“发送”按钮,平台将向设备下发命令。

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

总结命令流程

ATi
AT+CIMI
AT+CICCID
AT+CGSN
AT+CPIN?
AT+CSQ
AT+CGATT?
AT+CREG?
AT+CEREG?
AT+CGPADDR
AT+CMGF=1
AT+CMQTTSTART
AT+CMQTTACCQ=0,"6865fd3d94a9a05c336eb16e_TEST_0_0_2025071602",0
AT+CMQTTCFG="argtopic",0,1
AT+CMQTTCFG="version",0,4
AT+CMQTTCONNECT=0,"tcp://a1469f2300.st1.iotda-device.cn-east-3.myhuaweicloud.com:1883",60,1,"6865fd3d94a9a05c336eb16e_TEST","18e387f98207544bb8dee6a1e2c5e6496553cd3a5553de84de825dda082d75ae"
AT+CMQTTSUB=0,"$oc/devices/6865fd3d94a9a05c336eb16e_TEST/sys/messages/down",2
AT+CMQTTPUB=0,"$oc/devices/6865fd3d94a9a05c336eb16e_TEST/sys/properties/report",1,61
{"services":[{"service_id":"Test","properties":{"temp":50}}]}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/915326.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/915326.shtml
英文地址,请注明出处:http://en.pswp.cn/news/915326.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大模型词表设计与作用解析

几乎所有大型语言模型&#xff08;LLM&#xff09;都有自己独立的词表&#xff08;Vocabulary&#xff09;。这是模型设计和训练过程中的核心组件之一。以下是关于词表的关键点&#xff1a; 1. 词表的作用 分词基础&#xff1a;词表定义了模型如何将输入文本拆分成基本单元&…

(一)Eshop(异常处理中间件/grpc)

文章目录项目地址一、异常处理1.1 自定异常1.2 自定义异常处理中间件1.3 注册中间件二、grpc服务2.1 创建protos1. 打折的protos2. 设置grpc server3. program配置服务4. docker-compose2.2 CRUD1. 查询2.3 测试1. 发起查询请求三、grpc服务消费3.1 创建client1. 添加服务2. 选…

BLIP、InternVL Series(下)

目录 一、InternVL1.5 1、改进 二、InternVL2 1、渐进式扩展 2、多模态扩展 三、InternVL2.5 1、方法 2、数据优化 四、InternVL3 2、方法 3、训练后处理 4、测试时扩展 五、BLIP-3o 一、InternVL1.5 1、改进 InternVL1.5在InternVL基础上&#xff0c;优化了QLLa…

【数据结构】二维差分数组

题目链接 【模板】二维差分_牛客题霸_牛客网 牛客网 - 找工作神器|笔试题库|面试经验|实习招聘内推&#xff0c;求职就业一站解决_牛客网 描述 给定一个 nmnm 的整数矩阵 bb&#xff0c;矩阵的下标从 11 开始记作 bi,jbi,j​。现在需要支持 qq 次操作&#xff0c;第 tt 次…

【JDK内置工具】常用工具和实战指令

作者&#xff1a;唐叔在学习 专栏&#xff1a;唐叔的Java实践 关键词: #JDK工具 #Java性能调优 #JVM调优 #内存泄漏排查 #线程死锁分析 #Java开发工具 #线上问题排查 #Java诊断工具 Hello&#xff0c;大家好&#xff0c;我是爱学习的唐叔。作为Java开发者&#xff0c;JDK内置工…

一站式PDF转Markdown解决方案PDF3MD

简介 什么是 PDF3MD &#xff1f; PDF3MD 是一个现代化、用户友好的网络应用程序&#xff0c;旨在将 PDF 文档转换为干净、格式化的 Markdown 文本。它提供了高效的转换工具&#xff0c;支持多种文件格式之间的转换。 主要特点 PDF 转 Markdown&#xff1a;能够将 PDF 文档转…

RocketMQ学习系列之——MQ入门概念

一、什么是MQMQ&#xff08;Message Queue&#xff0c;消息队列&#xff09;是一种能够实现跨进程消息传输&#xff0c;并且消息缓存符合队列特性的组件。二、MQ的作用异步&#xff1a;消息发送方无需等待消息接收方收到消息&#xff0c;发送方将消息成功发送到 MQ 之后即可无阻…

血条识别功能实现及原理

从零开始学Python图像处理 - 血条识别 从实际问题中能快速的学习特定技能&#xff0c;通过完成一个能自动刷怪的工具&#xff0c;达成快速学习python图像处理和识别。 自动刷怪需要先识别怪物&#xff0c;在游戏中怪物类型很多&#xff0c;同时在移动中形态会一直发生变化&…

网络地址和主机地址之间进行转换的类

#pragma once #include "Common.hpp" // 网络地址和主机地址之间进行转换的类class InetAddr { public:InetAddr(){}InetAddr(struct sockaddr_in &addr) : _addr(addr){// 网络转主机_port ntohs(_addr.sin_port); // 从网络中拿到的&#xff01;网络序列// _i…

《Python 项目 CI/CD 实战指南:从零构建自动化部署流水线》

🛠《Python 项目 CI/CD 实战指南:从零构建自动化部署流水线》 一、引言:为什么 Python 项目需要 CI/CD? 在现代软件开发中,CI/CD(持续集成 / 持续部署)已成为不可或缺的工程实践。它不仅提升了开发效率,还显著降低了部署风险。对于 Python 项目而言,CI/CD 的价值尤…

AJAX 技术

AJAX全称是 Asynchronous JavaScript and XML ( 异步的JavaScript 和 XML )&#xff0c;使用该技术后&#xff0c;可以实现不刷新整个网页&#xff0c;与服务器进行异步通信并更新部分网页。一&#xff09;为什么需要AJAX?传统网页在与服务器通信时&#xff0c;需要刷新整个页…

Python爬虫实战:研究NLTK库相关技术

1. 引言 1.1 研究背景与意义 随着互联网的快速发展,网络新闻已成为人们获取信息的主要来源之一。每天产生的海量新闻文本蕴含着丰富的信息和知识,但也给信息获取和分析带来了挑战。如何从大量非结构化的新闻文本中自动提取有价值的信息,识别热点话题和趋势,成为当前自然语…

ARM 学习笔记(二)

参考文献&#xff1a;《ARM ArchitectureReference Manual ARMv7-A and ARMv7-R edition》1、MMU 1.1 背景早期的内存是比较小的&#xff0c;一般是几十k&#xff0c;不过相应的程序也是比较小的&#xff0c;这时程序可以直接加载到内存中运行。后来为了支持多个程序的并行&…

Github 贪吃蛇 主页设置

自动化脚本顶部元信息触发条件&#xff08;on:&#xff09;作业&#xff08;jobs:&#xff09;步骤&#xff08;steps:&#xff09;1. 生成 SVG2. 推送到 output 分支Commit & Push在 README 里引用参考&#xff1a;https://github.com/Platane/Platane/tree/master 首先写…

关于Spring RestTemplate

​ 一、概述RestTemplate 是 Spring Framework 提供的一个同步 HTTP 客户端工具&#xff0c;用于简化与 RESTful API 的交互。它封装了底层 HTTP 通信细节&#xff0c;提供了统一的 API 来发送各种 HTTP 请求&#xff08;GET、POST、PUT、DELETE 等&#xff09;&#xff0c;并自…

异步解决一切问题 |消息队列 |减少嵌套 |hadoop |rabbitmq |postsql

设计准则“为什么要考虑这个问题”The forward logic is only about 10% of your code, everything else is 90%.主流逻辑 10%保障扩容和稳健的代码设计90%同步代码就是绑在一个绳上的蚂蚱异步就是实现了解耦这个异步或许有点类似于--一些分布式数据的处理 设计如何实现的呢?…

Spring AI 项目实战(十八):Spring Boot + AI + Vue3 + OSS + DashScope 实现高效语音识别系统(附完整源码)

系列文章 序号 文章名称 1 Spring AI 项目实战(一):Spring AI 核心模块入门 2 Spring AI 项目实战(二):Spring Boot + AI + DeepSeek 深度实战(附完整源码) 3 Spring AI 项目实战(三):Spring Boot + AI + DeepSeek 打造智能客服系统(附完整源码) 4

指针数组和数组指针的应用案例

1. 指针数组应用&#xff1a;查找最长字符串用指针数组存储若干字符串&#xff0c;编写函数找出其中最长的字符串&#xff08;若有多个&#xff0c;返回第一个&#xff09;。#include <stdio.h> #include <string.h>// 函数原型&#xff1a;找出最长字符串 const c…

MCU进入低功耗模式前的引脚处理原则和方法 --> 以最小化低功耗电流

在MCU进入低功耗模式(如Sleep, Stop, Standby, Deep Sleep等)前,精心处理每一个GPIO引脚的状态是最大限度降低功耗电流的关键一步。悬空或配置不当的引脚是导致“漏电”的常见原因。以下是处理引脚以达到最小低功耗电流的原则和方法: 📌 核心原则 避免浮空输入: 浮空(…

张 关于大语言模型(LLM)置信度研究的经典与前沿论文 :温度缩放;语义熵;自一致性;事实与反思;检索增强;黑盒引导;

关于大语言模型(LLM)置信度研究的经典与前沿论文 :温度缩放;语义熵;自一致性;事实与反思;检索增强;黑盒引导; 目录 关于大语言模型(LLM)置信度研究的经典与前沿论文 :温度缩放;语义熵;自一致性;事实与反思;检索增强;黑盒引导; 一、校准方法:让模型概率更贴近真实正确…