Volkszaehler
Volkszaehler.org Modul für fhem
Was ist ein Volkszaehler?
volkszaehler.org ist ein freies Smart Meter im Selbstbau. siehe volkszaehler.org Der Nutzer behält dabei die vollständige Kontrolle über die anfallenden Strom, Wasser & Gaskosten.
Features
- 100% Open-Source
- kostenlos
- offene Protokolle
- erweiterbar
- minmale Anforderungen (LAMP-Stack)
- flexibele Verwaltungsmöglichkeiten
- Verbrauchs & Kostenprognose
- verschiedenste Messgrößen
- Strom
- Wasser
- Gas
- Betriebsstunden
- Temperatur
- Läuft u. a. auf Raspberry Pi Volkszaehler-Installation auf einem Raspberry Pi
Volkszaehler in fhem einbinden
Das fhem-Modul für Volkszaehler.org bindet diese Daten in fhem ein. Das Modul 23_volkszaehler.pm greift per http auf den Volkszaehler zu und interpretiert die JSON - Antwort in fhem-device-Readings. Daraus können logs und plots gebildet werden oder devices mit Kennzahlen aus den Volkszaehler-Daten.
Es ist für Solarstrom-Anlagenbesitzer auch denkbar, bei hoher verfügbarer Sonnenenergie mit fhem Verbraucher einzuschalten, um die Eigenverbrauchsrate zu erhöhen, was die Energiekosten reduziert.
Installation
Das File 23_VOLKSZAEHLER.pm kommt ins Verzeichnis \\fritz.box\FRITZ.NAS\fhem\fhem\ Das File JSON.pm muss in \\fritz.box\FRITZ.NAS\fhem\lib\perl5\site_perl\5.12.2\mips-linux\ Die Files Converter.pm und Parser.pm (z. B. von hier http://cpansearch.perl.org/src/MAKAMAKA/JSON-1.15/lib/JSON/) habe ich in \\fritz.box\FRITZ.NAS\fhem\lib\perl5\site_perl\5.12.2\mips-linux\ ins neue Verzeichnis JSON kopiert.
Auf anderen Plattformen sind die Pfade sicher ähnlich.
Das Reading, welches als state genommen werden soll, kann im define gewählt werden, also:
define <name> VOLKSZAEHLER <ip-address> <port-nr> <channel> <state:last/min/max/average/consumption> <poll-delay>
Beispiele:
Kanal im Volkszaehler, der den Momentanverbrauch per I/R-Lesekopf ermittelt, alle 60 Sekunden davon der Mittelwert
define Verbrauch_aktuell VOLKSZAEHLER 192.168.178.45 80 635481a0-6fcd-11e2-8587-eda25228f8bf average 60 attr Verbrauch_aktuell delay 60 attr Verbrauch_aktuell group Strom attr Verbrauch_aktuell room Volkszaehler
In fhem loggen, um einen Graphen daraus zu zeigen
define FileLog_Verbrauch_aktuell FileLog ./log/Verbrauch_aktuell-%Y-%m.log Verbrauch_aktuell attr FileLog_Verbrauch_aktuell group Volkszaehler attr FileLog_Verbrauch_aktuell logtype text attr FileLog_Verbrauch_aktuell room Z_Log
der Graph dazu
define FilePlot_Verbrauch_aktuell weblink fileplot FileLog_Verbrauch_aktuell:Volkszaehler:CURRENT attr FilePlot_Verbrauch_aktuell label "Stromverbrauch: $data{currval1}" attr FilePlot_Verbrauch_aktuell room Volkszaehler
Kanal im Volkszaehler, der den Zählerstand per I/R-Lesekopf ermittelt, jede Stunde davon der letzte Wert
define Zaehlerstand VOLKSZAEHLER 192.168.178.45 80 ebb9c9b0-7058-11e2-b5ed-d12ec87a3a7f last 1800 attr Zaehlerstand delay 1800 attr Zaehlerstand group Strom attr Zaehlerstand room Volkszaehler
Kanal im Volkszaehler, der den Zählerstand per I/R-Lesekopf ermittelt, alle 24 Stunden davon der Verbrauch
define Verbrauch_24h VOLKSZAEHLER 192.168.178.45 80 635481a0-6fcd-11e2-8587-eda25228f8bf consumption 86400 attr Verbrauch_24h group Strom attr Verbrauch_24h room Volkszaehler
Beispiel
Als Ergebnis erhält man (z. B.) folgendes: