Transformer un PZEM-004T V1 en capteur bidirectionnel de courant avec le firmware eNode
21 juillet 2022Bonjour à tous,
Ces derniers temps avec l’ajout de panneaux photovoltaïques la problématique de monitorer la production et la consommation électrique de la plateforme Expé-Smarthouse.
Après avoir recherché plusieurs solutions, je suis tombé sur le github de Apreb https://github.com/apreb/eNode qui permet de faire cela en modifiant légèrement un PZEM-004T V1.
Comme d’habitude, nous toucherons à de l’electricité donc attention à vous.
Partie 0: Le matériel choisi
En ce qui concerne le matériel, il vous faudra:
- Un Wemos D1 mini
- Un Capteur de puissance PZEM004T V1 (car la puce de comptage a changée sur la V3)
- Un transformateur 220V AC vers 5V DC
- Pour ceux qui ont une imprimante 3D ou un Fablab à proximité, je vous propose de fabriquer le boitier qui permettra de ranger tout cela proprement. Le modèle que j’ai choisi, se trouve sur Thingiverse
https://www.thingiverse.com/thing:4260260
- Des connecteurs 4 broches JST pour faire la connection avec le PZEM
- Un octocoupleur PC817
- Quelques résistances (1k, 1k et 10k)
- Et quelques fils pour faire les connections
Partie 1: Préparation du PZEM-004T V1
Lorsque l’on étudie la doc technique de la puce SD3004 de chez SDIC, nous pouvons voir qu’une des pin permet de connaitre le sens du courant.
Il s’agit de la Pin 51 REVP
Pour récupérer cette information, nous devons d’abord avoir accès à la puce.
Pour cela, il faut déssouder le condensateur jaune Tenta MKP
Ce qui nous donne accès maintenant à la SD3004
Il faut maintenant souder un fil sur la pin 51 (la troisième pin en partant de la droite sur le bord haut de la puce)
En parallèle de cette opération, il faut créer le circuit permettant de se connecter sur le Wemos W1 mini, en utilisant le schéma ci-dessous fourni par Apreb
Pour ma part, j’ai réutilisé un PC817 et pour le Input, j’ai pris le GND sur la pin qui se trouve à coté de la SD3004.
J’ai aussi rajouté des pins sur la partie dédié au LCD pour sécurisé (mais rien ne sera relié dessus)
En ce qui concerne l’Output, j’ai récupérer la Masse et le VCC directement sur le port de communication TTL
Afin de sécuriser la connexion et évité que le fil rajouté sur la puce ne casse, lors du ressoudage du condensateur, j’ai utilisé de la colle chaude pour fixer le tout.
Cela donne le résultat ci dessous
Maintenantn, afin d’avoir une compatibilité entre le PZEM-004T et le Wemos, il faut aussi rajouter une resistance de 1Ko pour l’adaptation (pour les explications, vous pouvez aller voir article https://miniprojets.net/index.php/2019/08/23/creation-dun-enregistreur-autonome-de-puissance-electrique-monophase-base-sur-un-wemos-d1-mini-dun-shield-rtc-sd-et-dun-pzem004t/)
Une fois que cela est fait et que le Pzem est modifié, nous pouvons passer à la partie programmation.
Partie 2: Programmation
En ce qui concerne la programmation, il s’agit du même schéma que pour l’article précédent sur le firmware Tasmota
https://github.com/apreb/eNode
Comme d’habitude, je mets ci dessous le zip de ce Github au cas où le lien est HS.
Une fois que le Wemos est programmé, nous pouvons maintenant le relier au PZEM en respectant le schéma fourni par Apreb. Ci-dessous la version pour notre usage.
Maintenant, on soude aussi le transformateur 220V/5V sur la carte
Puis nous pouvons tout mettre dans le boitier imprimé en 3D et attaquer la partie initialisation.
Partie 3 : Initialisation
Pour cela vous devez alimenter votre installation comme pour la version Tasmota et attendre un peu.
Je vous conseille de faire la même installation (Ici la photo n’est pas car le tore n’est pas celui d’une V1 mais une V3 mais comme mon appareil photo ou mon doigt a buggé, elle n’a pas été prise… Bref c’est juste un exemple pour montrer le principe)
Maintenant vous pouvez vous connecter au réseau Wifi APRENODE
et rentrer le mot de passe 12345678
Une fois cela fait, rentrez l’adresse suivante sur un navigateur internet http://1.1.1.1
afin d’arriver sur la page suivante:
Si vous cliquez sur le bouton Refresh vous devriez avoir les valeurs que le Pzem remonte
Normalement si l’on inverse le sens du tore nous devrions observer une inversion du sens du courant
Maintenant que l’on a vérifier que tout était ok.
Il vous faut rentrer les informations de votre wifi et de votre broker MQTT.
Si tout est ok, nous pouvons l’installer dans le circuit électrique définitif en faisant attention au sens du tore et passer à l’intégration dans Jeedom.
Partie 4: Intégration dans Jeedom
En ce qui concerne l’intégration dans Jeedom, nous pouvons suivre la même méthode décrite dans l’article https://miniprojets.net/index.php/2020/12/19/une-alternative-diy-au-linky-pzem004t-wemos-tasmota-mqtt/ qui consiste à utiliser le plugin JMQTT.
Au finale, une fois l’intégration faite, nous obtenons le résultat suivant:
Après quelques jours, nous obtenons les courbes suivantes:
Comme nous pouvons le voir, il y a possibilité de faire des choses pour améliorer cela ^^.
Peut-être bientôt un article sur l’utilisation d’une batterie pour du stockage d’énergie? Ou comment utiliser un MPC pour mieux prédir et utiliser au bon moment les appareils électriques?
Seul l’avenir nous le dira ^^
Bonne continuation et bonnes vacances
Jérôme
Bj. Comment faire avec un pzem v3 ?
Merci
Bonjour,
cela n’est pas possible sur une v3.
Bonne journée,
Jérôme