Intel IoT开发工具包,是一个完整的硬件和软件解决方案,允许开发人员用Intel Galileo和Intel Edison模块创建新的令人兴奋的解决方案。欢迎访问Intel Developer Zone for IoT。
Intel Edison的小巧非常适合于可穿戴设备。它的语言和编程环境对于开发人员而言,非常的灵活方便,并且由于它还集成了Wi-Fi和蓝牙,使得它特别适合可穿戴设备。现在,市面上有很多的可穿戴设备,但是似乎没有专门为婴儿设计的设备。出门在外工作的父母总是会为自己孩子的健康状况、体温、环境等操心。婴儿需要24 * 7小时的监控,但这在一些夫妻双方都工作的家庭里是不可能做到的,而且有时这些忙碌的父母还得做大量的家务劳动,这些都会迫使他们不得不让宝宝离开他们的视线。在这些情况下,家长需要一个智能的宝宝监测系统,以便于跟踪宝宝的身体健康,并且在出现任何异常的时候,提醒他们。
智能宝宝监视器可以:
监测宝宝是在睡觉还是在玩。 当他哭的时候通知家长。 检测宝宝的体温。 发现体温异常,就立即发出警报。 可视化显示数据。 可以在任何地方查看监测数据。必需品:

模拟麦克风是一个简单的声音传感器,可用于检测环境中声音的强度。在这个项目中我使用的是带有Grove Base Shield的Grove传感器。我们将使用Intel XDK IoT Edition在Node.js中编码。
建立连接
通过USB数据线将Edison连接到电源和电脑。 在花费15-20秒的开机时间之后,堆栈Grove Base Shield。 连接声音传感器(此处即Grove传感器)到模拟针脚A0。 连接温度传感器到A1。 连接LCD显示器连接到I2C端口中的一个。编程
打开Intel XDK IoT Edition,假如你的电脑上面还没安装的话,可以点这里https://soft
选择一个空白的Node.js模板并创建一个新项目。

模拟麦克风的代码
function readSoundSensorValue() {
var buffer = new upmMicrophone.uint16Array(128);
var len = myMic.getSampledWindow(2, 128, buffer);
if (len)
{
var thresh = myMic.findThreshold(threshContext, 30, buffer, len);
myMic.printGraph(threshContext);
if (thresh)
console.log("Threshold is " + thresh);
v.saveValue(thresh);
if(thresh>50 && thresh<150)
showNormalLCD();
if(thresh>=150)
showLCD();
if(thresh<50)
showSleepLCD();
}
}
setInterval(readSoundSensorValue, 1000);
<a href="https://software.intel.com/sites/default/files/managed/74/61/code.png"><img height="900" width="718" src="https://software.intel.com/sites/default/files/managed/74/61/code.png" alt="" /></a>
温度传感器的代码
var temp = new groveSensor.GroveTemp(1);
console.log(temp.name());
var i = 0;
var waiting = setInterval(function() {
var celsius = temp.value();
var fahrenheit = celsius * 9.0/5.0 + 32.0;
console.log(celsius + " degrees Celsius, or " +
Math.round(fahrenheit) + " degrees Fahrenheit");
i++;
if (i == 10) clearInterval(waiting);
}, 1000);
把数据发送到云
var ubidots = require('ubidots');
var client = ubidots.createClient('YOUR-API-KEY');
client.auth(function () {
this.getDatasources(function (err, data) {
console.log(data.results);
});
var ds = this.getDatasource('xxxxxxxx');
ds.getVariables(function (err, data) {
console.log(data.results);
});
ds.getDetails(function (err, details) {
console.log(details);
});
var v = this.getVariable('xxxxxxx');
v.getDetails(function (err, details) {
console.log(details);
});
v.getValues(function (err, data) {
console.log(data.results);
});
这里,我用Ubidots作为IoT(物联网)云,通过Ubidots我们就可以用一种有效的途径可视化了数据。Ubidots支持的设备很广泛,并且还可以触发如发送邮件和消息的一些活动。它还提供了许多API,通过选择我们的语言加速开发。因此,我选择了它的Node.js库来和我的Edison发生互动。
设置Ubidots
登录到你的Ubidots帐户,也可以新创建一个http://ubido

一旦数据源创建之后,我们必须添加变量。在这个项目中,大家要发送的是传感器和温度数据,因此我们创建两个变量。

点击变量并复制变量ID。然后将这个粘贴到代码中。

选择My Profile->API Keys。从这里获取你的API密钥。

在Edison上构建,上传并运行app。你会在调试控制台中看到传感器值,假如一切正常的话,你会发现数据正在被发送到Ubidots云。导航到Ubidots仪表盘,你会看到所有从传感器发送的数据。在这里,我也创造了一些警告,假如声音水平超过了一定水平(指婴儿哭)警报就会马上通过短信发送到我们的手机里。






对于小婴儿来说,光是这些或许还是不够的,所以我一直在改进中,希望能做到更准确的检测和更好的提醒,以后再分享给大家。

