本例程使用Developer Kit板载的温湿度传感器进行环境信息采集和上报,传感器型号SHTC1,在JS工作台的Dependency中已经存在该传感器的驱动模块。更多介绍查看官方文档:查看链接
在本例程里,既需要通过SHTC1实现温湿度数据的采集,还需要通过deviceShadow实现设备温湿度属性的上报。实现此例程,设备模型如下:(“主灯开关”属性配合后续例程一步
到位)
在项目中,从Dependency中安装SHTC1驱动模块(别漏了deviceShadow),默认项目中board.json添加了SHTC1的配置:
修改index.js内容如下:
var deviceShadow = require('deviceShadow');var shtc1 = require('shtc1');var handle = new shtc1('shtc1');var ledHandle = GPIO.open("led");deviceShadow.bindDevID({productKey: "a17vi82MmxP",deviceName: "0001",deviceSecret: "tYUngSMqYeDxODgtX3DNKkQ7920I3t4T"});function main(err) {if (err) {console.log("连接平台失败");} else {console.log("主程序开始");var mainLoop = setInterval(function () {//通过驱动模块handle读取温湿度数据var val = handle.getTempHumi();console.log('shtc1:temp=' + val[0] + ' humi:' + val[1]);deviceShadow.postProperty("CurrentTemperature", val[0]);deviceShadow.postProperty("RelativeHumidity", val[1]);}, 2000);}}deviceShadow.start(main);
运行下载程序,JS通过shtc1提供的驱动采集到的温湿度数据返回列表赋值给val,通过console.log打印,再通过deviceShadow实现属性上报。
程序执行,便可以在平台看到温湿度数据了。
