Site icon Le blog des objets connectés

Mesurer sa consommation électrique dans Jeedom avec Espeasy and PZEM-004T.

Après avoir réussi à mesurer la quantité de mazout présente dans mes deux cuves, j’ai tenté de continuer sur ma lancée avec un capteur PZEM-004T. L’idée est d’utiliser ce capteur et sa pince ampèremétrique pour mesurer et suivre une consommation d’électricité. La pince mesure le courant électrique qui circule dans un fil conducteur sur base du champ magnétique généré par ce dernier. 

Ayant été content des technologies ESP88266 et du firmware ESP Easy, c’est tout naturellement vers ces dernières que je me suis tourné pour utiliser le PZEM-004T. Si vous ne connaissez pas ces technologies, je vous conseille de lire tout d’abord cet article.

L’avantage de la non intrusion

L’avantage du capteur PZEM-004T et de sa pince ampèremétrique est qu’ils peuvent mesurer l’intensité du courant électrique sans devoir démonter le moindre fil. On ouvrir la pince simplement et on glisse le fil de phase ou de neutre au milieu.

Attention toutefois lors de votre achat. Il y a deux types de pinces : les pinces rectangulaires qui s’ouvrent et évitent de devoir démonter les fils électriques. Et les pinces rondes qui elles ne s’ouvrent pas et nécessitent donc de débrancher les fils de phase ou de neutre pour y glisser la pince.

L’autre point d’attention est que ce capteur doit être alimenté en 230V. Il faut donc pouvoir lui fournir cette tension avec deux fils électriques, idéalement ceux dont on veut mesurer la consommation pour avoir une mesure plus précise. Ce n’est donc pas le ESP8266 qui alimente le capteur en basse tension comme c’est souvent le cas (et notamment avec le capteur de distance HC-SR04).

L’installation du firmware ESP Easy

J’avais déjà expliqué, dans un article précédent, comment installer le firmware ESP Easy sur l’ESP8266 et comment configurer l’ESP8266. Je vous renvoie donc vers cet article pour les premières étapes et je continue à l’étape 5. 

Attention toutefois que la procédure d’installation diffère un rien. En standard (dernière version de mega), on ne trouve pas de firmware pour le PZEM-004T. Il faut donc chercher un firmware EspEasy qui le contienne. Cela se trouve avec Google et j’ai personnellement utilisé celui-ci : https://www.letscontrolit.com/forum/download/file.php?id=4305 que j’ai trouvé sur cette page : https://www.letscontrolit.com/forum/viewtopic.php?p=36179#p36179. Merci à Djelau pour son travail sur ce firmware !

Etape 5: Brancher le capteur PZEM-004T

Il y a plusieurs branchements à réaliser :

Ajoutons à cela l’alimentation électrique en 5V de l’ESP8266 et cela donne quelques câbles par PZEM-004T:

Premier branchement : liaison entre le PZEM-004T et l’ESP8266

Pour la liaison entre le PZEM-004T et l’ESP8266, il quatre câbles à connecter. Ce sont les PINs GND,TX, RX et 5V.

Second branchement : liaison entre le PZEM-004T et le 230V

On voit, sur le schéma ci-dessus, qu’il faut raccorder le 230V sur les deux bornes en bas à gauche du schéma. Sans ce branchement, le capteur ne vous donnera aucunes données.

Attention qu’il s’agit de 230V et donc de danger mortel en cas de mauvaise manipulation. Il faut, en outre, utiliser des câbles adéquats de section bien supérieure à celle des câbles Elegoo que l’on utilise pour le 3,3 ou 5V. Je conseillerais des câbles de même sections que ceux utilisé dans votre installation électrique (ce qui donnait du 2,5mm carré chez moi) mais à vérifier bien entendu avec un installateur agréé afin que les normes soient respectées.

Troisième branchement : liaison entre le PZEM-004T et la pince ampèremétrique

Toujours sur le schéma ci-dessus, il s’agit des deux câbles en haut à gauche, au dessus des deux câbles pour le 230V.

Concrètement

Concrètement, on arrive donc à schéma de branchement :

Note: Théoriquement, il ne faut pas brancher 5V sur les PIN GPI01 et GPI03 mais il faut plutôt réduire la tension à 3,3V. Des réducteurs de tension existent comme ceux-ci. 

Ayant lu que les ESP8266 résistaient souvent à 5V et n’ayant pas reçu mes réducteurs de tension, j’ai pris le risque de m’en passer. Je n’ai pas eu de soucis jusqu’à présent.

Sur ce schéma, il y a une chose excessivement importante à remarquer : c’est qu’un seul et unique fil traverse la pince ampèremétrique. J’ai bien écrit un seul fil et pas un seul câble. Si jamais, par exemple, vous placez votre pince ampèremétrique autour d’un cordon d’alimentation standard d’un frigo ou d’une TV, vous emprisonnez dans la pince plusieurs fils. La pince mesurera alors 0 car la somme des courants qui traversent les fils est de zéro. Cela signifie qu’il faut disséquer le câble d’alimentation de son appareil électrique pour isoler un seul fil de phase ou de neutre et entourer uniquement celui-ci avec la pince. Ce n’est pas très pratique du tout et, finalement, les pinces ne servent vraiment que pour suivre la consommation au niveau de son compteur et là où on peut accéder facilement à chaque fil séparément.

Comme un petit dessin vaut souvent mieux qu’un long discours, voici l’illustration. Avec ce branchement, on mesure correctement le courant car la pince n’entoure qu’un seul fil:

Mais, comme ceci, on obtient zéro car la pince entoure tout le câble (et donc les deux fils dans le cas de ce type de câble).

Etape 6: Configurer le capteur PZEM-004T sur le ESP8266

1. La première étape consiste à désactiver le port série. Dans le navigateur internet à l’URL de l’ESP8266, cliquer sur “Tools” et puis “Advanced”. Décocher “Enable Serial port”.

2. Ensuite, on va configurer le PZEM-004T. Cliquer sur “Devices” et appuyer sur “Add”. Toute une série de capteurs prédéfinis existe (c’est l’avantage du firmware ESP Easy). Il faut choisir le capteur “PZEM-004Tv30-Multiple” et cliquer sur le bouton “Submit”. Si vous ne trouvez pas “PZEM-004Tv30-Multiple”, c’est que vous n’avez pas chargé le bon firmware dans l’ESP8266 (je vous renvoie alors ci-dessus pour vous trouver le bon firmware)

3. Sur l’écran de configuration du capteur, introduire les paramètres suivants:

  • Choisir un nom
  • Cocher “Enabled”
  • GPIO <- TX : choisir la pin GPIO-1 (D10) puisque c’est celle là qu’on a branché. Note: si cette PIN est grisée, c’est probablement parce que vous avez oublié l’étape 1. ci-dessus. ATTENTION: il arrive parfois que, à la fin, on voit des NaN (ou nan) au lieu des valeurs mesurées de tension, courant,….. En ce cas, essayer de changer la PIN et choisissez GPIO13 (D7) et changez le branchement sur l’ESP8266.
  • GPIO -> RX : choisir la pin GPIO-3 (D9). ATTENTION: il arrive parfois que, à la fin, on voit des NaN (ou nan) au lieu des valeurs mesurées de tension, courant,….. En ce cas, essayer de changer la PIN et choisissez GPIO12 (D6) et changez le branchement sur l’ESP8266.
  • Serial Port : laisser SoftwareSerial
  • Adresse of PZEM : si vous n’avez qu’un seul PZEM-004T, vous pouvez laisser 0. Si vous avez plusieurs PZEM, je vais bientôt écrire un article sur la façon de les installer.
  • Afin de faire remonter les informations dans Jeedom, on coche “Send to Controller” et on choisit un numéro d’IDX jamais utilisé.
  • Pour intervalle, je choisis 1 seconde. Le développeur du firmware conseille lui 3 secondes. En cas de soucis (comme des “NaN” qui apparaissent de temps en temps au lieu des mesures de courant), passer alors sur 3 secondes.
  • A noter: Il y a quatre valeurs possibles par défaut : Voltage, Current, Power et Energy. Mais, en fait, il y en a six (dont le cos-phi). On peut choisir au maximum 4 valeurs parmi les 6 possibles au travers des listes déroulantes (celle de Value 1,…. Value 4). Si vous souhaitez remonter les 6 valeurs et pas juste 4, il faut alors terminer cette étape et puis recommencer à l’étape 2 pour choisir les deux valeurs manquantes. On remontera alors les 6 valeurs mais au travers de deux “Device”.
  • Cliquer sur le bouton “Submit” en bas de l’écran pour sauver le tout.

Etape 7: C’est fini

Voilà, c’est terminé. On voit logiquement les informations s’afficher, en vert à droite sur l’écran : 229,3V et 2,1 W.

La remontée des mesures dans Jeedom

C’est le plugin Jeedom ESPeasy, gratuit, qui va gérer la remontée des mesures des capteurs dans Jeedom. Ce plugin se trouve sur le market officiel de Jeedom.

Après l’avoir installé, il faut l’activer et installer les dépendances. En bas de l’écran, dans la partie “configuration”, on voit les paramètres qu’il faut reporter dans le module ESP8266.

On se reconnecte donc, via un navigateur internet, au module ESP8266 pour le configurer (comme on l’a fait précédemment). On clique cette fois sur “Controllers” et puis sur “Add”.

Les valeurs à introduire sont:

Si vous vous arrêtez ici, vous ne verrez rien dans Jeedom. J’ai perdu pas mal de temps à comprendre pourquoi. Il faut encore remplir une dernière étape au niveau du capteur. Il faut cliquer sur “Devices”, cocher la case “Send to Controlleur” et cliquer sur le bouton “Submit” pour sauver les changements. Si vous avez plusieurs ESP8266 / capteurs, indiquez bien un IDX différent pour chacun.

Par mesure de précaution, je vous conseille de redémarrer votre ESP8266.

Vous pouvez maintenant retourner dans Jeedom : Plugins / Protocole Domotique / ESPeasy

Cliquer sur le bouton “+ Inclusion”. Un équipement, correspondant au capteur, devrait apparaitre (“Compteurs” ici).

Il faut configurer cet équipement en cliquant dessus, en lui donnant un nom, en cochant “Activer” et “Visible” et en lui attribuant une pièce (via Objet parent). On peut aussi choisir “Energie” comme “Catégorie de l’espeasy”.

Au niveau des commandes, on voit les quatre commandes existantes sur l’ESP8266 à savoir Current_(A), Energy_(WH), Power_(W) et Voltage_(V) :

Si on se rend dans le Dashboard de Jeedom, on voit l’information du capteur PZEM-004T:

Conclusions

Fonctionner, cela fonctionne. Par contre l’installation n’est pas facile car il faut amener le 230V et il faut arriver à pouvoir ne prendre qu’un seul fil du câble. Je vais tenter maintenant, et cela fera l’objet du prochain article, de mesurer la consommation électrique au niveau de mon compteur triphasé avec trois PZEM-004T sur le même ESP8266 et avec trois pinces ampèremétriques (une par phase). Affaire à suivre donc….

 

Quitter la version mobile