我是靠谱客的博主 明亮嚓茶,最近开发中收集的这篇文章主要介绍关于NB-IOT模块链接阿里物联网平台的学习笔记-记录叙述调试思路总结调试过程AT命令-方式一AT命令-方式二AT命令-方式三软件关于遇到问题总结,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

关于NB-IOT模块链接阿里物联网平台思路的学习笔记-记录

  • 叙述
  • 调试思路总结
  • 调试过程
  • AT命令-方式一
  • AT命令-方式二
  • AT命令-方式三
  • 软件
  • 关于遇到问题
  • 总结

叙述

前一段是写了一篇“关于调试模块BC26-移远NB模块-过程所遇问题-记录”,记录了使用BC26上传到阿里数据的相关流程,而这篇算是第二篇,专门记录使用NB物联网模块,调试AT命令连接阿里云过程。

调试思路总结

个人理解,几乎大部分链接网络模块,都差不多,遵循这相似的规则,即接受AT命令,通过AT指令完成,登录网络,注册设备,上传数据,然后关闭
就像以前有个笑话,问把大象装进冰箱需要几步,答需要三步,第一步打开冰箱,第二步把大象装进去,第三步关上冰箱门,只不过模块上传前多了一步注册,就是告诉网络,你是谁。

调试过程

这个流程大致分3个步骤为“连接好的物理NB-iot硬件”,"在阿里物联网平台上建立产品和设备"和“在电脑上调试AT命令调试”。
第一步:连接好的物理NB-iot硬件
链接好硬件,要保证有个串口模块链接到NB模块上,并且有SIM卡,并且通过串口软件调试。
1)发送AT+CIMI命令,能够获取SIM卡号
2)发送AT+CSQ命令,能够查到信号值
3)发送AT+CGATT?命令,能附着上网络
第二步:在阿里物联网平台上建立产品和设备
这个需要在阿里物联网平台建立设备,这一步主要是取得3个重要参数。
第三步:在电脑上调试AT命令调试
这一步是AT命令调试,在下面,提供了3种调试方式,前两种是主要的调试方式,通过不同的命令,让模块完成相应的格式。

AT命令-方式一

第一种使用AT命令连接阿里物联网平台的方式,是在购买BC26模块时提供的资料。只要你在阿里物联网平台,设备上,获取三个值"ProductKey":, “DeviceName”: “DeviceSecret”,就能调试,也就是之前那篇使用的调试。
以下所有命令还是使用BC26,如不是BC26需要根据手册找想要AT指令格式
在这里插入图片描述
1)登录阿里云(使用IP地址方式:测试需要连接时间稍快):
AT+QMTOPEN=0,“139.196.135.135”,1883
或者(使用域名方式:测试连接时间稍慢):
AT+QMTOPEN=0,“iot-as-mqtt.cn-shanghai.aliyuncs.com”,1883
2)注册ID(第二个参考自己定,最好和DeviceName值一样):AT+QMTCONN=0,123456789
3)注册设备(需要三个参数,在阿里找到后替换):at+qmtcfg=“aliauth”,0,“ProductKey”,“DeviceName”,“DeviceSecret
4)上传数据(要符合ALINK json格式):AT+QMTPUB=0,0,0,0,"/sys/ProductKey/DeviceName/thing/event/property/post","{“id”:“26”,“version”:“1.0”,“params”:{“CurrentTemperature”:{“value”:5.000000},“CurrentHumidity”:{“value”:5.000000}},“method”:“thing.event.property.post”}
或者(不符合ALINK json格式,依然能发上去,但是阿里会报错,待解决):
AT+QMTPUB=0,0,0,0,“/sys/ProductKey/DeviceName/thing/event/property/post”,“hello MQTT.(这里发你想发的字符串)

AT命令-方式二

其实无论是方式一还是方式二,本质上流程是差不多的。只不过方式二,不先登录阿里云,而是采用合成域名的方式,所以在调试AT命令前需要使用软件合成域名,如下图,这个软件放到软件下,需要的可下载,合成完后可以使用了。
在这里插入图片描述
1)使用合成域名登录阿里云(尝试过转IP,stm32还没找到,只能手动转):
AT+QMTOPEN=0,”xxxxx.iot-as-mqtt.cn-shanghai.aliyuncs.com(MQTT合成后域名)”,1883
注:关于手动转IP,win下只要打开CMD,ping域名就会自动转IP.例:www.baidu.com >> [220.181.38.150]
在这里插入图片描述
2)注册设备的账号和密码。依然从软件中获取,
AT+QMTCONN=0,”ClientID”,”UserName”,”Password
3)发送数据:
AT+QMTPUB=0,0,0,0,“属性上报”,“数据内容

AT命令-方式三

第三种方式,最开始时在代码中,看到的,不过需要知道服务器IP地址和端口号,尝试过阿里IP地址和端口号,未能成功,此方式有待进步调试。
在这里插入图片描述

软件

MQTT域名合成软件:https://download.csdn.net/download/qq_22146161/13765526

关于遇到问题

(1)引号符问题
在调试过程中,多一个少一个引号,都会报错误提示,将命令转为单片机代码的时候,要尤其注意这一点。很容易就无法执行。报错,当AT命令内自带引号时,需要加上“”反斜杠,让编译器识别出来。
(2)换行符问题
在串口软件调试模块的时候,可能软件已经自带"rn”换行符选项,在调试代码的时候,就需要自己在命令后加上,否则就有可能不成功。
(3)NB模块总是向串口打印信息
如下图,模块总是通过串口打印类似这周“Leaving the RBOM”信息,其实这是开机信息,说明你的模块总在重启,而引发这种原因就是,可能你使用的模块供电需要5V,而你供电3.3V,或者是电流不够。
l类似于这样
(4)返回值非“0”问题
模块带的文档都会,对返回值有所说明,查相应手册能够知道对应原因,虽然大部分情况下0是我门们希望看到,但也要能查到其它数值含有,例如下面这个+QMTSTAT:0,1 查过手册后,其实就是告诉你,模块断开链接了。
在这里插入图片描述

(5)格式错误问题
多一个空格,少个空格,很多情况下,我们调试用的软件无法用一排装下AT命令,换行的时候,如果从文档或者其它地方复制来的命令,很容易造成格式错误,报ERROR,这时你就会想,明明我是复制来的,怎么就是不好用呢,这时你就要检查,下一行是否自动换行,还是中间因为复制原因,有换行符。如下,
在这里插入图片描述

总结

这就是这次想说的全部内容了,有什么问题,有欢迎一同讨论,进步。

最后

以上就是明亮嚓茶为你收集整理的关于NB-IOT模块链接阿里物联网平台的学习笔记-记录叙述调试思路总结调试过程AT命令-方式一AT命令-方式二AT命令-方式三软件关于遇到问题总结的全部内容,希望文章能够帮你解决关于NB-IOT模块链接阿里物联网平台的学习笔记-记录叙述调试思路总结调试过程AT命令-方式一AT命令-方式二AT命令-方式三软件关于遇到问题总结所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(53)

评论列表共有 0 条评论

立即
投稿
返回
顶部