0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

BC20-NBIOT模块通过MQTT协议连接华为云服务器调试

DS小龙哥-嵌入式技术 来源:DS小龙哥-嵌入式技术 作者:DS小龙哥-嵌入式技 2022-05-28 14:13 次阅读

当前这篇文章介绍STM32+BC20连接华为云物联网平台,实现与上位机之间进行数据交互,完成真实的产品开发。

1.1 BC20模块

BC20是一款高性能、低功耗、多频段、支持 GNSS 定位功能的 NB-IoT 无线通信模块。BC20 在设计上兼容移远通信 GSM/GPRS/GNSS 系列的 MC20 模块,方便客户快速、灵活的进行产品设计和升级。BC20 提供丰富的外部接口和协议栈,同时支持中国移动 OneNET 物联网云平台,为客户的应用提供极大的便利。

BC20支持北斗、GPS、QZSS 等多星座卫星系统解调算法,其定位更加精准,抗多路径干扰能力更强,比传统的单GPS 模块具有更多优势。另外,BC20 模块中内置 LNA 和低功耗算法:前者保证更高的灵敏度,后者保证低功耗模式下更低的耗流。

BC20 模块较传统 NB-IoT+GNSS 方案体积减少 40%。凭借其紧凑尺寸、超低功耗和超宽工作温度范围,BC20 在各种应用中占具更大优势;其主要应用领域为:自行车和摩托车防盗、宠物追踪、金融财产追踪及行车记录仪等等。

C20 模块集成了 NB-IoT 和 GNSS(GPS+BeiDou) 双系统,在网络交互的同时, 实现 GNSS 系统的
快速、精准定位, 满足客户低功耗与高定位精度的应用场景。

相比传统的具有单一 GPS 功能的模块, BC20 的主要优势如下:

a. 内嵌的 GNSS 模块,支持 GPS+BeiDou 双系统定位: 相同环境下可使用的卫星数量更多, 搜星的
b. 时间更短, 可加快定位速度, 提高定位精度;
c. NB 和 GNSS 组合的小尺寸模块, 具备优良的环境适应性, 具备低功耗、抗干扰、高精度的特性;
d. 内置 Sensor Hub 及领先的 PDR 算法,完美提升定位精度;
e. 智能的 AGPS 辅助定位功能,加快冷启动模式下的定位速度

淘宝商店地址: https://m.tb.cn/h.fOCCkgV?sm=5ffdfe?tk=MkB92eHI0ZV

image.png

模块上有两排接口,一个是GPS信号输出接口,一个是BC20控制接口。

使用USB转TTL模块,将BC20板子与电脑连起来,调试板子是否正常。

1.2 测试模块

第一步接上之后,串口调试助手选择波特率为115200,勾选软件上的发送新行选项。发送AT过去,正常模块会返回OK

image.png

1.3 上电初始化操作

查询模块是否正常
AT

OK


获取卡号,查询卡是否插好
AT+CIMI

460041052911195

OK


激活网络
AT+CGATT=1

OK


获取网络激活状态
AT+CGATT?

+CGATT: 1

OK


查询网络质量
AT+CSQ

+CSQ: 26,0

OK
    
AT+CEREG=? //检查网络状态
+CEREG: 0,1 //找网成功
OK

1.4 开启GPS定位

官方文档:

image.png
激活GPS,要等一段时间
AT+QGNSSC=1

OK


查询激活状态,1表示成功激活
AT+QGNSSC?

+QGNSSC: 1

OK


获取一次GPS定位语句
AT+QGNSSRD="NMEA/RMC"
+QGNSSRD: $GNRMC,120715.00,A,3150.78179,N,11711.93433,E,0.000,,310818,,,A,V*19
OK

1.5 连接MQTT服务器

下面通过MC20的AT指令连接华为云服务器,上传数据测试。

官方文档:

image.png
连接MQTT服务器
AT+QMTOPEN=0,"a161a58a78.iot-mqtts.cn-north-4.myhuaweicloud.com",1883

OK

+QMTOPEN: 0,0


登录MQTT服务器
命令格式: AT+QMTCONN=,,,
AT+QMTCONN=0,"6210e8acde9933029be8facf_dev1_0_0_2022021913","6210e8acde9933029be8facf_dev1","6cea55404b463e666cd7a6060daba745bbaa17fe7078dfef45f8151cdf19673d"

OK

+QMTCONN: 0,0,0


订阅主题
命令格式: AT+QMTSUB=,,"”,[,"”,…]

AT+QMTSUB=0,1,"$oc/devices/6210e8acde9933029be8facf_dev1/sys/messages/down",2

OK

+QMTSUB: 0,1,0,2


发布主题
命令格式:AT+QMTPUB=,,,,"",""

先发送指令: 
AT+QMTPUB=0,0,0,0,"$oc/devices/6210e8acde9933029be8facf_dev1/sys/properties/repor"

等待返回 ">" 
接着发送数据.不需要加回车。
"{"services": [{"service_id": "gps","properties":{"longitude":12.345,"latitude":33.345}}]}"
数据发送完毕,再发送结束符。 十六进制的值--0x1a  。某些串口调试助手可以适应ctrl+z 快捷键输入0xA
等待模块返回"OK",到此数据发送完成。    
OK

+QMTPUB: 0,0,0


审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 物联网
    +关注

    关注

    2903

    文章

    44212

    浏览量

    370868
  • STM32
    +关注

    关注

    2265

    文章

    10868

    浏览量

    354642
  • 无线通信模块

    关注

    10

    文章

    58

    浏览量

    32778
  • 华为云
    +关注

    关注

    3

    文章

    2423

    浏览量

    17284
收藏 人收藏

    评论

    相关推荐

    移远 华为 NBIOT BC95 规格 说明 手册 应用

    移远基于华为海思平台开发出了第一款NBIOT物联网通信模块BC95, 它可被用于无线抄表(电表,水表,燃气表)、共享单车、智能停车、智慧城市、安防、资产追踪、智能家电、农业和环境监测,
    发表于 09-10 22:22

    c语言连接华为MQTT服务器

    `1、用的鸿蒙系统,3861芯片,连接华为MQTT服务器2、已经确保了wifi网络已经连接,而且确保了用工具可
    发表于 03-31 11:55

    c语言连接华为MQTT服务器,始终没连接上,已贴出代码图

    1、用的鸿蒙系统,3861芯片,连接华为MQTT服务器2、已经确保了wifi网络已经连接,而且确保了用工具可
    发表于 03-31 12:00

    stm32+W5500 与 阿里微消息队列 MQTT版本

    : MDK(Keil v5)、MQTT 调试工具注意: 此处要连接服务器是阿里MQTT
    发表于 07-23 10:55

    使用EsP8266(NodeMCU)连接阿里服务器

    Esp8266【NodeMCU】连接阿里服务器创建阿里产品添加设备Esp8266代码MQTT_PASSWD密码生成工具修改PubSubC
    发表于 11-24 06:23

    esp8266怎样通过MQTT协议连接阿里

    STM32F103单片机应用WIFI模块esp8266通过MQTT协议连接阿里:复制这段内容后
    发表于 11-26 08:24

    通过MQTT连接服务器的步骤分享

    概述这几天查阅了很多的MQTT相关的资料,结果发现查到了太多底层的东西。根本没有太大的作用,浪费了很多时间。在掌握基本的MQTT的概念后,我发现只用掌握连接服务器,订阅话题,发布话题这
    发表于 02-15 07:35

    hi3861通过mqtt连接华为时代码报错是为什么

    在用hi3861通过mqtt连接华为时,代码出现报错
    发表于 04-08 10:18

    基于OpenHarmony的华为IoT智慧路灯实现

    程序设计华为IoT任务主要处理消息队列里的信息。任务启动后,通过SetWifiModeOn连接WIFI;WIFI连接成功后,初始化
    发表于 05-10 09:36

    基于OpenHarmony的华为IoT智慧路灯

    IoT任务主要处理消息队列里的信息。任务启动后,通过SetWifiModeOn连接WIFI;WIFI连接成功后,初始化MQTT协议栈,
    发表于 05-11 10:06

    如何使用MQTT客户端连接阿里MQTT服务器详细教程说明

    ,是技小新针对阿里MQTT服务器连接过程中的痛点,自己编写的一个电脑程序,用来生成连接阿里
    发表于 05-29 17:57 29次下载
    如何使用<b class='flag-5'>MQTT</b>客户端<b class='flag-5'>连接</b>阿里<b class='flag-5'>云</b><b class='flag-5'>MQTT</b><b class='flag-5'>服务器</b>详细教程说明

    使用AM20E连接私有MQTT服务器的教程详细说明

    AM20E是一款超低功耗、业内体积最小、内置esim的NBIOT模组。支持精简AT指令集,支持MQTT、COAP、TCP、UDP、HTTP等协议。支持eDRX、支持蓝牙、支持AT指令自
    发表于 03-02 08:00 12次下载
    使用AM<b class='flag-5'>20</b>E<b class='flag-5'>连接</b>私有<b class='flag-5'>MQTT</b><b class='flag-5'>服务器</b>的教程详细说明

    Esp8266(NodeMCU)连接阿里服务器

    Esp8266【NodeMCU】连接阿里服务器创建阿里产品添加设备Esp8266代码MQTT_PASSWD密码生成工具修改PubSubC
    发表于 11-16 10:21 18次下载
    Esp8266(NodeMCU)<b class='flag-5'>连接</b>阿里<b class='flag-5'>云</b><b class='flag-5'>服务器</b>

    中移M5311型号NBIoT模组MQTT开发记

    由于公司项目需求,需要NBIoT模组,采用MQTT协议连接自有服务器,之前挑选的是使用安信可的N92模块
    发表于 12-03 17:21 8次下载
    中移M5311型号<b class='flag-5'>NBIoT</b>模组<b class='flag-5'>MQTT</b>开发记

    串口服务器连接MQTT服务器方法说明

    串口服务器连接MQTT服务器方法参考“串口服务器用户手册”,不再重复说明。
    发表于 03-30 09:58 4578次阅读
    串口<b class='flag-5'>服务器</b><b class='flag-5'>连接</b><b class='flag-5'>MQTT</b><b class='flag-5'>服务器</b>方法说明