[IOT]NB模组使用流程

一、NB-IOT介绍

基于蜂窝的窄带物联网(Narrow Band Internet of Things, NB-IoT)成为万物互联网络的一个重要分支。NB-IoT构建于蜂窝网络,只消耗大约180KHz的带宽,可直接部署于GSM网络、UMTS网络或LTE网络,以降低部署成本、实现平滑升级。

​NB-IoT是IoT领域一个新兴的技术,支持低功耗设备在广域网的蜂窝数据连接,也被叫作低功耗广域网(LPWA)。NB-IoT支持待机时间长、对网络连接要求较高设备的高效连接。据说NB-IoT设备电池寿命可以提高至至少10年,同时还能提供非常全面的室内蜂窝数据连接覆盖。

二、NB的三种工作模式

2.1 CONNECT态

  • 连接态,可以收发数据

2.2 IDLE态

  • 空闲态,可以收发数据

2.3 PSM态

  • 休眠态,可以发送数据,不能接受数据,当NB模组主动发送一条数据(转换为非PSM态)之后可以接收数据

2.4 三者转换原理

在这里插入图片描述

三、IPSO规范整理

在这里插入图片描述

在设备侧具有5级层级结构,分别是 产品(Product)、设备(Device)、对象(Object)、实例(Instance)、属性(Resource)。

通过OneNET平台直接创建产品(产品ID),一个产品之下包含多个设备(设备ID

Object(对象):表示某类传感器类型

Instance(实例):同一类传感器的编号,从“0”开始编号,依次增加

Resource(属性):传感器某些特性描述

例如:

​ 智能家居产品下有多个设备包括温度检测设备、湿度检测设备

​ 开发模组需要使用2个温湿度传感器来采集数据,那么:
​ Object(对象):有1个对象:温湿度传感器
​ Instance(实例):温湿度传感器对象中有2个实例,编号为0和1
​ Resource(属性) :温湿度传感器实例1有两个属性,温度和湿度

又例如:

​ 智能锁产品下包含两个设备,分别为debug设备和debug1设备, 每个设备下都有不同的对象,每一个对象下都有不同的实例,每一个实例下都有不同的属性,例如debug设备下,有一个3300的对象, 这个对象下有一个实例,实例编号从0开始,这个实例有一个5750的属性


  • 在NB模组连接OneNET平台后,使用AT+MIPLNOTIFY=0,0,3300,0,5750,5,1,"0",2,1进行数据上报

1.1 产品

在这里插入图片描述

1.2 设备

在这里插入图片描述

1.3 对象

在这里插入图片描述

Object(对象)部分描述

Object(对象)Object ID(对象编号)含义
Digital Input3200数字输入
Digital Output3201数字输出
Analogue Input3202模拟输入
Analogue Output3203模拟输出
Generic Sensor3300通用传感器
Illuminance Sensor3301光照传感器
Presence sensor3302节能感应器
Temperature Sensor3303温度传感器
Humidity Sensor3304湿度传感器
Power Measurement3305电力测量
Actuation3306启动
Set Point3308设定点
Load Control3310负荷控制
Light Control3311灯光控制
Power Control3312电源控制
Accelerometer3313加速度计
Magnetometer3314磁力计
Barometer3315气压计
Voltage3316电压
Current3317
Frequency3318频率
Depth3319深度
Percentage3320百分比
Altitude3321高度
Load3322加载
Pressure3323压力
Loudness3324响度
Concentration3325浓度
Acidity3326酸度
Conductivity3327电导率
Power3328供电
Power Factor3329功率因数
Distance3330距离
Energy3331能量
Direction3332方向
Time3333时间
Gyrometer3334陀螺仪
Color3335颜色
GPS Location3336GPS 定位
Positioner3337定位器
Buzzer3338蜂鸣器
Audio Clip3339音频剪辑
Timer3340计时器
Addressable Text Display3341可寻址文本显示
On/Off Switch3342开/关 开关
Dimmer3343调光器
Up/Down Control3344上/下 控制
Multiple Axis Joystick3345多轴操纵杆
Rate3346比率
Push Button3347按按钮
Multi-state Selector3348多状态选择器
Bitmap3349位图
Stopwatch3350秒表

1.4 实例

在这里插入图片描述

1.5 属性

在这里插入图片描述

Resource(属性)部分描述

Resource(属性)Resource ID(属性编号)Operations(操作:R/W/E 分别表示 可读/可写/可执行)Type(数据类型)含义
Digital Input State5500RBoolean数字输入状态
Digital Input Counter5501RInteger数字输入计数器
Digital Input Polarity5502R,WBoolean数字输入极性
Digital Input Debounce5503R,WInteger数字输入去抖动
Digital Input Edge Selection5504R,WInteger数字输入边缘选择
Digital Input Counter Reset5505E数字输入计数器复位
Current Time5506R,WTime当前时间
Fractional Time5507R,WFloat分数时间
Min X Value5508RFloat最小 X 值
Max X Value5509RFloat最大 X 值
Min Y Value5510RFloat最小 Y 值
Max Y Value5511RFloat最大 Y 值
Min Z Value5512RFloat最小 Z 值
Max Z Value5513RFloat最大 Z 值
Latitude5514RString纬度
Longitude5515RString经度
Uncertainty5516RString不确定性
Velocity5517ROpaque速度
Timestamp5518RTime时间戳
Min Limit5519RFloat最小极限
Max Limit5520RFloat最大极限
Delay Duration5521R,WFloat延迟时间
Clip5522R,WOpaque剪切
Trigger5523E触发
Duration5524R,WFloat持续时间
Minimum Off-time5525R,WFloat最小关闭时间
Mode5526R,WInteger模式
Text5527R,WString文本
X Coordinate5528R,WIntegerX坐标
Y Coordinate5529R,WIntegerY坐标
Clear Display5530E清除显示
Contrast5531R,WFloat对比
Increase Input State5532RBoolean增加输入状态
Decrease Input State5533RBoolean减少输入状态
Counter5534R,WInteger计数器
Current Position5536R,WFloat当前位置
Transition Time5537R,WFloat过渡时间
Remaining Time5538RFloat剩余时间
Up Counter5541R,WInteger向上计数
Down Counter5542R,WInteger向下计数
Digital State5543RBoolean数字状态
Cumulative Time5544R,WFloat累积时间
Max X Coordinate5545RInteger最大X坐标
Max Y Coordinate5546RInteger最大Y坐标
Multi-state Input5547RInteger多状态输入
Level5548R,WFloat级别
Digital Output State5550R,WBoolean数字输出状态
Digital Output Polarity5551R,WBoolean数字输出极性
Analog Input State5600RFloat模拟输入状态
Min Measured Value5601RFloat最小测量值
Max Measured Value5602RFloat最大测量值
Min Range Value5603RFloat最小范围值
Max Range Value5604RFloat最大范围值
Reset Min and Max Measured Values5605E重置最小和最大测量值
Analog Output Current Value5650R,WFloat模拟输出电流值
Sensor Value5700RFloat传感器值
Sensor Units5701RString传感器单元
X Value5702RFloatX值
Y Value5703RFloatY值
Z Value5704RFloatZ值
Compass Direction5705RFloat指南针方向
Colour5706R,WString颜色
Application Type5750R,WString应用类型
Sensor Type5751RString传感器类型
Instantaneous active power5800RFloat瞬时有功功率
Min Measured active power5801RFloat最小实测有功功率
Max Measured active power5802RFloat最大实测有功功率
Min Range active power5803RFloat最小范围有功功率
Max Range active power5804RFloat最大范围有功功率
Cumulative active power5805RFloat累积有功功率
Active Power Calibration5806WFloat有功功率校准
Instantaneous reactive power5810RFloat瞬时无功功率
Min Measured reactive power5811RFloat最小测量无功功率
Max Measured reactive power5812RFloat最大测量无功功率
Min Range reactive power5813RFloat最小范围无功功率
Max Range reactive power5814RFloat最大无功功率范围
Cumulative reactive power5815RFloat累积无功功率
Reactive Power Calibration5816WFloat无功功率校准
Power Factor5820RFloat功率因数
Current Calibration5821R,WFloat电流校准
Reset Cumulative energy5822E重置累积能量
Event Identifier5823R,WString事件标识
Start Time5824R,WFloat开始时间
Duration In Min5825R,WFloat持续时间(分钟)
Criticality Level5826R,WInteger临界水平
Avg Load Adj Pct5827R,WString平均负荷调整Pct
Duty Cycle5828R,WInteger占空比
On/Off5850R,WBoolean开/关
Dimmer5851R,WInteger调光器
On Time5852R,WInteger开启时间
Muti-state Output5853R,WString多状态输出
Off Time5854R,WInteger关闭时间
Set Point Value5900R,WFloat设定值
Busy to Clear delay5903R,WInteger忙清除延迟
Clear to Busy delay5904R,WInteger清除忙延迟
Bitmap Input5910RInteger位图输入
Bitmap Input Reset5911E位图输入重置
Element Description5912R,WString元素描述
UUID5913R,WString通用单一标识符

四、AT命令介绍

  • 每条命令必须以ATat开头,以回车符**<CR>结尾。命令发送成功后通常会有包含<CR><LF>response<CR><LF>**的响应消息。

  • AT 命令类型

    • 测试命令:AT+<CMD>=?
    • 读取命令:AT+<CMD>?
    • 配置命令:AT+<CMD>=<p1>[,<p2>[,<p3>,[…]]]
    • 执行命令:AT+<CMD>
  • 其中
    <…> 尖括号中是参数,实际输入时不带尖括号;
    […] 方括号中的参数是可选参数;
    abc 下划线标出的参数值为参数缺省时默认值。

  • AT 命令响应内容有以下两种情况

    • 若 AT 命令格式错误或者其他错误,会返回“ERROR”字符串。

      • 如果启用了扩展错误报告(+CMEE),会返回字符串“+CME ERROR:<err>”或者“+CMS ERROR:<err>”,
        <err>表示错误码,错误码可在手册中查询。

      • 例如:

        +CME ERROR:10     //未插 SIM 卡
        +CME ERROR:332    //网络超时
        ...
        ...
        
    • 如果 AT 命令执行成功,会返回每条命令对应的语法结构里的响应内容以及“OK”。

      • 例如

        发:
        AT                //一条测试命令
        收:
        OK			     //返回OK表示与模组可以正常收发指令
        

五、NB模组驻网流程(中国移动OneNET&中国电信CTWing)

5.1 注意事项

  • 使用AT命令与NB模组进行通信
  • 上述提到的两个平台均采用LwM2M协议与设备端进行通信,该协议是基于UDP协议封装而来,众所周知,UDP协议属于非长连接协议,那么就要求云端下发指令必须在1-2min左右完成,否则平台将响应超时,设备端将不会收到云端下发的指令

5.2 驻网流程(使用AT命令)

5.2.1 对模组

发送给MN316的AT命令(AT命令的具体配置详见开发手册):

AT
AT+CSCON=1 (信令连接状态)
AT+CPIN? (安全性命令 读取命令)
AT+CGSN=1 (获取 IMEI 号码)
AT+CIMI (获取 IMSI 号码)
AT+NCCID (读取 ICCID)
AT+CFUN? (读取命令)
AT+CSQ (查询信号强度)
AT+CEREG=1 (网络注册状态 配置命令)
AT+CEREG? (网络注册状态 读取命令)
AT+CEDRXS=0,5 (扩展 DRX 设置 配置命令 : 禁用 eDRX, E-UTRAN (NB-S1 mode))
AT+CPSMS=1,,,,"00000011"  (省电模式设置 启用 PSM 6秒)

5.2.2 对平台

5.2.2.1 中国移动OneNET

连接中国移动OneNET的AT命令(AT命令的具体配置详见开发手册):

AT+MIPLCREATE=56,130038F10003F2002A04001100000000000010196E62696F7462742E6865636C6F7564732E636F6D3A35363833000131F300087100000000,0,56,0           (该命令用于创建一个 OneNET 设备实例。)
AT+MIPLADDOBJ=0,3300,1,"1",0,1  (该命令用于添加一个 object 及其所属的 instance。)
AT+MIPLDISCOVERRSP=0,3300,1,4,"5750" (该命令用于设置指定 object 的所需资源列表)
AT+MIPLOPEN=0,172800,30 (该命令用于向平台发起注册请求或查询是否注册平台。注册失败)
AT+CSCON=1 (信令连接状态 配置命令)
AT+CFUN? (读取命令 用于设置 MS 的模式。)
AT+WORKLOCK=1  (申请锁省电锁)
AT+CGATT? (读取命令 附着/去附着)
AT+MIPLNOTIFY=0,0,3300,0,5750,2,266,"4A74523558582F6F4470636F397A37675454726D2F413D3D4048315A6C547754356F4873326F446749466C6E395A4567344F6535767A76474249452B5176555751724D56506A41304955615150446A526937723634504E436E6C3459476C6F4A4C4A33786F702F5069646654544D53456F6D2B51634A77697161594B6D6E6D61684976553D",0,0x400,1   (该命令用于向平台上报指定资源的数据。 数据上传)

5.2.2.2 中国电信CTWing

连接中国电信CTWing的AT命令(AT命令的具体配置详见开发手册):

  • 接入 CTWing

    AT+MCWCREATE=221.229.214.202,5683   (设置 CTWing IP 及端口)
    
    AT+MCWCFGEX=1,1  (配置数据模式)
    
    AT+MCWOPEN=1,86400  (注册至 CTWing,保活时间 86400 秒。)
    
  • 发送数据至 CTWing

    AT+MCWSEND=4,11111111,1  (CON 数据)
    
    AT+MCWSEND=4,22222222,0  (NON 数据)
    
  • 读取 CTWing 下行数据

    AT+MCWREAD  (读取一条数据)
    
  • 注销 CTWing

    AT+MCWCLOSE  (执行注销命令)
    

六、NB模组低功耗实现原理

  • NB模组的三种低功耗模式:PSM、DRX、eDRX

6.1 PSM(Power Saving Mode,省电模式)

  • 特点

    • 非业务期深度睡眠,不接受下行数据,只有终端主动发送上行数据时可接收IOT平台(例如OneNET)缓存的下行数据
    • 适合对下行数据无时延要求的业务
    • 终端设备功耗低,采取电池供电方式,如抄表业务
    • 终端99%的时间在PSM模式
  • 模式示意图

    在这里插入图片描述

  • PSM模式下三种工作状态的切换

    在这里插入图片描述

6.2 DRX(Discontinuous Reception,不连续接收模式)

  • 特点

    • 下行业务随时可以到达终端设备(在每个DRX周期(1.28s、2.56s、5.12s、10.24s),终端都会检测下行业务到达)
    • 适用于对时延有高要求的业务
    • 终端设备功耗相对较高, 终端设备一般采用供电方式,如路灯业务
  • 模式示意图

在这里插入图片描述

6.3 eDRX(Extended DRX,扩展不连续接收模式)

  • 特点

    • 终端设备兼顾低功耗和对时延有一定要求的业务
    • 在每个eDRX周期内,只有在设置的寻呼时间窗口内,终端可接收下行数据,其余时间终端处于休眠状态,不接收下行数据
    • 可以认为终端设备随时可达,但时延较大,时延取决于eDRX周期配置,可在低功耗和时延之间取得平衡
    • 可在下行业务时延和功耗之间取得平衡,如远程关闭煤气业务
  • 模式示意图

    在这里插入图片描述

    • 每个eDRX周期内,有一个寻呼时间窗口PTW(Paging Time Window),终端在PTW内按照DRX周期监听寻呼信道,以便接收下行数据,其余时间处于休眠状态
  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值