Heizung: Verbrauchsoptimierung, Radiator/Fußboden-Steuerung

Aus FHEMWiki

Diese Seite beschreibt die Optimierungen und fhem-Installation bezüglich der Heizungssteuerung in unserem Haus von 1904, welches wir im Sommer 2014 gekauft haben und beschreibt die notwendigen Schritte und Ergebnisse zur Kostenreduzierung.

Ausgangssituation

Bild 1: Viessmann Mono-Vitola b-f mit Weishaupt Gasbrenner

Mit Übergabe des Hauses war als Ausgangssituation vorhanden:

  • 16 Räume im Erdgeschoß und ausgebauten Dachboden, davon
  1. 7 Räume nur mit Radiatoren
  2. 5 Räume nur mit Fußbodenheizung
  3. 2 Räume unbeheizt
  4. 2 Räume kombiniert beheizt mit Radiatoren und Fußbodenheizung
  • Viessmann Mono-Vitola b-f mit 43kW Weishaupt-Gasbrenner und Holzkammer (seit 10 Jahren nicht mehr benutzt), siehe Bild 1
  • Viessmann Tetramatik Heizungssteuerung mit digitaler Schaltuhr SU und außentemperaturabhängiger Steuerung WS
  • Warmwassererzeugung über 200l Boiler, rein elektrisch
  • 1100m Fußbodenverrohrung im Estrich/Beton in Kupferohr
  • Grundfoss Umwälzpumpe mit 170W Verbrauchsleistung für die Fußbodenheizung
  • 17 Radiatoren mit vier verschiedenen Thermostatköpfen und Heizungsventilen
  • Gasverbrauch von 73.000kWh im Jahr und 380 EUR Abschlagzahlung im Monat
  • Ein Viessmann 4-fach Mischer, der den max. 40 Grad Vorlauf für die Fußbodenheizung erzeugte
  • Eine UPONOR Funksteuerung für die Fußbodenheizung im Obergeschoß mit unbeschrifteten Funkthermostaten

Probleme nach dem Einzug

Bild 2: Fussbodenmischer und -pumpen

Bereits im Winter 2014/2015 gab es erhebliche Probleme mit der Heizung. Einzelne Räume wurden maximal 18 Grad warm, andere überhitzten schnell. Unterschritt die Außentemperatur die Frostgrenze, fing die Fußbodenheizung an zu "stottern": der Mischer stand morgens in einer Stellung, die das aufgeheizte Kesselwasser direkt und schnell in die Fußbodenheizung einspeiste. Als Folge deaktivierte ein Thermostat (auf 60 Grad eingestellt) die Fußbodenpumpe und das Wasser mußte langsam abkühlen (60-90 Minuten), bis die Pumpe wieder ansprang und wieder sofort abgeschaltet wurde - denn die Tetramatik hat die Mischerstellung nicht verändert.

Kurzfristig wurde das Problem durch eine neue Einstellung der Heizkurven entschärft. Die Radiatoren benötigten jedoch einen bis zu 75°C warmen Vorlauf, um die Zimmer im Obergeschoß auf 18 Grad aufzuwärmen. Die Fußbodenheizungskurven wurden jeden Morgen leicht korrigiert, um die maximale Wärme (ca. 40 Grad im FB-Vorlauf) zu erreichen.

Die Diagnose des "Stotterns" wurde zusammen mit einer Heizungsfirma als Theorie entwickelt, konnte jedoch nicht eindeutig belegt werden.

Zum besseren Verständnis wurde zunächst die Verrohrung und die verwendeten Komponenten dokumentiert. Der Temperaturbegrenzer im Fußbodenkreis erwies sich als defekt und schaltete bei einer Konfiguration von 60°C bereits bei 40°C die Fußbodenpumpe ab.

Morgennebel-HOWTO-Heizungsoptimierung-Anlagendiagramm.png

Laut Schornsteinfeger und Heizungsfirma war die Heizungsanlage selbst einwandfrei, jedoch war die Tetramatik-Steuerung mechanisch am Ende des Lebens. Die Abdeckungen fielen ab, das Hartplastik war versprödet, die Drehwiderstände für die Heizungskurven-Einstellung verstaubt.

Lösungsansatz

Zur Verifizierung der Probleme und zum Aufbau eines Smart-Homes wurde fhem in der Kombination mit Homematic und 1-Wire ausgewählt, da die ZWave-Experimente nicht sehr erfolgreich waren. Die vorhandene Tetramatik-Heizungssteuerung sollte auf ein Minimum beschränkt werden und die notwendige Intelligenz und Steuerung soweit wie möglich nach fhem verlagert werden.

fhem und 1-Wire-Sensorik

Zur Erhöhung des Verständnisses der Arbeitsweise der Heizung wurde als erster Schritt die verschiedenen Rück- und Vorläufe überwachst. Hierzu kam ein Rasberry Pi mit einem RPI3-Erweiterung von Sheepwalk Electronics in England zum Einsatz. Die RPI3-Erweiterung stellt 8 1-Wire-Bussysteme zur Verfügung. Zwei Busse werden direkt mit RJ45-Ports präsentiert, 6 weitere benötigen einen Bussplitter (RPI3a von Sheepwalk Eletronics) und stellen 1-Wire Busse als RJ45 oder Schraubverbindung zur Verfügung.

Ebenfalls von Sheepwalk Eletronics kamen die passenden Sensoren (SWE0, Typ DS18B20 mit 2m Anschlußkabel) zum Einsatz.

Diese wurden liebevoll provisorisch (siehe Bild 2) an die entsprechenden Rohre verbunden und in fhem konfiguriert. In fhem waren dann mit Hilfe des Neues_Charting_Frontend aussagefähige Diagramme und Bewertungen über das Verhalten der Heizung möglich:

Bild 3: Heizungstaktung mit Nachtabsenkung

In der Konfiguration wurden alle Sensoren in fhem konfiguriert und auf 20 oder 60 Sekunden Abfrage konfiguriert:

define EG.Heizung.Fussboden.Vorlauf OWDevice 28.A6E710050000 20
attr EG.Heizung.Fussboden.Vorlauf IODev RPi1Wire
attr EG.Heizung.Fussboden.Vorlauf model DS18B20
attr EG.Heizung.Fussboden.Vorlauf room EG.HWR,OWDevice

define EG.Heizung.Radiatoren.Vorlauf OWDevice 28.AD8A10050000 60
attr EG.Heizung.Radiatoren.Vorlauf IODev RPi1Wire
attr EG.Heizung.Radiatoren.Vorlauf model DS18B20
attr EG.Heizung.Radiatoren.Vorlauf room EG.HWR,OWDevice

Sehr deutlich ist in Bild 3 der korrekte Normalbetrieb der Heizung zu sehen: die Heizung taktet etwa alle 5 Minuten (in Abhängigkeit von der Außentemperatur und dem Verbrauch) mit einem An/Aus-Intervall. In der Zeit zwischen 22:00 und 5:00 ist eine Nachtabsenkung konfiguriert und die Kessel- und Vorlauftemperaturen kühlen ab. Nach der Nachtabsenkung sind die Taktlaufzeiten erheblich länger, bis die gewünschte Kessel- und Vorlauftemperatur wieder erreicht wird.

Vor der Nachtabsenkung arbeitet der Mischer (orange Linie) korrekt, die Fußboden-Vorlauftemperatur schwankt im Rhythmus der Taktung des Brenners um einen Mittelwert von 35°C. Nach der Nachtabschaltung gibt es in der Fußboden-Vorlauftemperatur erhebliche Schwankungen: die Temperatur steigt kurzzeitig bis auf 48°C, was zur Abschaltung der Fußboden-Pumpe führt. Nach Abkühlung des Vorlaufes wird die Pumpe wieder eingeschaltet, erzeugt wieder eine Spitze und wird wieder abgeschaltet - der Mischer wird nicht vorbeugend zurückgefahren und langsam geöffnet.

Bild 4: Funktionierende Mischung für Fußboden

Bild 4 zeigt im Detail die Temperaturen der Radiatoren und des Fußbodenmischers: die oberste rote Kurve zeigt Temperatur des Fußbodenkreises vor dem Mischer (deutlich die Taktung des Brenners zu erkennen). Die gelbe und lila Kurve zeigen die Fußboden-Verlauftemperaturen nach dem Mischer an zwei verschiedenen Positionen, die blauen unteren Linien sind die Rücklauftemperaturen vom Fußbodenmischer und zurück zum Kessel.

In diesem Beispiel arbeitet die Heizung korrekt ohne zu stottern.

Bild 5: Stotternde Fußbodenmischung

In Bild 5 arbeitet die Mischersteuerung fehlerhaft und zu heißes Wasser im Vorlauf führt zum abschalten der Fußbodenpumpe. Es dauert bis zu 90 Minuten, bis die Temperatur abgesunken ist, die Pumpe erneut startet, und wieder abgeschaltet wird. Die Viessmann Tetramatik arbeitet hier nicht korrekt und führt den Mischer nicht zurück.

Mit diesen Diagrammen war der vermutete Fehler eindeutig bewiesen und wurde temporär durch tägliche Justierungen der Heizkurven umgangen.

Das Graphing Frontend erwies sich als extrem langsam und ressourcenhungrig. Als erste Schritt wurde das Logging in die sqllite-Datenbank minimiert, als zweiter Schritt ein zusätzliches Frontend auf Basis eines ODROID U3 Boards verbaut. Dieses bietet 1.7GHz Quad-Core CPU und 2GB RAM für knapp 50 EUR und benötigt keinen Lüfter. Auch die 16GB eMMC-Speicherlösung verbesserte die Ansprechzeit deutlich. Der Raspberry Pi wurde auf die 8 1Wire-Bussysteme und -Sensoren beschränkt. Beide Boards wurden aus einem 4fach-USB-Ladegerät versorgt. Trotz der guten technischen Werte war das ODROID Board nicht in der Lage, MySQL als Datenbank zu verwenden - sqllite funktionierte jedoch leidlich.

fhem und Homematic

Heizungssteuerung (Radiatoren)

Als nächster Schritt wurden häufig benutzte Räume mit Radiatoren mit Homematic HM-CC-RT-DN Heizkörperthermostaten und Homematic HM-TC-IT-WM-W-EU Wandthermostaten versehen. Dies geschah schrittweise, etwa ein Raum je zwei Wochen. Die langsame Installation erlaubte es

  • Die Familie an den Gebrauch der Wandthermostaten zu gewöhnen
  • Die Lernzeit der Thermostaten und das Schwingverhalten auf einen Raum zu begrenzen
  • Die Kosten je Monat niedrig zu halten

Die Fenster wurden mit Fensterkontakten versehen und alle Geräte in fhem angelernt, untereinander gepeert und gepairt.

Alle Thermostaten erhielten Wochenprofile auf der Basis von Temperaturlisten namens 'tempList.cfg' im fhem-Verzeichnis. Die Wandthermostaten erlauben die Ermittlung der Raumfeuchte und sollen später für eine Lüftungsempfehlung genutzt werden.

Heizungssteuerung (Fußboden)

Bild 6: Möhlenhoff Alpha-5 Stellantriebe

Im Obergeschoß wurde die vorhandene UPONOR funkbasierende Lösung zur Steuerung der Fußbodenheizung zunächst entfernt. Die Uponor Ventile wurden durch Alpha 5 Stellantriebe von Möhlenhoff mit VA10-Adapter getauscht, die zu dem vorhandenen Fußbodenverteiler paßten. Die Alpha-5 Stellantriebe arbeiten mit 230V AC mit einer Leistungsaufnahme von 1W im Betrieb und sind nur als NC (normally-closed) Variante zu finden.

Bild 7: Homematic 230V-Aktoren für Stellantriebe

Um die Stellantriebe zu kamen zwei Homematic 4fach Hutschienen Aktor und ein passendes Gehäuse in Aufputzvariante zum Einsatz. In allen Räumen wurden wieder mit Homematic HM-TC-IT-WM-W-EU Wandthermostaten versehen und als einfache Lösung zunachst die Aktoren mit dem _SwitchTr-Kanal verbunden.

Das Rauchplastik-Gehäuse erlaubt eine wunderbare visuelle Kontrolle der Heizsituation im Obergeschoß.

Einsparungen

Im ersten Jahr nach Einbau der Funkthermostaten für Radiatoren in fünf Räumen und dem Wechsel der Steuerung der Fußbodenheizung im Obergeschoß wurde eine Verbrauchsreduzierung von 20% gemessen. In Zahlen bedeutete dies eine Rückzahlung vom Gasanbieter in Höhe von gut 1.100 EUR sowie die Reduzierung der monatlichen Abschläge um 55 EUR. Auf ein Jahr gesehen wurden damit die Betriebskosten um 1.760 EUR reduziert, wobei Investitionen in Höhe von etwa 750 EUR für die Homematic-Komponenten, Raspberry und 1-Wire-Sensoren, HMLAN-Sender und Gehäuse und Kabel aufzubringen waren - d.h. es Gewinn von 1.010 EUR ohne Einrechnung der vielen Arbeitsstunden.

Im zweiten Jahr wurden alle weiteren Radiatoren auf Homematic umgerüstet sowie die Fußbodenheizung im Erdgeschoß auf Homematic umgestellt. Durch diese Maßnahmen sind weitere Einsparungen abzusehen.

fhem Erweiterungen

STELLMOTOR Mischersteuerung

Um das eindeutige identifizierte Stottern der Fußbodenheizung zu beheben, wurde der Fußbodenmischer auf eine Ansteuerung von fhem umgestellt. Für die Ansteuerung waren Relais notwendig, da der Mischermotor mit 230V, maximal 4A Anschlußwerten spezifiziert war. Zur Ansteuerung wurde daher ein 1-Wire 8fach Relaisboard von eBay Verkäufer leotron_87 in ein Verteilergehäuse eingebaut und mit dem vorhandenen 1-Wire-Bus verbunden.

Das Relaisboard benötigt eine 12V-Spannungsversorgung und wurde von fhem problemlos erkannt:

define EG.Heizung.8Relais OWDevice 29.3D5516000000
attr EG.Heizung.8Relais IODev RPi1Wire
attr EG.Heizung.8Relais model DS2408
attr EG.Heizung.8Relais room EG.HWR,OWDevice

mittels Kommandos wie

set EG.Heizung.8Relais PIO.7 on
set EG.Heizung.8Relais PIO.6 0

konnten die einzelnen Relais angesteuert und geschaltet werden. Jedes Relais stellt NO (normally-open) und NC (normally-closed) Kontakte zur Verfügung und ist für verschiedene Spannungsbereiche (bei der Bestellung auszuwählen) freigegeben. Die gekaufte Variante unterstützte 7A bei 250V AC, so daß die maximale Anschlußleistung des Mischermotors kein Problem darstellte.

Da der eBay-Verkäufer aus Bulgarien liefert, wurde eine zusätzliche Relaisplatine in die Ersatzteilkiste eingelagert.

Der Mischermotor wurde nach Anleitung der Stellmotor Anleitung im Schaltbild wechsel verbunden. Hierbei half eine Google-Suche nach einer Installationsanleitung des verbauten Viessmann-Mischers, welches die genauen Anschlußpläne beinhaltete. Bei Anschluß des Mischermotors ist ein 4- oder 5-poliges Installationskabel notwendig.

Bild 8: Relaiskarte für Mischersteuerung und Stellantriebe

Nach der abschliessenden Konfiguration des STELLMOTOR-Modules (Laufzeit, Relaisnamen):

define EG.HWR.Fussbodenmischer STELLMOTOR FhemDev
attr EG.HWR.Fussbodenmischer STMcalibrateDirection L
attr EG.HWR.Fussbodenmischer STMdebugToLog3 0
attr EG.HWR.Fussbodenmischer STMfhemDevRL EG.Heizung.8Relais PIO.6
attr EG.HWR.Fussbodenmischer STMfhemDevSTART EG.Heizung.8Relais PIO.7
attr EG.HWR.Fussbodenmischer STMinvertOut 0
attr EG.HWR.Fussbodenmischer STMlastDiffMax 1
attr EG.HWR.Fussbodenmischer STMmapOffCmd 0
attr EG.HWR.Fussbodenmischer STMmapOnCmd 0
attr EG.HWR.Fussbodenmischer STMmaxDriveSeconds 118
attr EG.HWR.Fussbodenmischer STMmaxTics 100
attr EG.HWR.Fussbodenmischer STMpollInterval 0.1
attr EG.HWR.Fussbodenmischer STMresetOtherDeviceAtCalibrate 0
attr EG.HWR.Fussbodenmischer STMrlType wechsel
attr EG.HWR.Fussbodenmischer STMtimeTolerance 0.01
attr EG.HWR.Fussbodenmischer room EG.HWR

erfolgte der erste erfolgreiche Test durch

set EG.HWR.Fussbodenmischer <Wert>
set EG.HWR.Fussbodenmischer cablibrate

Das Ziel war eine Führung der Fußbodenvorlauftemperatur nahe an der maximal möglichen Temperatur (da sonst die oberen Räume zu kalt blieben). Für diese Steuerung waren zwei Schritte notwendig:

  1. Ermittlung eines gleitenden Mittelwertes über die Fußbodenvorlauftemperatur (um kurzfristige Spitzen zu glätten)
  2. Aufbau einer DOIF-Anweisung zur relativen Steuerung des Mischers

Der gleitende Mittelwert wurde nach Anleitung in der 99_MyUtils.pm integriert und als Reading des bereits vorhandenen 1-Wire-Sensors integriert:

define EG.Heizung.Mischer.Vorlauf OWDevice 28.3CD910050000 20
attr EG.Heizung.Mischer.Vorlauf IODev RPi1Wire
attr EG.Heizung.Mischer.Vorlauf model DS18B20
attr EG.Heizung.Mischer.Vorlauf room EG.HWR,OWDevice
attr EG.Heizung.Mischer.Vorlauf userReadings temperature.avg {movingAverage("EG.Heizung.Mischer.Vorlauf","temperature",300)}

dies erzeugt das zusätzliche Reading temperature.avg für die Fußbodenvorlauftemperatur mit dem Mittel der letzten 5 Minuten.

Die Regelung der Vorlauftemperatur selbst wurde über ein DOIF-Kommando erzeugt:

define DI_MischerCommands DOIF ([EG.Heizung.Mischer.Vorlauf:temperature.avg] < 22 and [EG.HWR.Fussbodenmischer:position]<97 and [EG.Heizung.8Relais:PIO.3] eq "on")
   (set EG.HWR.Fussbodenmischer {([EG.HWR.Fussbodenmischer:position]+1)}) ## Cmd 1: Schnell oeffnen
DOELSEIF ([EG.Heizung.Mischer.Vorlauf:temperature.avg] < 26 and [EG.HWR.Fussbodenmischer:position]<98 and [EG.Heizung.8Relais:PIO.3] eq "on")
   (set EG.HWR.Fussbodenmischer {([EG.HWR.Fussbodenmischer:position]+1)}) ## Cmd 2: Ganz langsam oeffnen
DOELSEIF ([EG.Heizung.Mischer.Vorlauf:temperature.avg] < 30 and [EG.HWR.Fussbodenmischer:position]<98 and [EG.Heizung.8Relais:PIO.3] eq "on")
   (set EG.HWR.Fussbodenmischer {([EG.HWR.Fussbodenmischer:position]+1)}) ## Cmd 3: Noch ein bisschen
DOELSEIF ([EG.Heizung.Mischer.Vorlauf:temperature.avg] > 35 and [EG.HWR.Fussbodenmischer:position]>3)
   (set EG.HWR.Fussbodenmischer {([EG.HWR.Fussbodenmischer:position]-2)}) ## Cmd 4: Viel zu heiss, schnell zu
DOELSEIF ([EG.Heizung.Mischer.Vorlauf:temperature.avg] > 34 and [EG.HWR.Fussbodenmischer:position]>2)
   (set EG.HWR.Fussbodenmischer {([EG.HWR.Fussbodenmischer:position]-1)}) ## Cmd 5: Zu heiss, schnell zu
DOELSEIF ([EG.Heizung.Mischer.Vorlauf:temperature.avg] > 33 and [EG.HWR.Fussbodenmischer:position]>2)
   (set EG.HWR.Fussbodenmischer {([EG.HWR.Fussbodenmischer:position]-1)}) ## Cmd 6: Noch ein bisschen
DOELSEIF ([03:50])
   (set EG.HWR.Fussbodenmischer calibrate)                                ## Cmd 7: Calibrieren fuer Tagprogramm
DOELSEIF ([04:00])
   (set EG.HWR.Fussbodenmischer 40)                                       ## Cmd 8: Headstart, Ende der Nachtabsenkung
attr DI_MischerCommands cmdpause 60:120:180:60:120:180:0:0
attr DI_MischerCommands wait 180,240,300,180,240,480,0,0
attr DI_MischerCommands do always

Die in dieser individuellen Konfiguration ist die gewünschte Zieltemperatur der Fußbodenvorlauftemperatur zwischen 30° und 32°C (im fest verbauten Thermometer bedeutet dies knapp unter 40°C). Die Temperatur des Sensors (und des Mittelwertes) weicht jedoch von den eingebauten physikalischen Thermostaten ab. Vermutlich liegt das an der zusätzlichen Plastikabschirmung der Sensoren und der Dicke der Rohre - die Zieltemperaturen wurden daher durch Try-n-Error ermittelt.

Die ersten drei IF-Bedingungen öffnen den Mischer (erhöhen die Fußboden-Vorlauftemperatur). Die folgenden drei IF-Bedingungen schließen den Mischer (verringern die Fußboden-Vorlauftemperatur). Die letzten beiden Anweisungen kalibrieren morgens den Mischer und sorgen für einen schnelleren Start.

Jede der drei öffnenden IF-Bedingungen sind auf leicht unterschiedliche Temperaturen nahe der Zieltemperatur (zwischen 30-32 Grad) eingestellt. Eine Justierung der Öffnungsgeschwindigkeit findet über die Attribute wait und cmdpause statt: ist die Temperatur weit von der Zieltemperatur entfernt, wird kurz gewartet und der Mischer beliebig oft geöffnet. Ist die Temperatur nahe der Zieltemperatur, wird sich langsam und vorsichtig an das Ziel herangetastet - das Attribut wait steuert die Wartezeit und cmdpause verhindert ein überschwingen.

Jede drei schließenden IF-Bedingungen sind analog aufgebaut, jedoch wird die Temperatur schnell reduziert, um das stottern und den Abkühlprozeß zu vermeiden.

Die Kalibrierung und ein Frühstart finden morgens statt.

Das DOIF-Kommando führt zu folgenden Meßwerten:

Morgennebel-HeizungssteuerungHOWTO-Mischer1Tag.png

Die Nachtabsenkung endet um 4:00, gleichzeitig startet die Kalibrierung (setzt den Mischer auf 0). Der Mischer (blaue Linie) öffnet schnell, überschwingt einmal und regelt sich dann auf eine sehr gerade Kennlinie mit beinahe konstanter Temperatur zurück.

Im Detail ist die die leichte Kurve der Vorlauftemperatur, bedingt durch die Taktung des Brenners, in Rot sowie der gleitende Mittelwert der letzten 5 Minuten in Grün gut zu erkennen. Der Mischermotor wird wenig bewegt und damit geschont.

Morgennebel-HeizungssteuerungHOWTO-Mischer1h.png

Nach einer Woche Betrieb stellte sich heraus, daß die Viessmann Tetramatik die Fußbodenpumpe dauerhaft abstellte. Offenbar (und vielleicht) erkennt die Tetramatik, daß diese den Mischer nicht mehr kontrollieren kann und stellt zur Sicherheit die Pumpe ab.

Daher wurde auch die Pumpe an den 8-fach Relaiskarte via 1-Wire geschaltet und mit Hilfe einer DOIF-Anweisung gesteuert:

define DI_EG.HWR.Fussbodenpumpe DOIF ([04:00-23:00] and [EG.Heizung.Mischer.Vorlauf:temperature] < 33)
   (set EG.Heizung.8Relais PIO.3 on) 
DOELSE 
   (set EG.Heizung.8Relais PIO.3 off) 
attr DI_EG.HWR.Fussbodenpumpe room EG.HWR 
attr DI_EG.HWR.Fussbodenpumpe wait 0,900 

die Erkennung der Maximaltemperatur mit einer 15 minütigen Abkühlphase erlaubte die Deaktivierung des Thermostaten zur Begrenzung des Fußbodenvorlaufes (siehe Diagramm in der Einleitung).

Gaszähler