Monitorizando el consumo (por ejemplo el de nuestra vivienda) por cuatro duros: Construir un PZEM y vincularlo a domoticz

Dividimos el tutorial en varias partes para su mejor comprensión

Material y software necesario

Para este tutorial vamos a necesitar:

  • Un soldador y estaño,
  • Hilo o cable fino (tipo arduino por ejemplo),
  • Pines,
  • Usb TTL,
  • Multímetro o polímetro (opcional, para comprobaciones),
  • Un dispositivo tipo ESP8266 con tasmota (puede ser alguna de las siguientes posibilidades explicado paso a paso en los siguientes tutoriales: «Flasheo de Esp01, Esp12e, Wemos D1 Mini y Nodemcu para integrarlos en distintos sistemas y vincularlos a domoticz» y «Flasheo de sonoff basic para introducir Tasmota o ESPeasy«):
    • Nodemcu
    • Wemos D1 mini: explicado al detalle en este tutorial.
    • Esp-01
    • Sonoff basic: explicado al detalle en este tutorial.
    • Etc.
  • En función del dispositivo que hayas seleccionado del punto anterior, necesitarás un cable con cargador USB, un cable de alimentación a 220v, un transformador de teléfono móvil de 230vac a 5vcc 1A, o en caso de no disponer de ello, siempre podéis comprar cualquiera de los dos ejemplos de las siguientes imágenes (Clica aquí para más información y posibles enlaces de compra).
  • Un PZEM con una bobina (pinza). Para este tutorial hemos utilizado un PZEM 004 y un PZEM 004t (Clica aquí para ver un posible enlace de compra).

Montamos un PZEM con sonoff basic

Flasheo del sonoff basic

Lo primero que hacemos es flashear un sonoff basic a tasmota siguiendo las indicaciones del siguiente tutorial: «Flasheo de sonoff basic para introducir Tasmota o ESPeasy«.

Seguiremos las indicaciones del tutorial para darle wifi a nuestro tasmota y que podamos acceder a él por IP.

Preparación del sonoff basic

Una vez flasheado y teniendo ya la IP del sonoff, vamos a extraer los 5v del sonoff basic para el PZEM. Para ello, desenchufamos el sonoff de corriente y soldamos dos cables o a los dos puntos que vemos en la imagen. Recomendamos que para que cueste menos trabajo y al estar cerca de otros componentes se doble hacia el exterior la patilla de los 5v. De ese modo alejamos el punto de soldadura.

Si no tienes todavía una gran destreza soldando te damos un pequeño truco: primero estaña la punta de esta patilla y después estaña el cable, una vez los 2 elementos tengan estaño te será mucho más fácil que suelden.

Ahora mismo tenemos un cable que sale del 5v+ y otro cable que sale del 5v GND. Antes de conexionarlos vamos a comprobar que transmiten los 5v.

Para ello alimentamos el sonoff basic con el cable de 220v y con el polímetro analizamos si tenemos correctamente los 5v:

Una vez comprobado el voltaje, desenchufamos el sonoff basic de corriente y conexionamos los dos cables, el 5v y el GND del PZEM:

Y, además, conexionamos el pin TX del sonoff con el RX del PZEM, y el RX del sonoff con el TX del PZEM:

Cables TX con RX y RX con TX:

Todas las conexiones entre sonoff y PZEM:

5V Sonoff🡪 VDD PZEM
Tx Sonoff🡪Rx PZEM
Rx Sonoff 🡪Tx PZEM
GND Sonoff 🡪 GND PZEM

Conectamos ahora la bobina (o pinza) al PZEM siguiendo el esquema de conexiones:

Y conectamos también al PZEM su cable para alimentarlo a 220v:

Enchufamos de nuevo el sonoff mediante su cable a corriente 220v, enchufamos el PZEM con su propio cable a 220v y colocamos la pinza o bobina en el cable FASE en el que nos interese registrar su consumo:

Para colocar la tapa del sonoff basic se le puede rebajar la base inferior para que no queden mordidos los cables de 5v y cierre perfectamente la carcasa:

Conexionado del sonoff basic con PZEM 004: 

Podemos añadir una brida a los cable de comunicación con el PZEM.  Para ello hacemos un par de agujeros en la base del sonoff con unas tijeras y una brida. De esta manera evitaremos que si el sonoff queda suspendido en la instalación las soldaduras que hemos realizado sufra.

Ahora vamos a configurar TASMOTA para que aparezcan correctamente cargados los datos. Para ello pasa al punto «Configuración de Tasmota de nuestro ESP8266«.

Montamos un PZEM con Wemos

Flasheo del Wemos

Lo primero que hacemos es flashear un Wemos a tasmota siguiendo las indicaciones del siguiente tutorial: «Flasheo de Esp01, Esp12e, Wemos D1 Mini y Nodemcu para integrarlos en distintos sistemas y vincularlos a domoticz» en el apartado «Wemos D1 mini sin soldaduras«.

Seguiremos las indicaciones del tutorial para darle wifi a nuestro tasmota y que podamos acceder a él por IP.

Preparación del Wemos

Una vez flasheado y teniendo ya la IP del wemos, vamos a preparar los pines a utilizar. Desenchufamos el Wemos y lo primero que haremos será soldar 4 pines, como en la imagen, a RX, TX, GND y 5V:

Ahora conexionamos los cables entre el Wemos y el PZEM:

5V Wemos 🡪 VDD PZEM
Tx Wemos 🡪Rx PZEM
Rx Wemos 🡪Tx PZEM
GND Wemos 🡪 GND PZEM

Alimentamos el Wemos, en nuestro caso con un cable mini USB con cargador, enchufamos el PZEM con su cable a corriente 220v y colocamos la pinza o bobina en el cable FASE en el que nos interese registrar su consumo:

Ahora vamos a configurar TASMOTA para que aparezcan correctamente cargados los datos. Para ello pasa al punto «Configuración de Tasmota de nuestro ESP8266«.

Alternativa de alimentación para Wemos

Si no queremos utilizar un cable mini USB con un cargador porque vamos justos de espacio podemos sustituirlo por un transformador siguiendo el esquema:

De esta manera nos ahorraremos un enchufe, ya que con alimentar el pzem junto al transformador será suficiente.

En el caso de Sin0nim0 del grupo «Domoticz a lo spain» de telegram ha utilizado un Wemos D1 mini y una placa de topos para dejarlo más compacto. Posteriormente con la impresora 3D podrá crear una base para lograr mayor seguridad y estética:

Montamos un PZEM con nodemcu

En caso de hacerlo con Nodemcu, DrBoom del grupo «Domoticz a lo spain» de telegram, nos enseña su rematado:

Configuración de Tasmota de nuestro ESP8266

Para configurar nuestro tasmota y prepararlo para el PZEM, vamos a cambiar la plantilla desde:

Configuración > Configuración extra > Plantilla
  • Si nuestro PZEM004T es anterior a v3 deberás seleccionar:
    {"NAME":"HW-655 PZEM","GPIO":[0,62,0,63,0,0,0,0,0,0,0,0,0],"FLAG":0,"BASE":1}
  • Si dispones del PZEM004T v3 deberás seleccionar:
    {"NAME":"HW-655 PZEM","GPIO":[0,62,0,98,0,0,0,0,0,0,0,0,0],"FLAG":0,"BASE":1}

Pzem con pantalla:

  • Si nuestro dispositivo es un PZEM004 deberás seleccionar:
    {"NAME":"PZEM004","GPIO":[0,62,0,63,6,5,0,0,0,0,0,0,0],"FLAG":0,"BASE":1}
  • Si dispones del PZEM004T y las demás opciones no te han funcionado prueba esta:
    {"NAME":"PZEM004TV3","GPIO":[0,62,0,98,6,5,0,0,0,0,0,0,0],"FLAG":0,"BASE":1}

Si el dispositivo no registra correctamente las mediciones de consumo con ninguna de las plantillas anteriores, vamos a la consola, redactamos la siguiente linea y clicamos sobre intro:

ModuleAddress 1

Y volvemos a comprobar cada una de las plantillas hasta dar con la que nos funcione correctamente.

Posible problema y solución

Es posible que después de configurar Domoticz y un D1mini pro tasmotizado para Pzem siguiendo los pasos de la web Domotuto.com el tasmota no se pueda conectar con DomoticZ.

En la consola del tasmota vemos el siguiente error:

Connect failed to 192.168.x.x:1883, rc -2. Retry in 40 sec

Revisado el código que se indica en esta web:

https://pubsubclient.knolleary.net/api.html#state

El -2 significa -2:

 MQTT_CONNECT_FAILED - the network connection failed

Comprobamos desde puTTY nuestra instalacion MQTT introduciendo la siguiente línea:

sudo cat /etc/mosquitto/conf.d/default.conf

Si devuelve un mensaje del tipo:

“cat: /etc/mosquitto/conf.d/default.conf: No such file or directory”

Significa que necesitas crear ese fichero de configuración básica, para ello puedes usar la siguiente línea en Putty:

sudo nano /etc/mosquitto/conf.d/default.conf

Y pegar las 2 líneas siguientes:

listener 1883
Allow_anonymous true

CTRL+X para salir, escribir “y” para guardar los cambios y otro intro mas y listo.

Para cualquier duda o consulta tienes disponible el grupo de telegram «Domoticz a lo Spain» para entrar, ponerte cómodo y participar cuanto quieras.

Clica aquí para entrar en él

Cualquier duda, sugerencia o comentario será bien recibida en la web!

Agradecimientos

Agradecer a nuestro amigo Sin0nim0 del grupo Domoticz a lo spain” de telegram por establecer la base de contenido para elaborar este tutorial. Sin él no habría sido posible.

Gracias a Miki G, DrBoom, n3wt0n y Alex Cal también del grupo Domoticz a lo spain” de telegram para completar la información.

Para cualquier duda o consulta tienes disponible el grupo de telegram «Domoticz a lo Spain» para entrar, ponerte cómodo y participar cuanto quieras.

Clica aquí para entrar en él

Cualquier duda, sugerencia o comentario será bien recibida en la web!