概述
最近在使用BC95做NB的双向通信,网上几乎搜不到资料,就自己贡献一点吧。。。。
首先这个项目对于数据的下发时延要求比较高,因此需要让电信的人将NB卡开通为psm0,eDrx0(就是进入DRX模式)。
本次项目接入的是easyIoT平台。
注网过程如下:
AT
OK
AT+CMEE=1
OK
AT+CIMI
460111174772907
OK
AT+CGSN=1
+CGSN:863703038461906
OK
AT+CEREG=1
OK
AT+CSCON=1
OK
AT+CSQ
+CSQ:25,99
OK
AT+NUESTATS
Signal power:-683
Total power:-625
TX power:230
TX time:413
RX time:7279
Cell ID:123808593
ECL:0
SNR:237
EARFCN:2505
PCI:85
RSRQ:-108
OK
AT+CGATT?
+CGATT:1
OK
AT+CSCON=1
OK
AT+CPSMS=0,,,01000011,01000011//将模组设置为关闭PSM,一般来说只要NB卡开通了psm0,eDRX0,并且easyIoT上设置设备的服务模式为eDrx,可以不用此指令
OK
AT+CEDRXS=0,5,1111//同上,一般来说不用此指令
OK
+CSCON:0
AT+CFUN=0
+CSCON:1
+CSCON:0
OK
+CEREG:0
AT+NCDP=117.60.157.137//南京IoT服务器的IP
OK
AT+NRB
REBOOTING
骁?
REBOOT_CAUSE_APPLICATION_AT
Neul
OK
AT+NSMI=1
OK
AT+NNMI=2
OK
然后发送数据到平台上:
数据是根据easyIoT终端接口协议写的,其中的参数的TLV需与产品中的设备消息设置的参数一一对应。
AT+NMGS=68,01F000400003640000001A383633373033303335343536373530343630313131313733323238343234000000000000000001000F0100020A010200020B020300020C0301B
OK
+NSMI:SENT
平台收到后会有回复包发过来:
+NNMI
使用指令查看:
AT+NQMGR
BUFFERED=1,RECEIVED=13,DROPPED=0
OK
AT+NMGR
9,01F1000500000B0305
OK
此时,数据上报成功。
通过服务器下发控制指令,因为处于DRX模式很快就收到
+NNMI
把数据读出来
AT+NQMGRBUFFERED=1,RECEIVED=15,DROPPED=0
OK
AT+NMGR
14,01F2000A0008C8000404000101D7
OK
然后发送一个回复包给平台:
AT+NMGS=14,01F3000A0008C8000400000100D3
OK
+NSMI:SENT
到此,一个下发控制过程完成。
一点心得:
1.通过这种方式可以实现NB的低延时双向通信,但是能耗较高,一般适用于插电设备。
2.上传数据时协议里的IMEI,IMSI是ISO-8859-1格式的,信号强度通过AT+NUESTATS 获取Signal power 然后除以10,保留正负号:。
3.参数要与平台上设置的参数的TLV一一对应,设备消息的消息代码是给设备南向用的,消息ID是服务器北向对接解析用的。
4.easyIoT上注册设备时必须设置服务模式为eDrx,NB卡需开通psm0,eDRX0,才能实现低延时双向通信。
最后
以上就是幽默小鸭子为你收集整理的关于最近做NBIoT双向通信的心得的全部内容,希望文章能够帮你解决关于最近做NBIoT双向通信的心得所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复