NEWS
[Tutorial] PZEM-004T 3 Phasen Überwachung
-
Der TX und RX vom ESP32 verträgt nur 3,3V. Wenn du den PZEM004t einfach so drauf hängst wie beim WEMO ist dein ESP32 Geschichte. Du musst einen Widerstand in den PZEM004t einlöten:
Ansonsten ESP32 und PZEM004t mit 5V versorgen.
-
@basti97 said in [Tutorial] PZEM-004T 3 Phasen Überwachung:
@da-phreak Wenn es fertig ist kannst du es ja gerne mal zeigen.
Hi,
sorry daß ich so lange nichts von mir hab hören lassen. Soweit funktioniert alles, das Gehäuse und die Firmware finden sich hier:
https://github.com/technyon/pzemctl
Die Readme ist noch nicht sehr weit, es steht erstmal nur drin, wie man kompiliert. Kommt dann noch.
Folgende Hardware hab ich benutzt:
- Arduino Mega 2560
- W5500 Modul (https://de.aliexpress.com/item/32901601162.html?spm=a2g0s.9042311.0.0.27424c4djYuO1m)
- SSD1306 Display (https://www.amazon.de/gp/product/B0777HHQDT/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1)
- Taster (https://www.amazon.de/gp/product/B07DJ8QMB1/ref=ppx_yo_dt_b_asin_title_o08_s00?ie=UTF8&psc=1)
- last but not least drei pzem004t Module
Display und Taster sind optional, es läuft auch nur mit LAN. Mit Display kann man mit den Tastern zwischen den Phasen und unterschiedlichen Werten wechseln.
Das W5500 Modul kommt an die SPI-Pins, zudem muß der Reset PIN mit PIN 53 auf dem Arduino verbunden werden. Das Display läuft dann am noch freien I2C-Port. Die Tasterpins sind 44 und 46, können aber in der Config.h konfiguriert werden.
Die Konfiguration (IP-Einstellungen und MQTT-Server) werden im EEPROM hinterlegt. Dazu wird beim ersten Start der Setup-Modus initiiert, und ein Webserver wird geöffnet. Die IP-Adresse wird solange auf dem Display angezeigt. Ohne Display muß man die natürlich anders herausfinden (z. B. im Router gucken).
Wie gesagt, mehr Doku kommt noch.
-
Würde das auch mit einem Nano gehen? Ich habe noch dieses Neztwerkshield hier:
https://forum.iobroker.net/assets/uploads/files/1572272769452-images.jpg
Da passt direkt ein Nano drauf.
-
@beowolf Hi. Da wird der SRAM leider etwas knapp. Grad der Netzwerk-Teil braucht schon ein paar kb, so daß es schon 8kb sein müssen. Man könnte den Display und Input-Teil noch rausschmeißen, aber auch dann wird es knapp. Kannst aber auch einen ESP32 nehmen und einfach das WLAN nicht benutzen.
-
Dann wäre das doch sehr gut, oder?
Grüße
Manfred -
@beowolf Ich benutze die Ethernet.h library. Die unterstützt W5100, W5200 und W5500 chips. Auf dem Modul von alibaba ist wohl ein LAN8720a drauf. Out of the box also nein, müßte erst nachforschen, wie einfach sich das anpassen läßtm
-
@da-phreak Super Danke
Ich bin in der letzten Zeit auch nicht weiter gekommen da ich leider keine Zeit hatte. Ich versuche in den nächsten Tagen mal wieder mich mit den PZEMs zu beschäftigen. Deine Variante ist eine super coole Variante die ich unbedingt mal ausprobieren muss. -
Die Überwachung funktioniert bei mir einwandfrei. Allerdings hat eins der Module eine erhebliche Abweichung. Wenn ich mit der Herstellersoftware kalibrieren will, brauche ich ein Calibration Password. Wie lautet das? 0x3721 funktioniert nicht. Oder gibt es sonst eine Möglichkeit, die Messergebnisse anzupassen?
-
Hallo Leute,
mal eine kurze Frage. Ich will in kürze die 3 PZEM 004 V3 an einem D1 Mini in Betrieb nehmen und habe gesehen dass hier die TX mit einer Diode bestückt wird. Nirgends wird aber der genaue Typ der Diode beschrieben. In der Elektronik Grabbelkiste hab ich Dioden des Typs ZPD 5,6 gefunden. Würden diese funktionieren? 5,6 deutet ja auch 5,6V hin. Passt das? -
@ice77 ich benutze BAT43 Dioden von Ama...
-
@johannes-bauerstatter
verstanden. Hast Du diese "bemessen" oder aus dem Bauch heraus ausgewählt? Wie bekäme ich heraus ob ggf. noch welche aus der "Grabbelkiste" funktionieren könnten? Auf was muss man achten? -
@ice77 Sorry, aus dem Bauch. Ich würds einfach probieren da bei den 3,3V nicht viel passieren sollte außer dass es nicht funktioniert. Ob du das Risiko eingehen willst musst du selbst entscheiden außer es meldet sich noch ein Elektroniker der das besser beurteilen kann.
-
@ice77 sagte in [Tutorial] PZEM-004T 3 Phasen Überwachung:
Hallo Leute,
mal eine kurze Frage. Ich will in kürze die 3 PZEM 004 V3 an einem D1 Mini in Betrieb nehmen und habe gesehen dass hier die TX mit einer Diode bestückt wird. Nirgends wird aber der genaue Typ der Diode beschrieben. In der Elektronik Grabbelkiste hab ich Dioden des Typs ZPD 5,6 gefunden. Würden diese funktionieren? 5,6 deutet ja auch 5,6V hin. Passt das?Hallo Ice,
schaue mal hier.
https://forum.iobroker.net/topic/42261/pzem-004t-3-phasen-überwachung-mit-espeasy-v2-0
Ich habe das mit einem Wemos d1 Mini mit der ESPeasy gemacht. Alles drann ohne Widerstand und Diode. Läuft ohne Probleme.
Klemm es doch einfach mal drann. Was soll schon passieren? Entweder es läuft oder eben nicht.
Grüße
Manfred -
@beowolf
ja passiweren wird da nicht viel - das stimmt schon. Ich wollte diese Lösung fertig machen und bei meinen Eltern installieren. Wenn das dann nicht stabil läuft ist es wieder mit langer Fahrerei verbunden und einem meckernden paps...
Ggf. versuch ich mal ein paar Dioden aus der Grabbelkiste. Wenns geht is gut, wenn nicht bestell ich die BAT43. Prinzipiell laufen tuts ja schon... nur obs dauerhaft läuft, das hab ich noch nicht probiert. Wollte halt wenn die "Fachleute" eine Diode auf die TX Leitung setzen... das auch so machen... weil auf "komische Fehler" wegen so etwas hatte ich einfach keine Lust.Aber try & error geht natürlich auch.
-
@HomeZecke
Ich habe dein Projekt erfolgreich nachgebaut , Danke für das Teilen deines Skripts. Läuft Super. Ich habe einen Datenpunt wo ich nichts mit anfangen kann
Was bedeutet bei Energie/Verbrauch nan. Und Energie/Verbrauchs-Startwert ist das der Zählerstand bei Inbetriebnahme? Dann muss ich mir mit einen Blockly den aktuellen Zählerstand ausrechnen. -
NaN = Not a number
Passiert z. B. wenn eine ungültige Rechenoperation ausgeführt wird, wie teilen durch 0.
-
Hallo!
Der Verbrauch wird addiert aus den Werten VerbrauchL1, VerbrauchL2 Und VerbrauchL3. Dazu kommt noch der Verbrauchs-Startwert, um mit dem "richtigen" Zähler zu synchronisieren. Zeigen denn die 3 Verbrauchswerte Daten an?
Grüße...
-
@homezecke Wird in deinem Skript mit Energie/Verbrauch-Startwert gerechnet oder muss ich mir den aktuellen Zählerstand selbst ausrechnen? Sonst funktioniert alles bestens. Der Fehler lag wohl an einer wackeligen Steckverbindung. Ich habe glaube ich noch einen Fehler gefunden
müsste das nicht old_frequenz_pzem2 heißen?
Deine Visualisierung habe ich auch übernommen, sieht richtig gut aus. Wir hast du das mit dem Verbrauch Gestern und Heute gelöst. Könntest du das Skript teilen, du scheinst da mehr Ahnung zu haben als ich.
Grüße -
@frodo777 Ich beantworte mir die Frage mal selbst. Man muß bei der Eingabe des Zählerstands den Hacken bei Bestätigt machen dann funktioniert es auch. Nach langen probieren hab ich es heraus gefunden. Jetzt wird auch der aktuelle Zählerstand angezeigt. Das Skript für den Verbrauch Gestern und Heute hätte ich aber immer noch gern.
Grüße... -
@frodo777 Hallo!
Ja, hast Du richtig erkannt, ist ein kleiner BUG. Es muss natürlich "old_frequenz_pzem2" heißen. Copy & paste -Fehler... Also vor dem compilieren noch einmal anpassen. Ist aber nicht sooo schlimm, da die Frequenzwerte der drei Phasen eh sehr eng bei einander liegen.
Deiner bitte zum script kann ich entsprechen. Musst Dich bitte allerdings noch ein paar Tage gedulden. Habe viel um die Ohren. Stelle es hier rein, sobald ich die Zeit dazu habe...
Grüße...