Nach monatelanger Bastelarbeit ist jetzt der erste Teil des Smartmeter-Datenabgriffs in Produktion gegangen. Aber von vorne…
Ich habe im Keller bereits Smartmeter für Gas/Wasser/Strom, was aber eigentlich nur bedeutet, dass mein Netzbetreiber (TB Wil) an diese Daten rankommt, ich aber nicht. Die Daten gehen von Gas/Wasser via diverse Encoder-Geräte und M-Bus in den Stromzähler, von dort inklusive der Stromzählerdaten an den Netzbetreiber. Wie häufig? Keine Ahnung. Es kam ein offizielles Schreiben, dass die Lösung der TB Wil zum Bezug der eigenen (!) Daten nicht mehr bereitgestellt würde, weil der externe Dienstleister das Adobe-Flash-basierte Tool abstellt. Haha. Einmal mit Profis arbeiten*. Vielleicht gibt’s im Sommer was Neues.
(*im Bereich Strom, Wasser, Gas und insbesondere Glasfaser sind die TB Wil natürlich Profis, nur Daten sind halt nicht ihr Kerngeschäft 🙂 )
Bis dahin muss aber eine andere Lösung her. Die bisherige besteht darin, jeden Morgen in den Keller zu steigen (vorher Schnee schaufeln) und die drei Zählerwerte abzulesen. Damit hab ich auch erst Ende Dezember angefangen. Das hat etliche Nachteile, ist aber schon besser als nur einmal im Quartal die Werte auf der Rechnung zu bekommen. Dann kann man nämlich schon solche Sachen wie das hier machen:
In den letzten Tagen hatte ich die Heizung schon komplett abgestellt. Das gibt zwar morgens dann frische 15°C überall im Haus, aber bis ich von der Velorunde wieder daheim bin, hat die Sonne (Südseite) die relevanten Zimmer aufgewärmt. Man kann dann natürlich auch nicht nur die Mengen ausrechnen, sondern auch die Kosten, was eigentlich noch interessanter ist:
Die Kosten teilen sich in Grundkosten (pro Monat, eine Art Zählergebühr) und variable/verbrauchsabhängige Kosten auf. Bei Strom gibt’s Hochtarif und Niedertarif plus eine nicht unwichtige Netzkomponente. Was man sieht: das Abstellen der Heizung spart so etwa 2 Fr. Gas am Tag. Wasser ist preislich eher vernachlässigbar, Strom relativ konstant bei 6-7kWh am Tag.
Wer gern in Monaten denkt, auch das noch:
Februar ist noch nicht fertig. Die Heizungsisolation hab ich Anfang Januar gemacht, daher hab ich kaum Vergleichswerte zu vorher. Üblicherweise hat aber der November bei Heizkostenabrechnungen etwa denselben Kostenanteil wie der Februar, wenn man Mietverträge anschaut. Dann ist aber noch zu berücksichtigen, dass ich erst am 09.11. einzogen bin, d.h. der November hat etwa 85 Fr. Gas in 20 Tagen gekostet, der Februar 55 Fr. in 24 Tagen, d.h die Heizkosten sind von 4.25 Fr./Tag auf 2.29 Fr./Tag gesunken — viele andere Faktoren wie z.B. Aussentemperaturen spielen da hinein, aber die Richtung stimmt.
Aber jetzt bin ich ja tendenziell faul und möchte die Zählerablesung automatisieren. An die echten Daten komme ich noch nicht ran, also gibt’s für die Gas-/Wasserzähler Kamera mit Bilderkennung (bestellt, noch nicht da) und für den Stromzähler kann ich die vorhandene blinkende LED nehmen, die 1 Impuls pro Wh ausgibt. Die muss man nur auslesen.
Mit dem passenden Fototransistor, bei mir jetzt ein LPT80A, geht das gut (mit dem BPW17N auf dem Bild geht’s nicht, LPT80A hab ich noch vier Stück da). Bei Interesse hier eine lange Liste von Transistoren, die Wellenlänge muss natürlich passen zu einer roten LED, und auch die Blinkdauer ist ziemlich kurz. Das Ganze wird professionell (TM) verdrahtet und verklebt und sieht dann so aus:
Die Daten laufen wie üblich in einen der Raspberrys hinein — ich muss ja praktischerweise nur einen Timestamp loggen, nichts weiter. Was mir aber anfangs nicht gefallen hat, waren die sehr diskret aussehenden Leistungswerte (letzte Spalte) — was aber logisch ist, wenn man nur sekundengenau loggt und nicht millisekundengenau. Da gibt’s dann oben nur Stufen von 1200, 1800 oder 3600W bei der errechneten Leistung. Tadaa, wenn man ein .%f mit reinschreibt in den format-String, gibt’s Millisekunden und das sieht doch viel (un)runder aus in der letzten Spalte rechts unten.
Das kann man jetzt wiederum in Dateien schreiben und auswerten, zum Beispiel erstmal alles in einer Grafik verwursten:
Am Anfang sieht man noch wunderschön die diskreten Leistungswerte. Gegen 14 Uhr hab ich den Raspi von UTC auf Localtime umgestellt, da fehlt eine Stunde 🙂 Die regelmässigen Peaks sind die kurzen Nachheizzeiten des Quookers.
Scripts sind diesmal auch im Github: https://github.com/datacyclist/measurements (private repo)
Und natürlich wurde der Keller noch mit LAN verkabelt. Kabel und Dosen waren eh da, Platz fürs Kabel vom Wohnzimmer in den Keller auch, nachdem das jetzt überflüssige Koaxkabel raus war. Einfach nicht die Glasfaser dabei kaputtmachen 🙂