Idee: Wattmeter mit ESP8266 und ADE7953

Begonnen von Dr. Boris Neubert, 22 August 2016, 19:21:08

Vorheriges Thema - Nächstes Thema

PeMue

Zitat von: Pf@nne am 25 September 2016, 20:35:37
@Peter
nutzt du ein eigenes/spezielles *cam zum Export der Gerber-Files aus Eagle herraus?
Ja, muss ich aber morgen raus suchen, am Tablet habe ich nix ...
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

PeMue

Zitat von: Pf@nne am 25 September 2016, 20:35:37
@Peter
nutzt du ein eigenes/spezielles *cam zum Export der Gerber-Files aus Eagle heraus?
Hallo Marco,

meinen CAM Job habe ich angehängt, getestet für Eagle 4.0, könnte auch sein, dass ich für 6.0 getestet habe (aber ohne Garantie). Für Panels braucht es einen anderen Job ...

Gruß Peter
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

Pf@nne

#32
Moin,

ich habe das Breakoutboard noch mal überarbeitet.
Die Bauteile sind jetzt weitestgehend nach Datasheet angeordnet.

@Peter, hast du Zeit da nochmal drüber zu schauen?
@Boris, noch Anregungen?

Gruß
Pf@nne

FHEM auf: DS415+ (Master), Raspberry Pi 2

PeMue

Main Pf@nne,

wie machst Du die 3D Bilder? Ich schaue morgen noch mal drüber.

Gruß Peter
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

Pf@nne

Moin,

ich nutze den hier....
https://de.zofzpcb.com/

sehr übersichtlich und macht was her sein PCB von innen zu sehen....  ;D
FHEM auf: DS415+ (Master), Raspberry Pi 2

Dr. Boris Neubert

Hallo Pf@nne,

Zitat von: Pf@nne am 02 Oktober 2016, 22:24:46
@Boris, noch Anregungen?

im Datenblatt ist auf Seite 16, Abbildung 35 eine Testschaltung gezeigt. Bei der Testschaltung liegen von VN und VP aus jeweils Widerstand und Kondensator parallel gegen Masse. Das ist in Deiner Schaltung anders. Ist das richtig?

Ausgehend von dem Breakoutboard würde man dann für einen Prototypen noch zusätzlich folgendes benötigen:
- einen passenden Current Transformer (CT) mit zwei Lastwiderständen zum Anschluss an IAP_IN/IAN_IN
- einen Vorwiderstand (ca. 2 MOhm) zum Anschluss der 230V-Wechselspannung an VP_IN//VN_IN
- ein ESP8266-Modul
- ein Schaltnetzteil 230VAC/3,3VDC
Korrekt?

Gemäß AN-639 berechnen sich die Lastwiderstände aus der maximalen Ausgangsspannung des CT, dem maximalen Strom und der Windungszahl des CT. Die Windungszahl habe ich nicht in dem (chinesischen) Datenblatt zum CT118F gefunden, auf den Du oben verweist (Aliexpress). Mark Kannell verwendet in seinem ImpWattmeter einen Shunt im Milliohm-Bereich. Bei bspw. 10A max und 0,001Ohm erreicht der Spannungsmesseingang vom ADE7953 sein Maximum und am Shunt werden 0,1W verbraten. Frage mich immer noch, was der Vorteil eines CT gegenüber einem Shunt ist.

Viele Grüße
Boris
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

Pf@nne

Moin Boris,

Zitat von: Dr. Boris Neubert am 03 Oktober 2016, 11:46:05
im Datenblatt ist auf Seite 16, Abbildung 35 eine Testschaltung gezeigt. Bei der Testschaltung liegen von VN und VP aus jeweils Widerstand und Kondensator parallel gegen Masse. Das ist in Deiner Schaltung anders. Ist das richtig?

Ich habe das Breakoutboard jetzt erstmal nur zum Testen vorgesehen und alle drei Differenzeingänge gleich behandelt.
Die Messsignale wollte ich erstmal über drei Potis vorgeben um das Auslesen der Analogwerte besser testen zu können
und während der Softwarephase keine 230VAC auf dem Tisch zu haben.
Die 1k in Reihe sollen die Messeingänge beim Basteln schützen.
Das Testen der Beschaltung für die spätere Signalerfassung sollte dann erstmal auf dem Breadboard stattfinden.
Hier könnte man dann die Eingangsbeschaltung des Breakoutboards modifizieren (R und C Auslöten bzw. brücken).

Es wäre kein Problem die Eingangsbeschaltung von VP/VN gemäß Datasheet anzupassen.
Würde es aber tendenziell erstmal so lassen wollen.
10 Boards kosten 17€, da kann man gerne auch noch geänderte fertigen lassen.
Ich hoffe ich bekomme den Burschen vernünftig gelötet.....

Zitat von: Dr. Boris Neubert am 03 Oktober 2016, 11:46:05
Ausgehend von dem Breakoutboard würde man dann für einen Prototypen noch zusätzlich folgendes benötigen:
- einen passenden Current Transformer (CT) mit zwei Lastwiderständen zum Anschluss an IAP_IN/IAN_IN
- einen Vorwiderstand (ca. 2 MOhm) zum Anschluss der 230V-Wechselspannung an VP_IN//VN_IN
- ein ESP8266-Modul
- ein Schaltnetzteil 230VAC/3,3VDC
Korrekt?

Bis auf den VP/VN-Teil würde ich sagen ja.
Als ESP würde ich den WEMOS empfehlen, der kostet fast das Gleiche wie ein single ESP hat aber schon einen Spannungsregler 5V -> 3V3 und RS232 -> USB mit drauf.

Zitat von: Dr. Boris Neubert am 03 Oktober 2016, 11:46:05
Gemäß AN-639 berechnen sich die Lastwiderstände aus der maximalen Ausgangsspannung des CT, dem maximalen Strom und der Windungszahl des CT. Die Windungszahl habe ich nicht in dem (chinesischen) Datenblatt zum CT118F gefunden, auf den Du oben verweist (Aliexpress). Mark Kannell verwendet in seinem ImpWattmeter einen Shunt im Milliohm-Bereich. Bei bspw. 10A max und 0,001Ohm erreicht der Spannungsmesseingang vom ADE7953 sein Maximum und am Shunt werden 0,1W verbraten. Frage mich immer noch, was der Vorteil eines CT gegenüber einem Shunt ist.

Die Windungszahl n1/n2 sollte einfach zu messen sein, da n1 = 1 wenn der Primärdraht nur 1x durchgeführt wird.
Bin mir aber auch noch nicht sicher, welcher hier letztendlich der richtige ist.

Ein CT hat im Grunde nur Nachteile (Übersetzungsfehler, Winkelfehler, Beeinflussbarkeit durch andere Felder).......aber er trennt dich galvanisch von der Primärseite.
Ein Shunt ist da einfacher und ggf. sogar genauer.
Du musst den Shunt aber in deinen primären einbinden.

Was mir nicht so ganz klar ist, was passiert, wenn deine Mess-Stecksose abbrennt und die Versicherung deine Bastelsteckdose sieht?
Von daher bin ich eher, wenn es denn machbar ist, ein Freund von non-inversiven Methoden.


Gruß
Pf@nne






FHEM auf: DS415+ (Master), Raspberry Pi 2

Dr. Boris Neubert

Hallo Pf@nne und Danke für Deine Antwort!

Zitat von: Pf@nne am 03 Oktober 2016, 14:31:04
Ich habe das Breakoutboard jetzt erstmal nur zum Testen vorgesehen und alle drei Differenzeingänge gleich behandelt.
Die Messsignale wollte ich erstmal über drei Potis vorgeben um das Auslesen der Analogwerte besser testen zu können
und während der Softwarephase keine 230VAC auf dem Tisch zu haben.
Die 1k in Reihe sollen die Messeingänge beim Basteln schützen.

OK, R10 und R11 verstehe ich. In der Testschaltung im Datenblatt liegen aber noch je 1k parallel zu den C16 und C17. Ich verstehe zuwenig davon, um beurteilen zu können, wie sehr diese Widerstände benötigt werden.

Zitat
Bis auf den VP/VN-Teil würde ich sagen ja.

Wie würdest Du denn die Spannung zwecks Spannungsmessung an VP/VN heranführen? In der Testschaltung, beim ImpWattmeter und beim Hexaplug liegt die Netzspannung über 1M direkt am ADE.

Zitat
Als ESP würde ich den WEMOS empfehlen, der kostet fast das Gleiche wie ein single ESP hat aber schon einen Spannungsregler 5V -> 3V3 und RS232 -> USB mit drauf.

Du meinst fürs Prototyping? Da habe ich einen NodeMCU-Klon mit Breakoutboard hier. Für ein produktives Gerät würde ich den ESP über einen meiner USB/3,3V-Seriell-Wandlerkabel aus meinen Arduinobasteleien flashen. 5V sind ja eher störend, weil sowohl ADE7768 als auch ESP mit 3,3V laufen.

Zitat
Die Windungszahl n1/n2 sollte einfach zu messen sein, da n1 = 1 wenn der Primärdraht nur 1x durchgeführt wird.

Wie messen?

Zitat
Ein CT hat im Grunde nur Nachteile (Übersetzungsfehler, Winkelfehler, Beeinflussbarkeit durch andere Felder).......aber er trennt dich galvanisch von der Primärseite.

Siehe oben - wie trennst Du die Netzspannung von VN/VP?

Beim Hexaplug sitzt der ADE7768 auf der "heißen" Platine. Der Messimpuls wird über einen Optokoppler galvanisch von der Auswertung (bei uns: ESP) getrennt.

Viele Grüße
Boris
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

Pf@nne

Moin Boris,

Zitat von: Dr. Boris Neubert am 03 Oktober 2016, 15:09:40
OK, R10 und R11 verstehe ich. In der Testschaltung im Datenblatt liegen aber noch je 1k parallel zu den C16 und C17. Ich verstehe zuwenig davon, um beurteilen zu können, wie sehr diese Widerstände benötigt werden.
Wie würdest Du denn die Spannung zwecks Spannungsmessung an VP/VN heranführen? In der Testschaltung, beim ImpWattmeter und beim Hexaplug liegt die Netzspannung über 1M direkt am ADE.

Nach dem Blockschaltbild (siehe Anlage) sollten die drei Eingänge HW-Seitig gleich sein.
Aber, ich habe die VP/VN-Anschaltung mal geändert.
Dann kann man die Kleinspannung zum Testen auch wie vorgesehen hochohmig ankoppeln.

ZitatWie würdest Du denn die Spannung zwecks Spannungsmessung an VP/VN heranführen? In der Testschaltung, beim ImpWattmeter und beim Hexaplug liegt die Netzspannung über 1M direkt am ADE.
Würde ich auch so machen, war nur zum Testen ander geplant.

Zitat
ZitatAls ESP würde ich den WEMOS empfehlen, der kostet fast das Gleiche wie ein single ESP hat aber schon einen Spannungsregler 5V -> 3V3 und RS232 -> USB mit drauf.

Du meinst fürs Prototyping? Da habe ich einen NodeMCU-Klon mit Breakoutboard hier. Für ein produktives Gerät würde ich den ESP über einen meiner USB/3,3V-Seriell-Wandlerkabel aus meinen Arduinobasteleien flashen. 5V sind ja eher störend, weil sowohl ADE7768 als auch ESP mit 3,3V laufen.
Klar, das ja egal, jeder wie er mag......

Zitat
ZitatDie Windungszahl n1/n2 sollte einfach zu messen sein, da n1 = 1 wenn der Primärdraht nur 1x durchgeführt wird.

Wie messen?

Du misst einfach den Sekundärstrom während du z.B. 1A im Draht auf der Primärseite fließen hast.
Die Stromübersetzung ist doch umgekehrt proportional zum Windingsverhältnis.

I2/I1 = n1/n2  -> n2 = I1*n1 / I2

Das Optimum wäre übrigens ein geschnittener Ferritkern mit HallEffekt-Sensor
https://de.aliexpress.com/item/B203XT-Split-core-open-loop-Hall-Effect-current-sensor-10A/2028027617.html?spm=2114.010208.3.71.2NK7yd&ws_ab_test=searchweb0_0,searchweb201602_3_10056_10065_10055_10068_10054_10069_10059_10073_10017_10070_10060_10061_10052_10062_10053_10050_10051,searchweb201603_7&btsid=24a9241f-89d5-47f6-8df4-37cd099c5576

Die sind auch in "richtigen" Zählern verbaut.

Aber wir wollen ja keine Bilanzkreismessung aufbauen.... ::)

Zitatiehe oben - wie trennst Du die Netzspannung von VN/VP?

Beim Hexaplug sitzt der ADE7768 auf der "heißen" Platine.

Die CTs wären ja nur für die Stromkreise, die Spannung würde man hochohmig einkoppeln.


Erstmal müssen wir das Ding ja softwareseitig zum laufen bringen.
Das Ding ist ja eine EierlegendeWollMilchSau.....

MfG
Pf@nne
FHEM auf: DS415+ (Master), Raspberry Pi 2

Dr. Boris Neubert

Vielen Dank, Pf@nne, für Deine ausführliche Antwort. Für mich passt das so jetzt alles.

Wenn ich die Abmessungen des Boards richtig gelesen habe, sollte das Board bei Bestückung mit Pfostenleisten so in ein Breadboard passen, dass auf jeder Seite noch gerade eine Zeile für Verdrahtung frei bleibt.

Viele Grüße
Boris
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

Dr. Boris Neubert

Noch zur Software: sind wir uns einig, dass die Firmware ESPEasy mit neuem Modul wird? Im Forum fliegen schon zwei Module für FHEM dazu herum, es hat I2C-Verarbeitung im Framework vorgerüstet, und man kann ein OLED-Display anschließen (welches ich hier zufällig vor mir liegen habe ;-).
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

Pf@nne

Moin Boris,

gerne, ich hoffe ich interpretiere da Datasheet richtig....daher erstmal das Breakoutboard.

Zitat von: Dr. Boris Neubert am 03 Oktober 2016, 19:31:31
Wenn ich die Abmessungen des Boards richtig gelesen habe, sollte das Board bei Bestückung mit Pfostenleisten so in ein Breadboard passen, dass auf jeder Seite noch gerade eine Zeile für Verdrahtung frei bleibt.

So war der Plan..... 8)

Zitat von: Dr. Boris Neubert am 03 Oktober 2016, 19:35:40
Noch zur Software: sind wir uns einig, dass die Firmware ESPEasy mit neuem Modul wird? Im Forum fliegen schon zwei Module für FHEM dazu herum, es hat I2C-Verarbeitung im Framework vorgerüstet, und man kann ein OLED-Display anschließen (welches ich hier zufällig vor mir liegen habe ;-).

Hmm.... nicht so ganz.
Ich bin momentan ein echter MQTT-Fan. Ich finde die Ankopplung der kleinen Helfer optimal.
Das EnergieMod könnte dann alle statischen Messwerte wie Spannung, Strom, Wirkleistung, Scheinleistung, Blindleistung, powerFactor in einem eigenen Topic bereitstellen.
Auf Anfrage könnten dann auch die Samples für 2 Perioden abgeholt werden.
Auch die Konfiguration des ADE  könnte über MQTT erfolgen.
Aber das ist wie immer geschmackssache.

Da sind wir ja aber schon am Ende.....
Sofwareseitig muss der ADE ja ersmal per I2C konfiguriert und ausgelesen werden.
So als Grundmodul, hier sollte man dann eine Arduino Library erstellen.

Wie kommt man den von EasyESP nach FHEM?
Auch MQTT oder HTTP?

Entscheident wird ja dann das FHEM-Modul.
Das soll natürlich auch hübsch aussehen.....
Hier würde es dann schon Sinn machen wenn die Schnittstelle zu FHEM "genormt" wäre.

Aber wie gesagt....erstmal die Hardware stabil zum Laufen bringen....


Gruß
Pf@nne

EDIT:
Erstmal warte ich noch auf die Freigabe von Peter, ohne seinen Segen kann noch nichts bestellt werden.

FHEM auf: DS415+ (Master), Raspberry Pi 2

Dr. Boris Neubert

Hallo,

ESPEasy spricht MQTT und FHEM und es gibt für beide Anbindungen Module hier im Forum. Ich werde mich mal an einen Testaufbau mit ESPEasy, einem Sensor aus der Grabbelkiste und einer LED machen.

Viele Grüße
Boris
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

PeMue

Zitat von: Pf@nne am 03 Oktober 2016, 19:54:26
Erstmal warte ich noch auf die Freigabe von Peter, ohne seinen Segen kann noch nichts bestellt werden.
Zuviel der Blumen  ;) Leider habe ich es heute nicht mehr geschafft, weil alles andere wichtiger war (oder mehr Zeit gebaucht hat   ???) . Aber das Wattmeter steht morgen abend auf dem Programm ...

Gruß Peter
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

PeMue

#44
Hallo Pf@nne, hallo Boris,

leider bin ich doch nicht so dazugekommen, wie ich wollte. Aber nach den Forumsdiskussionen mal wieder was technisches:

Generell gibt es m.E. zwei Herangehensweisen:
1. direkt die Netzspannung messen (da muss dann die Platine den einschlägigen VDE Regeln genügen, wo ich aber auch nicht der wirkliche Experte bin) oder
2. non-inversiv mit einer Spule. Diese hat aber ein paar Nachteile: man kennt ggf. das Übersetzungsverhältnis nicht bzw. durch die Induktivität wird die Phasenzuordnung Strom/Spannung gedreht, was sich auf den Effektivwert des gemessenen Verbrauchs auswirkt.

Daher stimme ich Pf@nne zu, erst mal ein breakout Board zu machen und die Software zu entwickeln und im zweiten Schritt eine Platine zu definieren, in der man dan die notwendigen Features integriert (Was will an messen (Strom, Spannung, Leistung, Verbrauch, Abweichungen vom Sinus, etc.)?, Wie will man messen (1. oder 2.)? Welches Gehäuse will man verwenden (Steckergehäuse, Hutschiene, etc.).

Fragen, die ich noch nicht mit dem Datenblatt beantworten konnte (ggf. habe ich noch nicht genau genug gelesen):
- Warum gibt es zwei Stromeingänge (phase und neutral)? Wenn alles ok ist, müssten beide gleich sein, nur mit unterschiedlichem Vorzeichen.
- Das Thema Rogowski Spule finde ich auch interessant, vermutlich liegt es an meinem profunden Halbwissen, dass ich da nicht weiter komme  8) aber vermutlich wäre das eine geeignete (und vermutlich teure) Spule

Fragen zum breakout Board (@Pf@nne):
- Wie ist Dein Massekonzept? Ich habe festgestellt, dass Du unter dem IC und an einem Pin AGND und DGND "überlappst", meine Frage ist, ob das beabsichtig ist. Die Frage ist: was kommt vom WeMos (oder welchem Board auch immer). Ich würde ggf. einen Lötjumper vorsehen, der geschickt platziert werden kann und wo die Analog- bzw. Digitalmasse an einem Sternpunkt zusammengeführt werden kann.

Ich habe mal über das Board drübergeschaut und ein paar Anpassungen vorgenommen:
- Schaltplan unverändert
- Dimensionen in mm (0,5 mm Schritte)
- Bemaßung auf Layer Dimensions gelegt
- zwei doppelte Vias rausgeworfen
- ein paar enge Leitungen auseinandergezogen
- die Pinleisten ins Raster gesetzt, damit das Ganze ggf. auch aufs Steckbrett geht  :o

Zitat von: Pf@nne am 03 Oktober 2016, 14:31:04
Die Messsignale wollte ich erstmal über drei Potis vorgeben um das Auslesen der Analogwerte besser testen zu können und während der Softwarephase keine 230VAC auf dem Tisch zu haben.
Zustimmung (der Knopf unten ist dafür nicht spezifisch genug  8)). Und wir müssen dann auch entscheiden, wie wir messen wollen (s.o.).

Zitat von: Pf@nne am 03 Oktober 2016, 14:31:04
10 Boards kosten 17€, da kann man gerne auch noch geänderte fertigen lassen.
Geht meine ich auch für unter 10 €, aber das schauen wir dann  ;)

Beim Löten könnte ich ggf. auch was machen (per Hand dispensen und im Ofen Löten, die BME280 sind ganz gut geworden).

Die Platine hänge ich später an, ich habe noch ein paar Dinge gesehen ...

Was aus meiner Sicht auf der Platine noch fehlt:
- Massekonzept (wichtig!)
- Beschriftung (Version, Datum, etc.)
- Masseflächen
- Beschriftung der Bauteile bzw. der beiden äußeren Pinreihen

Gruß PeMue

Edit: Version 0.12 der Platine angehängt.
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser