物联网之窄带物联网(NB-IOT)

python基础

浏览数:110

2019-10-9

AD:资源代下载服务

NB-IoT即窄带物联网(Narrow Band Internet of Things),NB-IOT构建在蜂窝网络之上,只消耗大约180KHZ的带宽,可直接部署于GSM(2G)、UMTS(3G)、LTE(4G)网络,因为这些网络的基站等基础设备都已经有较好的覆盖范围,所以这将很好的降低了NB-IOT的部署成本。

NB-IoT的优势:

一是广覆盖,将提供改进的室内覆盖,在同样的频段下,NB-IoT比现有的网络增益20dB,相当于提升了100倍覆盖区域的能力,NB-IoT信号穿墙性远远超过现有的网络,即使用户深处地下停车场;

二是具备支撑连接的能力,NB-IoT一个扇区能够支持10万个连接,支持低延时敏感度、超低的设备成本、低设备功耗和优化的网络架构。

常见的无线通信:

短距离:WiFi、蓝牙、RFID、NFC、ZigBee、红外

远距离:2G\GPRS(2.5G)\3G\4G\5G、NB-IOT、LoRa

NB的型号介绍

国内做NB通信模组的厂家主要有移远和芯讯通两家。移远是国内NB-IOT模组做的最出色的一家公司,NB模组出货量排名第一,研发的NB模组型号众多,功能齐全,方案涵盖华为海思、联发科和高通。

打开移远官网:https://www.quectel.com/cn/product/list/LPWAIoTModule.htm 一目了然的就可以看到所有的NB产品。

BC95:

多为电信网络

支持AT指令

是移远最早量产的NB-IOT模组,基于海思120芯片(18年四季度开始采用150芯片)。模块价格的从当初的120元,逐渐下降到90元,60元,40元,以及到现在的35元左右。可以说,BC95模组见证了国内NB-IOT的发展历程。

BC35:

BC95的国内全网通版本

支持AT指令

BC28:

全网通

支持AT指令

华为Boudica150芯片

BC26:

全网通

支持AT指令

支持OpenCPU,可省去外围MCU

支持高速移动(80km/h~120km/h)

采用联发科的MT2625芯片

BC20:

全网通

支持AT指令

支持 AGPS 技术

集成NB-IOT和GNSS(GPS+BDS北斗)

采用MT2625芯片

BC30:

全网通

支持AT指令

NB物联网卡

1.每一个NB模块必须插有一张物联网卡才能正常通讯

2.Nb卡如同手机SIM卡,但两者不能通用,NB卡的网络是经过特殊处理的窄带网络,两者网络可以认为是平行的,没有交集。

3.NB卡是三大运营商各种生产,其分为固定IP和非固定IP,固定IP的卡只能与所固定的公网IP进行连接,非固定IP可以与任意公网IP进行连接。

4.连接的目标可以是华为、电信、移动等的物联网平台,或者是自己在其他云服务器搭建的TCP、MQTT等服务器。

OpenCPU

1. OpenCPU是基于移远模块的二次开发方案,用户可以直接在模块里开发集成应用,从而省掉外部主控MCU。OpenCPU已被广泛的用于M2M领域,例如智能家居、智能城市、资产追踪,汽车能源等领域。

2. OpenCPU与传统方案对比如下图。 在传统方案中,需要一个MCU作为主控制器,控制硬件外设,例如控制路灯的亮或灭,然后使用MCU的UART接口与标准模块进行AT指令通信,上报当前路灯状态,或接收来自远程服务器的开关灯命令。

而OpenCPU方案,可以直接在模块中编写程序控制路灯,节约硬件成本,加速应用开发。

3. OpenCPU核心系统是NB-IoT模块的软硬件结合。它内置ARM Cortex-M4处理器,构建在FreeRTOS操作系统之上,具有微内核、实时性、多任务等特点。

NB芯片本自带有一些可供输入输出的IO口使用,但由于某种原因很多第三方厂商进行芯片封装时会将其去掉,保留基础的RX、TX、VCC、GND即可完成数据的收发。如果需要控制NB芯片里的GPIO就不能使用AT指令完成,而需要通过opencup直接编写代码烧写到芯片上进行GPIO控制。此时只有BC26支持Opencup。

BC260模块详解

NB260是谷雨物联网公司基于移远NB-IOT模块:BC26的小系统板,板载了IPEX射频天线座,5V转3.3V LDO稳压电源,MicroSIM卡座,ESD防护电路,开机电路等,即插即用。用户只需注重上层应用,以最快的速度开发出基于NB-IOT应用的产品。

NB260小系统板采用2.54标准间距排针,引出BC26模块的全部可用GPIO口,整板尺寸仅 25mm*33.02mm,便于嵌入到客户产品中。

NB260采用了省电技术,在省电模式(PSM)下,低至40uA,其中BC26功耗5uA,LDO稳压芯片静功耗态35uA。

基本性能

引脚介绍

只有当使用BC26的OpenCPU二次开发时才需要这么多引脚,若只当做普通的NB指令模块时,仅使用CON1(P1)的双排针的左侧一列信号即可。

CON1(P1)左侧一列信号为:GND,VIN,TXD,RXD,PEN,RST,EINT,NRI(NRI电压域1.8V,若用作唤醒MCU,可以简单串联1K电阻然后上拉后与MCU的GPIO口相连。),该列信号还与NB101,NB200兼容,可以相互替换。

模块供电

NB260有两种方式供电:一种是稳定的5V电压供电,另外一种是电池直接供电。当使用VIN供电时,VCC引脚为3.3V输出,不能再接到电池两端。

1、稳定的5V电源供电要求如下表格:

 

5V供电电路图,由图可知模块最终取电还是3.3V

2、电池直接供电的要求如下表格:

推荐电池型号:ER34615,CR17450。注意不能使用普通3.7V锂电池,因为其满电电压为4.1V,会烧坏模块。

工作模式

模块开机

NB260上电后处于关机状态,需要拉高PEN引脚至少500ms使其开机。

PEN开机逻辑,以及PEN与BC26模块的PWRKEY的关系如下图所示(下图是NB260的内部原理图):

其它

默认串口配置:波特率115200,无校验,8位数据位,1位停止位

开机:PEN接VCC大于500ms,信号灯闪烁一下即可

休眠:当模块等待一段时间后再发串口数据无响应,表明模块处于休眠状态,需要按照开机的办法,也就是拉高PEN来唤醒模块。

上电自启:解决模块上电不能自动启动,方法是持续拉高PEN,但后果是模块将不自动静茹PSM模式(省电睡眠模式)

参考:谷雨文档中心(http://doc.iotxx.com/

作者:东小东