SmartHome

SmartHome es uno de los principales proyectos que llevo a cabo desde hace varios años y cuyo fin es la automatización de todas las tareas posibles del hogar para hacernos la vida más cómoda.

Para conseguirlo estoy fabricando un conjunto variado de nodos que por separado realizaran tareas sencillas para controlar ciertas partes del hogar pero que en conjunto permitirán una automatización mas avanzada cuando varios de esos nodos interactúen entre sí. Uno de los ejemplos mas sencillos seria que la luz del pasillo se encienda automáticamente cuando se detecte mediante el sensor de la puerta que alguien esta accediendo a la vivienda, y no saliendo.

Todos los nodos están construidos con el microcontrolador ATmega328P, uno de los mas utilizados en los Arduinos, junto a un chip de firma ATSHA204A para garantizar la autenticidad de las comunicaciones, y el chip flash W25X40CLSNIG para actualizaciones del código a distancia. Todo ello funcionando junto a la librería MySensors que es la encargada de que el hardware se identifique como un nodo/sensor y pueda utilizarse con los distintos softwares de gestión que hay disponibles.

En la siguiente imagen se muestra un ejemplo de nodo y como cada parte se comunica con la siguiente, en concreto se muestra como se toma una medición de temperatura/humedad o una detección de movimiento, que es procesada por el microcontrolador y enviada inalambricamente por la antena NRF24L01, después otro nodo recibe esos datos y convierte la comunicación inalámbrica a cableada para volcarla en la red local de casa y que el servidor conectado en ella pueda recuperar los datos y actuar en consecuencia.

Imagen de wetwa.re

 

Cómo funcionan los nodos

Pendiente de grabar un vídeo cuando tenga más variedad de nodos finalizados y mostrarlos todos a la vez.

 

Qué nodos hay disponibles

La lista de nodos fabricados o planificados es la siguiente (solo los que están empezados, el resto consultar siguiente apartado):

Pulsadores táctiles de pared
Permite encender, apagar o regular el brillo de las lamparas del techo de cada habitación, en vez de un mecanismo mecánico cuenta con un cristal con un pulsador táctil que detecta las distintas pulsaciones (cantidad, duración, etc,) para realizar las acciones programadas.

 

Sensor multiuso
Es un sensor multiuso alimentado o bien con una pila CR2032 o con dos pilas AA, de serie permite usarse para detectar la apertura/cierre de puertas o ventanas, y tomar mediciones de temperatura, humedad y luz, opcionalmente se puede ampliar sus funcionalidades mediante sus tres conectores de expansión.

 

Mando a distancia
Es un mando a distancia de reducido tamaño con un botón que al ser pulsado realizara la acción programada en la centralita, como por ejemplo encender o apagar las luces de una habitación, subir o bajar sus persianas, etc.

 

Controlador de luz LED RGBW
Este nodo permite encender, apagar y regular el brillo de hasta cuatro canales LED, pensado principalmente para tiras LED de tipo RGBW (rojo, verde, azul, y blanco). Estas luces pueden servir como luces de cortesía o de ambiente.

 

Medidor de consumo para cuatro eléctrico
Este nodo permite monitorizar el consumo de hasta cuatro cables del cuadro eléctrico mediante pinzas amperimétricas SCT-013-030. Se instala en el cuadro eléctrico como un componente mas.

Cuenta con una pantalla OLED y un pulsador táctil en el frontal para mostrar información directamente.

 

Cuál es el estado del desarrollo

Los diferentes nodos que vaya terminando o estén en una etapa muy avanzada del desarrollo serán publicados en mi página junto a toda la documentación, a si mismo también serán publicados en la plataforma de hardware libre openhardware.io. y en el foro de mysensors.org.

El avance en el desarrollo es algo lento, principalmente por el tiempo de espera de los componentes usados en las placas o por la fabricación de las placas, puedes consultar el estado actual del desarrollo de cada nodo desde el siguiente enlace:

 

Repositorio en GitHub

Todo el contenido del desarrollo: esquemáticos, circuitos, gerbers, datasheets, etc.