跳转至

百度云

一、百度云概述

百度物联网平台(物联网核心套件 IoT Core)是百度旗下的一个物联网平台,该平台是一个集成了设备接入、设备管理、数据安全通信、消息订阅、消息转发和数据服务(存储、分析、过滤、解析、集成等)等能力的一体化平台。向下支持连接海量设备,采集设备数据上云;向上提供云端 API,服务端可通过云端 SDK 调用云端 API 将指令下发至设备端,实现远程控制。

官网地址:百度智能云物联网平台控制台

官方文档地址:物联网核心套件文档

注:新用户首次使用 IoT Core 时,需要完成实名认证并开通 IoT Core 服务。 IoT Core 属于后付费业务,未使用 IoT Core 前,不会进行任何计费。

1.1 物联网核心套件中相关的核心概念

IoT Core 实例: 物联网核心套件 IoT Core 的资源划分单位。每个实例是一个独立的命名空间,有独立标识即 Core ID。不同实例之间相互隔离。

设备:

实体世界一个设备的云端映射,是 IoT Core 连接的最小单元,每个设备均可拥有自己的身份(DK/SK)及主题列表。

MQTT:

MQTT(Message Queuing Telemetry Transport)是一个基于二进制消息的客户端服务端架构的发布/订阅(Publish/Subscribe)模式的消息传输协议,最早由 IBM 提出的,如今已经业界通行规范,更符合机器与机器的通信(M2M)以及物联网环境(IoT)。

DK(Device Key):

设备连接所需的 key,用于生成 MQTT 连接所需的用户名。

SK(Device Secret Key):

设备连接所需的密钥,用于生成 MQTT 连接所需要的密码。

影子:

设备影子反映物理世界中的一个物(设备),是物在云端的『影子』或『数字双胞胎』。运行时,物将监控值上报给影子,影子会用一个 json 文档存储设备的最后一次上报的状态,您可以直接通过 MQTT 或 HTTP 访问。同时,影子也提供反控功能。

模板:

设备的模板用于批量创建一类设备,当前提供主题模板。使用相同主题模板创建是设备,其对主题的权限一致。

主题(topic):

主题应用于 MQTT 客户端。topic 规则允许字符串可以带通配符“#”或 “+”。

1.2 物联网核心套件 IoT Core 使用步骤

在使用物联网核心套件服务前需要完成以下步骤:

1. 在百度智能云登录页面,选择百度账号,点击“立即注册”,进入百度账号注册界面。 2. 如果未进行实名认证,请先进行实名认证。 3. 开通 IoTCore:开通服务并同意按需计费,可进入“实例列表”

1. 创建 IoTCore 实例:使用物联网核心套件 IoTCore 服务需要先创建一个 IoT Core 实例。 2. 创建设备:点击实例名称,进入详情页面,点击设备列表即可创建和管理设备。 3. 获取连接信息:查看连接信息,包含 IoTCoreId、DeviceKey 和 DeviceSecret。 4. 使用 MQTT 模拟器连接及收发消息:配置 MQTT 的应用客户端,可以快速验证是否可以实现与 IoT Core 服务交流发送或者接收消息。 5. 使用规则引擎将设备消息流转到业务服务器:天工平台将设备上报的数据流转至百度 kafka 中,之后,业务应用服务器可以消费 kafka 中的数据进行业务处理。

更详细的信息请参考:https://cloud.baidu.com/doc/IoTCore/s/ek7o8ydue

二、本教程实现的功能概述

本文教你怎么使用 AT 命令,通过几个简单的步骤,就可以让合宙 4G 模组接入百度云物接入。

本教程实现的功能定义是:

1. 一机一密建立 MQTT 连接 ; 2. 使用证书鉴权建立 MQTT 连接;

三、准备硬件环境

工欲善其事,必先利其器。在正式介绍本功能示例之前,需要先准备好以下硬件环境。

3.1 Air780E 开发板

本文使用 Air780E 核心板,如下图所示:

点击链接购买:Air780E 核心板淘宝购买链接

此核心板的详细使用说明参考:Air780E 产品手册 中的 《开发板Core_Air780E使用说明VX.X.X.pdf》。

3.2 SIM 卡

准备一张可以上网的 SIM 卡,可以是物联网卡,也可以是自己的手机卡;

注意:SIM 卡不能欠费,可以正常上网!!!

3.3 PC 电脑

准备一台电脑;

电脑操作系统为:WIN10 以及以上版本的 WINDOWS 系统。

注意:电脑有 USB 口,并且可以正常上网!!!

3.4 数据通信线

准备一根 USB TypeC 数据线,此数据线的作用是,连接 Air780E 开发板和 PC 电脑,通过 AT 命令完成业务逻辑的控制和交互,如下图所示;

3.5 组装硬件环境

按照 SIM 卡槽上的插入方向,插入 SIM 卡,注意不要插反!

如下图所示,将 SIM 卡用力推入卡槽,听到咔嚓声音后即可。

USB 数据线,连接电脑和 Air780E 开发板,如下图所示:

四、准备软件环境

工欲善其事,必先利其器。在正式介绍本功能示例之前,需要先准备好以下软件环境。

4.1 Luatools 工具

要想烧录 AT 固件到 4G 模组中,需要用到合宙的强大的调试工具:Luatools;

详细使用说明参考:Luatools 工具使用说明

4.2 AT 固件

4G 模组中必须烧录正确的 AT 固件才能支持 AT 命令功能;

通过 Luatools 可以烧录 AT 固件;

有两种方式可以获取到 Air780E 模组的最新 AT 固件,二选一即可;

通过 Luatools 可以获取到 Air780E 模组的最新 AT 固件,如下图所示,可以直接选中最新版本的 AT 固件:

4.3 PC 端串口工具

在量产的项目硬件设计中,一般都是由主控 MCU 通过 UART 给 4G 模组发送命令实现具体的业务逻辑;

在本教程中,为了测试方便,没有使用主控 MCU;

而是使用了 PC 电脑上的一个串口工具 SSCOM 给 4G 模组发送命令来实现演示功能;

SSCOM 的下载链接:SSCOM,详细使用说明可以直接参考下载网站。

五、连接百度云所需相关指令

本文主要使用 MQTT 协议接入百度云平台,相关指令点击链接查看合宙 4G 模组 MQTT 指令

六、 百度云操作实例

6.1 确认开发板正常开机并联网正常

依次发送如下指令序列确认模组开机正常,且网络正常。

AT                    //测试AT指令

AT

OK

ATE0                //关闭回显

ATE0

OK

AT+CSQ            //查询模组信号质量

+CSQ: 30,99

OK

AT+CPIN?

+CPIN: READY

OK

AT+CCID        //查询卡ccid,如果AT+CPIN? AT+CCID指令返回错误信息,请检查物联网卡正常(无卡,无流量、锁卡、欠费等)

898604F4152391195302

OK

AT+CGATT?    //AT+CGATT?查询是否注册网络收到+CGATT: 1值是1即为注册成功,正常情况下注册时间不会超过两分钟,如果超过两分钟没有注册可以进入飞行模式五秒后退出再查询,或者直接重启模块。

+CGATT: 1    

OK

AT+CSTT    //**AT+CSTT**配置网络,非私有APN以外Cat1的固件支持根据卡自动配置APN,直接输入AT+CSTT即可,模块会按照自动获取的APN设置CSTT的APN。

OK

AT+CIICR    //**AT+CIICR**激活网络,在IP START的状态使用AT+CIICR激活网络

OK

AT+CIFSR    //激活以后通过**AT+CIFSR**查询是否获取IP,如果成功就可以开始配置TCP连接了,如果不成功使用AT+CIPSHUT关闭移动网络,从AT+CSTT重新进行。

10.177.182.22

6.2 物联网核心套件 IoT Core 操作

打开百度智能云官网输入“物联网核心套件 IoT Core”,如果您未注册请参考上文或者百度智能云帮助文档进行注册。

点击“立即使用”进入

点击创建 IoT Core 实例

在“名称”框内输入实例名称,付费方式选择“按需付费”,在点击“确认购买”

点击创建的实例,进入设备创建页面

切换到模板标签页,创建消息模板

其中:

$iot/{deviceName}/events 为客户端向云端发布消息的主题,系统默认

$iot/{deviceName}/msg 为云端向客户端发布消息的主题,系统默认

$iot/{deviceName}/user/air780e 为自定义云端发布/订阅的主题

{deviceName}为具体设备名称

点击创建的实例,进入设备创建页面

名称框内填写设备的名称,认证方式选择“秘钥认证”,选择上一步创建好的模板,然后点击“提交”

设备创建成功后会自动生成连接配置信息,如下图所示,请妥善保管,后续环节会用到

把得到的 IoTCoreId、DeviceKey、DeviceSecret 记录如下:

IoTCoreId:asfalyd
DeviceKey:air780dev001
DeviceSecret:kHjWlQXleaiMrwdJ

使用指定算法生成连接信息;快速体验中,也可以在线生成器来进行使用,打开 MQTT 连接信息生成器 ,使用拿到的 IoTCoreId、DeviceKey 和 DeviceSecret,生成 MQTT 连接所需的用户名及密码。

根据上面的连接信息生成如下 mqtt 连接信息

Broker地址:asfalyd.iot.gz.baidubce.com
MQTT用户名:thingidp@asfalyd|air780dev001|0|MD5
MQTT密码:bbfeead4ca919cacfb164cc3b3af6364
ClientID:air780dev001

云端订阅的主题:
$iot/air780dev001/events
云端发布的主题:
$iot/air780dev001/msg
自定义云端发布/订阅的主题:
$iot/air780dev001/user/air780e

我们使用自定义主题“$iot/air780dev001/user/air780e”进行测试,先使用 mqtt 客户端在电脑端测试连接是否可用,将以上 mqtt 连接参数填入对应的框中,点击连接

客户端订阅主题“$iot/air780dev001/user/air780e”

向主题“$iot/air780dev001/user/air780e”发送“hello world”,订阅主题接收到同样的消息,证明连接可以使用

接下来我们通过 AT 指令让模组接入百度云 IoT Core

6.3 开发板 AT 实例

6.3.1 一机一密建立 MQTT 连接 AT 示例;

** 建立 mqtt 链接** 执行如下指令序列,可以让模组与 MQTT 服务器建立连接

AT+CGREG?  //查询当前GPRS注册状态 

+CGREG: 0,1 //<n>=0,表示禁用URC上报,<stat>=1,标识已经注册GPRS网络,而且是本地网

OK 


AT+CGATT?  //查看当前GPRS附着状态

+CGATT: 1  //<state>=1,标明当前GPRS已经附着

OK 

AT+MCONFIG="air780dev001","thingidp@asfalyd|air780dev001|0|MD5", "bbfeead4ca919cacfb164cc3b3af6364"    //_配置mqtt链接参数,分别为ClientID:001,MQTT用户名:thingidp@abrgnbf|001|0|MD5,MQTT密码:7c28b808509c1b641a8dcea4ee517e2b_

OK

AT+MIPSTART="asfalyd.iot.gz.baidubce.com_",_"1883"            //_建立mqtt链接通道,连接为上节生成的地址:abrgnbf.iot.gz.baidubce.com_
OK
CONNECT OK

AT+MCONNECT=1,60                //_配置mqtt保活时间,60表示保活时间为60s_

OK
CONNACK OK

建立 mqtt 连接后,我们就可以进行后面的主题订阅与发布步骤了。 订阅主题与发布消息 如图,$iot/air780dev001/user/air780e 主题是可以订阅和发布消息的 执行如下指令序列,可以让模组订阅 $iot/air780dev001/user/air780e 主题

AT+MSUB="$iot/air780dev001/user/air780e",0        //_订阅主题_

OK

SUBACK

模组订阅$iot/air780dev001/user/air780e成功后主题后,我们可以AT主题$iot/air780dev001/user/air780e 发布消息“hello world”

AT+MPUB="$iot/air780dev001/user/air780e",0,"hello world"

模组串口端输出如下消息: +MSUB: "$iot/air780dev001/user/air780e",11 byte,hello world 通过电脑端 mqtt 客户端也可以看到消息已经发布成功,如下图所示 说明:消息中 +MSUB: "$iot/air780dev001/user/air780e",11 byte,为消息头,后面的"byte,hello world“为实际的消息内容。

6.3.2 使用证书鉴权建立 MQTT 连接 AT 示例

1. 创建设备 添加设备填写相关信息,“认证方式”选择“证书认证”,如下图所示: 2. 保存证书文件 将下载的 TXT 文件按照使用说明将文件内容分别保存为:client_cert.pem 和 client_private_key.pem 说明:设备证书:-----BEGIN CERTIFICATE----------END CERTIFICATE----- 起止的部分为设备证书内容,可将此部分单独保存或在代码中直接粘贴,作为设备证书使用。 设备私钥:----------BEGIN RSA PRIVATE KEY---------------END RSA PRIVATE KEY----- 起止的部分为设备私钥,可将此部分单独保存或在代码中直接粘贴,作为设备私钥使用。获取根证、鉴权证书、设备私钥文件,用于证书鉴权建立 MQTT 连接,详细使用方法请参考:使用证书鉴权建立 MQTT 连接 3. 下载根证文件,并保存,文件下载地址在这里:https://doc.bce.baidu.com/bce-documentation/IOT/GlobalSign.cer.zip 最后如下所示有三个文件,从上到下分别是:设备证书设备私钥、根证文件。 由于我们未使用生成地址,使用证书鉴权建立 MQTT 链接需要使用实例的接入点作为 Broker 地址,示例创建的设备对应的接入点为:asfalyd.iot.gz.baidubce.com。

为了方便下面的测试,我们将建立 MQTT 连接的信息整理如下(以上三个文件可以用文本编辑工具打开):

Broker地址:
asfalyd.iot.gz.baidubce.com

根证文件(GlobalSign.cer)内容:
-----BEGIN CERTIFICATE-----
MIIDXzCCAkegAwIBAgILBAAAAAABIVhTCKIwDQYJKoZIhvcNAQELBQAwTDEgMB4G
A1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjMxEzARBgNVBAoTCkdsb2JhbFNp
Z24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMDkwMzE4MTAwMDAwWhcNMjkwMzE4
MTAwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMzETMBEG
A1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCASIwDQYJKoZI
hvcNAQEBBQADggEPADCCAQoCggEBAMwldpB5BngiFvXAg7aEyiie/QV2EcWtiHL8
RgJDx7KKnQRfJMsuS+FggkbhUqsMgUdwbN1k0ev1LKMPgj0MK66X17YUhhB5uzsT
gHeMCOFJ0mpiLx9e+pZo34knlTifBtc+ycsmWQ1z3rDI6SYOgxXG71uL0gRgykmm
KPZpO/bLyCiR5Z2KYVc3rHQU3HTgOu5yLy6c+9C7v/U9AOEGM+iCK65TpjoWc4zd
QQ4gOsC0p6Hpsk+QLjJg6VfLuQSSaGjlOCZgdbKfd/+RFO+uIEn8rUAVSNECMWEZ
XriX7613t2Saer9fwRPvm2L7DWzgVGkWqQPabumDk3F2xmmFghcCAwEAAaNCMEAw
DgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFI/wS3+o
LkUkrk1Q+mOai97i3Ru8MA0GCSqGSIb3DQEBCwUAA4IBAQBLQNvAUKr+yAzv95ZU
RUm7lgAJQayzE4aGKAczymvmdLm6AC2upArT9fHxD4q/c2dKg8dEe3jgr25sbwMp
jjM5RcOO5LlXbKr8EpbsU8Yt5CRsuZRj+9xTaGdWPoO4zzUhw8lo/s7awlOqzJCK
6fBdRoyV3XpYKBovHd7NADdBj+1EbddTKJd+82cEHhXXipa0095MJ6RMG3NzdvQX
mcIfeg7jLQitChws/zyrVQ4PkX4268NXSb7hLi18YIvDQVETI53O9zJrlAGomecs
Mx86OyXShkDOOyyGeMlhLxS67ttVb9+E7gUJTb0o2HLO02JQZR7rkpeDMdmztcpH
WD9f
-----END CERTIFICATE-----

设备证书文件(client_cert.pem)内容:
-----BEGIN CERTIFICATE-----
MIIEnzCCA4egAwIBAgIDH3xuMA0GCSqGSIb3DQEBCwUAMG4xCzAJBgNVBAYTAkNO
MSMwIQYDVQQDDBpvbmxpbmUuaW90ZGV2aWNlLmJhaWR1LmNvbTEOMAwGA1UECgwF
QkFJRFUxDDAKBgNVBAsMA0JDRTEcMBoGCSqGSIb3DQEJARYNaW90QGJhaWR1LmNv
bTAeFw0yNDEwMjkxMjM5MThaFw0zNDEwMjcxMjM5MThaMEcxDjAMBgNVBAoMBUJh
aWR1MQswCQYDVQQGEwJDTjEaMBgGA1UEAwwRYXNmYWx5ZC9haXI3ODBlU2UxDDAK
BgNVBAsMA0JDRTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALbGRgGP
RSzElGAHsxnG0KCkq4K/X/pIhCKJCCgbdTryfWySX/HDakhDz2gT7ILomPo3QjlP
AaaxiWilXq2NQFx/P10pudXmc8bmO9NOcCz9M1ApoMi5tEaoVo+L3cnswJGvHbDI
w9JlltB3DlB9ilj5URfw4u8T0vww8IqOWaeTF53l7bsyk9CFvNZ5eItDii8fUsrf
hy7s6Rrw2VDIonGP4M1Ou6E8L0qy4y0iiP+cK8zV20ova6d/dVczAwuGZD2jWsEE
u7QNqP9VkMwifxqiszJFMpZz1FNQrHCWXeDt649niCwTTN5d/pGcctPzIL6pfzna
8Fod1OWHDfYFyTMCAwEAAaOCAWswggFnMB0GA1UdDgQWBBQLAioG0aLxTXvAbOEX
uEZTVHf6qDAMBgNVHRMBAf8EAjAAMB8GA1UdIwQYMBaAFLPrE8QwTwDCp+sVDszY
Kyd2E2RXMIGjBgNVHR8EgZswgZgwgZWggZKggY+GgYxodHRwOi8vcGtpaW92LmJh
aWR1YmNlLmNvbS92MS9wa2kvY3JsP2NtZD1jcmwmZm9ybWF0PVBFTSZpc3N1ZXI9
Qz1DTixDTj1vbmxpbmUuaW90ZGV2aWNlLmJhaWR1LmNvbSxFTUFJTEFERFJFU1M9
aW90QGJhaWR1LmNvbSxPPUJBSURVLE9VPUJDRTBCBggrBgEFBQcBAQQ2MDQwMgYI
KwYBBQUHMAGGJmh0dHA6Ly9wa2lpb3YuYmFpZHViY2UuY29tL3YxL3BraS9vY3Nw
MA4GA1UdDwEB/wQEAwID+DAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwQw
DQYJKoZIhvcNAQELBQADggEBADUYPyiNvcRvM+DxAQEJpPI0V0eVKgeksgolUcRk
1ZiCcnWioJRplIm5I9qVFXUghzcronxkC7zUOfZO2wrn0ORFLZF3+s58a3+eHAV2
lxFKfHtHdhRXdlu91mN2p9ByGT07Amh7Rqp12t7ZCvKiWwB98/mvGgo59ZwNFpsX
+Sa2M9Z5Zr0OAlnEV+EiMZQobPY122+uqh3ws6UEm0Nco+WTxzh2rzD+FfKbqTsu
ET1UgRPh6qVgsg9ZvhlGjjFySTWOwy9KcJIbYuJD1BTBf4n6n8DvbN0QGza2gKxt
OkcTiXs7SpVDMuuBGau01K2o6Ay1PgFUnI1dqa17gW3oY40=
-----END CERTIFICATE-----

设备私钥文件(client_private_key.pem)内容:
-----BEGIN RSA PRIVATE KEY-----
MIIEowIBAAKCAQEAtsZGAY9FLMSUYAezGcbQoKSrgr9f+kiEIokIKBt1OvJ9bJJf
8cNqSEPPaBPsguiY+jdCOU8BprGJaKVerY1AXH8/XSm51eZzxuY7005wLP0zUCmg
yLm0RqhWj4vdyezAka8dsMjD0mWW0HcOUH2KWPlRF/Di7xPS/DDwio5Zp5MXneXt
uzKT0IW81nl4i0OKLx9Syt+HLuzpGvDZUMiicY/gzU67oTwvSrLjLSKI/5wrzNXb
Si9rp391VzMDC4ZkPaNawQS7tA2o/1WQzCJ/GqKzMkUylnPUU1CscJZd4O3rj2eI
LBNM3l3+kZxy0/Mgvql/OdrwWh3U5YcN9gXJMwIDAQABAoIBAAQEzgtAvDOkyuJl
qPF7JqExnbfNP24AZC9iNfSzzdsS8+EMQuHM+yxFmWzfa0bhmGOADYu3CgFBTBUp
9a/5OB4QijMhNL3YSFlqPIyD4AGNO7CaibeAJc+b6fNUDvdepklNwWhesbeRlkRV
KdJpQD5+lOLi4AqDtBLpfJB/WsdNciUDAGMPEJqW2yn1ZqzTVehfIaUe/B23sxfj
sZgUqbFu+RrYaFvgqxii4Z3vRY5RkihGdImBrKHisWZCIK1ewclo5laj369oajsR
vRu6k9SlvZg5+eigtBJB/KhIDg7xQ37qK9exRKvy35X3a4hv95NLtuDJoEgLUpF7
2Krq2+kCgYEA4ehiNr4xAKAmC7+EVZk4Vnv3O44Kk7Yj47FGHZ4Wukps+Xk2LXw5
6SEqT26d5/IU95DIELbhlFQqb5jg7MjmvtDLt6aCjKRMs3mOMjcVZc2/uVj/BHhp
zY3iNdqyFXIxU3z544WnxRHwZ91ze7p+qitBIXpHymQzZ6+gqi+EfA0CgYEAzx8D
6RN87VI5XLyb12bwPvGvGuxrj1PdqaNxQ9JFk+11PVhyPAR+SA/0i8hPEWc4mKL8
DygkEVGs6SZVHlgK6+yhrMdUHRGDMxUmvQLlvOFN4YQThk3lqSd8g1Q18Y9eLoN5
xEv5aWGPmnaDTXb9brZap+swLrln62EsiU1tyj8CgYEArqWjWEMNSziEcUysmCiO
P34zEp2rW6rScDMay8buNzNWsD+fPObvNmZneWVBOpIS15ncsd9Q4gV3kTMVoLlo
elidReu6vdQ/X/k3j2a6aiv4buh4rxIQadOo8I2UY7QWoj7aSaWIoHhP7Vxs7Viu
mAw8nA8W9Ucl3qEOisOVnvkCgYB2OE7EF5KD5x3EuAb/sMrKMqru5CkUmxr3e8nn
mzqJj80OYdB6P1pRCYJc0s2GsnMUdFsIz7GejQ7z2SRWeIxrUxqJAxEYsmk/nAAL
fH7jC3qnkPqP+yBuJ5KjZ0qPAXUReYvkJjVLGBueX6zcZ2GKct1V4SEUWlFdgY6p
JB/ZgwKBgBoiKrVX9afIboQiK7SM1I/bcEk17cuIIp1btoG9Es0Ez5Y9wvvbqwjm
kkXloAm1Nl6tyzQtZe1V3S5xRwmtf63Meg2XKraaXaYgyTTCCpaYhfqmXib2Cblt
v0xOjXn8ylwfWp6bH7ogh/0rqUy6ebeEsI85DniLb9t1UFg71XyX
-----END RSA PRIVATE KEY-----

1. 电脑端建立连接验证 使用 MQTTX 建立连接,填入上一步得到的连接配置信息,如下图: 订阅主题“$iot/air780eSe/user/air780e”,并往主题发布消息“hello air780e”,客户端可以成功收到消息“hello air780e”,说明通信已经成功建立。下面我们通过 AT 指令让模组完成连接、消息订阅,发布过程 2. AT 指令序列:

AT+CGATT?

+CGATT: 1

OK
AT+FSCREATE="ca.crt"

OK
AT+FSWRITE="ca.crt",0,2048,15

>
-----BEGIN CERTIFICATE-----
MIIDXzCCAkegAwIBAgILBAAAAAABIVhTCKIwDQYJKoZIhvcNAQELBQAwTDEgMB4G
A1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjMxEzARBgNVBAoTCkdsb2JhbFNp
Z24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMDkwMzE4MTAwMDAwWhcNMjkwMzE4
MTAwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMzETMBEG
A1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCASIwDQYJKoZI
hvcNAQEBBQADggEPADCCAQoCggEBAMwldpB5BngiFvXAg7aEyiie/QV2EcWtiHL8
RgJDx7KKnQRfJMsuS+FggkbhUqsMgUdwbN1k0ev1LKMPgj0MK66X17YUhhB5uzsT
gHeMCOFJ0mpiLx9e+pZo34knlTifBtc+ycsmWQ1z3rDI6SYOgxXG71uL0gRgykmm
KPZpO/bLyCiR5Z2KYVc3rHQU3HTgOu5yLy6c+9C7v/U9AOEGM+iCK65TpjoWc4zd
QQ4gOsC0p6Hpsk+QLjJg6VfLuQSSaGjlOCZgdbKfd/+RFO+uIEn8rUAVSNECMWEZ
XriX7613t2Saer9fwRPvm2L7DWzgVGkWqQPabumDk3F2xmmFghcCAwEAAaNCMEAw
DgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFI/wS3+o
LkUkrk1Q+mOai97i3Ru8MA0GCSqGSIb3DQEBCwUAA4IBAQBLQNvAUKr+yAzv95ZU
RUm7lgAJQayzE4aGKAczymvmdLm6AC2upArT9fHxD4q/c2dKg8dEe3jgr25sbwMp
jjM5RcOO5LlXbKr8EpbsU8Yt5CRsuZRj+9xTaGdWPoO4zzUhw8lo/s7awlOqzJCK
6fBdRoyV3XpYKBovHd7NADdBj+1EbddTKJd+82cEHhXXipa0095MJ6RMG3NzdvQX
mcIfeg7jLQitChws/zyrVQ4PkX4268NXSb7hLi18YIvDQVETI53O9zJrlAGomecs
Mx86OyXShkDOOyyGeMlhLxS67ttVb9+E7gUJTb0o2HLO02JQZR7rkpeDMdmztcpH
WD9f
-----END CERTIFICATE-----
OK
AT+FSCREATE="client.crt"                    //创建客户端证书文件

OK
AT+FSWRITE="client.crt",0,2048,15            //文件大小根据实际情况填写

>
-----BEGIN CERTIFICATE-----
MIIEnzCCA4egAwIBAgIDH3xuMA0GCSqGSIb3DQEBCwUAMG4xCzAJBgNVBAYTAkNO
MSMwIQYDVQQDDBpvbmxpbmUuaW90ZGV2aWNlLmJhaWR1LmNvbTEOMAwGA1UECgwF
QkFJRFUxDDAKBgNVBAsMA0JDRTEcMBoGCSqGSIb3DQEJARYNaW90QGJhaWR1LmNv
bTAeFw0yNDEwMjkxMjM5MThaFw0zNDEwMjcxMjM5MThaMEcxDjAMBgNVBAoMBUJh
aWR1MQswCQYDVQQGEwJDTjEaMBgGA1UEAwwRYXNmYWx5ZC9haXI3ODBlU2UxDDAK
BgNVBAsMA0JDRTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALbGRgGP
RSzElGAHsxnG0KCkq4K/X/pIhCKJCCgbdTryfWySX/HDakhDz2gT7ILomPo3QjlP
AaaxiWilXq2NQFx/P10pudXmc8bmO9NOcCz9M1ApoMi5tEaoVo+L3cnswJGvHbDI
w9JlltB3DlB9ilj5URfw4u8T0vww8IqOWaeTF53l7bsyk9CFvNZ5eItDii8fUsrf
hy7s6Rrw2VDIonGP4M1Ou6E8L0qy4y0iiP+cK8zV20ova6d/dVczAwuGZD2jWsEE
u7QNqP9VkMwifxqiszJFMpZz1FNQrHCWXeDt649niCwTTN5d/pGcctPzIL6pfzna
8Fod1OWHDfYFyTMCAwEAAaOCAWswggFnMB0GA1UdDgQWBBQLAioG0aLxTXvAbOEX
uEZTVHf6qDAMBgNVHRMBAf8EAjAAMB8GA1UdIwQYMBaAFLPrE8QwTwDCp+sVDszY
Kyd2E2RXMIGjBgNVHR8EgZswgZgwgZWggZKggY+GgYxodHRwOi8vcGtpaW92LmJh
aWR1YmNlLmNvbS92MS9wa2kvY3JsP2NtZD1jcmwmZm9ybWF0PVBFTSZpc3N1ZXI9
Qz1DTixDTj1vbmxpbmUuaW90ZGV2aWNlLmJhaWR1LmNvbSxFTUFJTEFERFJFU1M9
aW90QGJhaWR1LmNvbSxPPUJBSURVLE9VPUJDRTBCBggrBgEFBQcBAQQ2MDQwMgYI
KwYBBQUHMAGGJmh0dHA6Ly9wa2lpb3YuYmFpZHViY2UuY29tL3YxL3BraS9vY3Nw
MA4GA1UdDwEB/wQEAwID+DAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwQw
DQYJKoZIhvcNAQELBQADggEBADUYPyiNvcRvM+DxAQEJpPI0V0eVKgeksgolUcRk
1ZiCcnWioJRplIm5I9qVFXUghzcronxkC7zUOfZO2wrn0ORFLZF3+s58a3+eHAV2
lxFKfHtHdhRXdlu91mN2p9ByGT07Amh7Rqp12t7ZCvKiWwB98/mvGgo59ZwNFpsX
+Sa2M9Z5Zr0OAlnEV+EiMZQobPY122+uqh3ws6UEm0Nco+WTxzh2rzD+FfKbqTsu
ET1UgRPh6qVgsg9ZvhlGjjFySTWOwy9KcJIbYuJD1BTBf4n6n8DvbN0QGza2gKxt
OkcTiXs7SpVDMuuBGau01K2o6Ay1PgFUnI1dqa17gW3oY40=
-----END CERTIFICATE-----

OK

AT+FSCREATE="client.key"                //创建客户端key文件

OK
AT+FSWRITE="client.key",0,2048,15        //注意大小根据实际情况填写

>

-----BEGIN RSA PRIVATE KEY-----
MIIEowIBAAKCAQEAtsZGAY9FLMSUYAezGcbQoKSrgr9f+kiEIokIKBt1OvJ9bJJf
8cNqSEPPaBPsguiY+jdCOU8BprGJaKVerY1AXH8/XSm51eZzxuY7005wLP0zUCmg
yLm0RqhWj4vdyezAka8dsMjD0mWW0HcOUH2KWPlRF/Di7xPS/DDwio5Zp5MXneXt
uzKT0IW81nl4i0OKLx9Syt+HLuzpGvDZUMiicY/gzU67oTwvSrLjLSKI/5wrzNXb
Si9rp391VzMDC4ZkPaNawQS7tA2o/1WQzCJ/GqKzMkUylnPUU1CscJZd4O3rj2eI
LBNM3l3+kZxy0/Mgvql/OdrwWh3U5YcN9gXJMwIDAQABAoIBAAQEzgtAvDOkyuJl
qPF7JqExnbfNP24AZC9iNfSzzdsS8+EMQuHM+yxFmWzfa0bhmGOADYu3CgFBTBUp
9a/5OB4QijMhNL3YSFlqPIyD4AGNO7CaibeAJc+b6fNUDvdepklNwWhesbeRlkRV
KdJpQD5+lOLi4AqDtBLpfJB/WsdNciUDAGMPEJqW2yn1ZqzTVehfIaUe/B23sxfj
sZgUqbFu+RrYaFvgqxii4Z3vRY5RkihGdImBrKHisWZCIK1ewclo5laj369oajsR
vRu6k9SlvZg5+eigtBJB/KhIDg7xQ37qK9exRKvy35X3a4hv95NLtuDJoEgLUpF7
2Krq2+kCgYEA4ehiNr4xAKAmC7+EVZk4Vnv3O44Kk7Yj47FGHZ4Wukps+Xk2LXw5
6SEqT26d5/IU95DIELbhlFQqb5jg7MjmvtDLt6aCjKRMs3mOMjcVZc2/uVj/BHhp
zY3iNdqyFXIxU3z544WnxRHwZ91ze7p+qitBIXpHymQzZ6+gqi+EfA0CgYEAzx8D
6RN87VI5XLyb12bwPvGvGuxrj1PdqaNxQ9JFk+11PVhyPAR+SA/0i8hPEWc4mKL8
DygkEVGs6SZVHlgK6+yhrMdUHRGDMxUmvQLlvOFN4YQThk3lqSd8g1Q18Y9eLoN5
xEv5aWGPmnaDTXb9brZap+swLrln62EsiU1tyj8CgYEArqWjWEMNSziEcUysmCiO
P34zEp2rW6rScDMay8buNzNWsD+fPObvNmZneWVBOpIS15ncsd9Q4gV3kTMVoLlo
elidReu6vdQ/X/k3j2a6aiv4buh4rxIQadOo8I2UY7QWoj7aSaWIoHhP7Vxs7Viu
mAw8nA8W9Ucl3qEOisOVnvkCgYB2OE7EF5KD5x3EuAb/sMrKMqru5CkUmxr3e8nn
mzqJj80OYdB6P1pRCYJc0s2GsnMUdFsIz7GejQ7z2SRWeIxrUxqJAxEYsmk/nAAL
fH7jC3qnkPqP+yBuJ5KjZ0qPAXUReYvkJjVLGBueX6zcZ2GKct1V4SEUWlFdgY6p
JB/ZgwKBgBoiKrVX9afIboQiK7SM1I/bcEk17cuIIp1btoG9Es0Ez5Y9wvvbqwjm
kkXloAm1Nl6tyzQtZe1V3S5xRwmtf63Meg2XKraaXaYgyTTCCpaYhfqmXib2Cblt
v0xOjXn8ylwfWp6bH7ogh/0rqUy6ebeEsI85DniLb9t1UFg71XyX
-----END RSA PRIVATE KEY-----

OK

AT+SSLCFG="cacert",88,"ca.crt"                //设置ca证书文件为ca.crt

OK
AT+SSLCFG="clientcert",88,"client.crt"        //设置客户端证书文件为client.crt

OK
AT+SSLCFG="clientkey",88,"client.key"         //设置客户端密钥文件为client.key

OK
AT+SSLCFG="seclevel",88,2                     //设置认证模式为双向认证

OK
AT+MCONFIG=air780eSe,root,air780eSe

OK
AT+SSLMIPSTART="asfalyd.iot.gz.baidubce.com","1884"    //注意端口号为1884

OK

CONNECT OK
AT+MCONNECT=1,60

OK

CONNACK OK
AT+MSUB="$iot/air780eSe/user/air780e",0                        //订阅主题

OK

SUBACK

AT+MPUB="$iot/air780eSe/user/air780e",0,0,"hello world"            //上报消息到服务器

OK

+MSUB: "$iot/air780eSe/user/air780e",11 byte,hello world        //收到服务器下发消息

七、总结

本文详细介绍了如何使用 Air780E 核心板通过 AT 指令集和百度云物联网平台实现物联网设备的连接与管理。

通过本文的学习,大家可以掌握如何使用 Air780E 核心板 AT 指令和百度云物联网平台实现物联网设备的连接与管理。

八、参考资料

8.1 合宙 Air780E 模组资料中心

https://docs.openluat.com/air780e/

九、使用到的工具

https://docs.openluat.com/air_tools/

十、常见问题

10.1 连接服务器失败

1.检查 SIM 卡是否欠费,模块信号、网络注册、网络附着、PDP 激活状态。

2.PC 端使用 mqtt 工具,连接服务器确认一下是否可以连接成功,排除服务器故障。

3.在 MIPSTART /SSLMIPSTART 返 回 CONNECT OK 后 才 能 发 MCONNECT 命令,而且不要立即发,否则会被服务器踢掉(建议延时500ms再发送)。

4.检查鉴权证书内容是否正确。

10.2 MQTT 链接总是断开是什么原因?

1.PC 端使用 mqtt 工具,连接服务器测试服务器稳定性,排除服务器不稳定因素。

2.检查下模块信号弱导致网络不稳定,例如地下室、电梯、山区,天线匹配问题等。

3.检查是否因为长时间无数据通讯导致服务器主动断开连接,需要根据实际情况设置 mqtt keep alive 时间。

给读者的话

本篇文章由 Murphy开发;

本篇文章描述的内容,如果有错误、细节缺失、细节不清晰或者其他任何问题,总之就是无法解决您遇到的问题;

请登录合宙技术交流论坛,点击文档找错赢奖金-Air780E-AT-软件指南-应用实例-百度云

用截图标注+文字描述的方式跟帖回复,记录清楚您发现的问题;

我们会迅速核实并且修改文档;

同时也会为您累计找错积分,您还可能赢取月度找错奖金!