之前只是记录了怎么接入onenet,还没有具体分析数据上报,今天实现以下数据的上报和分析,基于AT指令的sim7020C
首先是接入,这了可以参考是一个的记录,执行以下命令 即可看到,设备在线,但是要注意的是,返回后的指令要及时回复,在5秒内,要不然就超时
AT+MIPLVER? AT+MIPLBOOTSTRAPPARA=0,1 //得到版本后确定 这个命令是2.1.1版本 AT+MIPLCREATEEXT="183.230.40.40" AT+MIPLADDOBJ=0,3303,2,11,7,3 //添加属性 AT+MIPLOPEN=0,180 //注册 成功后返回msgid AT+MIPLOBSERVERSP=0,msgid,1 //成功后返回observerid AT+MIPLOBSERVERSP=0,observerid,1 //成功后返回discoverid AT+MIPLDISCOVERRSP=0,discoverid,1,34,"5700;5701;5601;5602;5603;5604;5605"
执行到这里,如果正常,就会看到设备在线
数据上报,使用的是
AT+MIPLNOTIFY
如下上传
在onenet平台看到的数据如下
注意:这里我之前也是这样操作的,但是这个地方无法查看数据,我使用了应用管理,在网页和手机端查看就是可以的,但是后面也不知道什么原因,下次的时候,就可以正常查看数据, 可能是没有更新,或者是之前我操作的细节没注意。
这里有几个地方需要分析
首先变量的对象名称是已经定义好的,这里可以查看文档 IPSO-Smart-Objects-Starter-Pack
大致如下:
这里已经定义的这些,没有定义的是不能使用的,而且这里的object对应每一个小的细分,最大值,最小值等,
我这里,5700;5701;5601;5602;5603;5604;5605 就是按照3303这里来的,所以上报的时候,就需要对应上报的对应的,比如
AT+MIPLNOTIFY=0,72459,3303,0,5601,4,2,10,0,0
我这里上报到5601,也就是 Min Measured Value
所以我onenet列表里面就会收到,这里我上报的是10,对应的就是10,我把最小值设置为10
最大值是65536,我是通过 AT+MIPLNOTIFY=0,72459,3303,0,5602,4,5,65536,0,0,发送到5602的,如图就是最大值
理解了这里,就可以根据数据按照需要,在应用那里对应了,应用其实就是app,跨平台,编辑好后,包括PC还有手机端,就可以在手机登录你的onenet,在运用中查看,关于应用的,这里不再详细些,比较简单,可以试试,比如我这里的
我编辑的是手机端,只需要登录onenet手机端,在应用里面就可以看到,很简单实用
我这里给出三个很重要的手册,基本上可以搞得定SIM7020C,其他的按照自己需要去官网找
git上地址: https://github.com/ChenChangXiong/NB-IOT
按照我这文档,应该不会有任何问题,轻松搞定SIM7020C,少走弯路,之前我第一次自己慢慢摸索,看了不少东西,算是搞定