一、实验背景
以园区为代表的区域能源系统具有用能密度大、负荷利用小时数高、可再生能源比例高、产用能形式多样化等特点,是促进可再生能源大规模就地消纳、提高能源综合利用率、实现节能减排目标的有效实验途径。全球气候正面临严峻的挑战,碳减排已成全人类的共同使命。国内“能源双控”政策的持续升级,生产性企业被迫停工停产。如何有效控制碳排放量,提升能源使用效率、降低能耗,进而实现“双碳目标”,成为企业亟待解决的问题。
二、实验目的
1、会使用 HTTP 推送
2、了解如何处理 HTTP 推送
3、在 OneNET Studio 平台上接入 NB 设备后,完成从 Studio 向第三方应用(本应用)的数据推送,从而在应用程序中获取 NB 设备的所有数据。同时,在应用程序中监控光照传感器的值,达到预设的最大阈值后,调用 LwM2M IPSO API,自动关闭 LED 灯;达到预设的最小阈值后,调用 API 自动打开 LED 灯,从而实现节能的目的。
三.实验步骤
1.终端开发环境搭建
1.1 终端监测设备的硬件介绍
1.1.1 试验箱外壳
实验箱外壳
P[JET6HE45SWYN4H~FCJ8H5.png](https://upload-images.jianshu.io/upload_images/28014504-4b5211f74d52eb25.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
@5N%5DVUQ{}HNJ%$EDBA}RM.JPG
7ECD710EC458E1D6A948B6137165DB3C.jpg
1.1.2 核心模块
核心模块
1.1.3 NB-IoT模块(M5310A)
NB-IoT模块
1.1.4 ZigBee温湿度模块
1.1.5 LCD模块
1.1.6 ZigBee光照模块
1.2 程序更改
1.2.1 网络配置(IMEI,IMSI)
1.2.2添加外围硬件驱动
1.2.3编写读回调函数
1.2.4编写写回调函数
1.2.5添加光照、LED资源
1.2.6更新光照、LED资源
1.2.7代码编译结果
1.2.8代码烧写
1.3平台控制
1.3.1设备在线
1.3.2添加设备资源列表
1.3.4资源列表详情
1.3.5平台控制灯
2.调用北向API控制灯光
即时命令—写设备资源
3.使用数据推送自动控制灯光
1.安装配置 JDK
<meta charset="utf-8">
1.安装配置JDK
(1)新增两个环境变量
(2)修改PATH环境变量
(3)按键盘win+R打开一个新的 cmd 窗口,然后输入 java -version 命令,如果能够看到类似如下的输出,则表示 JDK1.8 安装完成。
2.安装配置 Maven
(1)设置环境变量
(2)按键盘win+R打开一个新的 cmd 窗口,然后输入mvn -version 命令,如果能够看到如下输出,则表示 Maven 安装成功。
3.安装配置 IntelliJ IDEA
(1)使用工具包中提供的 IntelliJ IDEA 2019 安装包,进行默认安装。安装完成后,在启动界面选择 "Configure->Settings"进行全局设置,输入 maven 进行搜索,然后将 Maven 的实际安装路径填入,以便在 IDEA 中使用 Maven。
(2)在(https://github.com/CQCET-IOT/onenet-studio-nb-data-push)下载本应用程序。打开IntelliJ IDEA,启动界面选择 "Import Project",将pom.xml 文件打开,等待过程时间较长。
(3)修改参数
根据自己的实际情况,修改 application.properties 文件中的以下参数,才能正确运行:
➢api.authorization: 使用 OneNET Studio 提供的 Token工具生成;
➢light.imei: NB-IoT 设备的 IMEI 号;
➢http-push.token: 第三方应用 Token;
➢http-push.aesKey: 第三方应用 AesKey;
4.OneNET Studio HTTP 数据推送配置
➢ 实例名称:自己取一个合理的名称。
➢ 推送地址:http://www.xxx.net/receive,注意 URL 后面必须包含 /receive,它是在本应用程序中实现的,用于接收处理 Studio 的验证和数据。
➢ Token:自己输入一个合理的字符串。该字符串需要与配置文件中的 http-push.token 保持一致。
➢ 消息加密方式:选择“明文模式”,本应用程序不进行消息加密。
配置完成以后,需要手动点击数据推送的“验证”按钮,只有验证成功了,Studio 才会向其推送数据,如下:
5.OneNET Studio 规则引擎配置
(1)配置完数据推送以后,需要用到规则引擎。在 Studio 上点击“应用开发->项目管理”,新建一个项目,取一个合理的名称,比如“智能灯控项目”:
(2)点击上图“进入项目管理”按钮,就可以进入项目管理页面。在“设备管理→设备列表”中,点击“添加设备”按钮,将前面创建的 NB-IoT 设备加入到该项目中,如下图所示:
(4) 配置完成后,启动该规则引擎,则当 NB-IoT 设备上下线、上报新数据时,本应用程序就能够获得这些数据,并打印在程序的控制台上
开灯:
关灯:
IDEA有数值传输
最后总结
本次实验中途中有各种各样的不确定性因素,所以导致有很多地方有些卡壳,浪费了很多时间,但通过我们小组一直努力,还是一样一样地解决了所有问题最后得出了实验结果,不进如粗我们更应该加强对于平台的掌控,多多了解设备的一些知识,和不断练习代码,来取得更好的结果。不仅如此,这门课程更考验我们齐心协力,学会解决各种问题,一次来增加自己的实践经验,更加做到团队合作的精神状态 。在以后的学习中更加努力。争取在未来也做一个合格的程序员。