HomeMatic Type Thermostat: Unterschied zwischen den Versionen

Aus FHEMWiki
K (Beispiel passte nicht zum Code)
(Erste Hälfte des Artikels überarbeitet.)
Zeile 1: Zeile 1:
{{HMType}} <!-- generelles HomeMatic Type include; möglichst direkt vor erster Überschrift einbinden -->
{{HMType}} <!-- generelles HomeMatic Type include; möglichst direkt vor erster Überschrift einbinden -->
== HomeMatic Geräte vom Typ Thermostat ==
HomeMatic-Geräte vom Typ '''Thermostat''' ermöglichen es die Raumtemperatur zu regeln. Derzeit werden die folgenden Geräte unterstützt:
(Auswahl) derzeit unterstützter Geräte des Typs ''Thermostat'':
*[[HM-CC-RT-DN Funk-Heizkörperthermostat]]
*[[HM-CC-TC Funk-Wandthermostat]]
*[[HM-TC-IT-WM-W-EU Funk-Wandthermostat AP]]


== Hinweise zur Konfiguration  ==
* [[HM-CC-RT-DN Funk-Heizkörperthermostat]]
Die Thermostate unterscheiden sich in vielen Details und Funktionen. Daher sind Einzelheiten im Device nachzulesen.
* [[HM-CC-TC Funk-Wandthermostat]]
Gemeinsam ist den Controllern, dass sie eine oder mehrere Temperaturlisten als Wochenprogramm unterstützen.
* [[HM-TC-IT-WM-W-EU Funk-Wandthermostat AP]]


=== Temperaturlisten ===
Die Geräte unterscheiden sich im Funktionsumfang und in einigen Details. Einzelheiten sind im jeweiligen Wiki-Topic dokumentiert.
====Manuell====
Gemeinsam ist allen Geräten, dass sie eine oder mehrere ''Temperaturlisten'', oft auch ''Wochenprogramm'' genannt, unterstützen.
Hinweis: Bei den Wandthermostaten heißt der relevante Kanal ''..._climate'', beim HM-CC-RT-DN ist der Kanal ''..._Clima'' zuständig für die Wochenprogramme.


===== Allgemein =====
== Temperaturlisten ==
Mit dem Kommando
set Thermostat_Climate tempListMon 05:30 16.0 07:00 18.0 16:00 18.5 20:30 19.0 24:00 16.0
kann man das Temperaturprofil für den Wochentag ''Montag'' einstellen. Die nach dem Schaltzeitpunkt stehende Temperatur gilt immer '''bis''' zu diesen Zeitpunkt, nicht ab diesem Zeitpunkt. Der letzte Wert muss immer Mitternacht (24:00) sein.
damit ist also 00:00 - 05:30 = 16Grad, 05:30 - 07:00 = 18 Grad. Die Zeit kann in Schritten von 30min eingestellt werden, die Temperatur in 0.1 Grad.
Der Tage beginnt immer um 00:00, der letzte Abschnitt MUSS 24:00 sein.


Ändert man mehrere Tage auf einmal sollte man unbedingt mit "prep" und "exec" arbeiten, da es sonst zu Wiederholungen und langen Bearbeitungen kommen kann. Prep bereitet die Änderung in FHEM nur vor, mit exec werden die Daten dann an das Device übertragen. Das könnte in einem Fhem-Script lauten
Temperaturlisten erlauben die Solltemperatur in Abhängigkeit des Wochentags und der Urzeit einzustellen.


######################################################
{{Hinweis|Der zuständige Kanal heißt bei den Wandthermostaten ''_Climate'', beim [[HM-CC-RT-DN]] ''_Clima'' (ohne "te").}}
# Temperatur-Liste für Zimmer
# setzen per Aufruf von "{SetTempList_Heizung}"
######################################################
sub
SetTempList_Heizung()
  {
    { fhem ("set Thermostat_Climate tempListMon prep 05:30 19.0 07:00 20.5 16:00 19.0 20:30 20.0 24:00 17.0")};
    { fhem ("set Thermostat_Climate tempListTue prep 05:30 19.0 07:00 20.5 16:00 19.0 20:30 20.0 24:00 17.0")};
    { fhem ("set Thermostat_Climate tempListWed prep 05:30 19.0 07:00 20.5 16:00 19.0 20:30 20.0 24:00 17.0")};
    { fhem ("set Thermostat_Climate tempListThu prep 05:30 19.0 07:00 20.5 16:00 19.0 20:30 20.0 24:00 17.0")};
    { fhem ("set Thermostat_Climate tempListFri prep 05:30 19.0 07:00 20.5 15:00 19.0 20:30 20.0 24:00 17.0")};
    { fhem ("set Thermostat_Climate tempListSat prep 07:00 19.0 09:00 21.0 15:00 19.0 21:00 21.0 24:00 17.0")};
    { fhem ("set Thermostat_Climate tempListSun exec 07:00 19.0 09:00 21.0 15:00 19.0 21:00 21.0 24:00 17.0")};
}
# End SetTempList_Heizung


===== Wochenprogramme des HM-TC-IT-WM-W-EU setzen =====
=== Allgemein ===


Der HM-TC-IT-WM-W-EU verfügt über weitere Wochenprogramme P2 und P3.
Temperaturlisten werden mit folgenden sieben Kommandos gesetzt, eines für jeden Wochentag: ''tempListMon'', ''tempListTue'', ''tempListWed'', ''tempListThu'', ''tempListFri'', ''tempListSat'' und ''tempListSun''. Die Kommandos müssen auf den Kanal ''_Climate'' (beim [[HM-CC-RT-DN]]: ''_Clima'' ohne "te") angewendet werden.


Um z.B. das 2. Wochenprogramm eines HM-TC-IT-WM-W-EU zu setzen, kann man (hier beispielhaft für den Samstag) folgenden Befehl benutzen:
'''Syntax:'''


set <HM-TC-IT-WM-W-EU>_Climate tempListSat p2 07:30 16.0 17:00 20.0 19:00 21.0 24:00 16.0
  set <thermostat>_Climate tempList<Tag> [<End-Zeitpunkt> <Temperatur> […]] 24:00 <Temperatur>


Der (implizite) Start-Zeitpunkt einer Temperaturliste ist 0:00 Uhr. Es folgen Paare von End-Zeitpunkt und (Soll-)Temperatur. Die Zeitpunkte können 30-Minuten genau, die Temperaturen 0,1-Kelvin genau eingestellt werden. Der letzte End-Zeitpunkt ''muss'' 24:00&nbsp;Uhr sein.
'''Beispiel:'''
  set <thermostat>_Climate tempListFri <span style="color: blue;">05:30 16.0</span> <span style="color: red;">07:00 22.0</span> <span style="color: green;">16:00 18.5</span> <span style="color: orange;">21:30 21.0</span> <span style="color: blue;">24:00 16.0</span>
Dieses Kommando setzt das Temperaturprofil für Freitag. Der (implizite) Start-Zeitpunkt ist 0:00 Uhr. Es folgen paare von End-Zeitpunkt und Solltemperatur. Der letzte End-Zeitpunkt ''muss'' 24:00&nbsp;Uhr sein. Das Beispiel stellt folgendes Profil ein:
{| class="wikitable"
! Zeitspanne
! Temperatur
|-
| style="color: blue;" | 00:00–05:30 Uhr
| style="color: blue; text-align: right;" | 16.0 °C
|-
| style="color: red;" | 05:30–07:00 Uhr
| style="color: red; text-align: right;" | 22.0 °C
|-
| style="color: green;" | 07:00–16:00 Uhr
| style="color: green; text-align: right;" | 18.5 °C
|-
| style="color: orange;" | 16:00–21:30 Uhr
| style="color: orange; text-align: right;" | 21.0 °C
|-
| style="color: blue;" | 21:30–24:00 Uhr
| style="color: blue; text-align: right;" | 16.0 °C
|}
=== Massenänderung ===
Bei Änderung mehrerer Tage empfiehlt es sich die Änderungen mit <code>prep</code> vorzubereiten und anschließend mit <code>exec</code> an das Gerät zu übertragen, da die Übertragung "teuer" (zeitaufwendig) ist.
'''Beispiel:'''
  set Thermostat_Climate tempListMon prep 05:30 19.0 07:00 20.5 16:00 19.0 20:30 20.0 24:00 17.0
  set Thermostat_Climate tempListTue prep 05:30 19.0 07:00 20.5 16:00 19.0 20:30 20.0 24:00 17.0
  set Thermostat_Climate tempListWed prep 05:30 19.0 07:00 20.5 16:00 19.0 20:30 20.0 24:00 17.0
  set Thermostat_Climate tempListThu prep 05:30 19.0 07:00 20.5 16:00 19.0 20:30 20.0 24:00 17.0
  set Thermostat_Climate tempListFri prep 05:30 19.0 07:00 20.5 15:00 19.0 20:30 20.0 24:00 17.0
  set Thermostat_Climate tempListSat prep 07:00 19.0 09:00 21.0 15:00 19.0 21:00 21.0 24:00 17.0
  set Thermostat_Climate tempListSun <strong>exec</strong> 07:00 19.0 09:00 21.0 15:00 19.0 21:00 21.0 24:00 17.0
=== Alternative Wochenprogramme setzen (HM-TC-IT-WM-W-EU) ===
Das [[HM-TC-IT-WM-W-EU Funk-Wandthermostat AP]] verfügt über weitere Wochenprogramme, P2 und P3.
Um das Wochenprogramm "P2" eines HM-TC-IT-WM-W-EU zu setzen, wird der Temperaturliste "p2" vorangestellt.
'''Beispiel:'''
set <HM-TC-IT-WM-W-EU>_Climate tempListSat <strong>p2</strong> 07:30 16.0 17:00 20.0 19:00 21.0 24:00 16.0
===Templates ===


====Templates ====
Etwas komfortabler kann man Wochenprogramme in einem File verwalten. Man kann beliebig viele templates erzeugen und diese in einem File ablegen. Diese unterschiedlichen Wochenprogramme kann man den Thermostaten zuweisen. So kann man ein Wochenprogramm beliebig vielen Thermostaten zuweisen. Bei Änderungen kann man alle betroffenen Thermostate, die das gleiche Template nutzen sollen, erreichen.  
Etwas komfortabler kann man Wochenprogramme in einem File verwalten. Man kann beliebig viele templates erzeugen und diese in einem File ablegen. Diese unterschiedlichen Wochenprogramme kann man den Thermostaten zuweisen. So kann man ein Wochenprogramm beliebig vielen Thermostaten zuweisen. Bei Änderungen kann man alle betroffenen Thermostate, die das gleiche Template nutzen sollen, erreichen.  


Zeile 58: Zeile 84:
* Temperaturlisten gegen ein Template prüfen  
* Temperaturlisten gegen ein Template prüfen  


=====File erstellen und verwalten =====
====File erstellen und verwalten ====
Ein File mit den Temperaturlisten (Wochenplänen) muss erzeugt werden. Zur Verwaltung der Temperaturprofile sollte die Datei tempList.cfg im Verzeichnis FHEM liegen, dann kann sie mit dem Web-Interface editiert werden.
Ein File mit den Temperaturlisten (Wochenplänen) muss erzeugt werden. Zur Verwaltung der Temperaturprofile sollte die Datei tempList.cfg im Verzeichnis FHEM liegen, dann kann sie mit dem Web-Interface editiert werden.
HMInfo unterstützt das speichern allen temperaturlisten in ein File mit <u>[[Homematic_HMInfo#Speichern|temperaturListen speichern]]</u>. Dies kann man gut als Startpunkt nutzen.  
HMInfo unterstützt das speichern allen temperaturlisten in ein File mit <u>[[Homematic_HMInfo#Speichern|temperaturListen speichern]]</u>. Dies kann man gut als Startpunkt nutzen.  
Zeile 88: Zeile 114:
  tempListFri>07:00 14.0 13:00 16.0 16:00 18.0 21:00 19.0 24:00 14.0
  tempListFri>07:00 14.0 13:00 16.0 16:00 18.0 21:00 19.0 24:00 14.0


=====Templates zuweisen =====
====Templates zuweisen ====
Das Attribut tempListTmpl sollte man allen Thermostaten zuweisen. Dies ist dem jeweiligen Steuerungschannel zuzuweisen
Das Attribut tempListTmpl sollte man allen Thermostaten zuweisen. Dies ist dem jeweiligen Steuerungschannel zuzuweisen
  attr hk1_Clima tempListTmpl setup/tempList.cfg:tempTmpl1
  attr hk1_Clima tempListTmpl setup/tempList.cfg:tempTmpl1
Zeile 96: Zeile 122:
In entsprechenden Kommandos muss man nun nicht mehr den Namen des Templates für den HK angeben, es wird der aus dem Attribut genommen. Man gibt das File an und dann den Namen des Templates im File.  
In entsprechenden Kommandos muss man nun nicht mehr den Namen des Templates für den HK angeben, es wird der aus dem Attribut genommen. Man gibt das File an und dann den Namen des Templates im File.  


===== Überprüfen/Einlesen =====
==== Überprüfen/Einlesen ====
Mit dem verify-Kommando wird überprüft, ob das gegenwärtig vorhandene Temperaturprofil mit dem in der Datei befindlichen übereinstimmt.
Mit dem verify-Kommando wird überprüft, ob das gegenwärtig vorhandene Temperaturprofil mit dem in der Datei befindlichen übereinstimmt.
   set thermostat_Climate tempListTmpl verify FHEM/tempList.cfg:room1
   set thermostat_Climate tempListTmpl verify FHEM/tempList.cfg:room1
Zeile 110: Zeile 136:
überschreibt das gegenwärtige Temperaturprofil des Heizkörperthermostaten mit dem in der Datei befindlichen überschrieben.
überschreibt das gegenwärtige Temperaturprofil des Heizkörperthermostaten mit dem in der Datei befindlichen überschrieben.


=====Templates systemweit nutzen=====
==== Templates systemweit nutzen ====
Sinnvoll erscheint es, das ganze systemweit zu machen. Man legt ein File mit allen Wochenplänen an, die man nutzen will. Dann weißt man die TemplateNamen den Thermostaten zu. Und schließlich prüft oder updates man alle Thermostate in einem System mit einem Kommando. Siehe hierzu [[Homematic_HMInfo#Temperaturlisten|HMInfo temperaturlisten]].
Sinnvoll erscheint es, das ganze systemweit zu machen. Man legt ein File mit allen Wochenplänen an, die man nutzen will. Dann weißt man die TemplateNamen den Thermostaten zu. Und schließlich prüft oder updates man alle Thermostate in einem System mit einem Kommando. Siehe hierzu [[Homematic_HMInfo#Temperaturlisten|HMInfo temperaturlisten]].


[[Kategorie:HomeMatic Components]]
[[Kategorie:HomeMatic Components]]
[[Kategorie:Heizungssteuerung]]
[[Kategorie:Heizungssteuerung]]

Version vom 26. Januar 2016, 13:52 Uhr

Info green.pngHomeMatic Geräte sind mit den folgenden Typen klassifiziert:
HMInfo listet mit der Anweisung set <myHMInfo> models [-f <th>] die verfügbaren / unterstützten Modelle in der Spalte subType auf (mit "-f Detect" z.B. alle mit "Detect" im subtype Namen).

HomeMatic-Geräte vom Typ Thermostat ermöglichen es die Raumtemperatur zu regeln. Derzeit werden die folgenden Geräte unterstützt:

Die Geräte unterscheiden sich im Funktionsumfang und in einigen Details. Einzelheiten sind im jeweiligen Wiki-Topic dokumentiert. Gemeinsam ist allen Geräten, dass sie eine oder mehrere Temperaturlisten, oft auch Wochenprogramm genannt, unterstützen.

Temperaturlisten

Temperaturlisten erlauben die Solltemperatur in Abhängigkeit des Wochentags und der Urzeit einzustellen.


Info blue.png
Der zuständige Kanal heißt bei den Wandthermostaten _Climate, beim HM-CC-RT-DN _Clima (ohne "te").


Allgemein

Temperaturlisten werden mit folgenden sieben Kommandos gesetzt, eines für jeden Wochentag: tempListMon, tempListTue, tempListWed, tempListThu, tempListFri, tempListSat und tempListSun. Die Kommandos müssen auf den Kanal _Climate (beim HM-CC-RT-DN: _Clima ohne "te") angewendet werden.

Syntax:

 set <thermostat>_Climate tempList<Tag> [<End-Zeitpunkt> <Temperatur> […]] 24:00 <Temperatur> 

Der (implizite) Start-Zeitpunkt einer Temperaturliste ist 0:00 Uhr. Es folgen Paare von End-Zeitpunkt und (Soll-)Temperatur. Die Zeitpunkte können 30-Minuten genau, die Temperaturen 0,1-Kelvin genau eingestellt werden. Der letzte End-Zeitpunkt muss 24:00 Uhr sein.

Beispiel:

 set <thermostat>_Climate tempListFri 05:30 16.0 07:00 22.0 16:00 18.5 21:30 21.0 24:00 16.0

Dieses Kommando setzt das Temperaturprofil für Freitag. Der (implizite) Start-Zeitpunkt ist 0:00 Uhr. Es folgen paare von End-Zeitpunkt und Solltemperatur. Der letzte End-Zeitpunkt muss 24:00 Uhr sein. Das Beispiel stellt folgendes Profil ein:

Zeitspanne Temperatur
00:00–05:30 Uhr 16.0 °C
05:30–07:00 Uhr 22.0 °C
07:00–16:00 Uhr 18.5 °C
16:00–21:30 Uhr 21.0 °C
21:30–24:00 Uhr 16.0 °C

Massenänderung

Bei Änderung mehrerer Tage empfiehlt es sich die Änderungen mit prep vorzubereiten und anschließend mit exec an das Gerät zu übertragen, da die Übertragung "teuer" (zeitaufwendig) ist.

Beispiel:

 set Thermostat_Climate tempListMon prep 05:30 19.0 07:00 20.5 16:00 19.0 20:30 20.0 24:00 17.0
 set Thermostat_Climate tempListTue prep 05:30 19.0 07:00 20.5 16:00 19.0 20:30 20.0 24:00 17.0
 set Thermostat_Climate tempListWed prep 05:30 19.0 07:00 20.5 16:00 19.0 20:30 20.0 24:00 17.0
 set Thermostat_Climate tempListThu prep 05:30 19.0 07:00 20.5 16:00 19.0 20:30 20.0 24:00 17.0
 set Thermostat_Climate tempListFri prep 05:30 19.0 07:00 20.5 15:00 19.0 20:30 20.0 24:00 17.0
 set Thermostat_Climate tempListSat prep 07:00 19.0 09:00 21.0 15:00 19.0 21:00 21.0 24:00 17.0
 set Thermostat_Climate tempListSun exec 07:00 19.0 09:00 21.0 15:00 19.0 21:00 21.0 24:00 17.0

Alternative Wochenprogramme setzen (HM-TC-IT-WM-W-EU)

Das HM-TC-IT-WM-W-EU Funk-Wandthermostat AP verfügt über weitere Wochenprogramme, P2 und P3.

Um das Wochenprogramm "P2" eines HM-TC-IT-WM-W-EU zu setzen, wird der Temperaturliste "p2" vorangestellt.

Beispiel:

set <HM-TC-IT-WM-W-EU>_Climate tempListSat p2 07:30 16.0 17:00 20.0 19:00 21.0 24:00 16.0

Templates

Etwas komfortabler kann man Wochenprogramme in einem File verwalten. Man kann beliebig viele templates erzeugen und diese in einem File ablegen. Diese unterschiedlichen Wochenprogramme kann man den Thermostaten zuweisen. So kann man ein Wochenprogramm beliebig vielen Thermostaten zuweisen. Bei Änderungen kann man alle betroffenen Thermostate, die das gleiche Template nutzen sollen, erreichen.

Zusammenfassend:

  • Temperaturlisten der Devices in ein file schreiben
  • Templates definieren, die man mehreren Devices zuordnen kann
  • Template-Änderungen gleichzeitig in mehrere Devices einspielen
  • Temperaturlisten gegen ein Template prüfen

File erstellen und verwalten

Ein File mit den Temperaturlisten (Wochenplänen) muss erzeugt werden. Zur Verwaltung der Temperaturprofile sollte die Datei tempList.cfg im Verzeichnis FHEM liegen, dann kann sie mit dem Web-Interface editiert werden. HMInfo unterstützt das speichern allen temperaturlisten in ein File mit temperaturListen speichern. Dies kann man gut als Startpunkt nutzen. Bsp:

Angenommen HMInfo ist definiert per

define hm HMinfo

legt dieser Aufruf ein initiales Template an.

set hm tempList save FHEM/tempList.cfg


Die Wochenprogramme sollten in FHEM vorliegen. ggf. mit getConfig auslesen.

entities:tempTmpl1
tempListSat>08:00 14.0 15:00 18.0 21:30 19.0 24:00 14.0
tempListSun>08:00 14.0 15:00 18.0 21:30 19.0 24:00 17.0
tempListMon>07:00 14.0 16:00 18.0 21:00 19.0 24:00 14.0
tempListTue>07:00 14.0 13:00 16.0 16:00 18.0 21:00 19.0 24:00 15.0
tempListWed>07:00 14.0 16:00 18.0 21:00 19.0 24:00 14.0
tempListThu>07:00 14.0 16:00 18.0 21:00 19.0 24:00 14.0
tempListFri>07:00 14.0 13:00 16.0 16:00 18.0 21:00 19.0 24:00 14.0
entities:tempTWohnzimmer
tempListSat>08:00 14.0 15:00 18.0 21:30 19.0 24:00 17.0
tempListSun>08:00 14.0 15:00 18.0 21:30 19.0 24:00 14.0
tempListMon>07:00 14.0 16:00 18.0 21:00 19.0 24:00 14.0
tempListTue>07:00 14.0 13:00 16.0 16:00 18.0 21:00 19.0 24:00 15.0
tempListWed>07:00 14.0 16:00 18.0 21:00 19.0 24:00 14.0
tempListThu>07:00 14.0 16:00 18.0 21:00 19.0 24:00 14.0
tempListFri>07:00 14.0 13:00 16.0 16:00 18.0 21:00 19.0 24:00 14.0

Templates zuweisen

Das Attribut tempListTmpl sollte man allen Thermostaten zuweisen. Dies ist dem jeweiligen Steuerungschannel zuzuweisen

attr hk1_Clima tempListTmpl setup/tempList.cfg:tempTmpl1
attr hk2_Clima tempListTmpl setup/tempList.cfg:tempTmpl1
attr hk3_Clima tempListTmpl setup/tempList.cfg:tempTWohnzimmer

In entsprechenden Kommandos muss man nun nicht mehr den Namen des Templates für den HK angeben, es wird der aus dem Attribut genommen. Man gibt das File an und dann den Namen des Templates im File.

Überprüfen/Einlesen

Mit dem verify-Kommando wird überprüft, ob das gegenwärtig vorhandene Temperaturprofil mit dem in der Datei befindlichen übereinstimmt.

 set thermostat_Climate tempListTmpl verify FHEM/tempList.cfg:room1

Mit dem restore-Kommando wird das Temperaturprofil des Heizkörperthermostaten mit dem in der Datei befindlichen überschrieben.

set thermostat_Climate tempListTmpl restore FHEM/tempList.cfg:room1
  • FHEM/tempList.cfg ist die Datei, in dem das Temperaturprofil zu suchen ist. room1 ist der Name des Temperaturprofils, welches in der Datei gesucht wird. Wird keine Datei angegeben wird "template.cfg" im "fhem"-Verzeichnis angenommen.

Man kann einem Thermostat das Attribut tempListTmpl geben. Damit wird der Default-Name des Temperaturprofils für dieses Device gesetzt.

attr thermostat_Climate tempListTmpl FHEM/tempList.cfg:room1
set thermostat_Climate tempListTmpl

prüft das gegenwärtige Temperaturprofil gegen FHEM/tempList.cfg:room1 (da verify der Default ist). Die Prüfung des Profils ist auch Teil des configCheck von HMInfo. Will man explizit kein Temperaturprofil zuweisen sollte man tempListTmpl auf none setzen.

set thermostat_Climate tempListTmpl restore

überschreibt das gegenwärtige Temperaturprofil des Heizkörperthermostaten mit dem in der Datei befindlichen überschrieben.

Templates systemweit nutzen

Sinnvoll erscheint es, das ganze systemweit zu machen. Man legt ein File mit allen Wochenplänen an, die man nutzen will. Dann weißt man die TemplateNamen den Thermostaten zu. Und schließlich prüft oder updates man alle Thermostate in einem System mit einem Kommando. Siehe hierzu HMInfo temperaturlisten.