一、实验目的
智慧园区为体现低消耗、低排放、高性能、高舒适的设计理念,应用集成技术和物联网技术在智慧园区内建设能效管理系统,实现多能涌、多业态和多用户的综合能涌管理。
二、实验任务
1、采集温度、湿度、光照值,并上传OneNET平台
2、实现公共区域照明系统的灯光自动控制。当光照充足的时候,灯光熄灭。光照暗时,照明灯亮起。
(LED灯模拟照明灯,通过HTTP数据推送将光照值推送给应用程序,由应用程序控制LED开关)
三、实验步骤
1、代码更改
<code>// "写"回调函数
voidwrite_callback(uint16_tobjid,
uint16_tinstid,
uint16_tresid,nbiot_value_t*data)
{printf("write /%d/%d/%d:%d\r\n",objid,instid,resid,data>value.as_bool);
if(objid==3311&&instid==0&&resid==5850)/* LED灯 */
{if(data->value.as_bool)
{// 打开白色背光以模拟LED灯开Lcd_Clear(WHITE);
ledStatus.Led1Sta=1;}
else{// 打开黑色背光以模拟LED灯关Lcd_Clear(BLACK);ledStatus.Led1Sta=0;
}
}
}
</code>
1.1写回调函数
<code>
voidread_callback(uint16_tobjid,uint16_tinstid,uint16_tresid,nbiot_value_t*data){if(objid==3303&&instid==0&&resid==5700)
{/* 温度 */SHT20_INFO sht20={0};
sht20=SHT20_GetValue();
temp.value.as_float=sht20.tempreture;}
elseif(objid==3304&&instid==0&&resid==5700)
{/* 湿度 */SHT20_INFO sht20={0};sht20=SHT20_GetValue();
humi.value.as_float=sht20.humidity;}
elseif(objid==3301&&instid==0&&resid==5700){/* 光照 */BH1750_test();
illumi.value.as_float=result_lx;}
elseif(objid==3311&&instid==0&&resid==5850)
{/* LED */led.value.as_bool=ledStatus.Led1Sta;}}</code>
添加光照和lcd灯资源
IMEI号和IMSI号,调试设备在线
环境搭建
数据推送,控制灯光
老师根据自己的亲身体会,将一些课本上没有的知识,我能更熟练得使用onenet云平台,锻炼了我发现问题和解决问题的能力、团队合作的能力;对postman、intellij IDEA等软件的运用也更加熟练。