HomeBright: Control de Iluminación Inteligente con Leap Motion y Arduino UNO
Componentes y materiales
| Componente | Cantidad |
|---|---|
| Arduino UNO | 1 |
| Controlador Leap Motion | 1 |
| LED genéricos | 4 |
| Cables jumpers | 10 |
Aplicaciones y servicios
- Arduino IDE
- Node.js + Cylon.js (framework robótica JS)
- Leap Motion SDK
Descripción del proyecto
HomeBright es un sistema de automatización del hogar que usa Leap Motion y Arduino Uno para controlar la intensidad de la iluminación de distintas estancias. Un plano de la casa se mapea a las coordenadas del Leap Motion: la posición de la palma selecciona la habitación, y subir/bajar la palma ajusta el brillo.
Instrucciones de instalación
- Instala Node.js.
- Instala Leap Motion SDK.
- Instala Cylon.js para Arduino y Leap Motion (ver enlaces útiles).
- O usa
package.jsonpara instalar todos los módulos:npm install.
Cómo ejecutar
node homebright-console.js
Enlaces útiles
Código
homebright-console.js (JavaScript / Node.js + Cylon.js)
"use strict";
var cylon = require("cylon");
cylon.robot({
connections: {
leapmotion: { adaptor: "leapmotion" },
arduino: { adaptor: "firmata", port: "COM7" } // Ajusta tu puerto
},
devices: {
leapmotion: { driver: "leapmotion" },
livingroom: { driver: "led", pin: 6, connection: "arduino" },
dininghall: { driver: "led", pin: 9, connection: "arduino" },
bedroom: { driver: "led", pin: 10, connection: "arduino" },
studyroom: { driver: "led", pin: 11, connection: "arduino" }
},
work: function(my) {
my.leapmotion.on("hand", function(hand) {
var on = hand.grabStrength > 0.5 ? false : true; // Puño cerrado = off
var x = hand.palmPosition[0];
var z = hand.palmPosition[2];
var value = 0;
if (on) value = hand.palmPosition[1]; // Altura palma = brillo
console.log(value);
// Mapeo coordenadas → habitación
if (x > 0 && z > 0) {
my.livingroom.brightness(value); // Sala
} else if (x > 0 && z < 0) {
my.dininghall.brightness(value); // Comedor
} else if (x < 0 && z > 0) {
my.studyroom.brightness(value); // Estudio
} else {
my.bedroom.brightness(value); // Dormitorio
}
});
}
}).start();
package.json (dependencias Node.js)
{
"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"
}
}
Esquemáticos
Proceso de manufactura
- Construye un Spybot controlado por Bluetooth con Arduino
- FlickMote: Mando IR por gestos para Smart Home
- TV‑B‑Gone DIY con Arduino: Mando universal para apagar cualquier TV
- Construye un Reloj Maestro LED Personalizado con Alarma – Visible desde 12 Metros
- Find Me: Localizador Inteligente de Objetos con Arduino y Bluetooth
- Soluciones de Alimentación Optimizadas para Proyectos Arduino
- Tres en raya con Arduino, matriz LED MAX7219 y carcasa de cartón
- Construye un Robot Cuadrúpedo Inteligente con Arduino: Guía Paso a Paso
- Construye un volante joystick personalizado con Arduino para gaming
- Construye una Máquina CNC Totalmente Funcional con Arduino Nano R3
- Earth Analyzer: Kit Avanzado IoT de Sensores para Monitorización Ambiental