Heizungsthermostat per Skript einstellen

Homematic-, TCL- und Shell-Script, Toolchain, C, etc.

Moderator: Co-Administratoren

Schefti
Beiträge: 12
Registriert: 18.05.2014, 18:56

Heizungsthermostat per Skript einstellen

Beitrag von Schefti » 18.05.2014, 19:12

Hallo,

seit zwei Tagen bin ich Besitzer einer CCU2 und habe mit 2 Thermostaten inkl. Fensteröffner, Brandmelder und Schalter angefangen.
Meldungen absetzen klappt schon mal :D

Worüber ich einfach nichts gescheites finde ist ein simples Einstellen der Wochenpläne auf den Heizungsthermostaten (auch verknüpft, zwei in einem Raum).

Hintergrund:

Im Thermostat kann nur ein Wochenprofil eingestellt werden, nun möchte ich die Möglichkeit haben für ein Thermostat/einen Raum per Auswahl (z.B. über Smartphone, WebUI) ein anderes Profil einzustellen - am Thermostaten weil es auch bei Ausfall der CCU funktionieren soll.

Ich konnte leider kein exemplarisches Beispiel dafür finden. Vielleicht könnte ja mal jemand ein Skriptteil posten um das Wochenprofil zu verändern (einzelnes Thermostat und verknüpfte Thermostate) .

Ich glaube vielen Anfängern wäre sehr geholfen wenn man mal ein Beispiel hätte was nur das setzen der Werte behandelt und nicht ein über diverse Abfragen, Bedingungen und Messungen seitenlanges Skript.

Vielen Dank und Grüße
Schefti

Lueghi
Beiträge: 630
Registriert: 01.11.2007, 21:45
System: Alternative CCU (auf Basis OCCU)
Wohnort: Siebengebirge (bei Bonn)
Hat sich bedankt: 18 Mal
Danksagung erhalten: 2 Mal

Re: Heizungsthermostat per Skript einstellen

Beitrag von Lueghi » 18.05.2014, 20:18

such mal nach Heizungsscript von Erik und alle Deine Wünsche werden erfüllt ....
Gruß Stefan

Schefti
Beiträge: 12
Registriert: 18.05.2014, 18:56

Re: Heizungsthermostat per Skript einstellen

Beitrag von Schefti » 18.05.2014, 20:36

Lueghi hat geschrieben:such mal nach Heizungsscript von Erik und alle Deine Wünsche werden erfüllt ....
Vielen Dank, auf den war ich auch schon gestoßen - trifft aber nicht den Kern :(

1. Viel zu kompliziert, gerade für Anfänger wenn es nur darum geht schlicht die Temperaturen einer Woche zu ändern
2. Es werden die Temperaturen per Skript (alle 30min) von der CCU aus geändert (Modus Manu) nicht aber die Einstellung (Auto) im Thermostat

In der WebUI kann man doch das Wochenprofil eingeben/ändern welches das Thermostat selbständig fährt, kann man dieses Wochenprofil nicht auch per Skript setzen?

Bestimmt ein tolles Skript - erfüllt aber wohl nicht meine Wünsche :wink:

Schefti
Beiträge: 12
Registriert: 18.05.2014, 18:56

Re: Heizungsthermostat per Skript einstellen

Beitrag von Schefti » 24.05.2014, 22:03

Gibt es denn überhaupt eine Möglichkeit das Masterprofile des Thermostaten per Skript zu verändern?
Eigentlich müsste das doch gehen weil es doch bei Max! auch geht?

Danke und Gruß

Gesendet von meinem D6503 mit Tapatalk

buempi
Ehrenmitglied
Beiträge: 12194
Registriert: 29.07.2006, 15:58
Wohnort: Schweiz
Danksagung erhalten: 5 Mal

Re: Heizungsthermostat per Skript einstellen

Beitrag von buempi » 25.05.2014, 07:59

Schefti hat geschrieben:Gibt es denn überhaupt eine Möglichkeit das Masterprofile des Thermostaten per Skript zu verändern?
... nein, das geht nur über das WebUI, nicht über Scripte.

Viele Grüsse
Bümpi

paul53
Beiträge: 2554
Registriert: 26.04.2012, 20:42
Wohnort: Berlin
Danksagung erhalten: 15 Mal

Re: Heizungsthermostat per Skript einstellen

Beitrag von paul53 » 13.06.2014, 11:19

Um welches Thermostat handelt es sich ? HM-CC-TC oder HM-TC-IT-WM-W-EU ?

Der neue Thermostat (HM-TC-IT-WM-W-EU) enthält bereits 3 Wochenprogramme, zwischen denen man allerdings nur per Parameter umschalten kann. Dafür benötigt man ein TCL-Script http://homematic-forum.de/forum/viewtop ... 570#p34570.

Das TCL-Script "setparam.tcl" kann aus einem HM Script aufgerufen werden:

Code: Alles auswählen

! Wochenprogramm aus SV (Typ: Werteliste) einlesen
var wp = dom.GetObject("Wochenprogramm").Value();
wp = wp.ToString();

string addr = dom.GetObject("Gerätename").Address();
string cmd = "tclsh /usr/local/setparam.tcl "#addr#" WEEK_PROGRAM_POINTER int "#wp;
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State(cmd);
Theoretisch ist es auch möglich, die einzelnen Wochenprogramm-Zeiten/-Werte mittels setparam.tcl zu setzen. Dafür existieren 273 Parameterpaare:
P1_TEMPERATURE_SATURDAY_1, P1_ENDTIME_SATURDAY_1,
...
P3_TEMPERATURE_FRIDAY_13, P3_ENDTIME_FRIDAY_13

Die ENDTIME wird in Minuten (5 bis 1440) angegeben.
Versionen: HM-CC-TC 2.1, HM-LC-Sw1 1.9, HM-CC-RT-DN 1.1, HM-MOD-RPI-PCB 1.2.1 (keine CCU)

Schefti
Beiträge: 12
Registriert: 18.05.2014, 18:56

Re: Heizungsthermostat per Skript einstellen

Beitrag von Schefti » 14.06.2014, 14:35

Hallo, hört sich ja gut an - nur geht das auch mit einem Funkstellantrieb?

Gesendet von meinem LG-V500 mit Tapatalk

paul53
Beiträge: 2554
Registriert: 26.04.2012, 20:42
Wohnort: Berlin
Danksagung erhalten: 15 Mal

Re: Heizungsthermostat per Skript einstellen

Beitrag von paul53 » 14.06.2014, 14:58

Der HK-Thermostat hat leider nur ein Wochenprogramm mit 91 Parameterpaaren:
TEMPERATURE_SATURDAY_1, ENDTIME_SATURDAY_1,
...
TEMPERATURE_FRIDAY_13, ENDTIME_FRIDAY_13.

Das HM Script mit Aufruf von "setparam.tcl" könnte dann so aussehen:

Code: Alles auswählen

! Uhrzeit aus SV (Typ: Zeichenkette) einlesen
var t = dom.GetObject("Schaltpunkt_Montag_1").Value();
integer h = t.StrValueByIndex(":",0).ToInteger();
integer m = t.StrValueByIndex(":",1).ToInteger();
t = (60 * h) + m;
t = t.ToString();

string addr = dom.GetObject("Gerätename").Address();
string cmd = "tclsh /usr/local/setparam.tcl "#addr#" ENDTIME_MONDAY_1 int "#t;
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State(cmd);
Versionen: HM-CC-TC 2.1, HM-LC-Sw1 1.9, HM-CC-RT-DN 1.1, HM-MOD-RPI-PCB 1.2.1 (keine CCU)

Schefti
Beiträge: 12
Registriert: 18.05.2014, 18:56

Re: Heizungsthermostat per Skript einstellen

Beitrag von Schefti » 17.06.2014, 11:31

@paul53 Vielen Dank, das hört sich schon einmal super an.

Leider hatte ich noch keine Zeit das zu versuchen. Folgende Fragen hätte ich da noch:

- Die Datei /usr/local/setparam.tcl existiert bei mir nicht, muss ich einfach die aus dem Link übernehmen (ist aber schon recht alt)?
- Bin gerade dabei openHAB auf einem Raspi einzurichten - kann man darüber auch das Wochenprogramm ändern?

Gruß Schefti

paul53
Beiträge: 2554
Registriert: 26.04.2012, 20:42
Wohnort: Berlin
Danksagung erhalten: 15 Mal

Re: Heizungsthermostat per Skript einstellen

Beitrag von paul53 » 17.06.2014, 16:18

Schefti hat geschrieben:- Die Datei /usr/local/setparam.tcl existiert bei mir nicht, muss ich einfach die aus dem Link übernehmen (ist aber schon recht alt)?
Ja, die Datei aus dem Link übernehmen, per ftp in das Verzeichnis /usr/local der CCU kopieren und auf "Ausführbar" setzen.
Versionen: HM-CC-TC 2.1, HM-LC-Sw1 1.9, HM-CC-RT-DN 1.1, HM-MOD-RPI-PCB 1.2.1 (keine CCU)

Antworten

Zurück zu „Softwareentwicklung für die HomeMatic CCU“