mqtt 串口_移柯L620模组使用MQTT协议连接移动OneNet云平台-程序员宅基地

技术标签: mqtt如何判断设备离线  mqtt 串口  mqtt调试助手  mqtt调试工具  华为云平台 mqtt profile 文件  stm32连接阿里云mqtt  

436e9b8fd85c85cb55af2f0e0c9215f3.gif

点击上方蓝色字体,关注我们

1

硬件基础

最近调测移柯L620 NB-IoT模组, 特申请调测L620开发板(L620_ EVB),其专门为评估和测试L620模块而设计的,用于帮助开发人员进行开发、调试、测试L620模块。下图及其标注显示了L620开发板的主要功能。

1f2eab99af4bafadb6e540d9065f96e9.png ea2b5481d4ed282b6c9b782c8bbcb840.png

L620是一款封装小,性能稳定可靠,LCC封装的NB-IoT模块,支持3GPP R13/R14规范下涵盖的低频/中频/高频全频段运作。L620的尺寸仅为17.6*15.8*2.3mm,可以满足客户对小尺寸模块产品的需求,同时方便客户减小产品尺寸并优化产品成本;采用的LCC封装可通过标准的SMT设备实现模块的快速生产,使其特别适用于各种IoT产品和设备中。 

54ba1094fee67e1def518ab0ea8251a7.png

其特性如下: 

82f615111690a591da52d0253f758066.png

1

云端部署

 第1步:登录中国移动OneNet官网,注册账号。

1956d2f1a897022feac2530e34ed1310.png

填写注册信息。 

6ff133a8178ce1d16aa15c0863cccf0f.png

OneNET提供企业认证、个人认证两种认证方式,注册账号完成后,用户可以可以根据实际需要选择一种方式进行认证,不同的认证等级具有不同的资源使用权限。

fd75a862de5796c3c310b88d9e3f9645.png

第2步:进入开发者中心,基于MQTT协议,创建物联网产品,这里使用旧版的MQTT协议,在多协议接入中(为什么不使用最新的MQTT物联网套件服务?臣妾没调通啊!,后期追更)。

668f2f0a4e781f37aad23266990c7f97.png af0735601b33b9aa6aa8829ef8cd7b35.png 3f2347a61d61b9ab827ed5878283c10e.png

填写产品信息,从这里开始,请各位小伙伴仔细参照云端的开发文档,理解相关的配置属性,即使官网的文档可读性真的差劲。

d824fdaca2d84ee4014c75cda8c3a6a6.png

添加产品成功。

e3d73fe2188c043c4607adda784cd42a.png

 第3步:创建产品下的设备,准备创建两个设备。

7024194771c28e62d260908e99ce6f9a.png

创建设备:Sub_Node,鉴权信息为:1234。

73335a4c07401ced85c826f651da9ffb.png

 创建设备:Pub_Node,鉴权信息为:5678。

8cd1ba39aeed6326badb9af51d5bf76c.png

创建成功后为离线状态,可以查看其详细信息。

3e40091888f7abbf571a79d40263e1d6.png

NB-IoT云端通信将会使用到的核心参数。

8d777c187f66fe75f0898a7ed47250e5.png

全部创建完成后,可以查看产品概况信息。

bf6d7e18c7759b977b447a75c1b91204.png

1

软件调测

使用OneNet平台提供的调测软件进行测试。

e23a454ad662bf7d7043b9728d7c4321.png

下载完成后,查看打开MQTT软件,软件具体说明如下:

ccec60f4d3ef8fcf71a38a1ce23de9d2.png

要想理解深刻,请一定、一定要读开发文档,举个例子,服务器IP、端口是多少?开发文档中有明确说明。

93dd3a702f42f88b7d3f762ede2689f2.png

订阅、发布测试

第1步:打开MQTT调测软件,分别创建:Sub_Node和Pub_Node两个模拟设备应用。

dcbff5a616f79f9e3cfd2e286adb5e9a.png

第2步:Sub_Node虚拟设备开启设备订阅Topic,Pub_Node虚拟设备开启设备发布Topic,实现Pub_Node虚拟设备发布Topic后,Sub_Node虚拟设备可以订阅接收到Topic。

d0b2134872bca9558f12adec3a67aa3c.png 6b6ad393925c08a434312fe37613874d.png

此时可以在Sub_Node虚拟设备的收到的Topic中查看到Pub_Node虚拟设备发送的Topic数据。

1a78e0f59972aad7818efa664961bc27.png

由说明文档可知,可自定义创建Topic,Topic名字,只能由英文,下划线,反斜杠组成,最长1024个字符,同一产品下topic name不重复,每个产品最多100个Topic。

4f8b9e9b9c29dbb44882c88281940e1e.png
  • 设备通过发送HTTP请求进行topic的创建操作;

  • 平台收到请求后创建topic并返回结果。

请求及响应定义如下:

206281a805b0a7a58118382b76608a47.png

订阅过程解析如下: 说明文档中对订阅和取消订阅也进行了说明,具体如下所示。

168ce43b43ef53254b33020a4df87351.png
  • 设备发起订阅请求.(报文格式参考4.9);

  • 平台收到请求后更新topic列表;

  • 平台给设备回复SubAck. (报文格式参考4.10);

  • 注:subscribe的request qos级别可以为0、1、2。

 取消订阅过程解析如下:

9968f1b41bb0d314160842b0b3b910cb.png
  • 设备发起取消订阅请求. (报文格式参考4.11);

  • 平台收到请求后更新topic列表;

  • 平台给设备回复UnSubAck. (报文格式参考4.12)。

OneNet平台指令接收调测

随便关闭其中一个MQTT虚拟设备,保留一个可以实现下述操作,这里我保留Sub_Node虚拟设备。

在OneNet更多操作中点击下发命令。

f4517d943ca203c5a8a78e966fa4fc9a.png fc3ca53b14c7d2bfc5a1a8b47fb722ed.png

这里我下发字符串类型数据。 

ecf59161ae6d744c612b82ec5a232a6f.png

在虚拟设备中可以查看到下发的数据。

a1958bb75e1475403c0096240ca58ae3.png

可以对下发的数据进行响应回复。

bc50ac2a921231de0e202abe55938244.png

如何得到Tocpic的呢 ,请参考相关手册,这里不再赘述,有疑问的小伙伴可以下方留言交流。

OneNet平台上传数据点

上传数据点有7种数据类型和3种Qos级别,具体方式参见说明文档。

5df91818bcf05e0f4e5c29a053ae4e1e.png

这里我使用第3种数据类型上传数据点,Qos级别默认为0,也就是设备发布Qos0消息(上报数据点),平台收到上报数据点后保存起来。数据流会自动创建sensor节点,并保存数值。

1b2bc21fb165a508ab6b51af2f48b45b.png

4

L620模组调测

订阅、发布测试

第1步:打开串口调试助手,查看模组的入网配置信息,指令如下:

AT+CEREG?  //检查网络状态+CEREG: 0,2OKCT-Self Register: Have already registered!AT+CESQ  //检查信号质量+CESQ: 34,0,255,255,26,58OKAT*MBAND?  //查看频道*MBAND: 5OKAT+CIICR  //启动与NB-IoT网络的无线连接OK+IP: 10.214.60.155

第2步:网络配置无误后,与OneNet平台建立MQTT连接,这里使用OneNet平台上的Sub_Node节点完成下述操作。

AT+EMQNEW="183.230.40.39","6002",12000,2000  //建立新的MQTT连接

+EMQNEW: 0OK

指令解析如下:

1995036f1fd0a1d427110232bfac8050.png 510132fc5a46bbf01b38f1044d874b88.png
AT+EMQCON=0,4,"571461182",1000,0,0,"296803","1234"  //发送MQTT连接包OK

 指令解析如下:

1ebf1d4b1301f661aaf2364a7756b64a.png 98f2f309be1d65b0edf88aa4ec220ecd.png

 建立连接成功后可以看到云端设备是在线状态。

d4166e062a424cadd8fcaf06b1854639.png

第3步:建立Topic订阅,订阅Topic为”pub_topic“的消息,指令如下所示:

AT+EMQSUB=0,"pub_topic",1  //Topic订阅OK

指令解析如下:

9e0299d74e19897c592b4bb68560b615.png

第4步:建立Topic发布,发布Topic为”pub_topic“的消息(字符串、十六进制转换在线工具),指令如下所示:

AT+EMQPUB=0,"pub_topic",0,0,0,22,"68656c6c6f20776f726c64"  //Topic发布,发送hello world的十六进制OK

指令解析如下:

babde547d3b4321fb44c2820e2078f3e.png

数据点订阅、发布

之前使用MQTT工具上传数据点,云端会自动在相应的设备中建立该数据点,接下来使用OneNet平台数据流模板创建数据点,并简要讲解其的使用。

1b2bc21fb165a508ab6b51af2f48b45b.png

第1步:添加数据流模板。

b40a7b983a01b1de60869ccfe694fd74.png a14b16e8d0e7a99a759fc48e1049bcde.png

基于数据流模板创建的数据点是公共的,此时可以看到设备Sub_Node和Pub_Node均有sensor_1122数据点。

8621ddf74480c8fea97e429e75b84299.png

第2步:订阅数据点,指令如下所示: 

AT+EMQSUB=0,"/571461182/sensor",1  //数据点订阅OK

 "/571461182/sensor"参数参照说明文档,具体如下所示:

9d23a301367c6e4def35f58da44edf30.png

第3步:若修改数据点数值原理以及操作和发布一致,指令如下所示:

AT+EMQPUB=0,"$dp",1,0,0,42,"0300127b2273656e736f725f31313232223a38387d"  //发送数据点{
     "sensor_1122":88}OK

Sub_Node设备下的sensor_1122数据点效果如下所示:

5395d8c835dff4419770306daead9711.png

这条指令较为复杂,具体解析如下:

  • 数据点的Topic为 ”$dp“,参照说明手册,具体如下:

ed7bc8669e12cc5488d2721945eac422.png
  •  长度为42,后面的数据为字符串类型,每一位都是一个字符长度,共42位:"0300127b2273656e736f725f31313232223a38387d"

  • "0300127b2273656e736f725f31313232223a38387d" 代表含义参照下表,我使用的是数据类型3上传数据点,03代表数据点类型为第3种;0012代表后面数据字符的长度,后面的数据都是十六进制共18个,转换为十六进制是12,低位数据足够装载,故0012(转换为十六进制由于AT+EMQPUB指令只可以发十六进制,参照该指令说明);7b2273656e736f725f31313232223a38387d是{"sensor_1122":88}字符串的十六进制。

a03c54f34d88b3505c1dc6f16000c7e5.png 6cebcb2b2b8ec9cabe99ca2ec6a0f1bd.png 往期推荐
  • 移远BC20模组使用LwM2M协议接入华为IoT平台

  • 移远BC95使用CoAP协议接入华为IoT平台

  • AI人脸识别身份认证系统(4)—人脸识别

83a6813b8e1d333e7cdb6f888ca7d5f2.png 8ec7997405a7d7d8ec83fef27fa3df99.gif点击 阅读原文,更精彩~
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39778393/article/details/111047916

智能推荐

稀疏编码的数学基础与理论分析-程序员宅基地

文章浏览阅读290次,点赞8次,收藏10次。1.背景介绍稀疏编码是一种用于处理稀疏数据的编码技术,其主要应用于信息传输、存储和处理等领域。稀疏数据是指数据中大部分元素为零或近似于零的数据,例如文本、图像、音频、视频等。稀疏编码的核心思想是将稀疏数据表示为非零元素和它们对应的位置信息,从而减少存储空间和计算复杂度。稀疏编码的研究起源于1990年代,随着大数据时代的到来,稀疏编码技术的应用范围和影响力不断扩大。目前,稀疏编码已经成为计算...

EasyGBS国标流媒体服务器GB28181国标方案安装使用文档-程序员宅基地

文章浏览阅读217次。EasyGBS - GB28181 国标方案安装使用文档下载安装包下载,正式使用需商业授权, 功能一致在线演示在线API架构图EasySIPCMSSIP 中心信令服务, 单节点, 自带一个 Redis Server, 随 EasySIPCMS 自启动, 不需要手动运行EasySIPSMSSIP 流媒体服务, 根..._easygbs-windows-2.6.0-23042316使用文档

【Web】记录巅峰极客2023 BabyURL题目复现——Jackson原生链_原生jackson 反序列化链子-程序员宅基地

文章浏览阅读1.2k次,点赞27次,收藏7次。2023巅峰极客 BabyURL之前AliyunCTF Bypassit I这题考查了这样一条链子:其实就是Jackson的原生反序列化利用今天复现的这题也是大同小异,一起来整一下。_原生jackson 反序列化链子

一文搞懂SpringCloud,详解干货,做好笔记_spring cloud-程序员宅基地

文章浏览阅读734次,点赞9次,收藏7次。微服务架构简单的说就是将单体应用进一步拆分,拆分成更小的服务,每个服务都是一个可以独立运行的项目。这么多小服务,如何管理他们?(服务治理 注册中心[服务注册 发现 剔除])这么多小服务,他们之间如何通讯?这么多小服务,客户端怎么访问他们?(网关)这么多小服务,一旦出现问题了,应该如何自处理?(容错)这么多小服务,一旦出现问题了,应该如何排错?(链路追踪)对于上面的问题,是任何一个微服务设计者都不能绕过去的,因此大部分的微服务产品都针对每一个问题提供了相应的组件来解决它们。_spring cloud

Js实现图片点击切换与轮播-程序员宅基地

文章浏览阅读5.9k次,点赞6次,收藏20次。Js实现图片点击切换与轮播图片点击切换<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> <script type="text/ja..._点击图片进行轮播图切换

tensorflow-gpu版本安装教程(过程详细)_tensorflow gpu版本安装-程序员宅基地

文章浏览阅读10w+次,点赞245次,收藏1.5k次。在开始安装前,如果你的电脑装过tensorflow,请先把他们卸载干净,包括依赖的包(tensorflow-estimator、tensorboard、tensorflow、keras-applications、keras-preprocessing),不然后续安装了tensorflow-gpu可能会出现找不到cuda的问题。cuda、cudnn。..._tensorflow gpu版本安装

随便推点

物联网时代 权限滥用漏洞的攻击及防御-程序员宅基地

文章浏览阅读243次。0x00 简介权限滥用漏洞一般归类于逻辑问题,是指服务端功能开放过多或权限限制不严格,导致攻击者可以通过直接或间接调用的方式达到攻击效果。随着物联网时代的到来,这种漏洞已经屡见不鲜,各种漏洞组合利用也是千奇百怪、五花八门,这里总结漏洞是为了更好地应对和预防,如有不妥之处还请业内人士多多指教。0x01 背景2014年4月,在比特币飞涨的时代某网站曾经..._使用物联网漏洞的使用者

Visual Odometry and Depth Calculation--Epipolar Geometry--Direct Method--PnP_normalized plane coordinates-程序员宅基地

文章浏览阅读786次。A. Epipolar geometry and triangulationThe epipolar geometry mainly adopts the feature point method, such as SIFT, SURF and ORB, etc. to obtain the feature points corresponding to two frames of images. As shown in Figure 1, let the first image be ​ and th_normalized plane coordinates

开放信息抽取(OIE)系统(三)-- 第二代开放信息抽取系统(人工规则, rule-based, 先抽取关系)_语义角色增强的关系抽取-程序员宅基地

文章浏览阅读708次,点赞2次,收藏3次。开放信息抽取(OIE)系统(三)-- 第二代开放信息抽取系统(人工规则, rule-based, 先关系再实体)一.第二代开放信息抽取系统背景​ 第一代开放信息抽取系统(Open Information Extraction, OIE, learning-based, 自学习, 先抽取实体)通常抽取大量冗余信息,为了消除这些冗余信息,诞生了第二代开放信息抽取系统。二.第二代开放信息抽取系统历史第二代开放信息抽取系统着眼于解决第一代系统的三大问题: 大量非信息性提取(即省略关键信息的提取)、_语义角色增强的关系抽取

10个顶尖响应式HTML5网页_html欢迎页面-程序员宅基地

文章浏览阅读1.1w次,点赞6次,收藏51次。快速完成网页设计,10个顶尖响应式HTML5网页模板助你一臂之力为了寻找一个优质的网页模板,网页设计师和开发者往往可能会花上大半天的时间。不过幸运的是,现在的网页设计师和开发人员已经开始共享HTML5,Bootstrap和CSS3中的免费网页模板资源。鉴于网站模板的灵活性和强大的功能,现在广大设计师和开发者对html5网站的实际需求日益增长。为了造福大众,Mockplus的小伙伴整理了2018年最..._html欢迎页面

计算机二级 考试科目,2018全国计算机等级考试调整,一、二级都增加了考试科目...-程序员宅基地

文章浏览阅读282次。原标题:2018全国计算机等级考试调整,一、二级都增加了考试科目全国计算机等级考试将于9月15-17日举行。在备考的最后冲刺阶段,小编为大家整理了今年新公布的全国计算机等级考试调整方案,希望对备考的小伙伴有所帮助,快随小编往下看吧!从2018年3月开始,全国计算机等级考试实施2018版考试大纲,并按新体系开考各个考试级别。具体调整内容如下:一、考试级别及科目1.一级新增“网络安全素质教育”科目(代..._计算机二级增报科目什么意思

conan简单使用_apt install conan-程序员宅基地

文章浏览阅读240次。conan简单使用。_apt install conan

推荐文章

热门文章

相关标签