Node-Red Beer Brewing Controller

 


Dificultad: Dificil.

Tiempo
aproximado: 3 horas.

Coste
aproximado: 20-100€

Utilidad: Muy Útil.

Anteriormente ya hemos hablado de dos Software de elaboración para cerveceros caseros: BrewUNO [link!] y CraftBeerPi [link!], hoy hablamos de como montarte tu propio Software de Elaboración con Node-Red, donde tenemos dos opciones, podemos utilizar un repositorio ya existente de diferentes desarrolladores (al final del post) o podemos creárnoslo nosotros mismos haciendo que este sea totalmente personal para nuestro equipo y con un gran diferenciador con respecto a los anteriores softwares vistos, sin limitaciones de software. ¿El inconveniente? que si no usas un repositorio existente tienes que saber unos mínimo de programación.


Pero ¿Qué es Node-Red?

Node-Red es una herramienta visual, donde podemos ver visualmente las relaciones y las funciones que queremos realizar, lo que hace mucho más fácil para el usuario-programador, realizar la programación que necesita, y no es necesario saber de  código escrito, ya que se puede realizar perfectamente una configuración sin escribir ni una línea de código, lo cual hace que conectar los elementos de hardware que necesitemos (sondas, SSR, volumétricos…) y APIs sea muy sencillo y visual.

En este primer artículo sobre Node-Red vamos a ver como preparar Node-Red para RaspberryPi y como añadir uno de los repositorios existentes para poder trabajar con nuestro equipo de elaboración, cada uno de los repositorios que veremos tienen distintas funcionalidades.

 

Hardware necesario para Node-Red Brewing Controller:
 
– Tarjeta de memora de clase 10, y al menos 16 GB de memoria. Coste aproximado: 10 a 30€. [eBay] [Aliexpress]

– Raspberry
(Cualquier modelo). Coste Aproximado: 20 a 50€. Recomendable a partir de una RaspberryPi3B si se va ha utilizar pocos elementos la RaspberryZero (versión con Wifi) seria una buena opción.
RaspberryPi Zero W [eBay] [Aliexpress] [Amazon]
RaspberryPi 3B+ [eBay] [Aliexpress]

– Faltaria tu propia instalación que necesites automatizar o si tienes que realizarla desde cero puedes ver los ejemplos en los Artículos BrewUNO[link!] y CraftBeerPi [link!], realmente al trabajar en una Raspberry todo lo que funciona en CraftBeerPi podríamos hacerlo funcionar en Node-Red ya que el hardware es totalmente compatible, algunos ejemplos de elementos:

– SSR para controlar los hervidores, bombas, agitadores…. [eBay] [Aliexpress]

– Sondas de temperatura para controlar la temperatura en las diferentes etapas de la elaboración. [eBay] [Aliexpress]

– Sensor Volumétrico para el control de litros. [Aliexpress]

 – En definitiva todo lo que creas que necesites controlar en tu instalación, el límite en este caso lo pones tu.

Software necesario para Node-Red Brewing Controller: 
 
– SD Card Formatter. [link!]
– Sistema Operativo para Raspberry. [link!]
– balenaEtcher. [link!]
– putty. [link!]



1- Preparar nuestra RaspberryPi para Node-Red:

Formatear la tarjeta de memoria y ponerle un Sistema Operativo, lo
haremos a través del programa SD Card Formatter previamente instalado:
-Mucho cuidado con seleccionar la unidad adecuada que queremos formatear.

Nos
descargaremos una distribución para nuestra Raspberry, en mi caso la
última disponible en su versión «Buster», ya que es la más liviana de
todas con Escritorio.



Una vez descargado, instalaremos el programa «balenaEtcher» y flashearemos el sistema operativo en nuestra tarjeta de memoria:


Una
vez terminado, ya tendremos podemos arrancar nuestras raspberry con
un sistema operativo, nos faltara conectarlo a nuestra red y actualizar
el Sistema Operativo.



Puedes entrar en la raspberry conectándole un teclado, ratón y monitor y
esperar a que arranque y desde el sistema Operativo basado el linux
configurarle la wifi. En mi caso he querido tomar el ejemplo «más
difícil», instalarlo mediante conexión remota a la raspberry sin
conectar a ella ningún monitor, pero siempre puedes hacerlo conectando
un monitor para configurar la red.

Para ello, le añadimos los
parámetros de configuración wifi y «ssh» protocolo de conexión remota en
modo consola añadiendo un par de ficheros a la raíz de nuestra SD:



Con editor de texto, nos creamos el siguiente archivo:

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=ES
network={
   ssid="LA_SSID_DE_TU_WIFI"
   psk="LA_CONTRASEÑA_DE_TU_WIFI"
   key_mgmt=WPA-PSK
}

Y lo renombraremos con la extensión: wpa_supplicant.conf
Y crearemos otro archivo de texto vacío que se llame «ssh»


Y ambos los añadimos a la partición boot en la raíz de nuestra SD:


Una
vez añadidos ya nos arrancara nuestra raspberry conectados dentro de
nuestra red y mediante la IP podremos conectar con ella por consola a
través de ssh y el programa «putty».
-Ponemos la IP de nuestras RaspberryPi, seleccionamos tipo de conexión «ssh» y aceptamos.



La primera vez que conectemos mediante «ssh» nos aparecerá la siguiente advertencia que deberemos aceptar:


Si habéis utilizado el mismo sistema Operativo (aunque sea otra versión), el usuario y contraseña debería de ser: pi – raspberry



Por úlimo actualizaremos nuestro sistema operativo, mediante los comandos.
sudo apt-get update
sudo apt-get upgrade



Tardará bastantes minutos, pero cuanto termine, ya estará listo para poder instalar comenzar.

 2.- Instalar Node-Red:

 bash <(curl -sL https://raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered)»


Una vez instalado arrancaremos Node-Red con el comando:

node-red-start

 

Y accederemos a Node-Red:

http://IP_DE_LA_RASPBERRYPI:1880 


¡Con esto ya estamos dentro del panel de Node-Red y podemos comenzar con nuestros proyectos!


3.- Añadir un proyecto existente de Node-Red Brewing Controller:

Ejemplo con el repositorio de Beca Angus – brew3:

Con Node-Red parado:

Comando: node-red-stop

Editar el archivo: /home/pi/.node-red/settings.js  con el comando:

sudo nano -w /home/pi/.node-red/settings.js

y buscaremos la línea «editorTheme»:

Donde en enabled lo cambiaremos por verdadero (true):

Instalaremos el repositorio de git:

sudo apt install build-essential git


Una vez instalado, reiniciaremos la RaspberryPi o arrancaremos Node-Red (node-red-start) y accederemos a través del navegador web:


nos aparecerá una nueva pantalla:


donde pulsaremos en Clonar repositorio para acceder a alguno de los ya existentes:


Necesitaremos logaremos con nuestro usuario de github, y si no tenemos nos crearemos uno: [link!]


Le podremos el nombre que queramos a nuestro proyecto y la URL del repositorio que queremos traernos y nos logeamos con nuestros usuario y contraseña de github de nuevo:

Ejemplo: Justin Angevaare – brew2: https://github.com/jangevaare/brew2.git

La dirección esta en el repositorio de cada uno.

 

 


 

Al añadirlo nos aparecerán una serie de errores, pero son simplemente dependencias que necesitamos instalar, pulsaremos en Manage proyect dependencies y las instalaremos:


Es posible que las tres últimas den error pero es correcto.

 


Una vez finalizado ya podremos ves nuestro proyecto:


Y para ver como se ve visualmente la consola de funcionamiento accederemos mediante la dirección:

http://IP_DE_LA_RASPBERRYPI:1880/ui/


 

Anexo*: Para que que Node-red se ejecute automáticamente al arrancar la raspberry.

Con Node-Red parado:

Control+C en la consola:

sudo systemctl enable nodered.service

 

Si alguna vez necesitamos quitar el arranque automático, bastara con introducir el siguiente comando:
sudo systemctl disable nodered.service

 

 

Algunos proyectos con Node-Red Brewing Controller:

– Beca Angus – brew3

Enlace GitHub: brew3
Descripción:
Tablero de instrumentos original para una cervecería de 3 recipientes
con temporizadores y programación de maceración.


 
– Bill Bird – brew1v

 Enlace GitHub: brew1v

Descripción: Panel de control de elaboración de cerveza de un solo recipiente

 


– Erik Norfelt – brew2

Enlace GitHub: brew2

Descripción: Panel
de control de elaboración de cerveza de dos recipientes con
programación de macerado e integración de brewfather, también tiene la
función de detección de volumen, transferencia de mosto de mash y
retención de volumen.

 

– Justin Angevaare – brew2

Enlace GitHub: brew2

Descripción: Tablero original de elaboración de cerveza de dos recipientes, con control de maceración PID en cascada (RIMS) y sensor de volumen




– Stig Berntsen – brew2_herms

 Enlace GitHub: brew2_herms

Descripción:  Sistema de preparación de dos recipientes (HERMS) 


Grupo de facebook de Node-Red Brewing Controller: [link!]

Publicar comentario