Automatización del hogar con Raspberry Pi: instalar y configurar OpenHAB

En la era del Internet de las cosas, cada vez hay más dispositivos conectados. Esto también es adecuado para su propia domótica Raspberry Pi. Sin embargo, cada dispositivo utiliza un protocolo de transmisión diferente, lo que puede hacer que controlarlos sea bastante incómodo. Afortunadamente, hay un remedio para esto: el Smart Home System OpenHAB ofrece muchos paquetes existentes, con los que todos los dispositivos de fabricantes conocidos pueden controlarse mediante una interfaz. E incluso para los componentes que aún no son compatibles de forma predeterminada, podemos simplemente escribir nuestros propios complementos.

La principal ventaja de esto es que podemos monitorear y controlar todos los dispositivos conectados a través de un único panel de control, ya sea interior o exterior.

Para poder usar OpenHAB y así dar el primer paso para nuestra domótica Raspberry Pi, comenzamos con la instalación, instalación y configuración de OpenHAB en este tutorial antes de conectar más módulos en las siguientes partes del tutorial.

Piezas de hardware necesarias para la automatización del hogar con Raspberry Pi

Como ya se dijo, casi todos los dispositivos y sensores se pueden usar con OpenHAB, incluidos muchos que ya hemos usado en tutoriales anteriores. Además, los siguientes componentes son esenciales:

Para darle una perspectiva de las posibilidades y más tutoriales, aquí hay algunos dispositivos, protocolos y servicios más que son compatibles:

Los protocolos de todos los nuevos dispositivos de Internet de las cosas (o que se anuncian para su uso en aplicaciones de hogar inteligente) son compatibles con OpenHAB y se agregan más y más.

Instale OpenHAB en la Raspberry Pi

Básicamente, hay dos formas de instalar OpenHAB. El primer método (algo más complicado) sería extender un sistema Raspbian existente con todos los paquetes. La otra solución, más conveniente, es tomar un sistema Raspbian con paquetes preinstalados, lo cual también hacemos en este tutorial.

Primero, cargamos la última imagen en la página del proyecto, que tiene el nombre “openhabianpi-raspbian -….. xy”. Guarda el archivo.

Si su tarjeta micro SD aún no está en el lector de tarjetas de su PC/Mac, insértela. Si su tarjeta SD aún no está formateada, le recomiendo la herramienta SD Formatter. Damit kannst du einfach deine (micro) SD Karten mit zwei Klicks löschen und anschließend weiter verwenden.

Ahora necesitamos una herramienta que pueda escribir archivos «.xy» en una tarjeta SD. Para esto uso Etcher, que está disponible para todos los sistemas operativos comunes. Descárgalo e instálalo. Luego seleccione el archivo actualmente cargado y presione “¡Flash!”.

El proceso tarda unos minutos. Mientras tanto, ya puede conectar un cable Ethernet al Pi. Si no puede establecer una conexión Ethernet, también puede ingresar los datos WiFi de inmediato.

Una vez que la imagen se haya escrito en la tarjeta SD, abra el directorio en el Explorador de archivos. Hay un archivo llamado “openhabian.conf” que debe abrirse con un editor de texto. A continuación hay dos líneas comentadas (con etiqueta hash/hash). Elimine los hashtags al principio e ingrese el nombre y la contraseña de su red WiFi y luego guarde el archivo:

#wifi_ssid="My Wi-Fi SSID" #wifi_psk="password123"

Ahora inserte la tarjeta micro SD en el Pi y conecte la alimentación. ¡No debe desconectar la fuente de alimentación durante los próximos 45 a 60 minutos, ya que se cargarán todas las actualizaciones y archivos de configuración necesarios! Solo después de que todos los puntos hayan terminado (se muestran los pasos de instalación, para que pueda reiniciar si es necesario).

Si todo salió bien y tu Raspberry Pi está conectada a la red, ahora puedes abrir la página en un navegador: http://openhabianpi:8080
Se muestra el menú de configuración (instrucciones paso a paso a continuación en el artículo).

Actualice OpenHAB a través del acceso SSH

Puede ingresar los comandos directamente usando el teclado en el Pi o a través de SSH. Elija su cliente SSH (como Putty) e ingrese el siguiente nombre de host:

openhabianpi

El nombre de usuario predeterminado es openhabian y la contraseña también es openhabian. También puede cambiar esto en el archivo de configuración de antemano.

Si el proceso de actualización aún no ha finalizado, se mostrará esto. De lo contrario, o tan pronto como finalice este proceso, la salida se verá así:

Aquí llamamos a los siguientes:

sudo openhabian-config

Si ha cambiado la contraseña, ingrese la actual como confirmación, de lo contrario, la contraseña predeterminada: openhabian

Primero seleccionamos “01 | Actualizar” y luego “02 | Sistema de Actualización”. Bajo “30 | Configuración del sistema” puede cambiar otras configuraciones, como el nombre del host, la zona horaria (la predeterminada ya es Berlín), las contraseñas, los puertos y su red WiFi.

Con «Componentes opcionales» puede agregar algunos paquetes más como Node-RED y muchos más, lo que incluye que puede crear fácilmente sus propias aplicaciones de IoT sin tener que programar mucho. Si es necesario, puedo entrar en esto en otro tutorial.

Automatización del hogar con Raspberry Pi: interfaz de usuario de OpenHAB

Por supuesto, también queremos una interfaz de usuario o una interfaz gráfica de usuario para nuestra domótica Raspberry Pi, desde la que podamos controlar nuestros componentes posteriores, desde teléfonos inteligentes, tabletas, pantallas táctiles o PC. Por lo tanto, estamos configurando esto ahora.

Primero, abrimos http://openhabianpi:8080/start/index en un navegador en la misma red:

Aquí elegimos “Estándar”, que preinstala algunos temas. Más tarde, se pueden agregar más manualmente.
Después de unos momentos, ahora podemos determinar la apariencia de la interfaz de usuario. HABPanel, Paper UI y Basic UI. Puede cambiar la selección más tarde. Por ejemplo, me gusta la interfaz de usuario de Paper.

En el lado izquierdo, encontrará el menú. Esa selección se puede hacer aquí. Como aún no hemos instalado nada, el menú de control también está vacío. En Configuración, podemos realizar configuraciones e instalar nuevos paquetes para nuestro Smart Home en Complementos.

Instalar complementos de OpenHAB en la Raspberry Pi

Para poder usar ciertos módulos como Phillips Hue Light o Z-Wave, primero se deben instalar los archivos necesarios. En este ejemplo, comenzamos con el enlace de red, que verifica si un dispositivo se encuentra actualmente en la red local. Esto se puede usar para desencadenar ciertas acciones tan pronto como esté fuera, por ejemplo.

Cambiamos a “Add-Ons” a la izquierda y luego a la pestaña “Bindings”. Aquí buscamos el paquete a instalar, en nuestro caso “Network Binding”. Después de hacer clic en «Instalar», el proceso puede tardar unos minutos.

Tan pronto como se haya instalado todo, navegamos de regreso a la «Bandeja de entrada» en la barra izquierda. Un clic en el gran signo más (+) muestra los enlaces instalados, incluido nuestro enlace de red. Si seleccionamos esto, los dispositivos se buscan en nuestra red.

Si no está seguro de qué dirección IP interna tiene su teléfono inteligente, puede buscar en su enrutador (192.168.1.1) o directamente en la configuración de su dispositivo.

Con un clic en la marca azul, podemos agregar dispositivos y nombrarlos en consecuencia. Otros dispositivos también se pueden ignorar o eliminar de la lista (ignorarlos solo temporalmente no los muestra, eliminarlos por completo los hace desaparecer hasta que vuelva a buscarlos).

Pasamos ahora a Configuración > Cosas. Seleccione el dispositivo que acaba de agregar. Aquí encontrará los dos elementos «En línea» y «Tiempo». Seleccionamos estas dos casillas:

Al hacer clic en el botón pin de arriba, se pueden cambiar ciertas configuraciones (dirección IP, etc.). Otros dispositivos tienen diferentes elementos que se pueden activar según sea necesario.

Si ahora cambiamos a «Control» en el panel izquierdo, vemos el dispositivo activado. Debajo están los elementos activados. En nuestro caso, esto es simplemente un valor booleano o un número, pero también podría incluir valores de temperatura y similares.

En futuros tutoriales, instalaremos y configuraremos otras cosas.

Cree sus propias cosas y elementos de OpenHAB: muestre la temperatura de la CPU

Finalmente, me gustaría mostrar lo fácil que es crear tus propios módulos. Sin embargo, este paso es opcional y se puede omitir si es necesario.

OpenHAB conoce dos tipos de objetos: Things y Items. En pocas palabras, una cosa se muestra como un mosaico en el panel de control y puede tener varios elementos (valores, botones, etc.). En un pequeño ejemplo, mostraremos la temperatura de la CPU:

En este ejemplo, crearemos una cosa con dos elementos (temperatura y hora en que se consultó por última vez).

Dado que ejecutaremos comandos de shell para esto, primero se debe instalar un complemento para esto. Busque en Complementos -> Enlaces para Exec Binding (Doku) e instálelo.

Luego conéctese a la Raspberry Pi a través de SSH. Primero creamos un script que lee la temperatura de la CPU. Esto también podría ser un programa Python, Java o C ++.

sudo nano /etc/openhab2/scripts/cpu_temp.sh

Obtiene el siguiente contenido:

#! /bin/bash

ENTRADA=€(/bin/cat/sys/class/thermal/thermal_zone0/temp)

TEMP=€(echo «escala=3; €ENTRADA / 1000» | bc)

eco € TEMP

Guárdalo con CTRL + O y sal del Nano Editor con CTRL + X.

Ahora otorgamos los derechos necesarios:

chmod +x /etc/openhab2/scripts/cpu_temp.sh

Como prueba, ya podría ejecutarlo, que debería mostrar la temperatura: bash/etc/openhab2/scripts/cpu_temp.sh

Continúa con la creación de nuestras cosas con el siguiente contenido:

sudo nano /etc/openhab2/things/cpu_temp.things

Thing exec:command:cpu_temp «CPU Temperatur» [command=»bash /etc/openhab2/scripts/cpu_temp.sh», transform=»REGEX((.*?))»]

Después de guardar y cerrar el editor creamos los elementos:

sudo nano /etc/openhab2/items/cpu_temp.items

Aquí insertamos los dos elementos siguientes:

Cadena CPUTEMPRaw «Temperatura [%.1f °C]» (Todos) {canal=»ejec:comando:cpu_temp:salida»}

DateTime CPUTEMPLastExecution «Ejecutado[%1€tH:%1€tM Uhr]» {canal=»exec:comando:cpu_temp:últimaejecución»}

Puede encontrar más información sobre los detalles de los dos (cosas y artículos) en las páginas de documentación.

Después de navegar de regreso al panel de control, verá la vista como se muestra arriba.

Acceda al panel fuera de su propia red

También puede acceder al panel de control desde su teléfono inteligente o tableta usando el nombre de la red interna (http://openhabianpi:8080). De lo contrario, también hay aplicaciones para dispositivos Android y iOS iPhone o iPad.

Sin embargo, también desea salir al exterior, por ejemplo, desde el móvil o desde el lugar de trabajo, no es posible acceder a su panel de control de Smart Home sin precauciones. Para ello es necesario lo siguiente:

  • Por un lado, si no tienes una dirección IP estática, necesitas una cuenta con un servicio dDNS como NoIP o DynDNS.
  • Además, el puerto (8080 para nosotros) en su enrutador debe estar activado en «Reenvío de puertos» para la dirección IP interna de la Raspberry Pi.
  • Además, se debe notificar al servicio dDNS cuando se cambia la dirección IP global. O su enrutador ofrece esta opción (las cajas Fritz o similares tienen la configuración adecuada) o puede dar este paso en su Raspberry Pi. Un tutorial sobre esto está disponible aquí.

Tenga en cuenta, sin embargo, que el panel de control no está protegido con contraseña y corre fácilmente un riesgo de seguridad. Por lo tanto, desaconsejo que el panel sea accesible desde el exterior, a menos que haya tomado las precauciones adecuadas y esté seguro de su causa.

¿Qué dispositivos le gustaría controlar con OpenHAB y le gustaría ver un tutorial?