NB-IoT模块

目录

一. NB-IoT模块实物图

二. BC20/NB-IoT模块产品规格

三. 指令顺序

1. AT判断BC20模组是否正常

2. ATE0返回OK,已经返回回显

3. AT+CSQ

4. AT_CEREG?

5. AT+CGATT?

6. AT+CGATT?

四. OneNet 连接

1.  AT 查看 NB(当前NB),云平台根据这两个数值,连接NB

2.  检测SIM卡的状态 AT+CPIN?

五. ONENET

1. ONENET网站链接:https://open.iot.10086.cn/console/product/own

2. 生成产品,添加设备

3. 传输数据

五. 最后完整结果

六. 如何移植

1.main 里面 更改AT指令连接OneNet和发送需要传输的数据的AT指令

2.添加 apply.c apply.h

3.添加 uart.c uart.h

七. 参考教学网址

八. 链接


一. NB-IoT模块实物图

二. BC20/NB-IoT模块产品规格

BC20 是一款高性能,低功耗,多频段,支持GNSS定位功能的NB-IOT无线通信模块,供电电压:2.1V-3.63V,典型值3.3V

丰富的协议栈:UDP/TCP/MQTT/HTTP等

内置GNSS芯片:支持BeiDu,GPS和AGPS。

窄带物联网,带宽有180KHz,能直接部署在GSM,UMTS,LTE网络,即2/3/4G的网络上,

芯片购买链接:QUECTEL移远B...-淘宝网 (taobao.com)

三. 指令顺序

1. AT判断BC20模组是否正常

2. ATE0返回OK,已经返回回显

3. AT+CSQ

参数

属性

分类

0 ->-113dbm或以下,1->-111dBm,2-30->-109至-53dBm,31->51dBm或以上,99->未知

整型。接收信号强度指示

0-7->RxQual 值,99->未知

整型。信道误码率(百分比)

4. AT_CEREG?

当<n>=0、1、2 或 3 且命令成功执行时:
+CEREG: <n>,<stat>[,[<tac>],[<ci>],[<AcT>[,<cause_typ
e>,<reject_cause>]]]

<stat> 整型。EPS 注册状态。
 0 未注册,MT 当前未搜索网络
 1 已注册,归属网络
 2 未注册,但 MT 当前正在尝试附着或搜索网络以进行注册
 3 注册被拒绝
 4 未知(例如:超出 E-UTRAN 覆盖范围)
 5 已注册,漫游状态

5. AT+CGATT?

<state> 整型。PDP 上下文激活状态。
0 去附着
1 附着
<err> 整型。错误码。详细信息,请参阅第 12 章

6. AT+CGATT?

确认 PDP 激活状态,1-代表已激活 0-代表未激活(决定是否能上网)

四. OneNet 连接

1.  AT 查看 NB(当前NB),云平台根据这两个数值,连接NB

AT+CGSN=1

+CGSN: 862177046278936(IMEI)

OK
AT+CIMI

460085667003776(IMSI)

OK

2.  检测SIM卡的状态 AT+CPIN?

五. ONENET

1. ONENET网站链接:https://open.iot.10086.cn/console/product/own

2. 生成产品,添加设备

AT+MIPLCREATE
+MIPLCREATE: 0 //成功创建通信套件实例。
OK

AT+MIPLADDOBJ=0,3311,1,"1",4,2 //添加 LwM2M 对象。
OK //成功添加对象,且将注册 ID 为 0 的实例。
/**
 *0 通信套件的实例ID
 *3311 是LwM2M对象ID,若对象ID不存在,则返回错误
 *1 实例个数
 *"1" 实例位图,比如"4"就是"1101",ID 0,2,3注册,ID 1不注册
 *4 是属性的个数,可读可写的
 *2 是可执行的资源个数
 */
AT+MIPLOPEN=0,86400 //向 OneNET 发送注册请求。
OK
+MIPLEVENT: 0,1 //开始连接到 Bootstrap 服务器。
+MIPLEVENT: 0,2 //成功连接到 Bootstrap 服务器。
+MIPLEVENT: 0,4 //成功连接到 OneNET 平台。
+MIPLEVENT: 0,6 //成功注册到 OneNET 平台。
+MIPLOBSERVE: 0,69234,1,3311,0,-1 //接收到订阅请求(3311/0)。
AT+MIPLOBSERVERSP=0,69234,1 //响应订阅请求,其结果码为 1。
OK

+MIPLDISCOVER: 0,26384,3311 //接收到发现资源请求。
AT+MIPLDISCOVERRSP=0,26384,1,19,"5850;5851;5706;5805" //使用资源 ID 列表响应发现资源请求。
OK

AT+MIPLDELOBJ=0,3311 //删除 LwM2M 对象。
OK
AT+MIPLCLOSE=0 //向 OneNET 平台发送注销请求。
OK
+MIPLEVENT: 0,15 //成功注销。
AT+MIPLDELETE=0
OK //成功删除通信套件实例

3. 传输数据

AT+MIPLNOTIFY=<ref>,<msgId>,<objId>,<insId>,<resId>,<valueType>,<len>,<value>,<index>,<flag>[,<ackid>]

<ref> 整型。OneNET 通信套件的实例 ID;范围:0-65535。
<msgId> 整型。消息 ID;出自 URC +MIPLOBSERVE。
<objId> 整型。LwM2M 对象 ID。
<insId> 整型。实例 ID;出自 URC +MIPLOBSERVE。
<resId> 整型。资源 ID;出自 URC +MIPLOBSERVE。
<valueType> 整型。<value>值的类型。
1 字符串类型
2 十六进制类型
3 整型
4 浮点型
5 布尔型(Boolean)
<len> 整型。<value>值的长度;单位:字节。
当<valueType>=1 时,该参数值为字符串类型<value>的长度,范围:0-1024。
当<valueType>=2 时,该参数值为十六进制字符串类型<value>的长度,范围:
0-512。
当<valueType>=3 时,该参数值可能为 2、4 或者 8。
当<valueType>=4 时,该参数值为 4。
当<valueType>=5 时,该参数值为 1。
<value> 数据。
当<valueType>=1 时,该参数值为带双引号的字符串类型格式。
当<valueType>=2 时,该参数值为十六进制字符串格式。
当<valueType>=3 时,该参数值为整型格式。
当<valueType>=4 时,该参数值为浮点型格式。
当<valueType>=5 是,该参数值为布尔型格式。
<index> 整型。消息序号。若待上报数据包含多条消息,则需要发送多次 AT 命令以完成
上报。例如,若待上报数据包含 N 条消息,则参数<index>需从 N-1 到 0 依次递
减,AT 命令按照<index>取值从大到小的顺序执行。<index>=0 表示数据中最后
一条消息。
<flag> 整型。指示消息,范围:0-2。
0 表示<value>中最后一条消息
1 表示<value>中第一条消息
2 表示<value>中中间消息
该版本仅支持<flag>=0。
<ackid> 整型。范围:0-65535。
0 上报的数据为不需要确认的消息
1-65535 上报的数据为需要确认的消息

五. 最后完整结果

AT

OK
BC20模组正常
ATE0

OK

+IP: 10.5.14.209

+IP: 2409:8d18:200:5bf3:17a2:38d5:e89a:1eeb
已经关闭回显

+CSQ: 23,0

OK
NB_Signal_Value=23

+CEREG: 0,1

OK
EPS网络注册成功

+CGATT: 1

OK
PS已附着

OK
GNSS打开命令已发送

+QGNSSC: 1

OK
GNSS电源已打开

+MIPLCREATE: 0

OK

OK

OK

+MIPLEVENT: 0,1

+MIPLEVENT: 0,2

+MIPLEVENT: 0,4

+MIPLOBSERVE: 0,126521,1,3313,0,-1
hhh6
ttt6

OK

+MIPLDISCOVER: 0,60986,3313

+MIPLDISCOVER: 0,60986,3313

OK

OK
AT+MIPLNOTIFY=0,126521,3313,0,5704,4,4,4,0,0

OK
AT+MIPLNOTIFY=0,126521,3313,0,5704,4,4,4,0,0
//发送数据 4 到OneNet 云平台

AT+MIPLNOTIFY=0,110915,3313,0,5703,4,4,8.584,0,0


OK
AT+MIPLNOTIFY=0,110915,3313,0,5704,4,4,13.95,,0,0

OK
AT+MIPLNOTIFY=0,110915,3313,0,5603,4,4,28.22,,0,0

OK
AT+MIPLNOTIFY=0,110915,3313,0,5702,4,4,20.340,0,0

OK

六. 如何移植

1.main 里面 更改AT指令连接OneNet和发送需要传输的数据的AT指令

2.添加 apply.c apply.h

3.添加 uart.c uart.h

(具体代码可查看gitee链接中的文件夹:NBIOT 程序)

七. 参考教学网址

第34集-云平台添加设备_哔哩哔哩_bilibili

八. 链接

王锦/NB-IoT (gitee.com)icon-default.png?t=N7T8https://gitee.com/didiao-hhh/nb-io-t

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/467256.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【全网最详细】ComfyUI下,Insightface安装指南-聚梦小课堂

&#x1f96e;背景 ComfyUI下使用IP-adapter下的faceID模型的时候&#xff0c;大家可能会遇到如下错误&#xff1a; Error occurred when executing InsightFaceLoader: No module named insightface File "F:\ComfyUI-aki\execution.py", line 151, in recursive_…

寻找可能认识的人

给一个命名为&#xff1a;friend.txt的文件 其中每一行中给出两个名字&#xff0c;中间用空格分开。&#xff08;下图为文件内容&#xff09; 题目&#xff1a;《查找出可能认识的人 》 代码如下&#xff1a; RelationMapper&#xff1a; package com.fesco.friend;import or…

【mysql】聚簇索引和非聚簇索引(B树和B+树)

博主简介&#xff1a;想进大厂的打工人博主主页&#xff1a;xyk:所属专栏: mysql 目录 一、索引分类 二、索引的数据结构 2.1 B树&#xff1a;改造二叉树 2.2 B树&#xff1a;改造B树 三、Mysql索引实现—InnoDB引擎 3.1 主键索引&#xff08;聚簇索引&#xff09; 3.2 …

在Python中执行分位数回归

线性回归被定义为根据给定的变量集构建因变量和自变量之间关系的统计方法。在执行线性回归时&#xff0c;我们对计算响应变量的平均值感到好奇。相反&#xff0c;我们可以使用称为分位数回归的机制来计算或估计响应值的分位数&#xff08;百分位数&#xff09;值。例如&#xf…

每日OJ题_牛客HJ12 字符串反转(IO型OJ)

目录 牛客HJ12 字符串反转 解析代码 牛客HJ12 字符串反转 字符串反转_牛客题霸_牛客网 解析代码 #include <iostream> using namespace std; int main() {string str "";cin >> str;int left 0, right str.size() - 1;while (left < right){ch…

Python——字典

一、字典特性介绍 字典在 Python 中极为重要&#xff0c;是属于映射类型的数据结构。 字典有⼀对⼉⼤括号组成 {} , 字典内的元素都是成对⼉出现的 {"a":1} , 他们⽤英⽂的冒号( : )隔开, 左边叫做键(key),右边的叫值(value), 通常叫做键值对⼉。 每个元素⽤英⽂的逗…

Java项目:62 基于ssm的校园驿站管理系统+jsp

作者主页&#xff1a;源码空间codegym 简介&#xff1a;Java领域优质创作者、Java项目、学习资料、技术互助 文中获取源码 项目介绍 管理员管理快递仓库信息&#xff0c;管理待发货信息&#xff0c;管理已收快递&#xff0c;管理物流以及留言信息&#xff0c;管理员工和用户资…

PSCA复位控制集成之复位管理

电源模式转换 进入任何使域中的组件变为非功能性的电源模式的关键要求是确保静止状态。与其他电源域的所有未完成交互&#xff0c;如总线事务&#xff0c;必须已经完成&#xff0c;并且组件必须保持静止状态&#xff0c;而不管其边界的活动如何。 在支持的情况下&#xff0c;…

新克隆的项目对IDEA配置进行哪些配置(超详细)

大家有没有遇到和我一样的这种情况&#xff0c;每次克隆一个新新项目&#xff0c;代码都是飘红&#xff0c;依赖找不到&#xff0c;项目没法运行。然后就是对idea一通设置&#xff0c;我基本都是胡乱搞一通&#xff0c;也不知道哪些设置起作用了&#xff0c;反正是最后搞半天项…

挖到宝了!这些内容管理平台是企业的最佳选择

内容管理系统&#xff0c;不再只是专业人士的语言&#xff0c;而是已经突破到普通人的视野中。简单易懂的解释就是&#xff0c;内容管理平台就像是一个大货仓&#xff0c;你可以在这里存储、整理和搜索你的所有资料。那么今天&#xff0c;我要向你推荐的是三款强大的内容管理平…

macbookpro系统数据清理,2024年有哪些清理MacBook数据恢复

清理MacBook Pro系统数据的方法包括&#xff1a; 优化储存空间。在Mac的系统设置中&#xff0c;可以查看和管理储存空间的使用情况&#xff0c;包括iCloud云盘、照片、音乐、文稿等不同类别的数据。 转移或删除文件。可以将文件移动到外部驱动器或清空“废纸篓”来释放空间&…

JS练习题+对象(函数封装、数组)

function some(ele, arr []) {let flat false;for(let i0;i<arr.length;i){if(ele arr[i]){flat true;break}}return flat;} let re some(荔枝, [苹果, 香蕉, 橘子, 荔枝, 梨子]) console.log(re) // true let re1 some(榴莲, [苹果, 香蕉, 橘子, 荔枝, 梨子]) consol…

Linux——动静态库的制作及使用与动态库原理

目录 一、静态库 1.静态库的制作 2.静态库的使用 加载静态库方法一&#xff1a;安装头文件与库文件 加载静态库方法二&#xff1a;指定文件目录 二、动态库 1.动态库的制作 2.动态库的使用 方法一&#xff1a;安装到系统中 方法二&#xff1a;软链接 方法三&…

GAMES101 学习 2

Lecture 7&#xff1a;Shading 1(lllumination,Shading and Graphics Pipeline) Visibility / occlusion 解决可见性和遮挡的问题 可见性&#xff0c;Z-buffering Z-Buffer 深度缓存 Idea&#xff1a; Store current min. z-value for each sample (pixel)Needs an additi…

EPSON X1G005441020416 TG2016SMN高精度温补晶振

日本爱普生晶振是全球领先的晶振产品生产商,旗下的温补晶振&#xff08;TXCO&#xff09;是EPSON晶振公司产品中的重要产品线之一,其产品一直跟随产品需求变化,不断的更新,EPSON晶体晶振类产品主要包括32.768K时钟晶体MHz无源晶体,有源晶振,温补晶振等产品,且相对于业界同类厂家…

力扣思路题:最长特殊序列1

int findLUSlength(char * a, char * b){int alenstrlen(a),blenstrlen(b);if (strcmp(a,b)0)return -1;return alen>blen?alen:blen; }

Java后端八股----JVM篇

上图中线程1&#xff0c;2如果资源被抢占了&#xff0c;则程序计数器记录一下执行的行号&#xff0c;等到资源就绪后会从记录的行号继续向后执行。 Java8把静态变量以及常量放到了线程的本地内存原空间中(避免放在堆中不可控)。 &#x1f446;图中第二种情况不太容易出现…

如何让图片放大后清晰度不变?

如何让图片放大后清晰度不变&#xff1f;在数字图像处理领域&#xff0c;保持图片放大后清晰度不变是一项具有挑战性的任务。传统的放大方法往往会导致图像模糊、失真&#xff0c;影响观感质量。然而&#xff0c;随着技术的不断进步&#xff0c;现在已经有了一些先进的方法和算…

代码随想录刷题笔记 Day 52 | 打家劫舍 No.198 | 打家劫舍 II No.213 | 打家劫舍III No.337

文章目录 Day 5201. 打家劫舍&#xff08;No. 198&#xff09;<1> 题目<2> 笔记<3> 代码 02. 打家劫舍 II&#xff08;No. 213&#xff09;<1> 题目<2> 笔记<3> 代码 03.打家劫舍III&#xff08;No. 337&#xff09;<1> 题目<2&g…

【GameFramework框架内置模块】8、文件系统(File System)

推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享简书地址 大家好&#xff0c;我是佛系工程师☆恬静的小魔龙☆&#xff0c;不定时更新Unity开发技巧&#xff0c;觉得有用记得一键三连哦。 一、前言 【GameFramework框架】系列教程目录&#xff1a; https://blog.csdn.net/q7…