Wie kann ich einige S0-Zähler mit fhem auf einer Fritz!Box 7390 auslesen?

Begonnen von Christian., 03 Juni 2013, 15:29:39

Vorheriges Thema - Nächstes Thema

Christian.

Ich habe für das offene Problem, die Pullup-Widerstände zu nutzen, einen eigenen Thread angelegt.
Raspberry Pi 3 mit FHEM; Arduino Nano mit ConfigurableFirmata (S0-Stromzähler); nanoCUL (MAX!); SIGNALduino (RXB6, 433 MHz); eBus; RS485 & D0 (SolarView); DVB-T (Thermo-/Hygrometer); Z-Wave; ZigBee

Christian.

#61
Das Problem mit den Pullup-Widerständen konnte Norbert lösen, ich benötige deshalb impcount nicht mehr.

nusselt hat aber Verwendung dafür; er benötigt zusätzlich eine Möglichkeit, Signale mit einer konfigurierbaren Dauer als ungültig zu markieren und herauszufiltern. Ich habe impcount entsprechend angepasst und veröffentliche nach einer Testphase hier die Version 2.0.

Change Log:

  • Ausgabe der Impulsdauer (eines einzelnen Impulses) zusätzlich zur Impulsdistanz (zwischen zwei Impulsen)
  • Angabe von minimal und maximal erlaubter Dauer je Pin
  • Trennung von Impulserfassung und Ausgabe; das reduziert die Zeit, in der aufgrund von Ausgaben keine Impulse erfasst werden können
  • Performance- und Interrupt-Optimierungen
  • (optional) Ausgabe einer Statistik über die Dauer zwischen zwei Poll-Abfragen



Hinweis: impcount hat ein neues Zuhause.


Raspberry Pi 3 mit FHEM; Arduino Nano mit ConfigurableFirmata (S0-Stromzähler); nanoCUL (MAX!); SIGNALduino (RXB6, 433 MHz); eBus; RS485 & D0 (SolarView); DVB-T (Thermo-/Hygrometer); Z-Wave; ZigBee

koldomon

Hallo fhem-user,

Darf ich mal nachfragen, nachdem der Thread schon ein paar Monate gealtert ist, wie du mit der Lösung zurechtkommst? Zuverlässigkeit und Belastung des fhem-Systems würde mich da interessieren.

Ich steh auch grad vor der Herausforderung, einen Heizöl-Druchflusszähler an die fhem zu bringen - was mich letztendlich zu deinem Thread geführt hat. Was ich deinem Thread auch nicht entnehmen konnte, bereitest du die Daten noch auf? Ich denke da an Statistiken für kWh/[Tag|Woche|Monat].

Wäre supi, wenn du ein wenig berichten könntest. Danke ;-)
OdroidC1 -> fhem
CUNO -> FS20
CUL -> HomeMatic
TCM310 -> enOcean
DUOFERN -> rademacher

JoeALLb

Mich würde auch eine Erfahrung hierzu interessieren, da ich ebenfalls vor der Umsetzung stehe.

@koldomon: Mit welcher Hardware willst Du den Öl-Durchfluss messen?
FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

koldomon

da gibt's Durchflusszähler von "Braun Messtechnik" (braunmesstechnik.de) die scheinen mir ok zu sein
OdroidC1 -> fhem
CUNO -> FS20
CUL -> HomeMatic
TCM310 -> enOcean
DUOFERN -> rademacher

JoeALLb

Danke, aber puh... >500 Euro? Da suche ich lieber weiter nach anderen Lösungen...
FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

Christian.

Hallo koldomon und JoeALLb,

bitte entschuldigt die späte Antwort, ich habe von Euren Fragen leider nichts mitbekommen.

Ich überwache inzwischen meinen kompletten Haushaltsstrom über 13 Stromzähler mit der Kombination FHEM / Firmata / Arduino und bin sehr zufrieden. Die Fritz!Box 7390 scheint keine Probleme zu haben, was die Performance angeht.

Ich habe ein Log pro Tag, in dem der Strom (W) aller Zähler aufgezeichnet wird; außerdem ein Monatslog, das je Tag einen Eintrag mit der verbrauchten Energie (Wh) für den gesamten Haushalt enthält. Diagramme habe ich pro Zähler und Tag, dort werden Strom (W) und Energie (kWh) angezeigt. Außerdem habe ich noch ein Diagramm für das Monatslog.

Was ist mir negativ aufgefallen? Hin und wieder hat die Fritz!Box auch mal anderes zu tun. Dann werden die eingehenden Signale verzögert und alle auf einmal ausgewertet, was in Diagrammen zu hohen Peaks im Stromverbrauch führt, die es eigentlich gar nicht gab. Das Problem wird auch in einem anderen Thread thematisiert. Ich kann damit leben.

Hin und wieder (ca. alle 2 Wochen) verliert FHEM mal die Verbindung zum Arduino; als Ursache vermute ich, dass ich den Arduino über ein 5m langes USB-Kabel angeschlossen habe. Dann werden keine Daten mehr aufgezeichnet, was natürlich ärgerlich ist. Ich habe aber ein notify erstellen können, über das die Verbindung in einem solchen Fall automatisch wiederhergestellt wird. Schlimmstenfalls fehlen dann die Signale von 15 Sekunden. Auch damit kann ich leben.

Alles in allem bin ich sehr zufrieden und kenne bis heute keine bessere und billigere Lösung, die Daten mehrerer Stromzähler zu erfassen.
Raspberry Pi 3 mit FHEM; Arduino Nano mit ConfigurableFirmata (S0-Stromzähler); nanoCUL (MAX!); SIGNALduino (RXB6, 433 MHz); eBus; RS485 & D0 (SolarView); DVB-T (Thermo-/Hygrometer); Z-Wave; ZigBee

Henno

Wäre toll wenn du erläutern könntest wie du es geschafft hast die S0 mit Firmata ans laufen zu bringen.

Welcher Sketch
Fhem.cfg

und was du wie wo angeschlossen hast.

Christian.

Hallo Henno,

Sketch: ConfigurableFirmata (zu finden in Post #38)
fhem.cfg: zu finden in Post #57, Erläuterung in Post #59
Anschluss: Der Stromzähler hat zwei Kontakte, S0+ und S0-. S0+ wird mit einem digitalen Pin des Arduino verbunden, S0- mit Masse. Der Arduino wird per USB mit der Fritz!Box verbunden.

Schöne Grüße
Christian
Raspberry Pi 3 mit FHEM; Arduino Nano mit ConfigurableFirmata (S0-Stromzähler); nanoCUL (MAX!); SIGNALduino (RXB6, 433 MHz); eBus; RS485 & D0 (SolarView); DVB-T (Thermo-/Hygrometer); Z-Wave; ZigBee

Henno

Danke für die Zusammenfassung.

So hatte ich das auch schon probiert nur zählt kein Pin richtig.
Bei einigen passiert nichts bei 2 und 3 ist es ganz merkwürdig.
Wenn ich diese mit Masse verbinde passiert nichts.
Wenn ich sie jedoch mit der Hand berühre zählt fhem wie verrückt hoch.

Da ich auf dem Arduino auch kein 1-Wire mehr ans laufen bringe habe ich mir zum testen mal einen neuen bestellt.



Christian.

Mir ist gerade aufgefallen, dass ich meine Konfiguration nach dem Post #57 wegen der Pullup-Problematik nochmal geändert habe. Ich habe deshalb den aktuellen Stand angehängt. Einige Funktionen habe ich zwischenzeitlich auch in die Datei 99_myUtils.pl ausgelagert. Ganz wichtig ist das Attribut internal-pullup des Moduls FRM_IN, das Norbert vor einigen Monaten eingebaut hat. Wenn das nicht auf on gesetzt wäre, würde schon bei bestehender Verbindung von Zähler und Ardunio dauerhaft gezählt.

Ich hoffe, das hilft Dir weiter.
Raspberry Pi 3 mit FHEM; Arduino Nano mit ConfigurableFirmata (S0-Stromzähler); nanoCUL (MAX!); SIGNALduino (RXB6, 433 MHz); eBus; RS485 & D0 (SolarView); DVB-T (Thermo-/Hygrometer); Z-Wave; ZigBee

andreas.maurer

Hallo fhem-user,

ich möchte mich für diesen Thread bedanken! Dank dessen konnte ich die Erfassung der S0 Zähler wunderbar ins fhem integrieren. Mir fehlen noch ein paar Zähler, die sind aber grade nicht lieferbar. Naja irgendwann.

Jetzt bin ich grade bei der grafischen Visualisierung. Kann ich dich überreden deine gplot Dateien zu posten. Für mich als Einsteiger ist das Format teilweise recht undurchschaubar.

Danke noch mal. Das hat mir sehr geholfen.

Andreas

Christian.

Hallo Andreas,

die gplot-Dateien hatte ich vergessen. Ich habe sie jetzt meiner vorigen Antwort hinzugefügt. Ich hoffe, sie helfen Dir weiter.

Schöne Grüße
Christian
Raspberry Pi 3 mit FHEM; Arduino Nano mit ConfigurableFirmata (S0-Stromzähler); nanoCUL (MAX!); SIGNALduino (RXB6, 433 MHz); eBus; RS485 & D0 (SolarView); DVB-T (Thermo-/Hygrometer); Z-Wave; ZigBee

andreas.maurer


fhainz

Hallo Christian,

was ich noch nicht ganz verstehe ist warum bei dieser Berechnung Watt herauskommt :D

3600 / (time() - OldValue(\"$counter_id\")))

Funktioniert so sichern nur mit 1000 Impulsen pro kWh oder?

Könntest du das näher erklären?


Grüße