实验报告——OneNET

一、项目背景

基于OneNET的远程温湿度监测系统,实现设备上云

二、项目目标

  • OneNET平台注册
  • OneNET平台上添加产品与设备
  • 温湿度监测终端设备的平台接入
  • 设备数据上报
  • 平台设备管理及数据管理

三、实验步骤

1.OneNET平台注册

OneNET平台

2.OneNET平台添加产品与设备

  • 添加产品


    产品添加
  • 添加设备


    设备添加

3.温湿度监测终端设备的平台接入

  • NB-IoT设备接入OneNET


    NB-IoT设备接入OneNET流程图
  • 接入NB-IoT网络

void netdev_init(void)
{
SendCmd(“AT+NRB\r\n”, “OK”, 5000,0,10); // 重启模块
SendCmd("AT+CIMI\r\n", "OK", 2000,3,5); // 获取NB-IoT物联SIM卡的IMSI号
SendCmd(“AT+CMVER\r\n”, “3.”, 5000,0xFFFF,10); // 固件版本
SendCmd(“AT+CMEE=1\r\n”,“OK”, 2000,0,10); // 启用移动终端错误报告
SendCmd(“AT+CSCON=1\r\n”,“OK”, 2000,0,10); // 打开信号提示自动回复
SendCmd(“AT+CEREG=2\r\n”,“OK”, 2000,0,10); // 打开网络注册和位置信息自动回复
SendCmd(“AT+CEDRXS=0,5\r\n”,“OK”, 3000,0,5); // 禁用eDRX省电模式
SendCmd(“AT+CPSMS=0\r\n”,“OK”, 3000,0,5); // 禁用PSM省电模式
SendCmd(“AT+CEREG?\r\n”,“CEREG:2,1”, 3000,1000,5); // 判断网络附着状态
SendCmd(“AT+CSQ\r\n”, “OK”, 2000,0,5); // 获取信号强度
printf(“connect NB-IoT success\r\n”); // 打印LOG
Led3_Set(LED_ON); // 点亮LED3,即第一个蓝灯
} 
  • 常用AT指令

AT即Attention,从终端设备(Terminal Equipment, TE)发送到移动通信终端(Mobile
Terminal, MT) ,在GSM网络中可以进行拨号呼叫、短信、电话本、数据业务、传真等方
面的控制

1.设置命令 AT+<cmd>=p1[,p2[,p3[.....]]]
在AT指令后面加上“=p1[,p2[,p3[.....]]]”即构成设置命令。例如“AT+MIPLOPEN=0,3000,30会设置登录的参数并登陆

2.测试命令 AT+<cmd>=?
在AT指令后面加上“=?”即构成测试命令。例如“AT+CSCS=?”会列举出所有支持的字符集

3.执行命令 AT+<cmd>
一般而言在AT指令后加上“=”及命令参数即可。有些命令例如AT+CMGR命令没有参数,直接就可以执行

4.读取命令 AT+<cmd>?
在AT指令后面加上“?”即构成读取命令。例如“AT+MIPLVER?”会列举出当前设置

  • 接入OneNET

1.在模组中设置设备注册码
AT+MIPLCONF=<size>,<config>,<index>,<flag>
<size>指示<config>部分总数据长度,按照ASCII计数
<config>注册码,包含具体的设备配置数据,满足配置结构体规范
<index>配置数据分片参数
<flag>配置数据流结束符

2.向模组添加 Object 资源
AT+MIPLADDOBJ=<ref>,<objectid>,<instancecount>
<ref>表示OneNET instance值
<objectid>表示资源对象的objid
<instancecount>表示资源对象instance数量

3.向模组订阅 Resource 资源
AT+MIPLNOTIFY=<ref>,<objectid>,<instanceid>,<resourceid>,<valuetype>,<value>,<f
lag>[,<ackid>]

<ref>表示OneNET instance值
<objectid>表示资源对象的objid
<instanceid>表示资源对象的instid
<resourceid>表示资源对象的resid

4.向 OneNET 发起注册请求
AT+MIPLOPEN=<ref>,<lifetime>[,<timeout>]
<ref>表示OneNET instance值
<lifetime>表示注册到OneNET平台的生存时间,单秒秒
<timeout>表示超时。如果超过该时间,模组还未接收到平台的登录响应,模组则会上报登录失败的通知

注释
1.服务器收到登录请求数据之后,会根据数据内容,返回本次登录结果
2.如果模组登录失败,或者登录超时,模组都会上报登录失败的响应
3.如果模组登录成功,平台会下发 OBSERVE 消息和 DISCOVER 消息;模组收到这两条消息之后,会自动处理,无需用户另行处理
4.平台会在全部订阅完成后,发送read 3/0操作,如果设备收到该read命令,则视为全部订阅成功。设备只有在订阅后才能上报数据

4.设备数据上报

  • 数据上报流程
    命令格式:AT+MIPLNOTIFY=<ref>,<objectid>,<instanceid>,<resourceid>,<valuetype>,<value>,<f
    lag>[,<ackid>]

    数据上报流程

5.平台设备管理及数据管理

  • 设备管理流程


    设备管理流程

四、实验总结

通过此次项目,学习到了OneNET平台的使用方法,且对物联网云平台有了深层次的了解。但还需再今后的学习中把知识点吃透掌握。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容