Ilumina tu hogar automáticamente al llegar: Iluminación inteligente con Arduino e iPhone
Componentes y suministros
![]() |
|
× | 1 | |||
![]() |
|
× | 1 | |||
![]() |
|
× | 1 | |||
![]() |
|
× | 1 | |||
![]() |
|
× | 1 | |||
![]() |
|
× | 1 |
Aplicaciones y servicios en línea
![]() |
|
|||
![]() |
|
Sobre este proyecto
Visión general
¿Habéis soñado alguna vez con que las luces de vuestra casa se enciendan cuando os acercáis a ella, para no entrar nunca en la oscuridad? Este dispositivo pretende hacer todo eso por vosotros, así vuestras luces estarán encendidas cuando os acerquéis a vuestra casa usando GPS. Las luces permanecerán encendidas mientras estéis dentro de la casa.

Funcionalidad
Este proyecto utiliza Blynk para funcionar. Blynk requiere datos móviles para funcionar en movimiento, por lo que deben estar habilitados para que este proyecto funcione. Notad que una cuenta y app de Blynk son necesarias para ejecutar este proyecto. Este proyecto funciona de forma bastante simple: Blynk monitoriza la geolocalización del teléfono y envía el feed al Arduino Yún. El Arduino Yun compara la geolocalización del teléfono con la ubicación de casa (Casa la configura el usuario manualmente). Cuando el teléfono es detectado dentro del rango de casa, el Arduino Yun encenderá el LED. Aquí tenéis una imagen ilustrando esto.

El dispositivo monitorizará constantemente la ubicación del teléfono del usuario, comprobando siempre si el usuario está dentro del rango de casa. Aquí tenéis una imagen ilustrando la visión general del código.

If(isInParametercomprobará si el usuario está dentro del parámetro de casa, si lo está, la funciónTurnLEDOncomenzará y encenderá el LED.
Elseejecutará la sentenciaTurnLEDOffque apagará el LED si el usuario no está dentro del parámetro de casa.
El Arduino Yun configurará automáticamente los parámetros de casa según las coordenadas de casa. El Yun creará un cuadrado alrededor de casa, con 4 puntos en cada esquina, de esta forma, si el usuario está dentro del cuadrado, el dispositivo enciende el LED, si no, lo apaga. El rango por defecto para el cuadrado es de unos 60 metros en todas direcciones desde el punto de configuración.
Aquí tenéis algunas imágenes mostrando el dispositivo en acción.

Beneficios
El usuario que opere este proyecto se beneficiará en:
- Encender las luces fácilmente al entrar en casa
- Notificar a la gente en casa que el usuario llega pronto
Construcción del proyecto
Paso 1: Apparato requerido
Se necesitan algunas cosas en este proyecto, la lista está abajo.
- 1, Arduino Yun
- 1, Protoboard
- 1, Resistencia (220Ω)
- 1, Smartphone
- Cables Jumper

Paso 2: Conectar el circuito
Este proyecto tiene un circuito físico consistente en un LED y una resistencia, aquí tenéis una imagen de los esquemáticos del proyecto.

Paso 3: Obtener vuestra Geolocalización
El siguiente paso es averiguar las coordenadas de geolocalización de vuestra casa, las imágenes de abajo ilustran este proceso.

Paso 4: Configuración de Blynk
Se requiere una cuenta de Blynk para utilizar este proyecto, necesitaréis descargar la app Blynk de la App Store o Google Play para empezar, ahora seguid las imágenes de abajo para configurar Blynk.

Paso 5: Reconocer el Código
El código de este proyecto tiene 3 secciones principales:
- Leer geolocalización
- Trazar ubicación
- Control LED
Estas secciones se explicarán a continuación.
- Leer Geolocalización
BLYNK_WRITE(V0) // almacenar la geolocalización en variable
{
latitude = param[0].asFloat();
longitude = param[1].asFloat();
// depuración? - Considerad descomentar las líneas de abajo y probar manualmente
//latitude = 67.357899;
//longitude = -8.259199;
}
Esta sección de código lee la geolocalización del Pin Virtual de Blynk y almacena los valores en variables. La sección de depuración os permite depurar el dispositivo introduciendo una ubicación específica. Notad que los valores leídos son las coordenadas de vuestro teléfono.
- Trazar Ubicación
if(latitude <= maxLat && latitude <= minLat && // comprobar si el teléfono está dentro de los parámetros
maxLng >= longitude && minLng >= longitude)
{
geolocation = 1;
}
else
{
geolocation = 0;
}
Esta parte del código comprueba si la ubicación del teléfono está dentro de los parámetros establecidos como casa. Notad que se forma automáticamente un cuadrado alrededor de la geolocalización insertada, y el Arduino comprueba si el teléfono está dentro del cuadrado.
- Control LED
if(geolocation == 1) // encender LED si el teléfono está en el parámetro
{
digitalWrite(pinLED, HIGH);
}
else
{
digitalWrite(pinLED, LOW);
}
La simple última parte del código enciende el LED si el usuario se acerca o está en casa y lo apaga si el usuario está lejos.
Configuración de las Variables
Hay algunos valores que configurar en este proyecto. Para empezar, introducid vuestro Token de autenticación de Blynk recibido por email en el paso de Configuración de Blynk en la variable auth[]. Luego tomad la latitud y longitud de geolocalización de vuestra casa e insertadlas en las variables myLocationLat y myLocationLng. El último paso es comprobar si estáis depurando. Si no lo estáis, considerad establecer proDebug a 0 para evitar impresiones en serie. Si estáis depurando, puede que queráis que el Arduino reciba una geolocalización fija en lugar de la de vuestro teléfono. Si vais al bucle BLYNK_WRITE hay más instrucciones allí.
Librerías
- Bridge - copyright (c) Arduino LLC bajo la Licencia Pública General Menor de GNU, esta librería está en dominio público.
- Blynk - Blynk, esta librería se publica bajo la Licencia MIT (MIT)
Final
El paso final es conectar vuestro Arduino Yun al ordenador y subir el código. Este proyecto requiere un Arduino Yun para funcionar. Con ligeras modificaciones del código, es posible ejecutar este proyecto en cualquier microcontrolador que tenga WiFi integrado o podéis conectar un módulo WiFi a un dispositivo Arduino. Notad que se requieren datos móviles para que el proyecto funcione en movimiento.
Antecedentes
Este es un proyecto que quería implementar desde hace mucho tiempo. Tiene una idea básica detrás: cuando el usuario se acerca a la casa, las luces de la casa se encienden. No he conectado este proyecto a las luces de mi casa, he usado un LED en su lugar. Si queréis conectar este proyecto a las luces de vuestra casa, podéis añadir un relé y conectarlo al mismo pin del Arduino que el LED y también conectarlo a los cables que conectan vuestras luces a la corriente. Pero primero, probad el proyecto para aseguraros de que el cableado es correcto y el proyecto funciona. ¡Buena suerte!

Código
lightsOnEnter
El código completo
lightsOnEnter
La adaptación del código para usar un ESP8266 en lugar del Yún. Cualquier placa Arduino de 5v podrá ejecutar el código.
Esquemáticos
schematics_J7lseyIN3G.fzz
Proceso de manufactura
- Control de Brillo LED con PWM mediante Pulsador en Arduino Mega
- Proyecto Dados Digitales Arduino: Construye tu Propio Generador de Números Aleatorios con LCD
- Construye un Iron Man animado con Arduino: componentes, sensores y guía paso a paso
- Find Me: Localizador Inteligente de Objetos con Arduino y Bluetooth
- Monitoriza la Temperatura de tu Hogar desde Cualquier Lugar con Integración Arduino Cloud
- Construye un Brazo Robótico Impreso en 3D Controlado por Arduino – Guía Paso a Paso
- Controlador de Humidificador DIY con Arduino y Relé: Configuración Segura de Alto Voltaje
- Pong Neón en Matriz NeoPixel con Arduino Nano
- Construye un volante joystick personalizado con Arduino para gaming
- Construye un Receptor FM Potente con Arduino y Módulo TEA5767
- Arduino 101: Construye un Podómetro con Sensor DHT11 y Pantalla LCD







