Login
Login-SSL
Register
Forum
Kontakt
Bitmania
2012-12-23 01:43
by bitman
Stromzähler-Funk-Sensor ESA1000WZ-IR
RFM12 Network

Weiter gehts mit dem zweiten Teil zum Stromzähler-Funk-Sensor.
Ich habe etwas voreillig den ESA1000WZ-IR hier als Bausatz bei ELV gekauft:

http://www.elv.de/funk-sensor-fuer-drehstromzaehler-esa1000wz-komplettbausatz.html


Zunächst sieht alles erstmal aus wie ein gewöhnlicher ELV Bausatz




Der Zusammenbau entwickelte sich jedoch zu einem besonderen Erlebnis.

Und zwar:
o Keine Bauteilliste in der Aufbauanleitung, es sind zwar nur ein paar wenige Bauteile einzulöten, aber die Kondensatoren z.B. muß man anhand der schwarz-weis abgedruckten Bilder bestimmen.

o Beim Display wird auf eine kleine Glasnase verwiesen um die Einbaulage richtig zu bestimmen, mein Display hatte unglücklicherweise keine Glasnase

o Keine Angabe zum Abstand zwischen Sendeeinheit und Hauptplatine, das hab ich in anderen ELV Bausätzen schon besser gesehen.

o als Schrauben für das Display und die Gehäuse werden superkleine TORX-ähnliche Schrauben mitgeliefert. Ich hab schon einen prima Satz an Schraubendreher Bits. Bis zu diesem Bausatz dachte ich damit für alles gerüstet zu sein, diese sind jedoch derart klein das nichts passendes dabei war.
Ich mußte mit dem Dremel Schlitze in die Schraubenköpfe fräsen damit ich sie verwenden konnte!

o Schlechte Bezeichnung der Adern im Flaschbandkabel, das den Sensor und die Haupt/Sende Einheit verbindet.

Als ich alles auf gut Glück zusammengefummelt hatte kam die größte Überraschung, alles scheint zu funktionieren! Scheinbar hab ich überall richtig geraten.

Anstelle der Mini-Hohlsteckerbuchsen hab ich gleich ein Kabel angelötet, das andere Ende kommt an eine 9V Batterie. Später will ich die Stromversorgung über den Klingeltrafo machen, der ja in dem Stromkasten eingebaut ist.





Danach hab ich erstmal die Funkverbindung getestet und das Teil dann in den Zählerkasten eingebaut. Das Zentrieren der Sensoreinheit mit der Pappschablone klappte gut.






Weiter geht's mit der Anbindung in FHEM.
Auf der Projektseite war der Sensor als 'Einsetzbar' aufgeführt, was ich vor dem Kauf gecheckt hatte.

Da FHEM direkt nach der Installation noch im autocreate Modul läuft, versucht FHEM alls was es so in der Luftschnittstelle mithört zu erkennen und zuzuordnen.
Meinen Stromzählersenseor hat FHEM auch gleich erkannt.
Leider machte wurden dann aber keine Brauchbaren Infos angezeigt.

Wie ich herausgefunden habe kommt wohl jeder Sensor vom Typ ESA1000WZ-IR mit einem anderen Code daher, den man in einem FHEM-File hinterlegen muß.

Hier der Kurzabriss wie man zum Ziel kommt:


Diesem File angepasst werden, also machen wir erstmal ein Kopie:

scovery:~# diff -s /opt/fhem/FHEM/64_ESA2000.pm /opt/fhem /FHEM/64_ESA2000.pm.pre_change_20121219_bitman


Dann stellen wir das Loglevel für bestimme Meldungen auf 1

scovery:~# vi /opt/fhem/FHEM/64_ESA2000.pm
:::
Log 1, "ESA2000 msg $msg";
Log 1, "ESA2000 seq $seq";
Log 1, "ESA2000 device $dev";
Log 1, "ESA2000 code $cde";
:::


Danach sehen wir im FHEM-Logfile den Code meines Sensors:

scovery:~# tail -f /my-data/fhem/fhem-2012-12.log
2012.12.20 16:36:00 1: ESA2000 msg sa47655011e00000678000300206f003d
2012.12.20 16:36:00 1: ESA2000 seq a4
2012.12.20 16:36:00 1: ESA2000 device 011e
2012.12.20 16:36:00 1: ESA2000 code 7655


Hier also 7655

diesen muß man dann an diese Stelle im gleichen File einsetzen:

scovery:~# vi /opt/fhem/FHEM/64_ESA2000.pm
:::
my %codes = (
"7655" => "ESA2000_LED",
);
:::


Der Diff des im FHEM-DEB-Paket mitgelieferten Files zu dem nun abgeänderten sieht bei mir nun so aus:

scovery:~# diff -s /opt/fhem/FHEM/64_ESA2000.pm /opt/fhem/FHEM/64_ESA2000.pm.pre_change_20121219_bitman
16c16
< "7655" => "ESA2000_LED",
---
> "19fa" => "ESA2000_LED",
73d72
< # s997655011e000000080000000176003d bitmans ESA2000_LED
80,84c79,82
< # was Log 5 (2012-12-19 JS)
< Log 1, "ESA2000 msg $msg";
< Log 1, "ESA2000 seq $seq";
< Log 1, "ESA2000 device $dev";
< Log 1, "ESA2000 code $cde";
---
> Log 5, "ESA2000 msg $msg";
> Log 5, "ESA2000 seq $seq";
> Log 5, "ESA2000 device $dev";
> Log 5, "ESA2000 code $cde";



Nach dieser Aktion sehe ich nun erste Ergebnisse von dem Sensor:
2012-12-21_02:26:30 ESA2000_011e repeat: -
2012-12-21_02:26:30 ESA2000_011e sequence: 100
2012-12-21_02:26:30 ESA2000_011e total_ticks: 692
2012-12-21_02:26:30 ESA2000_011e actual_ticks: 1
2012-12-21_02:26:30 ESA2000_011e ticks_kwh: 36
2012-12-21_02:26:30 ESA2000_011e raw: CNT: 100- CUM: 692 CUR: 1 TICKS: 36 LR
2012-12-21_02:26:30 ESA2000_011e total_kwh: 6.41666666666667
2012-12-21_02:26:30 ESA2000_011e actual_kwh: 0.216919739696312
2012-12-21_02:26:30 ESA2000_011e diff_kwh: 0.0277777777777778
2012-12-21_02:26:30 ESA2000_011e diff_sec: 461
2012-12-21_02:26:30 ESA2000_011e diff_ticks: 1
2012-12-21_02:26:30 ESA2000_011e last_sec: 1356053190
2012-12-21_02:26:30 ESA2000_011e raw_total_kwh: 19.2222222222222
2012-12-21_02:26:30 ESA2000_011e
2012-12-21_02:26:30 ESA2000_011e day_kwh: 1.13888888888889
2012-12-21_02:26:30 ESA2000_011e month_kwh: 6.41666666666667
2012-12-21_02:26:30 ESA2000_011e year_kwh: 6.41666666666667
2012-12-21_02:26:30 ESA2000_011e rate: LR
2012-12-21_02:26:30 ESA2000_011e
2012-12-21_02:26:30 ESA2000_011e lr_kwh: 1.13888888888889
2012-12-21_02:26:30 ESA2000_011e
2012-12-21_02:26:30 ESA2000_011e day_lr_kwh: 6.41666666666667
2012-12-21_02:26:30 ESA2000_011e
2012-12-21_02:26:30 ESA2000_011e month_lr_kwh: 6.41666666666667
2012-12-21_02:26:30 ESA2000_011e
2012-12-21_02:26:30 ESA2000_011e



Laut Hersteller soll der Sensor alle 5 Minuten ein Paket senden.
Bei mir liegen da aber teilweise sehr große Lücken zwischen.
Anhand der Sequence NUmmer sieht mann wie viele da fehlen:
2012-12-21_04:36:33 ESA2000_011e sequence: 24
2012-12-21_05:09:50 ESA2000_011e sequence: 37
2012-12-21_05:12:50 ESA2000_011e sequence: 38
2012-12-21_05:15:37 ESA2000_011e sequence: 39


Seltsam ist auch das manchmal nur 2 Sekunden zwischen zwei Paketen liegen, andermals dann wieder 20 Minuten.
Da ich die werte später alle 5 Minuten erfaseen will ist das so erstmal nicht was ich erwartet hatte.

Im Netz hab ich inzwischen gelesen das mein Sensor ESA1000WZ-IR das wohl bei anderen auch macht.

Der ältere Sensor EM-1000-WZ dagegen soll gleichmäßiger funktionieren.
Ich hab darauf hin beschlossen diesen auch noch auszuprobieren und bestellt.

Bis es soweit ist habe ich die Werte des ESA1000WZ-IR erstmal per Script in eine RRD-Datenbank geschoben:






Hier sieht man schonmal zwei Waschmaschinengänge


1 Comment

master32 2012-12-23 01:31 ^ 175

Moderator
Posts: 32
Pages: 35
Registered: 2010-09-04
aufhören zu waschen ! spart viel srom !