Archiv der Kategorie: Infos

Smarte Stromzähler 2 x eBZ DD3 auslesen mit Tasmota Stromleser

Ich habe von Stromleser.de ein Set für meine beiden SmartMeter eBZ DD3 gekauft.
Den WiFi stromleser.tasmota und zusätzlich den stromleser.ttl.
Dabei gab es ein paar Stolpersteine an denen ich längere Zeit zugebracht habe. Diese habe ich hervorgehoben zur Hilfe für Eure erste Installation.

Die Montage ist einfach, den Eisenring mittig über die zwei LEDs kleben und den Sensor magnetisch aufsetzen und über das USB Kabel mit Strom versorgen. Ich habe hier vorerst eine Powerbank verwendet bis ich eine Steckdose in der Verteilung habe.

Dann mit dem Handy per WLan drauf gehen und mit dem zentralen WLan Router im Haus verbinden. Name und Passwort eingeben. Hier erscheint kurz die die vergebene IP.
Achtung Diese am besten merken und notieren da sie nur für wenige Sekunden sichtbar ist oder später am Router nachsehen.

Dann mit einem Browser auf diese IP gehen.
Achtung nur per http://192.168.x.x. und nicht per https://192.168.x.x denn das ergänzen einige Browser gern.

Dann bekommt Ihr diese Übersicht

unter Tools

und Edit Script

Hier könnt Ihr jetzt das passende Script für Euren Stromzähler eingeben.
Der Haken bei Script enable nicht vergessen und Save drücken. Über Tools kommt Ihr zurück.

Ich habe hier 2 x den eBZ DD3 2R06 Stromzähler.
Dafür ist das Script für einen Zähler angegeben mit:

>D
>B
=>sensor53 r
>M 1
+1,3,o,16,9600,eBZ,1
1,1-0:1.8.0*255(@1,Verbrauch,kWh,E_in,3
1,1-0:2.8.0*255(@1,Einspeisung,kWh,E_out,3
1,1-0:16.7.0*255(@1,akt. Leistung,W,Power,0
1,1-0:36.7.0*255(@1,Leistung L1,W,36_7_0,0
1,1-0:56.7.0*255(@1,Leistung L2,W,56_7_0,0
1,1-0:76.7.0*255(@1,Leistung L3,W,76_7_0,0
1,1-0:32.7.0*255(@1,Spannung L1,V,32_7_0,1
1,1-0:52.7.0*255(@1,Spannung L2,V,52_7_0,1
1,1-0:72.7.0*255(@1,Spannung L3,V,72_7_0,1
1,1-0:96.1.0*255(@#),Identifikation,,96_1_0,0
#

Wenn Ihr einen anderen Zähler habt gibt es hier eine Übersicht der verschiedenen Typen und der passenden Scripte: https://stromleser.de/pages/scripts

Das könnt Ihr nun ausprobieren und schauen ob der aktuelle Zählerstand angezeigt wird im Main Menue.

>M 1 ist für eine Messstelle, ich habe aber zwei Messstellen (der zusätzliche TTL Sensor) und habe das in >M 2 geändert

Der zweite Sensor ist oben rechts angesteckt.

Dann muss ich die IO5 und IO4 eintragen für den zweiten Sensor.
+2 für den zweiten Sensor
4 für die zweite IO
die nächsten Werte vom ersten Sensor übernehmen
5 am Ende für die erste IO
Achtung die zweite IO Nummer zuerst.
Das sieht dann so aus:

+2,4,o,16,9600,eBZ,5

Am Ende des Eintrags vom ersten Sensor und direkt vor dem # werden nun die Daten für den zweiten Sensor eingefügt.

Das ganze startet mit:
2,=h=================================

Ein Kommentar in dieser Zeile würde z.B. so aussehen:
2,=h Smartmeter 2

Die oberen Werte vom ersten Sensor werden kopiert und eingefügt.
Dann wird die führende 1 in jeder Zeile ersetzt durch eine 2

2,1-0:1.8.0*255(@1,Verbrauch,kWh,E_in,3
2,1-0:2.8.0*255(@1,Einspeisung,kWh,E_out,3
2,1-0:16.7.0*255(@1,akt. Leistung,W,Power,0
2,1-0:36.7.0*255(@1,Leistung L1,W,36_7_0,0
2,1-0:56.7.0*255(@1,Leistung L2,W,56_7_0,0
2,1-0:76.7.0*255(@1,Leistung L3,W,76_7_0,0
2,1-0:32.7.0*255(@1,Spannung L1,V,32_7_0,1
2,1-0:52.7.0*255(@1,Spannung L2,V,52_7_0,1
2,1-0:72.7.0*255(@1,Spannung L3,V,72_7_0,1
2,1-0:96.1.0*255(@#),Identifikation,,96_1_0,0

Das Script bei mir sieht dann insgesamt so aus.

>D
>B
=>sensor53 r
>M 2
+1,3,o,16,9600,eBZ,1
+2,4,o,16,9600,eBZ,5

1,1-0:1.8.0*255(@1,Verbrauch,kWh,E_in,3
1,1-0:2.8.0*255(@1,Einspeisung,kWh,E_out,3
1,1-0:16.7.0*255(@1,akt. Leistung,W,Power,0
1,1-0:36.7.0*255(@1,Leistung L1,W,36_7_0,0
1,1-0:56.7.0*255(@1,Leistung L2,W,56_7_0,0
1,1-0:76.7.0*255(@1,Leistung L3,W,76_7_0,0
1,1-0:32.7.0*255(@1,Spannung L1,V,32_7_0,1
1,1-0:52.7.0*255(@1,Spannung L2,V,52_7_0,1
1,1-0:72.7.0*255(@1,Spannung L3,V,72_7_0,1
1,1-0:96.1.0*255(@#),Identifikation,,96_1_0,0

2,=h=================================
2,1-0:1.8.0*255(@1,Verbrauch,kWh,E_in,3
2,1-0:2.8.0*255(@1,Einspeisung,kWh,E_out,3
2,1-0:16.7.0*255(@1,akt. Leistung,W,Power,0
2,1-0:36.7.0*255(@1,Leistung L1,W,36_7_0,0
2,1-0:56.7.0*255(@1,Leistung L2,W,56_7_0,0
2,1-0:76.7.0*255(@1,Leistung L3,W,76_7_0,0
2,1-0:32.7.0*255(@1,Spannung L1,V,32_7_0,1
2,1-0:52.7.0*255(@1,Spannung L2,V,52_7_0,1
2,1-0:72.7.0*255(@1,Spannung L3,V,72_7_0,1
2,1-0:96.1.0*255(@#),Identifikation,,96_1_0,0
#

Ein Smart Meter kann mehrere Leistungen erfassen, summieren und ausgeben.
Abgenommene Leistungen beginnen mir 1.8.x.
Das habt der Stromanbieter geliefert und das muss bezahlt werden.
1.8.0 ist die Summe aller Leistungen
1.8.1 kann der Tagstromtarif (HT) sein
1.8.2 kann der Nachtstromtarif (NT) sein
Abgegebene Leistungen, z.B. Einspeisung von Solarzellen werden 2.8.x angezeigt.
auch hier kann es einen HT und NT geben
2.8.0 ist wieder die Summe der produzierten Leistung
2.8.1 kann der Tagstromtarif (HT) sein
2.8.2 kann der Nachtstromtarif (NT) sein.
Das 2.8.2 scheint aber ungewöhnlich zu sein. Falls nicht schreibt das gern in die Kommentare.

Bei meinem Zähler werden die Verbrauchswerte 1.8.1 und 1.8.2 unterschieden.
Dazu habe ich jeweils die beiden Zeilen ergänzt für den ersten Sensor

1,1-0:1.8.1*255(@1,Verbrauch 1.8.1,kWh,E_in,3
1,1-0:1.8.2*255(@1,Verbrauch 1.8.2,kWh,E_in,3

und den zweiten Sensor mit der 2 vorweg.

2,1-0:1.8.1*255(@1,Verbrauch 1.8.1,kWh,E_in,3
2,1-0:1.8.2*255(@1,Verbrauch 1.8.2,kWh,E_in,3

Das zusammen sieht dann so aus

>D
>B
=>sensor53 r
>M 2
+1,3,o,16,9600,SM1,1
+2,4,o,16,9600,SM2,5

1,1-0:1.8.0*255(@1,Verbrauch gesamt,kWh,E_in,3
1,1-0:1.8.1*255(@1,Verbrauch 1.8.1,kWh,E_in,3
1,1-0:1.8.2*255(@1,Verbrauch 1.8.2,kWh,E_in,3
1,1-0:2.8.0*255(@1,Einspeisung,kWh,E_out,3
1,1-0:16.7.0*255(@1,akt. Leistung,W,Power,0
1,1-0:36.7.0*255(@1,Leistung L1,W,36_7_0,0
1,1-0:56.7.0*255(@1,Leistung L2,W,56_7_0,0
1,1-0:76.7.0*255(@1,Leistung L3,W,76_7_0,0
1,1-0:32.7.0*255(@1,Spannung L1,V,32_7_0,1
1,1-0:52.7.0*255(@1,Spannung L2,V,52_7_0,1
1,1-0:72.7.0*255(@1,Spannung L3,V,72_7_0,1
1,1-0:96.1.0*255(@#),Identifikation,,96_1_0,0

2,=h=================================
2,1-0:1.8.0*255(@1,Verbrauch gesamt,kWh,E_in,3
2,1-0:1.8.1*255(@1,Verbrauch 1.8.1,kWh,E_in,3
2,1-0:1.8.2*255(@1,Verbrauch 1.8.2,kWh,E_in,3
2,1-0:2.8.0*255(@1,Einspeisung,kWh,E_out,3
2,1-0:16.7.0*255(@1,akt. Leistung,W,Power,0
2,1-0:36.7.0*255(@1,Leistung L1,W,36_7_0,0
2,1-0:56.7.0*255(@1,Leistung L2,W,56_7_0,0
2,1-0:76.7.0*255(@1,Leistung L3,W,76_7_0,0
2,1-0:32.7.0*255(@1,Spannung L1,V,32_7_0,1
2,1-0:52.7.0*255(@1,Spannung L2,V,52_7_0,1
2,1-0:72.7.0*255(@1,Spannung L3,V,72_7_0,1
2,1-0:96.1.0*255(@#),Identifikation,,96_1_0,0
#

Achtung: Im Hauptmemue einmal Restart drücken und warten bis sich der Leser wieder meldet nach einigen Sekunden.

Das Ergebnis im Browser

Achtung: Diesen zweiten Schritt mit 1.8.1 und 1.8.2 solltet Ihr nicht machen wenn Ihr die Stromleser App auf dem Handy verwenden wollt, denn dort wird dann als Gesamtverbrauch nur der Wert von 1.8.2 ausgegeben. Das sieht dann so aus:

Diese Zeilen könnt Ihr vorläufig auch auskommentieren mit einem ; (Semikolon) davor. Dann berücksichtigt des Sensor diese Daten nicht und in der Stromleser App wird wieder alles richtig angezeigt.

Hinweis: Einen Tag später bin ich drauf gekommen die Werte im Script umzudrehen und erst 1.8.1 dann 1.8.2 und zum Schluss 1.8.0 auszugeben. Dann wird auch der Gesamtverbrauch in der Stromleser App richtig angegeben. Denn die App gibt nur den letzten der 3 Werte aus.
Dann sieht das Script so aus

>D
>B
=>sensor53 r
>M 2
+1,3,o,16,9600,SM1,1
+2,4,o,16,9600,SM2,5

1,1-0:1.8.1*255(@1,Verbrauch 1.8.1,kWh,E_in,3
1,1-0:1.8.2*255(@1,Verbrauch 1.8.2,kWh,E_in,3
1,1-0:1.8.0*255(@1,Verbrauch gesamt,kWh,E_in,3
;1,1-0:2.8.0*255(@1,Einspeisung gesamt,kWh,E_out,3
;1,1-0:2.8.1*255(@1,Einspeisung 2.8.1,kWh,E_out,3
;1,1-0:2.8.2*255(@1,Einspeisung 2.8.2,kWh,E_out,3
1,1-0:16.7.0*255(@1,akt. Leistung,W,Power,0
1,1-0:36.7.0*255(@1,Leistung L1,W,36_7_0,0
1,1-0:56.7.0*255(@1,Leistung L2,W,56_7_0,0
1,1-0:76.7.0*255(@1,Leistung L3,W,76_7_0,0
1,1-0:32.7.0*255(@1,Spannung L1,V,32_7_0,1
1,1-0:52.7.0*255(@1,Spannung L2,V,52_7_0,1
1,1-0:72.7.0*255(@1,Spannung L3,V,72_7_0,1
1,1-0:96.1.0*255(@#),Identifikation,,96_1_0,0

2,=h=================================
2,1-0:1.8.0*255(@1,Verbrauch 1.8.0,kWh,E_in,3
;2,1-0:1.8.1*255(@1,Verbrauch 1.8.1,kWh,E_in,3
;2,1-0:1.8.2*255(@1,Verbrauch 1.8.2,kWh,E_in,3
;2,1-0:2.8.0*255(@1,Einspeisung,kWh,E_out,3
2,1-0:16.7.0*255(@1,akt. Leistung,W,Power,0
2,1-0:36.7.0*255(@1,Leistung L1,W,36_7_0,0
2,1-0:56.7.0*255(@1,Leistung L2,W,56_7_0,0
2,1-0:76.7.0*255(@1,Leistung L3,W,76_7_0,0
2,1-0:32.7.0*255(@1,Spannung L1,V,32_7_0,1
2,1-0:52.7.0*255(@1,Spannung L2,V,52_7_0,1
2,1-0:72.7.0*255(@1,Spannung L3,V,72_7_0,1
2,1-0:96.1.0*255(@#),Identifikation,,96_1_0,0
#

In der Tasmota Oberfläche und in der Stromleser App wird jetzt alles richtig ausgegeben.

Zur Zeit wird noch kein aktueller Verbrauch angezeigt.
Dafür muss ich mir noch die PIN von den Stadtwerken geben lassen und die beiden Zähler freischalten für die aktuelle Leistungsaufnahme.

Ich hoffe das hilft Euch weiter wenn Ihr auch vor dieser Aufgabe steht.

Wenn Kondensatoren verpolt werden, dann können sie explodieren ;-)

4-Pin Adapter JST Stecker zu Schraubklemmen

Teil 3 : 16er Touchpad TTP229 mit Bestätigung, Kommastellen und +/- Wechsel

Die TTP229 – 16 Touch Tasten Platine und der Arduino sind erweitert worden durch einen 5V Pieper.
Jetzt können auch Kommazahlen / Nachkommastellen eingegeben werden.
Das Vorzeichen kann gewechselt werden + oder –
Die Taste 10 ist zur 0 geworden.
Der Pieper bestätigt jetzt die Tasteneingabe mit einem kurzen Ton.

Ich hatte Probleme, das die Tastatur ohne Betätigung zufällig Zahlen eingelesen hat. Meist waren es die 6 oder die 7.
Das lag daran dass die Platine flach auf dem Holztisch gelegen hat. Da hat die interen Kalibration der TTP229 Chips nicht gut gearbeitet und Tasten erkannt die gar nicht gedrückt waren. Das liess sich aber einfach beheben, ich habe oben einfach zwei M3x8mm Schrauben rein gedreht und damit die Platine etwas vom Tisch angehoben. Nun funktioniert es zuverlässig und gut. Weiterlesen

3D Druck : Stellring für 20mm Rohr mit M6 Schraube

Ich habe einen Stellring für ein 20mm Rohr entworfen und ausgedruckt.
Eine M6 Schraube sichert den Stellring gegen verrutschen.
Eine M6 Mutter ist versenkt eingelassen um den Druck der Schraube aufzunehmen. Weiterlesen

500A Relais, die Schaltzeiten und das prellen der Kontakte

Ich habe heute ein 500A Relais aus China bekommen, ausgepackt und gleich getestet. Es ist ab ca. 15 Euro incl. Versand zu haben.

Es ist ein 12V Relais, ist schlank aufgebaut und hat 4 Schraubanschlüsse.
2 x M5 für die Schaltspannung von 12V
2 x M8 mit Kupferschrauben für die 500A Schaltkontakte

Es ist 8,6 cm hoch und 6×8 cm breit mit einem Metallfuß zum anschrauben mit 2 x 7mm Langlöchern. Weiterlesen

Arduino Uno mit LCD shield in einem 3D gedruckten Gehäuse

Der Arduino Uno wird mit dem 1602 LCD Shield mit 6 Tasten in ein Gehäuse aus dem 3D Drucker gesetzt und mit einer einfachen Software betrieben.

Das häufig verwendete 16×2 LCD Standard Shield wird auf den Arduino Uno gesetzt und dann dieses Gehäuse von Thingiverse eingebaut. Nach dem 3D Druck müssen die 3 Doppeltasten von dem Gehäuse getrennt werden. Dazu am besten mit einem scharfen Messer die Kanten entlang fahren und die Tasten mit Gefühl heraus drücken. Nach dem entgraten der Tasten funktionieren Sie dann auch gut als Wipptasten. Mit 2 Schrauben lässt sich das Gehäuse verschliessen. Die Anschlüsse für USB und Spannungsversorgung sind gut geschützt seitlich zu erreichen. Weiterlesen

Adapterplatine 4-polig RM3,5 zu RM1,5

Für ein Projekt brauchte ich 4-polige Adapterplatinen. Davon sind noch ein paar unbestückte Platinen übrig, die ich jetzt für 2 € pro Stück abgeben kann plus 1,45 Euro Versand als Brief in Deutschland.

Hier das Bild von den Platinen, Vorderseite und Rückseite.

Die Platine ist 15 x 13 mm groß auf FR4 Material 1,6mm dick.

 

Verwendet habe ich sie für einen 4-poligen JST-ZR Japanstecker Stecker im Rastermaß 1,5mm und eine 4-polige Schraubklemme in Rastermaß 3,5mm für einen Kabelanschluss bis zu 1mm².

Hier ein Beispiel mit meiner eignen Bestückung

Bei Interesse schickt mit eine Email.

von Matthias Busse

Der Peukert Exponent bei Blei Säure Batterien

Die Kapazität einer Blei-Säure Batterien wird meist für eine 20 Stunden Entladung angegeben. Das ist dann der aufgedruckte C20 Wert von z.B. 100Ah. Nach Vollladung kann die Batterie also 100Ah in 20 Stunden abgeben oder anders ausgedrückt 5A für 20 Stunden.

Wird der Strom erhöht, sinkt die Kapazität. Das ist mit dem Peukert Exponenten darstellbar.

Wenn dauerhaft 20A entnommen werden, sinkt die Kapazität auf ca. 70Ah und die Batterie ist schon nach 3,5 Stunden entladen. Weiterlesen

NMEA2000 Interface

Das NMEA2000 Marine Netzwerk, etwas zum Einstieg.

NMEA2000 ist ein CAN-Bussystem am Bord moderner Yachten. Hier werden viele Sensordaten gesammelt und auf den Bus gegeben. Alle angeschlossenen Displays können diese Daten verwenden, sie darstellen oder für Berechnungen zur Hilfe nehmen. Typische Daten sind z.B. die Geschwindigkeit durch das Wasser und die Wassertiefe. Hierfür wird am häufigsten der Airmar DST800 Geber im Bootsrumpf eingesetzt. Die Displays zur Darstellung der Daten kommen von den verschiedenen Herstellern Raymarine, Simrad, Garmin …

Das Ganze wird mit dem NMEA2000 Bus verbunden. Hier gibt es die Rückgrad Leitung (auch Backbone genannt) die mit Widerständen an beiden Enden abgeschlossen wird. Die Geber und Displays werden über T-Stücke und Stichleitungen (Spur Kabel genannt) an das NMEA2000 Netzwerk angeschlossen. Weiterlesen