Heizkörperthermostat Heizprogramme per WebFront einstellen

Hallo Zusammen,

kann mir jemand evtl. genau erklären wie ich unter Zeitplan Editieren das Profil vom Normal nach Frei und Abwesend kopiere. Ich bekomme das irgendwie nicht hin… :rolleyes:

Ich habe das hier von Swifty gelesen:

HM-CC-RT-DN und HM-CC-TC (… die kennen nur ein -internes - Wochenprofil)

Hierzu bitte zunächst den Button „Profil speichern“ (dieser wird rot) und sodann noch einmal den Button „Aktualisieren“ drücken. Jetzt wird das im Thermostat bereits vorhandene Profil in die IPS-Variable geschrieben und kann im TAB „Zeitplan editieren“ beliebig bearbeitet werden. (Hinweis: Das Profil wurde unter dem Profil „Normal“ gespeichert". Im nächsten Schritt kann im TAB >>Zeitplan editieren<< das Profil „Normal“ auf die noch leeren Profile „Frei“ bzw. „Abwesend“ übertragen werden.

Aber entweder klappt das übertragen nicht weil ich irgendwo einen Fehler habe oder ich drücke die falschen Knöpfe :rolleyes:

Hallo…

drück mal den Knopf >>Profil übertragen<<, da klapt ein zusätzliches Menü aus… :slight_smile: … schau mal hier die Bilder an.

Die „Untermenüs“ kannst du dann beim Worte nehmen:

  • „Tagesprofil kopieren nach“ --> z.B. Mo. nach Fr. kopieren (jedoch im selben Wochenprofil)
  • „Wochenprofil übernehmen von“ --> um z.B. das gesamte Profil „Normal“ Wohnzimmer mit dem Profil „Frei“ Küche zu überschreiben o.ä.

Um das Wochenprofil zu übernehmen gehe wie folgt vor:

Wähle zunächst auf der linken Seite das Profil aus, welches überschrieben werden soll (z.B. „Frei“). Wähle dann auf der rechten Seite das Profil aus welches (nach links hin) übertragen werden soll und klicke dann auf der rechten Seite auf den Raum, von dem das soebend aufgewähltes Profil übertragen werden soll. Das Kann übrigens auch der selbe Raum sein, der bereits auf der linken Seite ausgewählt wurde. So kann man z.B. das Profil „Frei“ des Wohnzimmers mit dem Profil „Normal“ des Wohnzimmers überschreiben.

Achtung:
Erst wenn der Knopf „Profil speichern“ gedrückt wird, werden die geänderten Einstellungen in IPS und/oder dem WT gespeichert.

Ich habe mal die Beschreibung entsprechend ergänzt.

Gruß

Swifty

Hallo,

ich hätte auch mal wieder eine Frage …

Ich bräuchte eigentlich 4 Profile (Frühdienst, Spätdienst, Frei, Abwesend) Ist das möglich ? Auf älteren Screenshots meine ich das gesehen zu haben. Du hattest es auf 3 reduziert um die Internen Profile der neuen Wandthermostate nutzen zu können, richtig ?

Grüße

Julian

Edit: Das ist absolut nichts dringendes, fühl dich nicht genötigt das sofort zu implementieren, es war eher so als Idee gedacht, für eine zukünftige Version :wink:

Bin sehr zufrieden mit diesem Script, vielen Dank noch mal dafür !

Hallo Swifty,

danke für die Anleitung :slight_smile: Bei mir hatte sich nichts aufgeklappt, weil die Sachen die sich aufklappen sollten versteckt waren… warum auch immer. Jetzt klappt es. Ich halte aber beim speichern folgende Fehlermeldung:

IPS-Err-PHP  2014-02-24 08:21:55.063  Warning: Wrong parameter count for SetValue()
   Error in Script C:\IP-Symcon\scripts\57523.ips.php on Line 161
  133 in IPSLibrary\app\core\IPSLogger\IPSLogger.inc.php (call IPSLogger_Out)
   37 in IPSLibrary\app\core\IPSLogger\IPSLogger_PhpErrorHandler.inc.php (call IPSLogger_Err)
      in IPSLogger_PhpErrorHandler
  161 in 57523.ips.php (call SetValue)

Er speichert es aber trotzdem.

@Inspra
Hallo…
mit den alten WT war die Anzahl der Profile so ziemlich egal. Ich habe da in den Funktionen eine Prozedur eingebaut, die abgleicht, welches IPS-Interne Profil gerade am WT aktuell ist.
Da ich nur 3 Profile benutze, kamen mir die 3 internen Profile der neuen WT diesbezüflich wie gerufen. Das Händling hat sich dadurch etwas vereinfacht. Teoretisch könnte man hier auch mehr Profile Verwalten, jedoch müsste man dann wieder einen Abgleich einbauen welches IPS-Interne Profil dann zu welchem WT-internen profil übertragen werden soll.
Denkbar währe aber auch die Möglichkeit das Händling so zu gestalten, dass die internen Profile 2 und 3 ignoriert oder mit dem ersten Profil gleichgeschalten werden, so dass dann hier das gleiche Management erfolgen könnte, wie bei den alten WT.
Hierzu müsste ich jedoch die Scripte anpassen … mal sehen … wenn man sich doch nur Zeit wünschen könnte :rolleyes:

Gruß

Swifty

@Superior

… siehe hier:smiley:

Sollte der Fehler dann weg sein … bitte kurze Rückmeldung. Ich werde dann das korrigierte Script hier einpflegen.

Gruß

Swifty

Hi Swifty,

nach dem ich diese Version genommen habe 2014-02-21-hmxml.inc.zip und die HM_Edit aus deinem gepostetem Beitrag scheint es fehlerfrei zu sein… :smiley:
Ich gucke jetzt mal ob ich jetzt noch eine getrennte Zeitplan Edit Funktion für die Einliegwerwohnung hinbekomme :slight_smile:
Vielen Dank für Deine super Hilfestellung schonmal. :slight_smile:

Moin @Swifty!

Wirklich ein geniales Projekt! Ich hatte bereits etwas in der Richtung gebastelt, aber nicht annähernd in diesem Umfang und mit diesem Komfort. Respekt!

Eine Frage … Du hast Dir sicher etwas dabei gedacht über den „Sommer“-Button „30°“ bzw. „On“ zu setzen oder sollte das nicht so sein?

Ich würde das gerne auf die im neuen WT eingestellte ECO-Temperatur ändern, bin aber heute scheinbar zu blond :rolleyes:
Hat einer ´ne Idee wie/ob man die gesetzte ECO-Temp auslesen kann?

Cheers
/Jens

@Superior
Noch ein paar spontane Tipps für die Zweitinstalation:

  1. die Scripte (hmxml, HM_Edit, HM_Heizung_Raumsteuerung, HM_Heizung_Funktionen, HM_Heizung_Konfig) der Instalation kopieren und umbenennen (z.B. xxxx_2)

  2. Neue Struktur anlegen

  3. HM_Heizung_Konfig anpassen

  4. die include-befehle in den obigen Scripten anpassen (Achtung, diese stehen teilweise auch mitten im Script in, z.B. in einzelnen Funktionen. Daher einfach jedes Script nach „include“ durchsuchen.

  5. Profil HM_Heizung_Auswahl im Profilmanager dublizieren und das neue Profil z.B. HM_Heizung_Auswahl_2 benennen. Die Räume aus der neuen Konfig sollte das Script dann dort selbsständig eintragen bzw. löschen.

  6. Im Script HM_Edit die folgenden Zeilen anpassen (jeweils HM_Heizung_Auswahl durch HM_Heizung_Auswahl_2) ersetzen:


...
$HM_Zimmer_Auswahl_id=CreateVariableByName($parentID, "HM_Edit_Zimmer_Auswahl", 1, Profil_anlegen("HM_Heizung_Auswahl"), "HMeditZimmerAuswahl", 1);
IPS_SetVariableCustomAction($HM_Zimmer_Auswahl_id, $_IPS['SELF']);

...

$Wochenprofil_uebernehmen_von_id =  CreateVariableByName($parentID, "HM_Edit_Wochenprofil_übernehmen_von", 1, "HM_Heizung_Auswahl", "HMeditWochenProfiluebernehmen", 14);
IPS_SetVariableCustomAction($Wochenprofil_uebernehmen_von_id, $_IPS['SELF']);


  1. Skript „Funktionen\HM_Heizung_Raumsteuerung“ einmal manuell ausführen.
  2. Skript „Zeitplan - Editieren\HM_Edit“ ebenfalls einmal manuell starten.

Jetzt noch das WFE basteln.

… so mehr fällt mir nicht ein …

Gruß

Swifty

Auch nochmal von mir die Rückmeldung, mit der HM_Edit aus #191 ist die Fehlermeldung weg.
Und wegen den Profilen, wie gesagt, ich komme auch erstmal sehr gut mit 3 Profilen klar.

@ 06r4m3u5

Das ist von Homematic so vorgesehen, dass man im Sommer 30 ° einstellt. Das Ventil geht dann ganz auf, unabhängig von der Temperatur, es findet keine Regelung mehr statt.

@ 06r4m3u5
wenn Du bei „Sommer“ etwas anderes einstellen möchtest, dann musst du nur den ensprechenden Befehl im Script HM_Heizung_Raumsteuerung nach deinem Belieben anpassen. Beim Drücken von „Sommer“ wird der Befehl unter Case -1 ausgeführt (siehe unten). Aktuell wird dort die Solltemperatur auf 100°C = ON gesetzt; d.h. das Ventil ist permanent offen.

Das Auslesen und setzen der ECO sollte über die hmxml gehen … muss ich heute Abend mal schauen.

Gruß

Swifty

 // ****************************
	           // Aktion für Variable Modus
	           // ****************************
				  if (@$_IPS['VARIABLE'] == $HM_Modus_ID)
						{
						Switch ($_IPS['VALUE'])
							   {
							   case -1:
					      	    HM_WriteValueFloat($IPS_HM_DeviceID[$key],"MANU_MODE", 100);
					         	 break;
							   case 0:
						          HM_WriteValueBoolean($IPS_HM_DeviceID[$key],"AUTO_MODE", true);
							       break;
							   case 1:
							       HM_WriteValueFloat($IPS_HM_DeviceID[$key],"MANU_MODE", GetValue(IPS_GetObjectIDByIdent ("SET_TEMPERATURE", $IPS_HM_DeviceID[$key])));
							       break;
			   				case 3:
							       HM_WriteValueBoolean($IPS_HM_DeviceID[$key],"BOOST_MODE", true);
							       break;
								}

						SetValue($_IPS['VARIABLE'], $_IPS['VALUE']);
   			      break;
						}

Naja, nun, … ob oder ob nicht vorgesehen … da bei mir aus Gründen (ich will jetzt nicht mit Details langweilen) die Fernwärme-Anlage immer läuft, will ich natürlich die Stellantriebe im Sommerbetrieb geschlossen halten -> deswegen der Wunsch nach „ECO“.

@Swifty

Danke Dir! Die Stelle im Skript hatte ich bereits gefunden und hätte sie dann wie folgt angepasst:

case -1:
HM_WriteValueFloat($IPS_HM_DeviceID[$key],"MANU_MODE", GetValue(IPS_GetObjectIDByIdent ("<WERT_ECO_TEMP>", $IPS_HM_DeviceID[$key])));
break;

… ich finde den Datenpunkt nur nicht?!

Wäre super, wenn Du etwas finden könntest!

Cheers
/Jens

Hallo…

um die Ventile geschlossen zu halten probier mal statt

HM_WriteValueFloat($IPS_HM_DeviceID[$key],"MANU_MODE", 100);

das dort einzugeben:

HM_WriteValueFloat($IPS_HM_DeviceID[$key],"MANU_MODE", 0);

Dann sollten die Ventile in den Off-Modus gehen.

Sollte dies nicht funktionieren, dann schau ich heute abend mal zu Hause nach, mit welchen Befehl man über die hmxml den ECO-Wert auslesen und setzen kann. Einen direkten Datenpunkt gibt es m.E. nicht (ich lerne jedoch gerne dazu … :rolleyes:)

Gruß

Swifty

Hallo,

ich bin es nochmal. Irgendwie hab ich jetzt Probleme mit den Profilen.
Ich habe sie unter Zeitplan ändern etc. alle angelegt. Wenn ich jetzt bei der Raumsteuerung ein anderes anwähle bekomme ich folgende Fehlermeldung:

Danach klappt auch das umschalten von Automatik auf Manuell nicht mehr. Ich muss dann erst einmal im IP Symcon manuell das Skript „HM_Heizung_Raumsteuerung“ ausführen (dort ist dann ein Ausrufezeichen dran welches dann verschwindet).

Ausserdem werden trotz das ich unter Zeitplan editieren unterschiedliche Profile habe in der Farblichen Übersicht nur noch das Abwesend Profil angezeigt wenn ich ein anderes auswähle. Wochenprofil vom Thermostat neu auslesen klappt auch nicht mehr und bringt die gleiche Fehlermeldung wie oben :confused:

P.S. Ich habe bisher noch keine Änderungen wegen der separaten Steuerung für die Einliegerwohnung gemacht. Da kann es nicht dran liegen.

IPS kann bei Dir nicht mit den BidCos-Service kommunizieren.

Hast du in der hmxml.inc.php auch die IP Deiner CCU bzw. die IP des BidCosServers eingetragen ?

Gruß

Swifty

:rolleyes:
Ich „Idiot“ nein habe ich natürlich nicht…:rolleyes: Danke Dir

Das funktioniert wie erwartet!

Wenn Du die Zeit findest, wäre das natürlich das Optimum! Dann wäre es „rund“ :wink:

Cheers
/Jens

@r4m3u5

… probier mal folgenden Ansatz:


include "hmxml.inc.php";
$id=xxxxxx  /*[Hardware\Haus\1. Etage\Bad\Heizung\HM-CC-TC\CLIMATECONTROL_REGULATOR]*/;
echo HMXML_getParamSet($id,2)['TEMPERATUR_LOWERING_VALUE']; // für HM-CC-TC

oder


include "hmxml.inc.php";
//$id=xxxxxx  /*[Hardware\Haus\1. Etage\Arbeitszimmer\Heizung\HM-TC-IT-WM-W-EU - AZ\THERMALCONTROL_TRANSMIT]*/;
$id=xxxxxx /*[Hardware\Haus\1. Etage\Kinderzimmer\Heizung\HM-CC-RT-DN - KiZ\CLIMATECONTROL_RT_TRANSCEIVER]*/;
echo HMXML_getParamSet($id,"")['TEMPERATURE_LOWERING']; // für HM-TC-IT-WM-W-EU und HM-CC-RT-DN

Hier Sollte die aktuelle ECO-Temperatur ausgegeben werden.
Diese brauchst Du dann nur noch als Soll-Temperatur an den WT zurückschreiben.

Gruß

Swifty

Funktioniert perfekt!

DANKE @Swifty!

Hi Swifty, tolle Leistung - vielen Dank!

Kannst Du diese hmxml.inc.php vielelicht auch in die Anleitung einarbeiten? Bin auch über das Problem gestolpert, da ich ebenfalls nur neue WT habe.

Grüße
galleto