Dienstag, 27. Dezember 2016

Teil 1: Eine Fußbodenheizung von 1980 internetfähig machen - FHEM für Anfänger

Keywords:   Fußbodenheizung, Steuerung, Internet, Computer, FHEM, Raspberry.

Summary: Es wird beschrieben, wie eine Fußbodenheizung von 1980 mit preiswerten Komponenten Schritt für Schritt auf elektronische Steuerung umgebaut wird mit dem Endziel,  auch über das Internet zugreifen zu können. Der Fernzugriff erfolgt über eine FritzBox.

Vorwort 

Als unser Haus gebaut wurde, war  der C64 Stand der Computertechnik. Kommuniziert wurde mit analogen Telefonen, und es gab noch Fernschreiber. Die waren laut und teuer, aber systembedingt war ein Fernschreiben ein rechtsgültiges Einschreiben.

Zu dieser  Zeit, also um 1980, haben wir ein Haus gebaut mit Fußbodenheizung. Das ist eine ganz tolle Sache, wenn man morgens ins Bad kommt, hat man warme Füße.
Nachteilig ist die Trägheit, man kann nicht mal schnell die Heizung aufdrehen. Fährt man weg und dreht ganz ab, dauert es im Winter mindestens einen ganzen Tag, bis es einigermaßen warm wird. Bei vier Wochen Thailandurlaub wird es dann schwierig.

Stand der Technik war damals eine Raumregelung mit Handventilen. Da die gußeisernen Verteiler nach 30 Jahren die ersten Rostlöcher zeigten, wurden diese gegen solche aus Edelstahl ausgewechselt und  damit auch gleich elektrische Steuerventile montiert. Mittel eines einfachen Thermostaten in jedem Raum konnte nun die gewünschte Temperatur individuell eingestellt werden. Das Internet war noch unbekannt, Funkkomponenten für Regelung nicht lieferbar.

Jeder Thermostat war neben dem Ventil auch mit einem kleinen Relais verbunden, diese waren in ODER Schaltung mit der Umwälzpumpe verbunden.  War mindestens ein Ventil aktiv, wurde auch die Umwälzpumpe angesteuert.  Wenn die Pumpe nicht läuft, liefert die Heizung auch keine Wärme nach.   Die ODER Schaltung mit Relais deshalb, weil die Thermostate baubedingt an verschiedenen Stromkreisen in drei Etagen hängen.  Im Laufe von knapp 40 Jahren ergaben sich technische Änderungen, die man beim Bau wirklich nicht vorhersehen konnte!

Stückliste:

Rasberry Pi, aktuelles Modell, Gehäuse dazu und Netzteil.
CUL-Stick mit Antenne
ELV FS20 SM8 Empfänger mit 8 Kanälen (jeder Kanal für einen Raum )
Relais 12 V Spule 230 Volt Kontakt  mit Sockel und Freilaufdioden
Brüstungskanal nach Bedarf (Baumarkt)
LAN Kabel nach Bedarf
Fritz!DECT200 als Hauptschalter

Wenn das Haus drei Etagen hat und z.B. 15 Räume ( einschließlich Flure, WC ), braucht man zwei von den FS20 SM8.  Wenn es aber keine Leitung gibt vom Keller zu den Steuerventilen in jeder Etage, muß man halt drei Platinen kaufen, für jede Etage eine. An die freien Kanälen kann man ja irgendwas anderes hängen. 

Aufbau 

Mit dem Raspberry,  jetzt kommen wir endlich zum Thema, konnte für kleines Geld eine komplette neue Regelung aufgebaut werden, die auch Zugriff per Internet erlaubt. Da es sicher noch viele Hausbeitzer gibt, die auch gerne eine alte Heizung regelungstechnisch auf den neuesten Stand bringen wollen, habe ich hier meine Erfahrungen niedergeschrieben.  Es gibt natürlich auch andere Lösungswege, in meinem Fall sieht es so aus:

Die alten Thermostate bleiben (erstmal) dran. Mal eben 15 Funkthermostate  kaufen, kostet schließlich auch Geld. Man kann sie auch nach und nach ersetzen

Das System hat eine Rückfallebene: Fällt der Raspberry aus, durch Stromausfall oder was auch immer, geht alles wie früher mit den alten Thermosten. Die wiederum gehen nach Stromausfall auf  20.0°C, der Brenner sollte sowieso von selbst wieder anspringen. Heizung ist also garantiert, im Winter kann nichts einfrieren. Sollte allerdings der Brenner ausfallen ( das sehe ich an der fehlenden Stromaufnahme der FritzDect Steckdose von außen ), müsste allerdings jemand kommen zur Reparatur.

Wichtig:  Die nachfolgende Bastelanleitung ist nach bestem Wissen, aber ohne  jegliche Gewährleistung.  Grundkenntnissen der Elektronik sollten vorhanden sein, und man sollte löten können.  Außerdem sollte man und die einschlägigen Richtlinien der Starkstromtechnik kennen und beherrschen!  Es wird mit 230 Volt hantiert, wer da nicht 100% sicher ist, soll die Finger davon lassen!

Die Einkaufsquellen sind zum Teil Affilate-Links.  Das kostet Euch im Einkauf keinen Cent mehr, bringt mir aber ein paar Euro im Jahr.  Die spende ich die hierfür: Mitrapap e.V.

So, nun geht es endlich los.

Das ist ein Heizungsverteiler mit  thermoelektrischen Regelventilen.   Beschreibung

Wann man Strom draufgibt, dehnt sich innen irgendwas aus und sie öffnen. Stromlos zieht eine Feder das Ventil wieder zu.   Das nennt sich thermischer Stellantrieb. 
Diese Stellantriebe sind  mit den jeweiligen Raumthermostaten verbunden, wenn der Regelpunkt erreicht ist,  gibt der Thermostat 230 Volt drauf und öffnet damit das Ventil. Wer in seinem Haus noch mechanische Handventile hat, muß diese natürlich jetzt austauschen. Es soll auch Stellantriebe mit 24V geben,  interessant für alle Anwender, die nicht mit Netzspannung herumbasteln wollen.

Bei der Fußboden mit so enormer Trägheit macht eine PID Regelung keinen Sinn. 

 Die neue Steuerung ist "draufgesetzt":  ich unterbreche die 230 Volt Leitung  zu den Ventilen mit einem geeigneten Relais. ( z.B. Finder )  Man will es ja selten wärmer haben als am Thermostat eingestellt, sondern meistens absenken, weil z.B. ein Raum nicht benutzt wird.

Für die Fernsteuerung wird ein ELV FS20 SM8 Platinchen benutzt, das man über FHEM  per Funk ansprechen kann. Die Stromversorgung ist 12 Volt dafür, da reicht ein Steckernetzteil.

Von dem Platinchen gehen 12 Volt Signalleitungen an die Relaisbox.  Für die Finder-Relais gibt es schöne Sockel zum Einklinken in Brüstungskanäle, und Freilaufdioden mit zusätzlichen LED zur Statusanzeige.


Durch den Einbau ist einen Brüstungskanal und die Sockel ist eine saubere Trennung von Hoch- und Niederspannung gewährleistet. Wer mag, kann sich die Relais natürlich auch auf die Lochplatine bauen, ich rate davon ab. Je weiter die Netzspannung von der übrigen Elektronik weg  ist, um so besser.

                                                        



Raspberry und FHEM installieren:

Da gibt es zum Beispiel diese schöne Anleitung, da muß ich nicht nochmal alles aufschreiben.  Den Raspberry habe ich per LAN am Netz, weil sowieso im ganzen Haus LAN liegt. Was nicht funkt, kann nicht gestört werden.  Funken muß natürlich der Raspberry,  die Antenne wird mit dem CUL-Stick mitgeliefert.  Der Raspi sollte also im Haus so montiert werden, daß  sich zu allen Empfängern eine gute Verbindung ergibt.

FHEM erste Schritte             FHEM an FritzBox      FHEM in 1 Stunde einrichten

Für LINUX-Neulinge:  die Befehlszeilen kopiert man unter Windows wie üblich, fügt sie aber in der Kommandozeile unter LINUX mit der rechten Maustaste ein!  Wer noch DOS kennt, tut sich etwas leichter....      

FHEM und FS20 SM8 verbinden:

Das Einrichten von Komponenten ist an verschiedenen Stellen beschrieben, zum Teil fehlen aber Dinge, die die jeweiligen Autoren wohl einfach als bekannt voraussetzen. Ich schreibe das deswegen Schritt-für Schritt auf, so daß auch Neulinge einen leichteren Einstieg finden.

Vorausgesetzt, FHEM läuft nach erfolgter Installation, dann seht Ihr das hier: 
in das Feld oben kommt jetzt die Definition:

define <device> <Typ> < Codierung>

Ich habe für <device> den Namen "KontrollBoxKeller" gewählt, wenn nämlich FHEM wächst und wächst,  weil man immer neue tolle Sachen machen kann, wird es leicht unübersichtlich. Also von Anfang an Klare Beschreibungen wählen, die man auch nach Jahren identifizieren kann.

Typ ist "FS20" und CODE ist  "1111" gefolgt von einer Zahl für den Kanal.

In meinem Beispiel soll das so aussehen: define kontrollboxKeller11 FS 20 1111 11

Der Devicename ist natürlich schlecht gewählt, denn Linux ist case-sensitiv.  Deswegen auf  korrekte Groß-und Kleinschreibung achten, sonsten sucht Ihr Euch dämlich, warum ein  <device> nicht geht!  So, wie ein <device>  einmal definiert ist, muß man es später immer wieder schreiben! Mit rename <oldname> to <newname> kann man ein device später allerdings immer noch umbennen.

Jetzt mit RETURN bestätigen und es erscheint dieser Bildschirm:

Wen man links auf "Selecct style" klickt, kann man die Farbe auswählen. Ich finde hell auf dunklem Hintergrund besser und habe "dark" ausgewählt:




Die 11 steht für den Schaltkanal Nr. 1 (weil ich mit einer anderen Platine von 1-10 mal angefangen habe )  die 1111 für den Hauscode, was das ist, steht hier.

Dann kommt DEF, das ist Hauscode und Kanal zusammengefaßt. In der nächsten zeile  der IO Dev, das ist der CUL-Stick, über den alles läuft.  Dann kommt der Name, unter welchem  das device ab jetzt zu erreichen ist.

Ganz oben im Device overview stehen drei Fragezeichen und on off. Damit senden wir jetzt die  Codierung zum FS20M8: 

1) Strom auf die Platine geben
2) Den ersten Taster auf der Platine drücken, bis die LED blinkt, loslassen.
3) Jetzt mit der Maus auf on und anklicken, die LED reagiert, das Fragezeichen verschwindet und wird durch das FHEM-Lampensymbol für an und aus ersetzt.
Fertig! der erste Kanal ist betriebsbereit.  Genau so werden nun die Kanäle 12-18 programmiert.  ( wenn Ihr die so genannt habt, könnt Ihr natürlich auch ganz anders bennen.

Wenn Ihr alles richtig gemacht habt, sollten jetzt die Relais bei jedem Schaltvorgang klicken. Nun gehts ans anhübschen der Darstellung:

Den room aufrufen und etwas eingeben, z.B. Heizungskeller, mit dem Button attr. speichern
den alias eingeben, das ist in Klartext, was an diesem Kanal dranhängt, da sind Zwischnräume erlaubt und Groß-und Kleinschreibung ist egal.
devStaeIcon: das Icon für die Statusanzeige. Die ganzen icons sind  zu erreichen über die Fußzeile, auf Extend devStateIcon klicken, dann kommt eine Auswahl.
Die Farbe für ein Icon wird definiert durch ein angehängtes @yellow oder  red oder green.
eventMap: normalerweise steht nur on und off da, das kann man "ummappen" auf irgendwas anderes, also hier Absenkungund Normalbetrieb.
Wichtig: wenn man "umgemapped" hat, muß man den neuen Begriff für alle Programmierungen verwenden. Deswegen steht in der devStateIcon Zeile auch nicht on oder off, sondern eben der neue Begriff.
Jetzt fehlt noch group, um z.B. alle Heizungsrelais zusammen zu fassen.

Geschafft!

So könnte das aussehen:

 Der Hauptschalter Heizung läuft aus Sicherheitsgründen über eine Fritz!DECT200 Steckdose, weil es da eine echte Rückmeldung gibt.
Das FS20M8 ist ja nur ein Empfänger ohne Rückkanal.  Das betrifft aber alle diese FHEM Komponenten: man muß darauf vertrauen, daß sie den Funkbefehl bekommen und verarbeiten.  Bei wirklich systemkritischen Anwendungen müsste man entweder über ein FS20-R8 eine echte Rückmeldung senden lassen, oder eben Steckdosen mit Rückkanal verwenden.
Die Fritz Steckdose unter FHEM hat noch einen Vorteil: Man sieht im Plot, ob Strom fließt bzw. ab wann nicht mehr, dann ist nämlich irgendwas kaputt.

Für zusätzliche Sicherheit sorgt eine preiswerte IP-Cam, die auf das Bedienfeld blickt.  Die Heizung ist so alt, daß sie keine Schnittstelle hat, über die man irgendetwas abgreifen könnte.  Die Kamera mit zusätzlicher Lampe wird nur bei Bedarf eingeschaltet. Sie hat auch das Manometer für  den Systemdruck im Blick.  Den könnte man zwar auch elektronisch abgreifen, aber Manometer mit Schnittstelle sind recht teuer in diesem Bereich. Thermometer für Vor-und Rücklauf dagegen sind preiswert, die werde ich wohl bei Gelegenheit mal installieren.

Wenn jemand etwas in der Beschreibung unlogisch findet, bitte Rückmeldung! Ich habe mich auch durch ganz viele unklare Beschreibungen gewühlt und will es besser machen.

Im nächsten Post: Baumarktsteckdosen  für FHM anlernen: IT ( Intertechno ) und Brennenstuhl ( ELRO mit DIP-Schaltern ) ganz einfach, wenn man es einmal gemacht hat!