HomeBright
组件和用品
| × | 1 | ||||
| × | 1 | ||||
| × | 4 | ||||
| × | 10 |
应用和在线服务
|
关于这个项目
这个应用程序使用 LeapMotion 和 Arduino Uno 来创建一个控制房间照明强度的家庭自动化系统。将家庭平面图映射到 LeapMotion 坐标以确定特定房间。手掌位置控制目标房间的照明,抬高或降低手掌控制房间的照明强度。
说明
安装 node.js
安装 Leap Motion SDK
为 Arduino 和 Leap Motion 安装 Cylon.js(请参阅下面的有用链接)
或使用 package.json 安装所有必需的节点模块
如何运行
运行:node homebright-console.js(参考代码部分)
有用的链接
https://developer.leapmotion.com/
http://cylonjs.com/documentation/platforms/arduino/
http://cylonjs.com/documentation/platforms/leapmotion/
http://cylonjs.com/documentation/drivers/led/
代码
- homebright-console.js
- package.json
homebright-console.jsJavaScript
控制 LED 灯的 cylon 机器人node homebright-console.js
"use strict";var cylon =require("cylon");cylon.robot({连接:{leapmotion:{适配器:“leapmotion”},arduino:{适配器:“firmata” ,端口:“COM7”}},设备:{leapmotion:{驱动:'leapmotion'},客厅:{驱动:“led”,引脚:6,连接:“arduino”},餐厅:{驱动:“led” , pin:9, connection:"arduino" }, 卧室:{ driver:"led", pin:10, connection:"arduino" }, Studyroom:{ driver:"led", pin:11, connection:"arduino" } }, 工作:function(my) { my.leapmotion.on("hand", function(hand) { var on =hand.grabStrength> 0.5 ? false :true; var x =hand.palmPosition[0]; var z =hand.palmPosition[2]; var value =0; if (on) { value =hand.palmPosition[1]; } console.log(value); if(x> 0 &&z> 0) { // 客厅my.livingroom.brightness(value); //my.livingroom.turnOn(); } else if (x> 0 &&z <0) { // 餐厅 my.dininghall.brightness(value); } else if (x <0 &&z> 0) { // 自习室 my.studyroom.brightness(value); } else { // b edroom my.bedroom.brightness(value); } }); }}).start();
package.jsonJavaScript
节点包配置文件npm install
{ "name":"homebright-console", "version":"1.0.0", "dependencies":{ "cylon":"1.2.0", "cylon-gpio":"0.27. 0", "cylon-i2c":"0.23.0", "cylon-leapmotion":"0.20.0", "serialport":"1.7.4", "firmata":"0.5.5", "cylon- Firmata":"0.23.0" }}
示意图
制造工艺