Luxtronik 2.0: Unterschied zwischen den Versionen

Aus FHEMWiki
Keine Bearbeitungszusammenfassung
Zeile 96: Zeile 96:
     if ( ReadingsVal("Heizung","hotWaterTemperatureTarget", 42 ) != 42 ) {fhem ("set Heizung hotWaterTemperatureTarget 42");;}\
     if ( ReadingsVal("Heizung","hotWaterTemperatureTarget", 42 ) != 42 ) {fhem ("set Heizung hotWaterTemperatureTarget 42");;}\
  }
  }
===Frostschutz bei Erreichen der Heizungsgrenze===





Version vom 13. April 2014, 21:40 Uhr

Die Luxtronik 2.0 ist eine Heizungssteuerung, welche in Wärmepumpen von Alpha Innotec, Siemens Novelan (WPR NET) und Wolf Heiztechnik (BWL/BWS) verbaut ist. Sie besitzt einen Ethernet Anschluss, so dass sie direkt in lokale Netzwerke (LAN) integriert werden kann.

Hinweise zum Betrieb mit FHEM

Definition in fhem.cfg:

define <name> LUXTRONIK2 <IP-Adresse> [Abfrageinterval]

Link auf FHEM commandref

Zusätzliche Perl-Module

Das FHEM-Modul benutzt das CPAN-Modul "net::Telnet". Dieses ist standardmäßig auf Fritz!Boxen installiert. Auf anderen Servern muss es eventuell nachinstalliert werden. Unter Debian z.B. mit

sudo apt-get install libnet-telnet-perl

Erläuterung der Readings

Allgemeine Wärmepumpenwerte

  • ambientTemperature - Temperatur des Außensensors in °C
  • averageAmbientTemperature - Gemittelte Außentemperatur in °C (für Heizgrenze im Sommer)
  • heatSourceIN - Wärmequelle Eingangstemperatur in °C
  • heatSourceOUT - Wärmequelle Ausgangstemperatur in °C
  • hotGasTemperature - Heißgastemperatur in °C, Temperatur die hinter dem Kompressor der Wärmepumpe anfällt
  • flowTemperature - Vorlauftemperatur (Rücklauf plus Spreizung) in °C
  • returnTemperature - Rücklauftemperatur in °C
  • flowRate - Durchfluss in l/h
  • thermalPower - aktuelle Heizleistung (berechnet) in kW
  • deviceTimeCalc - Beim Abrufen der Gerätewerte wird von der Luxtronik-Steuerung auch der Zeitpunkt der internen Ermittlung übergeben.
  • delayDeviceTimeCalc - Abweichung Gerätesystemzeit zur FHEM-Zeit. Dieser kann bis zu 2 s in der Vergangenheit liegen. Höhere Werte weisen auf eine ungenaue Systemzeit in der Steuerung hin.
  • durationFetchReadings - Dauer (in s) des Abrufes der Gerätewerte von der Steuerung

Heizung

  • returnTemperatureTarget - Rücklaufsolltemperatur (wird durch Heizkurve und Außensensor bestimmt)
  • heatingLimit - Heizgrenze wird ausgewertet (on, off)
  • thresholdHeatingLimit - Heizgrenze in °C, überschreitet die gemittelte Außentemperatur diesen Wert, wird nicht mehr geheizt
  • thresholdTemperatureSetBack - unterschreitet die Außentemperatur diesen Wert, wird die Heizungssolltemperatur nicht mehr abgesenkt

Warmwasserbereitung

  • hotWaterTemperature - aktuelle Warmwasser-Boiler-Temperatur in °C (Achtung, die Temperatur im Boiler ist sehr unterschiedliche, es wird also nur die Temperatur am Sensor angezeigt. Typischerweise sackt die Temperaturkurve beim Aufheizen des Boilers etwas ab, weil es durch den Wärmeeintrag zu Strömungen kommt.)
  • hotWaterTemperatureTarget - obere Solltemperatur des Boilers

Solarthermie

  • solarBufferTemperature
  • solarCollectorTemperature

Zähler

  • counterHours2ndHeatSource1 - Betriebsstunden der zweite Wärmequelle (normalerweise elektrische Heizstäbe)
  • counterHoursHeatPump - Betriebsstunden des Wärmepumpenkompressors
  • counterHoursHeating - Betriebsstunden des Wärmepumpenkompressors die zur Heizung benutzt wurden
  • counterHoursHotWater - Betriebsstunden des Wärmepumpenkompressors die zur Warmwasserbereitung benutzt wurden
  • counterHeatQHeating - produzierte Wärmemenge (kWh) zur Heizung (nur bei vorhandenen Wärmemengenzähler)
  • counterHeatQHotWater - produzierte Wärmemenge (kWh) zur Warmwasserbereitung (nur bei vorhandenen Wärmemengenzähler)
  • counterHeatQTotal - produzierte Wärmemenge (kWh) insgesamt(nur bei vorhandenen Wärmemengenzähler)

Ein- und Ausgänge

  • heatingSystemCircPump - Umlaufpumpe in der Wärmepumpe
  • hotWaterCircPumpExtern - Zirkulationspumpe im Warmwasserstrang des Hauses (wenn genutzt)
  • hotWaterSwitchingValve - Ventil zur Umschaltung auf die Heizspirale im Boiler

Sonstiges

  • Firmware
  • typeHeatpump

Tipps zum ökonomischen Betrieb

Sperrzeiten

Die Luxtronik 2.0 erlaubt es, sich mit Hilfe von Sperrzeiten an zeitabhängige Strompreise anzupassen. Die Uhr der Steuerung geht jedoch sehr ungenau. Durch Setzen des Attributes "autoSynchClock" wird die Uhr der Steuerung regelmäßig mit der FHEM-Zeit abgeglichen. Die Funktion muss über das Attribut "allowSetParameter" freigegeben werden.

attr <device> allowSetParameter 1
attr <device> autoSynchClock 10

Warmwasserbereitung bei Luft-Wasser-Wärmepumpen

Die Kosten der Warmwasserbereitung durch Luft-Wasser-Wärmepumpen hängen von zwei Faktoren ab:

  1. den Energiekosten: Bei Zweitarifzählern ist der Strom im Nebentarif (z.B. Mo-Fr von 22:00 - 06:00, Sa ab 13:00 und den ganzen So) billiger als im Haupttarif.
  2. der Lufttemperatur: Die Heizleistung der Wärmepumpe steigt bei höherer Lufttemperatur trotz konstantem Stromverbrauchs.
    Die Außentemperatur erreicht ihr Maximum an einem sonnigen Durchschnittstag gegen 15:00 Uhr. Ihr Minimum hat sie kurz vor Sonnenaufgang.

Das FHEM Modul erlaubt es, durch zeitweises Anheben der Solltemperatur ein Aufheizen des Boilers auszulösen.

set <device> hotWaterTemperaturTarget 50

Es gilt nun den kostengünstigsten Zeitpunkt für diesen Vorgang zu bestimmen. Die nachfolgenden Ausführungen setzen voraus, dass Aufgrund der Boilerisolierung und der Boilergrösse nur ein- oder zweimal pro Tag aufgeheizt werden muss. Zur Vereinfachung wird die Abhängigkeit der Wärmeverluste von der Boilertemperatur vernachlässigt.

Bei den aktuellen Wärmepumpentarifen ist der Strom des Haupttarifes etwa 15 % teurer als der des Nebentarifes. Es liegt also nahe, den Boiler in der Woche zu Beginn des Nebentarifes gleich für die nächsten 24 h aufzuheizen, weil dann die Aussentemperatur höher ist und man dann am billigsten und effizientesten die entsprechende Wärme produziert.

# Sollwert 5 K über Standardwert setzen
 define Boilertemperatur_hoch at *22:05:00 {\
  if ($we != 1) { fhem ("set WP hotWaterTemperaturTarget 47");; }\
 }
# Sollwert auf Standwert zurücksetzen
 define Boilertemperatur_normal at *23:00:00 set WP hotWaterTemperaturTarget 42

Detailliertere Berücksichtigung der Temperaturabhängigkeit

Die ungefähre, theoretische Temperaturabhängigkeit der Heizleistung erhält man am schnellsten aus den Grafiken der Betriebsanleitung der Wärmepumpe. Empirisch und genauer lassen sich die Wert durch Loggen der Werte "thermalPower" oder besser "statThermalPowerBoiler" bestimmen. Liest man die Log-Datei in ein Tabellenkalkulationsprogramm (MS Excel, OO Calc), kann man mit diesem auch gleich eine Regressionsgrade berechnen. Auf diesem Wege erhält man die Temperaturdifferenz, ab der der Unterschied zwischen Haupt- und Nebentarif ausgeglichen wird. Nehmen wir an, sie liegt bei 8 K.

Über das Wettermodul von FHEM kann man nun die aktuelle Aussentemperatur Mo-Fr um 22:00 mit der maximalen Aussentemperatur des nächsten Tages vergleichen. Rechnen wir noch eine Sicherheit von 2 K hinzu, dann kann man z.B. festlegen, dass ab 10 K Temperaturunterschied und jeden Samstag der Boiler nur noch so weit aufgeheizt wird, dass er bis 06:00 nicht mehr auslöst.

define Boilertemperatur_hoch at *22:05:00 {\
  my $delta = ReadingsVal("Wetter","fc2_high_c",0) - ReadingsVal("Heizung","ambientTemperature",0);;\
  if ($delta >=10 || $wday == 6) { fhem( "set Heizung hotWaterTemperatureTarget 43" );; }\
  else { fhem( "set Heizung hotWaterTemperatureTarget 46.5" );; }\
}

Mit Hilfe der Sperrzeitensteuerung der Luxtronik 2.0 kann man die nächste, zweite Aufheizung dann erst wieder um 15:00 erlauben, da dann Aufgrund der hohen Aussentemperaturen der Strompreisunterschied mehr als ausgeglichen wird. Natürlich kann das Aufheizen auch hier durch ein gezieltes Anheben der Solltemperatur erreicht werden (z.B. am Wochenende).

define Boilertemperatur_WE_Hoch at *15:00:00 {\
   if ($we == 1) {fhem( "set Heizung hotWaterTemperatureTarget 46.5" );; }\
}
define Boilertemperatur_WE_Normal at *16:00:00 {\
   if ( ReadingsVal("Heizung","hotWaterTemperatureTarget", 42 ) != 42 ) {fhem ("set Heizung hotWaterTemperatureTarget 42");;}\
}

Frostschutz bei Erreichen der Heizungsgrenze