J'avais déjà vu ce module chez Ali mais désespérait de pouvoir le voir fonctionner avec Domoticz.
Je crois que je vais passer commande !
A+
vinz973 a écrit :j'ai essayé avec la version du 05 août et effectivement j'ai le même message d'erreurdigdogger a écrit :Oui, je suis en 1.8.2 mais j'ai essayé avec un PC qui lui est en 1.6.4 et même problème.vinz973 a écrit :
Salut digdogger
desoler mais je n'arrive pas a obtenir ton erreur est tu sous une version superieur a arduino 1.6.6
essaye les exemple dans PZEM004T
Les exemples ne compilent pas non plus. La librairie du PZE a été mise à jour le 5 août dernier, tu utilises bien la dernière?
moi j'utilise un version antérieur ,essaye de recompiler avec cette version
Wemos et nodeMCU (c'est pareil) .aleph0 a écrit :Salut ! Et merci pour ce superbe tutoIl va ouvrir plein de perspectives
J'ai déjà joué avec des wemos et espeasy, mais suis un noob sur le nodemcu et leur programmation. Du coup j'ai qqes questions avant de me lancer :
- ton tuto marcherai-t'il avec une wemos d1 ou utilises-tu des caractéristiques que les nodemcu ont en plus par rapport à la wemos ?
- un nodemcu permet-il d'utiliser du 5V sur les entrées D1, D2... au lieu du 3.3V ? ou alors le PZEM permet-il de communiquer en 3.3V sur les pins RX et TX ?
- sur ton schema tu utilises les bornes D1 et D2 du node mcu, et non les bornes RX et TX ; avec un peu d'adaptation du sktech, serait-il possible de connecter plusieurs PZEM sur le même nodemcu/wemos ? (je suis en triphasé à la maison, j'aimerai en avoir 3)
- Qu'est-ce que le paramètre IPAddress ip(192,168,1,1); en ligne 12 de ton sktech ?
j'ai fais quelque essai pour adapter le code exemple "PZEMDisplay" pour 3 PZEM sur 1 NodeMCUaleph0 a écrit :Salut ! Et merci pour ce superbe tutoIl va ouvrir plein de perspectives
- sur ton schema tu utilises les bornes D1 et D2 du node mcu, et non les bornes RX et TX ; avec un peu d'adaptation du sktech, serait-il possible de connecter plusieurs PZEM sur le même nodemcu/wemos ? (je suis en triphasé à la maison, j'aimerai en avoir 3)
- Qu'est-ce que le paramètre IPAddress ip(192,168,1,1); en ligne 12 de ton sktech ?
Code : Tout sélectionner
#include <SoftwareSerial.h> // Arduino IDE <1.6.6
#include <PZEM004T.h>
PZEM004T pzem(5,4); // D1 D2
PZEM004T pzem1(0,2); // D3 D4
PZEM004T pzem2(14,12); // D5 D6
IPAddress ip(192,168,1,1);
void setup() {
Serial.begin(9600);
pzem.setAddress(ip);
pzem1.setAddress(ip);
pzem2.setAddress(ip);
}
void loop() {
Serial.print("PZEM 0 ");
float v = pzem.voltage(ip);
if (v < 0.0) {v = 0.0;}
else{
Serial.print(v);Serial.print("V; ");
float i = pzem.current(ip);
if(i >= 0.0){ Serial.print(i);Serial.print("A; "); }
float p = pzem.power(ip);
if(p >= 0.0){ Serial.print(p);Serial.print("W; "); }
delay(100);
float e = pzem.energy(ip);
if(e >= 0.0){ Serial.print(e);Serial.print("Wh; "); }
}
Serial.println();
delay(1000);
Serial.print("PZEM 1 ");
float v1 = pzem1.voltage(ip);
if (v1 < 0.0) {v1 = 0.0;}
else {
Serial.print(v1);Serial.print("V; ");
float i1 = pzem1.current(ip);
if(i1 >= 0.0){ Serial.print(i1);Serial.print("A; "); }
float p1 = pzem1.power(ip);
if(p1 >= 0.0){ Serial.print(p1);Serial.print("W; "); }
delay(100);
float e1 = pzem1.energy(ip);
if(e1 >= 0.0){ Serial.print(e1);Serial.print("Wh; "); }
}
Serial.println();
delay(1000);
Serial.print("PZEM 2 ");
float v2 = pzem2.voltage(ip);
if (v2 < 0.0) {v2 = 0.0;}
else{
Serial.print(v2);Serial.print("V; ");
float i2 = pzem2.current(ip);
if(i2 >= 0.0){ Serial.print(i2);Serial.print("A; "); }
float p2 = pzem2.power(ip);
if(p2 >= 0.0){ Serial.print(p2);Serial.print("W; "); }
delay(100);
float e2 = pzem2.energy(ip);
if(e2 >= 0.0){ Serial.print(e2);Serial.print("Wh; "); }
}
Serial.println();
delay(1000);
}