Aus Holzheizer Wiki
Version vom 25. Januar 2019, 19:23 Uhr von Tom BMK (Diskussion | Beiträge)

(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

Der Weg zu einer Smarteren Heizung

In diesem Beitrag möchte ich meine Beweggründe und die Umsetzung einer Alternative zu den frei verfügbaren App´s der Heizungshersteller vorstellen.

Voraussetzung für die Umsetzung des Projektes sind ein wenig Experimentierbereitschaft, Kenntnisse im Betriebssystem Linux und ein paar Fähigkeiten mit einem Lötkolben umzugehen.


Das Warum

Wieso sollte man sich dieses Arbeit eigentlich antun, da es doch von den einzelnen Herstellern der Öfen immer neuere und umfangreichere Apps für das Smartphone gibt?

Die Antwort ist nicht ganz so einfach. Bei mir war der ausschlaggebende Grund, dass die Hersteller App plötzlich nicht mehr ging und ein nur durch ein Firmwareupdate des Kessels wieder belebt werden konnte. Da ich aber einen heiden Respekt davor hatte, und nicht unbedingt einen kostenpflichtigen Update durch meinen Heizungsbauer machen lassen wollte.

Die Überlegung

Wie könnte ich in Zukunft von solchen systemübergreifenden Maßnahmen verschont bleiben und trotzdem zumindest eine allgemeine Übersicht über meine Heizungsanlage behalten? Es muss eine stabile und zugleich kostengünstige Lösung her.

Die Lösung

Ein Projekt das eigentlich für ganz etwas anderes gedacht war, wurde kurzerhand in eine "Monitoring" Lösung umgebaut.

Die Voraussetzungen

Linuxkenntnisse waren bereits vorhanden, die Hardware auch.

Jetzt mussten nur noch alles zusammen in einen Topf geworfen werden und daraus sollte eine passende Lösung entstehen.

Hardware

Ein RaspberryPI, den es mittlerweile in der 3. Generation zu kaufen gibt. Das passende Betriebssystem "Raspian" um die Hardware auch richtig nutzen zu können. Einen Funktranceiver und Receiver der kompatibel ist mit der Hard- und Software.

Bei dem Funkmodule habe ich mich für einen "Arduino" entschieden, da dieser auch über verschiedene andere Möglichkeiten der Platinenanbindung verfügt.

Auf dem Arduino wurde ein Funkmodul für 433MHz von "RF-Link" verbaut. Dieser empfängt und sendet auf der beschriebenen Frequenz 433MHz.


Aufbau der Hardware


Als Basis des gesamten Projektes dient ein Raspberry Pi 3. Diesen gibt es in den verschiedensten Internetshops schon für ca. 40 €.

Zusätzlich zum RasPi habe ich mir ein Arduino mit 433MHz Funkmodule von RF-Link gegönnt. Durch diese Kombination eröffnen sich ungeahnte Möglichkeiten.

Da der RasPi sowohl eine NEtzwerkkarte sowie auch über eine WLAN Schnittstelle verfügt, kann er seinen endgültigen Platz irgendwo in der Wohnung / Haus finden.

Die Grundkonfiguration des RasPi mit seinen "modifizierten" Betriebssystem "RasPian", welches ein modifiziertes und auf die Hardwaregegebenheiten des RasPi angepasstes Derivat des bekannten Linux Debian ist.

Ich habe bei der Erstinstallation einen USB Speicherstick verwendet anstelle einer SD Card. Mehr Platz und nicht "so schnell" kaputt.

Auf die Grundkonfiguration und Erstinstallation möchte ich hier gar nicht näher eingehen, da sie scho unzählige Male im Internet hervorragend beschrieben wurde.

Als nächstes habe ich meinen RasPi mit einer aktuellen Version der Smarthome Automatisierungssoftware Namens PIMATIC beglückt.

Das Jason basierende Programm ist sehr einfach zu bedienen und kann mit verschiedensten Plugins erweitert werden.

Als Frontend dient immer eine Weboberfläche, die über die IP-Adresse des RasPi zu erreichen ist.


Konfiguration der Software

Die Herausforderung bei dem gesamten Projekt war, dass es noch kein Plugin für das Monitoring einer Heizungsanlage für das Pimatic gegeben hat und bis dato auch noch nicht gibt.

Also machte ich mich erstens auf die Suche nach einer Datenquelle aus der man viele und noch mehr Werte der Heizung auslesen kann.

DAQDATA.cgi war schließlich das Zauberwort. Die Datei enthielt nahezu alle Werte die ich im Frontend sehen wollte.

Daten auf einem Webserver, der auf dem Heizungskessel läuft Darf man urheberrechtlich nicht verändern!!!

Um diesem Debakel aus dem Weg zu gehen, musste eine saubere Lösung her und die Gefahr einer ungewollten Veränderung der Parameter usw. eliminiert werden.

Kopieren der daqdata.cgi auf den PI

curl -o /home/pi/bmk/daqdata.cgi <http://IP-adresse des kessels/daqdata.cgi

Suche nach den Definitionen und deren Werte

Die daqdata ist in Zeilen unterteilt. Es handelt sich um werte die in der Datei daqdesc.cgi definiert werden. Wenn man die daqdesc lesen kann, weiß man auch welche Werte in welche Zeile stehen...

mit diesem Wissen ist es ein Leichtes die richtigen Werde zu finden und weiter zu verwenden:

Wir haben die daqdata ja schon lokal kopiert und können somit auch darauf zugreifen.

Linuxbefehl: sed -n '70p' /lokaler Pfad/daqdata.cgi = Heizungsprogram

sed liest einen Wert aus einem bestimmten Bereich einer Datei aus. Hier die Zeile 70.

Anhand dieser Informationen kann man dann die gewünschten Werte in seine Pimatic übernehmen.

Hierzu wird im Pimatic ein neues Device erstellt und als Command dann die oben genannte Syntax übernommen.

configure device