NB-IoT - 无线局域网

窄带物联网(Narrow Band Internet of Things, NB-IoT)成为万物互联网络的一个重要分支。NB-IoT构建于蜂窝网络,只消耗大约180KHz的带宽,可直接部署于GSM网络、UMTS网络或LTE网络,以降低部署成本、实现平滑升级。NB-IoT是IoT领域一个新兴的技术,支持低功耗设备在广域网的蜂窝数据连接,也被叫作低功耗广域网(LPWAN)。NB-IoT支持待机时间长、对网络连接要求较高设备的高效连接。据说NB-IoT设备电池寿命可以提高至少10年,同时还能提供非常全面的室内蜂窝数据连接覆盖。 具体请参考 https://baike.baidu.com/link?url=l7bPL51_cUhF2ywlVyeU_qPjoXpuBrFJundP_zGp7DxXdow5sl9FQ-g9dnsBdNc24R3MPJQOoLlk-f_otIPuf_

Java包

tijos.framework.platform.lpwan

NB-IoT设置 - TiNBIoT

TiNBIoT中包含了所有与NBIoT相关的操作和设置, 支持PSM, eDRX两种模式. TiNBIoT为单例,在操作网络时可通过getInstance获得实例并调用相应的方法。

主要方法如下:

方法 说明
TiNBIoT getInstance() 获取NB-IoT实例
void startup(int timeout) 启动NB-IoT并连接基站, timeout以秒为单位
void shutdown() 关闭NB-IoT
String getIMEI() 获取模组IEMI字符串
String getIMSI() 获取SIM卡IMSI字符串
void getICCID() 获取SIM卡CCID字符串
String getPDPIP() 获取当前IP地址
int getRSSI() 获取当前信号强度
int getBER() 获取误码率
String getUTCTime() 获取当前UTC时间
int getCI(int index) 获取CELL ID
void enablePSM(String active, String periodic) 启用PSM, active: PSM active timer字符串 T3324时间, periodic: PSM periodic time string(TAU) T3412 时间, 相关时间格式需参考相关资料
void disablePSM() 禁用PSM
String[] getPSM() 获取PSM设置, 返回null为PSM禁用, String[0]: PSM active timer, String[1]: periodic - TAU
void enableeDRX(int accType, String value, String ptw) 启用eDRX
void disableeDRX() 禁用eDRX
String[] geteDRX() 获取eDRX设置 eDRX[0] eDRX value string, eDRX[1] PTW value string, eDRX[2] Type value string

TiNBIoT类中他方法的技术说明请参考TiJOS Framework说明文档。

TiNBIoT 例程

NB-IoT的使用方式与运营商有关, 一般使用PSM模式较多,如果有低功耗需求, 请在处理完相关请求后通过TiPower进入standby,在经过一个PSM周期或外部主动唤醒后会自动从头开始运行。

一般流程如下,启动NB-IoT之后进行网络通讯之后进入待机即可, 可与CoAPClient接合使用。

...

//启动NB-IoT 60秒超时
TiNBIoT.getInstance().startup(60);

//通过COAP进行数据发送等处理

//进入待机低功耗
TiPower.getInstance().standby(0);