<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>http://wiki.fhem.de/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Zimberg44</id>
	<title>FHEMWiki - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.fhem.de/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Zimberg44"/>
	<link rel="alternate" type="text/html" href="http://wiki.fhem.de/wiki/Spezial:Beitr%C3%A4ge/Zimberg44"/>
	<updated>2026-04-14T18:44:33Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Velux_KUX_100&amp;diff=15842</id>
		<title>Velux KUX 100</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Velux_KUX_100&amp;diff=15842"/>
		<updated>2016-07-19T05:46:42Z</updated>

		<summary type="html">&lt;p&gt;Zimberg44: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Update 26-May-2013: Korrektur, da nach FHEM Update nicht mehr funktioniell.&lt;br /&gt;
Die Aufrufe von XXX.Ab / XXX.Auf / XXX.Auf50 / XXX.Ab50 mussten umgestellt werden auf XXX.on / XXX.off / XXX.dim93% / XXX.dim06%&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Einbindung von Velux io-homecontrol Rollos (Velux KUX 100) lässt sich ohne Weiteres nicht mit FHEM erreichen.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Velux hat den KLF-200 als &amp;quot;Schnittstelle für VELUX INTEGRA® Produkte (Verfügbar ab Dezember 2016)&amp;quot; angekündigt. Eine einfache Lösung naht also.&lt;br /&gt;
&lt;br /&gt;
Bei mir habe ich folgende Lösung in der Umsetzung:&lt;br /&gt;
Die originalen Handsender der KUX100 werden zerlegt. Die 3 Kontakte für Auf - Stop - Ab werden mit 3 Relais verbunden.&lt;br /&gt;
Die Relais wiederum werden von einem FS20 SM8 Modul geschaltet.&lt;br /&gt;
&lt;br /&gt;
Die notwendigen Auslöseschritte für das Auf - Ab Schalten der Relais werden dann in einem neuen FS20 Dummy Device zusammengefasst.&lt;br /&gt;
&lt;br /&gt;
Anbei der Code aus meiner Fhem.cfg für 1 Rollo.&lt;br /&gt;
&lt;br /&gt;
Update 04-Mai-2012:&lt;br /&gt;
Die 50% Auf und Ab Lösung mit Verwendung der Sleep Funktion bereitete einige Probleme, daher hier eine angepasste Version mit &amp;quot;Notify at&amp;quot; anstatt Sleep, um die Rollo Auf/Ab Bewegung nach einer definierten Zeit zu stoppen.&lt;br /&gt;
&lt;br /&gt;
Der Aufruf mehrerer Verketter Rollo Auf Aufrufe funktioniert dann auch wieder (war mit Sleep schwierig).&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;# ---------- START Definition Schlafzimmer_Oben_Nord ROLLLADEN -------------&lt;br /&gt;
# Definition Schalter AUF Adresse vom FS20 SM8 - Kanal1 / Über Relais den &amp;amp;quot;Auf&amp;amp;quot; Schalter der OriginalFernbedienung schalten&lt;br /&gt;
define RS_SZO_N_Auf FS20 ab01 00&lt;br /&gt;
attr RS_SZO_N_Auf IODev CUNO_O&lt;br /&gt;
attr RS_SZO_N_Auf model fs20&lt;br /&gt;
attr RS_SZO_N_Auf room 5_SYSTEM&lt;br /&gt;
# Definition Schalter AB Adresse vom FS20 SM8 - Kanal2 / Über Relais den &amp;amp;quot;Ab&amp;amp;quot; Schalter der OriginalFernbedienung schalten&lt;br /&gt;
define RS_SZO_N_Ab FS20 ab02 00&lt;br /&gt;
attr RS_SZO_N_Ab IODev CUNO_O&lt;br /&gt;
attr RS_SZO_N_Ab model fs20&lt;br /&gt;
attr RS_SZO_N_Ab room 5_SYSTEM&lt;br /&gt;
# Definition Schalter STOP Adresse vom FS20 SM8 - Kanal3 / Über Relais den &amp;amp;quot;Stop&amp;amp;quot; Schalter der OriginalFernbedienung schalten&lt;br /&gt;
define RS_SZO_N_Stop FS20 ab03 00&lt;br /&gt;
attr RS_SZO_N_Stop IODev CUNO_O&lt;br /&gt;
attr RS_SZO_N_Stop model fs20&lt;br /&gt;
attr RS_SZO_N_Stop room 5_SYSTEM&lt;br /&gt;
# Definition eines Dummy FS20 der im entsprechenden Raum (OG) angezeigt wird, und die Schaltvorgänge triggert&lt;br /&gt;
#define Rollo_SchlafZ_O_N FS20 f1f1 00&lt;br /&gt;
define Rollo_SchlafZ_O_N dummy&lt;br /&gt;
attr Rollo_SchlafZ_O_N eventMap /on:Ab/off:Auf/dim06%:Ab50/dim93%:Auf50/&lt;br /&gt;
attr Rollo_SchlafZ_O_N room 2_ROLLLADEN&lt;br /&gt;
attr Rollo_SchlafZ_O_N webCmd Ab:Auf:Ab50:Auf50&lt;br /&gt;
#Rollo AB 100% - AB Taste 1 Sekunde auslösen&lt;br /&gt;
define RSZO_N_Ab notify Rollo_SchlafZ_O_N.on set RS_SZO_N_Ab on-for-timer 1&lt;br /&gt;
attr RSZO_N_Ab room 5_SYSTEM&lt;br /&gt;
#Rollo AUF 100% - AUF Taste 1 Sekunde auslösen&lt;br /&gt;
define RSZO_N_Auf notify Rollo_SchlafZ_O_N.off set RS_SZO_N_Auf on-for-timer 1&lt;br /&gt;
attr RSZO_N_Auf room 5_SYSTEM&lt;br /&gt;
#Rollo AB50% - 15 Sekunden Rolladen Abwärts - ggf. die Sleep Zeit anpassen&lt;br /&gt;
define RSZO_N_Ab50 notify Rollo_SchlafZ_O_N.dim06% {\&lt;br /&gt;
 fhem &amp;amp;quot;set RS_SZO_N_Ab on-for-timer 1&amp;amp;quot;;;\  &lt;br /&gt;
 fhem &amp;amp;quot;define Rollo_SZO_N_Stop at +*{1}00:00:41 set RS_SZO_N_Stop on-for-timer 1&amp;amp;quot;;;\&lt;br /&gt;
 fhem &amp;amp;quot;attr Rollo_SZO_N_Stop room 5_SYSTEM&amp;amp;quot;;;\&lt;br /&gt;
}&lt;br /&gt;
attr RSZO_N_Ab50 room 5_SYSTEM&lt;br /&gt;
#Rollo AUF50% - 15 Sekunden Rolladen Aufwärts - ggf. die Sleep Zeit anpassen&lt;br /&gt;
define RSZO_N_Auf50 notify Rollo_SchlafZ_O_N.dim93% {\&lt;br /&gt;
 fhem &amp;amp;quot;set RS_SZO_N_Auf on-for-timer 1&amp;amp;quot;;;\  &lt;br /&gt;
 fhem &amp;amp;quot;define Rollo_SZO_N_Stop at +*{1}00:00:30 set RS_SZO_N_Stop on-for-timer 1&amp;amp;quot;;;\&lt;br /&gt;
 fhem &amp;amp;quot;attr Rollo_SZO_N_Stop room 5_SYSTEM&amp;amp;quot;;;\&lt;br /&gt;
}&lt;br /&gt;
attr RSZO_N_Auf50 room 5_SYSTEM&lt;br /&gt;
# ---------- ENDE Definition Schlafzimmer_Oben_Nord ROLLLADEN -------------&lt;br /&gt;
# ---------- Routine um mehrere Rollos zeitversetzt nach Sunrise / Sunset Notify zu steuern (um SM8 Befehle zeitlich zu entspannen).&lt;br /&gt;
define Rollladen_OG_Morgens_Auf at *{sunrise(-210,&#039;05:30&#039;,&#039;08:00&#039;)} {\&lt;br /&gt;
 fhem &amp;amp;quot;set Rollo_ArbeitsZ Auf50%&amp;amp;quot;;;\  &lt;br /&gt;
 fhem &amp;amp;quot;define Rollladen_OG_Morgens_Timer_N at +*{1}00:00:30 set Rollo_SchlafZ_O_N Auf50&amp;amp;quot;;;\&lt;br /&gt;
 fhem &amp;amp;quot;attr Rollladen_OG_Morgens_Timer_N room 5_SYSTEM&amp;amp;quot;;;\&lt;br /&gt;
 fhem &amp;amp;quot;define Rollladen_OG_Morgens_Timer_SL at +*{1}00:01:00 set Rollo_SchlafZ_O_SL Auf50&amp;amp;quot;;;\&lt;br /&gt;
 fhem &amp;amp;quot;attr Rollladen_OG_Morgens_Timer_SL room 5_SYSTEM&amp;amp;quot;;;\&lt;br /&gt;
 fhem &amp;amp;quot;define Rollladen_OG_Morgens_Timer_SR at +*{1}00:01:30 set Rollo_SchlafZ_O_SR Auf50&amp;amp;quot;;;\&lt;br /&gt;
 fhem &amp;amp;quot;attr Rollladen_OG_Morgens_Timer_SR room 5_SYSTEM&amp;amp;quot;;;\&lt;br /&gt;
}&lt;br /&gt;
attr Rollladen_OG_Morgens_Auf room 2_ROLLLADEN&lt;br /&gt;
define Rollladen_OG_Abends_Ab at *{sunset(330,&#039;19:00&#039;,&#039;22:00&#039;)} {\&lt;br /&gt;
 fhem &amp;amp;quot;set Rollo_ArbeitsZ Ab&amp;amp;quot;;;\  &lt;br /&gt;
 fhem &amp;amp;quot;define Rollladen_OG_Morgens_Timer_N at +*{1}00:00:30 set Rollo_SchlafZ_O_N Ab&amp;amp;quot;;;\&lt;br /&gt;
 fhem &amp;amp;quot;attr Rollladen_OG_Morgens_Timer_N room 5_SYSTEM&amp;amp;quot;;;\&lt;br /&gt;
 fhem &amp;amp;quot;define Rollladen_OG_Morgens_Timer_SL at +*{1}00:01:00 set Rollo_SchlafZ_O_SL Ab&amp;amp;quot;;;\&lt;br /&gt;
 fhem &amp;amp;quot;attr Rollladen_OG_Morgens_TimerSL room 5_SYSTEM&amp;amp;quot;;;\&lt;br /&gt;
 fhem &amp;amp;quot;define Rollladen_OG_Morgens_Timer_SR at +*{1}00:01:30 set Rollo_SchlafZ_O_SR Ab&amp;amp;quot;;;\&lt;br /&gt;
 fhem &amp;amp;quot;attr Rollladen_OG_Morgens_Timer_SR room 5_SYSTEM&amp;amp;quot;;;\&lt;br /&gt;
}&lt;br /&gt;
attr Rollladen_OG_Abends_Ab room 2_ROLLLADEN&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Code Snippets]]&lt;br /&gt;
[[Kategorie:Rollladensteuerung]]&lt;br /&gt;
[[Kategorie:Other Components]]&lt;/div&gt;</summary>
		<author><name>Zimberg44</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Luxtronik_2.0&amp;diff=15323</id>
		<title>Luxtronik 2.0</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Luxtronik_2.0&amp;diff=15323"/>
		<updated>2016-05-10T10:43:24Z</updated>

		<summary type="html">&lt;p&gt;Zimberg44: /* Hinweise zum Betrieb mit FHEM */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox Modul&lt;br /&gt;
|Name=LUXTRONIK2&lt;br /&gt;
|ModPurpose=Anbindung der Heizungssteuerung Luxtronik 2.0&lt;br /&gt;
|ModType=d&lt;br /&gt;
&amp;lt;!-- |ModCategory= (noch?) nicht verwendet --&amp;gt;&lt;br /&gt;
|ModCmdRef=LUXTRONIK2&lt;br /&gt;
|ModForumArea=Sonstiges&lt;br /&gt;
|ModTechName=23_LUXTRONIK2.pm&lt;br /&gt;
|ModOwner=[http://forum.fhem.de/index.php?action=pm;sa=send;u=5432 tupol]&lt;br /&gt;
}}&lt;br /&gt;
Die Luxtronik 2.0 ist eine Heizungssteuerung, die in Wärmepumpen von Alpha Innotec, Siemens Novelan (WPR NET) und Wolf Heiztechnik (BWL/BWS) verbaut ist.&lt;br /&gt;
Sie besitzt einen Ethernet Anschluss, so dass sie direkt in lokale Netzwerke (LAN) integriert werden kann.&lt;br /&gt;
== Hinweise zum Betrieb mit FHEM ==&lt;br /&gt;
Definition in fhem.cfg:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;define &amp;lt;name&amp;gt; LUXTRONIK2 &amp;lt;IP-Adresse[:Port]&amp;gt; [Abfrageinterval]&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die Angabe der Portnummer ist grundsätzlich optional. Bei alpha-innotec Wärmepumpen muss der Port 8889 angegeben werden.&lt;br /&gt;
&lt;br /&gt;
[http://www.fhem.de/commandref_DE.html#LUXTRONIK2 Link auf FHEM commandref]&lt;br /&gt;
&lt;br /&gt;
=== Zusätzliche Perl-Module ===&lt;br /&gt;
Das FHEM-Modul benutzt das CPAN-Modul &amp;quot;net::Telnet&amp;quot;. Dieses ist standardmäßig auf Fritz!Boxen installiert. Auf anderen Servern muss es eventuell nachinstalliert werden. Unter Debian z.B. mit&lt;br /&gt;
 sudo apt-get install libnet-telnet-perl&lt;br /&gt;
&lt;br /&gt;
== Erläuterung der Readings ==&lt;br /&gt;
===Allgemeine Wärmepumpenwerte===&lt;br /&gt;
* &#039;&#039;&#039;ambientTemperature&#039;&#039;&#039; - Temperatur des Außensensors in °C&lt;br /&gt;
* &#039;&#039;&#039;averageAmbientTemperature&#039;&#039;&#039; - Gemittelte Außentemperatur der letzten 24 h in °C (für Heizgrenze im Sommer)&lt;br /&gt;
* &#039;&#039;&#039;heatSourceIN&#039;&#039;&#039; - Wärmequelle Eingangstemperatur in °C&lt;br /&gt;
* &#039;&#039;&#039;heatSourceOUT&#039;&#039;&#039; - Wärmequelle Ausgangstemperatur in °C&lt;br /&gt;
* &#039;&#039;&#039;hotGasTemperature&#039;&#039;&#039; - Heißgastemperatur in °C, Temperatur, die hinter dem Kompressor der Wärmepumpe anfällt&lt;br /&gt;
* &#039;&#039;&#039;flowTemperature&#039;&#039;&#039; - Vorlauftemperatur (Rücklauf plus Spreizung) in °C&lt;br /&gt;
* &#039;&#039;&#039;returnTemperature&#039;&#039;&#039; - Rücklauftemperatur in °C&lt;br /&gt;
* &#039;&#039;&#039;flowRate&#039;&#039;&#039; - Durchfluss in l/h&lt;br /&gt;
* &#039;&#039;&#039;thermalPower&#039;&#039;&#039; - aktuelle Heizleistung (berechnet) in kW&lt;br /&gt;
* &#039;&#039;&#039;COP&#039;&#039;&#039; - Coefficient Of Performance, Wirkungsgrad der Wärmepumpe (Leistungszahl ε). Eine Leistungszahl von z.B. 4,2 bedeutet, dass von der eingesetzten elektrischen Leistung des Kompressors das 4,2- fache an Wärmeleistung bereitgestellt wird. Anders formuliert, kann mit dieser Wärmepumpe aus einem Kilowatt elektrischer Leistung 4,2 kW Wärmeleistung zur Verfügung gestellt werden. &#039;&#039;Bei der Berechnung des COPs wird die elektrische Leistung aus dem Attribut &amp;quot;heatPumpElectricalPowerWatt&amp;quot; benutzt.&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;deviceTimeCalc&#039;&#039;&#039; - Beim Abrufen der Gerätewerte wird von der Luxtronik-Steuerung auch der Zeitpunkt der internen Ermittlung übergeben.&lt;br /&gt;
* &#039;&#039;&#039;delayDeviceTimeCalc&#039;&#039;&#039; - 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.&lt;br /&gt;
* &#039;&#039;&#039;durationFetchReadings&#039;&#039;&#039; - Dauer (in s) des Abrufes der Gerätewerte von der Steuerung&lt;br /&gt;
&lt;br /&gt;
=== Heizung ===&lt;br /&gt;
* &#039;&#039;&#039;returnTemperatureTarget&#039;&#039;&#039; - Rücklaufsolltemperatur (wird durch Heizkurve und Außensensor bestimmt, kann über in der Steuerung eingegebene Zeiten und auch manuell gezielt abgesenkt)&lt;br /&gt;
* &#039;&#039;&#039;heatingLimit&#039;&#039;&#039; - Heizgrenze wird ausgewertet (on, off)&lt;br /&gt;
* &#039;&#039;&#039;thresholdHeatingLimit&#039;&#039;&#039; - Heizgrenze in °C, &#039;&#039;&#039;über&#039;&#039;&#039;schreitet die gemittelte Außentemperatur diesen Wert, wird nicht mehr geheizt&lt;br /&gt;
* &#039;&#039;&#039;thresholdTemperatureSetBack&#039;&#039;&#039; - &#039;&#039;&#039;unter&#039;&#039;&#039;schreitet die Außentemperatur diesen Wert, wird die Heizungssolltemperatur nicht mehr abgesenkt&lt;br /&gt;
&lt;br /&gt;
=== Warmwasserbereitung ===&lt;br /&gt;
* &#039;&#039;&#039;hotWaterTemperature&#039;&#039;&#039; - 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.)&lt;br /&gt;
* &#039;&#039;&#039;hotWaterTemperatureTarget&#039;&#039;&#039; - obere Solltemperatur des Boilers&lt;br /&gt;
=== Solarthermie ===&lt;br /&gt;
* solarBufferTemperature&lt;br /&gt;
* solarCollectorTemperature&lt;br /&gt;
=== Zähler ===&lt;br /&gt;
* &#039;&#039;&#039;counterHours2ndHeatSource1&#039;&#039;&#039; - Betriebsstunden der zweite Wärmequelle (normalerweise elektrische Heizstäbe) &lt;br /&gt;
* &#039;&#039;&#039;counterHoursHeatPump&#039;&#039;&#039; - Betriebsstunden des Wärmepumpenkompressors &lt;br /&gt;
* &#039;&#039;&#039;counterHoursHeating&#039;&#039;&#039; - Betriebsstunden des Wärmepumpenkompressors die zur Heizung benutzt wurden&lt;br /&gt;
* &#039;&#039;&#039;counterHoursHotWater&#039;&#039;&#039; - Betriebsstunden des Wärmepumpenkompressors die zur Warmwasserbereitung benutzt wurden&lt;br /&gt;
* &#039;&#039;&#039;counterHeatQHeating&#039;&#039;&#039; - von der Wärmepumpe produzierte Wärmemenge (kWh) zur Heizung&amp;lt;br&amp;gt;(nur bei vorhandenem Wärmemengenzähler und ohne Wärmeeintrag durch zweite Wärmequelle wie z.B. Heizstäbe)&lt;br /&gt;
* &#039;&#039;&#039;counterHeatQHotWater&#039;&#039;&#039; - von der Wärmepumpe produzierte Wärmemenge (kWh) zur Warmwasserbereitung&amp;lt;br&amp;gt;(nur bei vorhandenem Wärmemengenzähler und ohne Wärmeeintrag durch zweite Wärmequelle wie z.B. Heizstäbe)&lt;br /&gt;
* &#039;&#039;&#039;counterHeatQTotal&#039;&#039;&#039; - von der Wärmepumpe produzierte Wärmemenge (kWh) insgesam&amp;lt;br&amp;gt;(nur bei vorhandenem Wärmemengenzähler und ohne Wärmeeintrag durch zweite Wärmequelle wie z.B. Heizstäbe)&lt;br /&gt;
&lt;br /&gt;
=== Ein- und Ausgänge ===&lt;br /&gt;
* &#039;&#039;&#039;heatingSystemCircPump&#039;&#039;&#039; - Umlaufpumpe in der Wärmepumpe&lt;br /&gt;
* &#039;&#039;&#039;hotWaterCircPumpExtern&#039;&#039;&#039; - Zirkulationspumpe im Warmwasserstrang des Hauses (wenn genutzt)&lt;br /&gt;
* &#039;&#039;&#039;hotWaterSwitchingValve&#039;&#039;&#039; - Ventil zur Umschaltung auf die Heizspirale im Boiler&lt;br /&gt;
&lt;br /&gt;
=== Sonstiges ===&lt;br /&gt;
* Firmware&lt;br /&gt;
* typeHeatpump&lt;br /&gt;
&lt;br /&gt;
== Tipps zum ökonomischen Betrieb ==&lt;br /&gt;
Grundlage eines ökonomischen Betriebs einer Wärmepumpe ist in erster Linie ein guter hydraulischer Abgleich der Heizwasserverteilung und eine genaue Einstellung  der aussentemperaturgesteuerten Heizkurve. Beides ist sowohl von den Bedürfnissen und dem Nutzungsverhalten der Bewohner als auch von der Dämmung des Hauses abhängig. Interessant ist hier der Ansatz, die Einzelraumregelung und das Überströmventil der Wärmepumpe komplett ausser Betrieb zu nehmen und damit alle Heizkreise als ein &amp;quot;Heizkörper&amp;quot; zu betrachten. Diverse Foreneinträge (z.B. [http://www.haustechnikdialog.de/Forum/t/142011/Einstellungen-Alpha-Innotec-LWC80]) erzählen von bedeutenden Einsparungen und Wärmepumpen-freundlichen Betriebszyklen (lange Taktzeiten) und gehen auch detailiert auf durch die Luxtronik2 betriebene Wärmepumpen ein.&lt;br /&gt;
&lt;br /&gt;
Durch FHEM können die Heizkosten jedoch noch weiter optimiert werden.&lt;br /&gt;
=== Sperrzeiten ===&lt;br /&gt;
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 &amp;quot;autoSynchClock&amp;quot; wird die Uhr der Steuerung regelmäßig mit der FHEM-Zeit abgeglichen. Die Funktion muss über das Attribut &amp;quot;allowSetParameter&amp;quot; freigegeben werden.&lt;br /&gt;
 attr &amp;lt;device&amp;gt; allowSetParameter 1&lt;br /&gt;
 attr &amp;lt;device&amp;gt; autoSynchClock 10&lt;br /&gt;
=== Warmwasserbereitung bei Luft-Wasser-Wärmepumpen ===&lt;br /&gt;
Die Kosten der Warmwasserbereitung durch Luft-Wasser-Wärmepumpen hängen von zwei Faktoren ab:&lt;br /&gt;
# 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.&lt;br /&gt;
# der Lufttemperatur: Die Heizleistung der Wärmepumpe steigt bei höherer Lufttemperatur trotz konstantem Stromverbrauchs.&amp;lt;br&amp;gt;Die Außentemperatur erreicht ihr Maximum an einem sonnigen &#039;&#039;&#039;Durchschnittstag&#039;&#039;&#039; gegen 15:00 Uhr. Ihr Minimum hat sie kurz vor Sonnenaufgang.&lt;br /&gt;
Das FHEM Modul erlaubt es, durch zeitweises Anheben der Solltemperatur ein Aufheizen des Boilers auszulösen.&lt;br /&gt;
 set &amp;lt;device&amp;gt; hotWaterTemperaturTarget 50&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Bei den aktuellen Wärmepumpentarifen ist der Strom des Haupttarifes etwa 17&amp;amp;nbsp;% 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&amp;amp;nbsp;h aufzuheizen, weil dann die Aussentemperatur höher ist und man dann am billigsten und effizientesten die entsprechende Wärme produziert.&lt;br /&gt;
 # Sollwert 5&amp;amp;nbsp;K über Standardwert setzen&lt;br /&gt;
  define Boilertemperatur_hoch at *22:05:00 {\&lt;br /&gt;
   if ($we != 1) { fhem (&amp;quot;set WP hotWaterTemperaturTarget 47&amp;quot;);; }\&lt;br /&gt;
  }&lt;br /&gt;
 # Sollwert auf Standwert zurücksetzen&lt;br /&gt;
  define Boilertemperatur_normal at *23:00:00 set WP hotWaterTemperaturTarget 42&lt;br /&gt;
&lt;br /&gt;
==== Detailliertere Berücksichtigung der Temperaturabhängigkeit====&lt;br /&gt;
&lt;br /&gt;
Damit die Warmwasserbereitung vor 6 Uhr nicht startet, muss die Warmwassertemperatur um 22&amp;amp;nbsp;Uhr eigentlich nur ausreichend hoch über der Auslöseschwelle liegen. Bei einer Auslöseschwelle von 40&amp;amp;nbsp;°C und einem Wärmeverlust (&#039;&#039;statBoilerGradientCoolDownMin&#039;&#039;) von 0,25&amp;amp;nbsp;K/h sind dies z.B. 42&amp;amp;nbsp;°C. Beträgt die Solltemperatur-Hysterese 2&amp;amp;nbsp;K, so muss um 22 Uhr die Solltemperatur kurzzeitig auf 44&amp;amp;nbsp;&amp;amp;deg;C angehoben werden bzw. eigentlich nur 2&amp;amp;nbsp;K oberhalb der aktueller Warmwassertemperatur.&lt;br /&gt;
&lt;br /&gt;
Die obigen 47 °C machen zudem nur Sinn, wenn tagsüber die Effektivitätsverbesserung durch die höheren Außentemperaturen den höheren Strompreis nicht wieder ausgleicht. Zudem muss berücksichtigt werden, dass sich bei höherer Vorlauftemperatur auch die Leistungsaufnahme der Wärmepumpe und damit ihre Arbeitszahl ändert. Diese Veränderung beträgt üblicherweise 2&amp;amp;nbsp;%/K.&amp;lt;br&amp;gt;&lt;br /&gt;
Geht man von einer durchschnittlichen Erhöhung der Vorlauftemperatur von 4 K aus, so erhält man dadurch eine Verschlechterung der Arbeitszahl um 8&amp;amp;nbsp;%. Das heißt, die 17&amp;amp;nbsp;% Preisunterschied müssen um den Effektivitätsverlust von 8&amp;amp;nbsp;% korrigiert werden (1,17/1,08=1,08). In unserem Fall reicht also die Temperaturdifferenz aus, die zu einer 8&amp;amp;nbsp;% höheren Heizleistung führt.&lt;br /&gt;
&lt;br /&gt;
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 &#039;&#039;thermalPower&#039;&#039; oder besser &#039;&#039;statThermalPowerBoiler&#039;&#039; 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 für jede Temperaturdifferenz die prozentuale Änderung der Heizleistung. Nehmen wir an, sie beträgt für 8&amp;amp;nbsp;% 4&amp;amp;nbsp;K.&lt;br /&gt;
&lt;br /&gt;
Über das [http://www.fhem.de/commandref_DE.html#Weather Wettermodul] von FHEM kann man nun Mo-Fr um 22:00 die aktuelle Aussentemperatur &#039;&#039;ambientTemperature&#039;&#039; 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 5 K Temperaturunterschied und jeden Samstag der Boiler nur noch so weit aufgeheizt wird, dass er bis 06:00 nicht mehr auslöst. &lt;br /&gt;
 define Boilertemperatur_hoch at *22:05:00 {\&lt;br /&gt;
   my $delta = ReadingsVal(&amp;quot;Wetter&amp;quot;,&amp;quot;fc2_high_c&amp;quot;,0) - ReadingsVal(&amp;quot;Heizung&amp;quot;,&amp;quot;ambientTemperature&amp;quot;,0);;\&lt;br /&gt;
   if ($delta &amp;gt;=5.0 || $wday == 6) {}&lt;br /&gt;
   my $newTemp = int(ReadingsVal(&amp;quot;Heizung&amp;quot;,&amp;quot;hotWaterTemperature&amp;quot;,42)*2+5)/2;;\&lt;br /&gt;
   if ($newTemp&amp;lt;42.0) {$newTemp = 42;;}\&lt;br /&gt;
   if ($newTemp&amp;gt;44.0) {$newTemp = 44;;}\&lt;br /&gt;
   fhem( &amp;quot;set Heizung hotWaterTemperatureTarget $newTemp&amp;quot; );;\&lt;br /&gt;
 }\&lt;br /&gt;
   else { fhem( &amp;quot;set Heizung hotWaterTemperatureTarget 47&amp;quot; );; }\&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
 define Boilertemperatur_WE_Hoch at *15:00:00 {\&lt;br /&gt;
    if ($we == 1) {fhem( &amp;quot;set Heizung hotWaterTemperatureTarget 47&amp;quot; );; }\&lt;br /&gt;
 }&lt;br /&gt;
 define Boilertemperatur_WE_Normal at *16:00:00 {\&lt;br /&gt;
    if ( ReadingsVal(&amp;quot;Heizung&amp;quot;,&amp;quot;hotWaterTemperatureTarget&amp;quot;, 42 ) != 42.0 ) {fhem (&amp;quot;set Heizung hotWaterTemperatureTarget 42&amp;quot;);;}\&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
===Frostschutz bei Erreichen der Heizungsgrenze===&lt;br /&gt;
Wenn die mittlere Temperatur &amp;quot;averageAmbientTemperature&amp;quot; die Heizgrenze &amp;quot;thresholdHeatingLimit&amp;quot; überschreitet, so schaltet die Anlage in den Sommermodus, indem sie die Rücklaufsolltemperatur &amp;quot;returnTemperatureTarget&amp;quot; auf 15&amp;amp;nbsp;°C absenkt.&lt;br /&gt;
&lt;br /&gt;
Allerding gibt es ein undokumentiertes Anheben der Rücklaufsolltemperatur auf 20 °C, sobald die Außentemperatur &amp;quot;ambientTemperature&amp;quot; 10&amp;amp;nbsp;°C unterschreitet. Ob es bei eine abgekühlten Haus (z.B. wegen Urlaub oder Nachts) dann auch zum ungewollten Heizen kommen kann, ist noch nicht geklärt.&lt;br /&gt;
&lt;br /&gt;
==Abschätzung des elektrischen Verbrauches==&lt;br /&gt;
Über die Attribute &amp;quot;heatPumpElectricalPowerWatt&amp;quot;, &amp;quot;heatPumpElectricalPowerFactor&amp;quot; und &amp;quot;heatRodElectricalPowerWatt&amp;quot; wird der elektrische Verbrauch während der Wärmeerzeugungen (Kompressormotor, Motor(en) der Wärmequelle) und der Heizstäbe festgelegt. Ist zudem das Attribute &amp;quot;doStatistics&amp;quot; auf 1 und der Werte &amp;quot;activeTariff&amp;quot; auf einen Wert zwischen 1 und 9 gesetzt, so berechnet das Modul anhand der Betriebsstunden automatisch den elektrischen Verbrauch innerhalb des angegebenen Stromtarifes.&lt;br /&gt;
&lt;br /&gt;
Normalerweise wird eine Wärmepumpe mit einem zeitabhängigen Stromtarif betrieben (Doppeltarifzähler). Hierbei muss der Werte &amp;quot;activeTariff&amp;quot; zum jeweiligen Zeitpunkt über ein FHEM-Script gesetzt werden.&lt;br /&gt;
Beispiel:&lt;br /&gt;
 define Strom_HT_W at *06:00 { if ( $wday != 0 ) {fhem( &amp;quot;set Heizung activeTariff 1&amp;quot; );;} }&lt;br /&gt;
 define Strom_NT_W at *22:00 set Heizung activeTariff 2&lt;br /&gt;
 define Strom_NT_Sa at *13:00 { if ( $wday == 6 ) {fhem( &amp;quot;set Heizung activeTariff 2&amp;quot; );;} }&lt;br /&gt;
&lt;br /&gt;
== Aktuelle Firmware ==&lt;br /&gt;
Die aktuelle Firmware gibt es [http://www.heatpump24.de/kontoeinst_104.php?layout=1 hier]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Other Components]]&lt;br /&gt;
[[Kategorie:Heizungssteuerung]]&lt;/div&gt;</summary>
		<author><name>Zimberg44</name></author>
	</entry>
</feed>