Control del consumo de agua (<15€)

Hay varias maneras de comprobar su consumo de agua, aquí he elegido colocar una turbina de efecto hall a la salida de mi tanque de agua caliente (calentador de agua), esta turbina está equipada con un sensor de temperatura, también he puesto una turbina en la red de agua fría (opcional).

Objetivos

  • Saber cuánta agua caliente se consume (en volumen), conocer la velocidad de flujo es posible, pero no la usé
  • Conoce la temperatura del agua que sale
  • Conocer el consumo de agua fría (con una segunda turbina)
  • Que el conjunto es completamente autónomo y se puede buscar por wifi
  • Control del coste del conjunto
  • Posibilidad de sustituir elementos activos sin desmontaje

Editar enero de 2025: Esta página se ha actualizado significativamente reemplazando el D1 mini con su última versión, el D1 Mini V4. Y reemplacé ESP Easy con ESP Home (para una integración más fácil con Home Assistant).

Nueva página: Domotizo mi consumo de agua

Equipo y costo necesarios

El D1 Mini está equipado con varias entradas , y se pueden utilizar varias turbinas, ya sea por zona para tener los diferentes consumos, o agua caliente y fría (que he elegido).

  • A D1 Mini ESP8266 (entre 1 y 3€)

  • Resistencia de 10k ohmios (R1)
  • Una resistencia de 10k ohmios (opcional)
  • Conectores para poder desconectar los elementos activos de los elementos pasivos (opciones, 1€) 2P+3P

Modificación de cables de turbina y sensor de temperatura

Para separar el D1mini y la sonda, preferí no soldarlos juntos.

En mi primera turbina : Asi que utilizo conectores simples (sólo tenía 4Ps a mano) , que da:

  • El sensor de temperatura está equipado con dos cables negros, así que sin dificultad, sin sentido, soldé un cable negro en el cable blanco y otro cable negro en el cable amarillo
  • El sensor de flujo está equipado con 3 cables, me quedé con los colores.

En la segunda turbina, elegí un modelo con conectores

Así que compré algunos conectores correspondientes, por lo que es aún más fácil de conectar.

Brochado del D1 Mini

Aquí está el cableado

En este esquema, elegí reemplazar el hilo amarillo con un hilo verde porque el amarillo no era visible. Y para evitar confusiones entre 3.3V y 5V, representé uno en naranja y el otro en rojo. Esto deberá adaptarse a los conectores (opcionales) explicados en el párrafo anterior.

Algunos elementos de comprensión

El Sensor de temperatura es un termistor, es decir, cambia de valor en función de la temperatura. Así que lo pruebo en un puente divisor con una resistencia de 10K (este valor corresponde al valor más cercano a la sonda de temperatura a 25 ° C) y esta información analógica ingresa el D1Mini en su entrada analógica A0

El Sensor de flujo En cuanto a que da información digital para conectarse en una entrada digital, elegí D5 (y D7 para el segundo), otras entradas fueron problemáticas durante mis pruebas. Está alimentado solo por 3.3v porque 5V en una entrada digital grillaría el circuito. Añadí una resistencia pull-up, no es necesariamente útil, el Wemos a menudo tiene una resistencia integrada, pero dado el precio de una resistencia, no lo dudé. Se encuentra entre el terminal de datos y +3.3v. En la segunda turbina no puse ninguna resistencia para probar la diferencia, finalmente no hay ninguna.

Configuración de ESP D1 Mini

Hay varios métodos para explotar Wemos y productos compatibles, elegí usar ESP Easy que ya uso mucho con Sonoffs. Tenga en cuenta que esta parte se puede adaptar a cualquier ESP. Mi objetivo al tomar el D1 Mini era ser independiente, así que quería evitar el uso de una frambuesa o arduino que también sería útil para otra cosa.

La fuente de alimentación para el D1 mini, la pincho en un USB de un equipo informático cercano, sin una fuente de alimentación USB cercana, puede usar un cargador de teléfono o cualquier sistema que le permita tener 5v.

La configuración de la D1 mini se separa de este tutorial por simplicidad, es necesario tener artículos dedicados, por lo tanto, es necesario:

Configuración de ESP Easy

Más allá de los ajustes habituales que se configuran en ESP Esasy (especificados en los enlaces anteriores), es interesante ampliar los elementos específicos de este tutorial:

Pestaña del dispositivo

  • Cálido corresponde a la turbina en la red de agua caliente (a la salida del globo)

Está conectado a la entrada digital D5 (así GPIO14)

Elegí establecer un intervalo de actualización a 2s, pero no es obligatorio, es solo para ver el medidor montado cuando abre el agua.

Tres valores numéricos son dados por la sonda, he elegido eliminar los decimales. El valor total debe dividirse por 390, explico a continuación cómo encontrar el denominador de esta división.

 

  • Temperatura corresponde a la temperatura del agua caliente

Nota 03/04/2022 En una el Consejo Benevolente de Seb821, conecté el termistor a 3.3V y no a 5V. 

Está conectado a la entrada analógica A0

Elegí tomar solo valores enteros, esto limita los enlaces a Jeedom y el almacenamiento innecesario de información.

 

  • Frío corresponde a la turbina en la entrada general de la red de agua fría (opcional)

Está conectado a la entrada digital D7 (así GPIO13)

Tres valores numéricos son dados por la sonda, he elegido eliminar los decimales. El valor total debe dividirse por 408, explico a continuación cómo encontrar el denominador de esta división.

Pestaña de hardware

Esto no parece obligatorio, pero me he acostumbrado a especificar lo que pretendo hacer con los pines D1Mini, por lo que he configurado las dos entradas digitales que utilizo de la siguiente manera:

Como no se usa I2C, deshabilito todo:

Herramientas / Pestaña avanzada

Es totalmente inútil pero es más limpio, pongo un servidor NTP para que el D1 esté a tiempo (192.168.1.1 es mi Syno Router)

Deshabilitar el puerto serie también es una buena práctica

Calibración de sondas (turbinas)

Las sondas tienen una calibración necesaria, la turbina responde a una serie de revoluciones por minuto y nos gustaría litros de agua.

No existe una receta milagrosa, cada turbina tiene sus propias limitaciones físicas, a nuestro nivel, una prueba de «llenado de casquillos» permitirá calibrar muy bien las sondas.

Aquí está cómo hacerlo:

  • No pongas nada en la columna Fórmula de TotalChaude

  • Elevar el valor de TotalChaude: (por ejemplo, TC1 = 1000)
  • Dar un salto y llenar 5 litros de agua (por ejemplo, Saltar = 5)
  • Elevar el nuevo valor de TotalChaude: (por ejemplo, TC2=2950)

El índice será I=(TC2-TC1)/Saut o (2950-1000)/5 ) = 390

Y la fórmula a añadir será %valor%/390

Configuración en el plugin ESP Easy

Por lo tanto, el D1 Mini es un dispositivo del plugin ESP Easy.

Los datos del dispositivo ESP Easy llegan como comandos de información en el plugin:

Aprovechamiento de los datos en Jeedom

Este párrafo es muy importante. Es necesario porque los totales (conso de agua fría + conso de agua caliente) medidos no se mantienen en el D1Mini. en caso de corte de energía, los medidores comienzan desde cero !!!

Para ello, utilizo 2 escenarios + 1 virtual.

+

Escenario de cálculo Agua caliente total

Solo describo el escenario de agua caliente, el escenario de agua fría es el mismo en lógica.

Es un cambio de valor TotalChaude Esto desencadena el lanzamiento del escenario:

Aquí está el escenario en su conjunto, detallaré a continuación:

Para tener la versión de texto completo:

– Denominación del escenario: Agua caliente Cálculo total
– Objeto principal: Agua fría caliente
– Modo hipotético: provocar
– Acto: #[Agua fría caliente][D1Mini][TotalChaude]#

SI #[Agua fría caliente][D1Mini][TotalChaude]# > variable (Total agua caliente anterior)
ENTONCES
(variable) Asignación de la variable: Agua caliente variable total (agua caliente total) +#[Agua fría caliente][D1Mini][TotalChaude]# – variable (Total agua caliente anterior)
SINON

SI #[Agua fría caliente][D1Mini][TotalChaude]# < variable (Total agua caliente anterior)
ENTONCES
(variable) Asignación de la variable: Agua caliente variable total (agua caliente total) + #[Agua fría caliente][D1Mini][TotalChaude]#
SINON

ACCIÓN
(variable) Asignación de la variable: Agua caliente total antes de #[Agua fría caliente][D1Mini][TotalChaude]#

Y desactivado:

ACCIÓN
(variable) Asignación de la variable: Agua caliente total anterior a 0
(variable) Asignación de la variable: Agua caliente total a 0

Antes de explicar el escenario, es útil especificar que la parte en gris debe activarse solo una vez para inicializar dos variables (Total de agua caliente anterior y Total de agua caliente) a cero.

  • La variable Agua caliente total Anterior recuerda el último valor del medidor de agua caliente

El primera prueba verifica que el nuevo valor del medidor de agua caliente es superior al valor anterior recibido del medidor (que es la operación habitual)

En este caso, la variable Agua Caliente Total toma el valor de: variable (agua caliente total) +#[Agua fría caliente][D1Mini][TotalChaude]# – variable (Total agua caliente anterior)

Ejemplo:

  • #[Agua fría caliente][D1Mini][TotalChaude]# = 809
  • variable (Total agua caliente anterior) = 808
  • variable (agua caliente total) = 3750

Agua caliente total = 3750 + 809-808 = 3751, el nuevo valor del medidor de agua caliente será 3751

La segunda prueba verifica si el nuevo valor recibido del medidor de agua caliente es menor que el último valor registrado, esto significa que el medidor D1 ha vuelto a cero mientras tanto.

En este caso, la variable Agua Caliente Total toma el valor de: variable (agua caliente total) + #[Agua fría caliente][D1Mini][TotalChaude]#

Ejemplo:

  • #[Agua fría caliente][D1Mini][TotalChaude]# = 3
  • variable (Total agua caliente anterior) = 808
  • variable (Total agua caliente) = 3751

Agua caliente total = 3751 + 3 = 3754, el nuevo valor del medidor de agua caliente será 3754

Este último bloque registra el último valor del medidor de agua caliente (#[Agua fría caliente][D1Mini][TotalChaude]#) en la variable Total Agua caliente anterior. Este valor es importante, se prueba para averiguar cuál de los dos bloques anteriores se utiliza para calcular el valor de agua caliente total.

El agua caliente fría virtual

Nada muy complicado, recuperamos las variables variable(Total Agua Caliente) y variable(Total Agua Fría)

Gráficos

Dado que se registran los valores de agua fría y agua caliente, también puede disfrutarlo mostrándolo en su diseño.

Aquí hay ejemplos de gráficos, todos podrán hacer lo que quieran.

  • Consumo del día

  • Consumo mensual

Como este gráfico es el más interesante, lo detallo:

Debe elegir el modo "Columna" y elegir "Resumen por día". Ponga una de las dos escaleras visibles.

Cambios y mejoras

  • 03/04/2022: En su lugar, el termistor debe conectarse a 3.3V para proteger la entrada analógica, diagrama modificado, gracias Seb821.
  • Estudiar una solución para evitar la actualización a 2s, puede ser con las reglas (reglas) de Esp Easy

Ya una respuesta