Wer ändert Variable

Hallo zusammen, bin seit 2 Wochen stolzer Besitzer von IP Symcon und gerade schwer am programmieren.
Mir stellt sich daher folgende Frage:
Habe ein Raumthermostat von Homematic HM-CC-TC, dies steuere ich auch über ein Heizungsprogramm.
Würde aber gerne mitkriegen wenn jemand direkt an dem Regler die Soll Temperatur ändert.
Wenn ich die Variable selbst triggere bei Änderung kommt bei IPS_SENDER immer Variable.
Wie finde ich den raus ob die neue Soll Temperatur von einem Skript (Automatik) oder am Wandthermostat selbst geändert wurde?
Danke schonmal für eure Hilfe, tolles System, tolles Forum…
Werde mich in naher Zukunft auch mit einigen Skripts einbringen, da ich mich mit PHP eigentlich ganz gut auskenne… :slight_smile:
Grüße
Oli

na da muss man ja antworten :smiley:

Die Übertragung der Daten von IPS zum Wandthermostat können schon mal 5 Minuten verzögert erfolgen (ebenso im umgekehrten Fall). Die Solltemperatur wird in der Wandthermostat-Instanz abgelegt (die müsste der HM-Konfigurator automatisch mit angelegt haben. Ich hab meine alle umbenannt, daher weis ich momentan nicht wie die default heißen. Such mal nach einer Instanz mit Variablen „ADJUSTING_COMMAND“ und „ADJUSTING_DATA“. Da ist auch die Variable für die Solltemperatur dabei

Hallo Raketenschnecke…
von dir habe ich ja auch schon einiges gelesen hier… :slight_smile:
Danke für die Antwort.
Aber ich glaub du hattest das falsch verstanden.
Das die Übertragung dauern kann weiß ich, habe daher schon Status emulieren aktiviert.
Mich hat interessiert wie ich rausfinde wer (also welches Skript oder ob Webfront oder ob der Wandthermostat) den Wert ändert. Wenn ich am Wandthermostat also den Wert ändere möchte ich in IPS mitkriegen, dass die Soll Temperatur von dem Wandthermostat geändert wurde und nicht von einem Skript.
Hintergrund ist folgender:
Die Heizungen laufen normal auf Automatikmodus, dies ist eine Variable.
Wenn aber an dem Wandthermostat manuell etwas geändert wird, dann soll diese Variable in den Handbetrieb umschalten und mein Skript setzt dann vorerst keine Werte mehr aus dem Automatikprogramm…
Hoffe ich habe mich verständlich ausgedrückt… :slight_smile:
Oli

jiepp, das hab ich in der Tat falsch verstanden :wink: Allerdings kann ich Dir die Frage nun nicht wirklich beantworten, sorry

Update: der Ferengi löscht doch tatsächlich seine Postings… ts ts ts…

aber über den Link kannst du zumindest rausfinden ob über ein Script oder über das Webfront geändert wurde. Sind beide Kriterien nicht erfüllt muss es wohl der Wandthermostat gewesen sein (oder so ähnlich, mal auf die Schnelle gedacht)

Link vom Ferengi:smiley:

Hallo Oli,

ich denke was Du suchst ist $IPS_VARIABLE.

Systemvariablen: IP-Symcon :: Automatisierungssoftware

In dieser steht die ID der Variable die das Skript getriggert hat.

Ganz so einfach ist es leider nicht.
Der Trigger (Ereignis) sitzt ja auf der Variablen (ereignis Änderung) wenn ich dann die $IPS_VARIABLE ausgebe ist dies natürlich die Variable selbst die das Skript triggert… Ich sehe dann aber nicht wer die Variable geändert hat… Oder soll ich den Trigger anders einbauen?
Wenn ja, wie :slight_smile:

Oli

Habe ein Raumthermostat von Homematic HM-CC-TC, dies steuere ich auch über ein Heizungsprogramm

Meinst du das interne Programm des HM-CC-TC oder ein Programm das Du über IPS steuerst?

Bin dabei ein eigenes zu erstellen angelehnt en Ernies Skript… :slight_smile:
Die Thermostate stehen auf Cent…

Solange dein Heizprogramm im Raumthermostaten läuft sehe ich da schwarz.

Dachte auch noch an die beiden ADJUST-Variablen des RT aber die zeigen nur die Kommunikation mit dem Stellantrieb an.

ADJUSTING_COMMAND - Liefert das aktuelle Regelkommando, welches der Raumregler den angelernten Heizungventilen sendet. (integer, 0…4)
ADJUSTING_DATA - Liefert die aktuelle Ventilposition, welche der Raumregler den angelernten Heizungsventilen sendet. (integer, 0…255)

Ok, trotzdem danke… Hatte ich mir schon fast gedacht…
Werde es dann wohl über Umwege machen… Wenn sich der Wert ändert prüfe ich was laut meinem Heizprogramm sein müsste und wenn das nicht übereinstimmt, dann hat wohl jemand „Hand angelegt“ am Thermostat selber oder am Touchscreen und dann schalte ich meinen programmierten Modus auf Hand und deaktiviere mein eigenes Heizprogramm…
Bis wann muss ich mir überlegen, aber ich denke immer nachts um 3 Uhr stelle ich wieder alle Raumthermostate dann wieder auf Automatikmodus und schiebe die Werte aus meinem Heizprogramm in die Thermostate…
Ziemlich kompliziert das Heizzeug… :frowning:

So sollte es klappen.

Kompliziert wird es immer wenn etwas übersteuern kann, in diesem Fall auch noch ein unberechenbarer Mensch :wink:

Aber sein Heizprogramm liegt doch im Skript, wenn ich das richtig sehe. Wäre es im Thermostaten selbst, dann geht es IMHO nicht. Aber wenn die Teile zentral gesteuert sind, dann passt doch der Ansatz von @RS
Alles was nicht vom Skript kommt, muss vom Wandthermostat selbst kommen.

warum denn? es geht doch genau so gut ein Heizprogramm im Wandthermostat zu haben und dieses per IPS zu „übersteuern“. Ich habs bei mir schon wegen der Ausfallsicherheit so gelöst (seit letztem Winter) - allerdings hatte ich noch keinen Ausfall:D

Bin dabei ein eigenes zu erstellen angelehnt en Ernies Skript… :slight_smile:
Die Thermostate stehen auf Cent…

Oli nutzt anscheinend im Moment das interne Programm des RT, somit läßt sich nicht feststellen was die Soll-Temperatur geändert hat, war es das interne Programm oder das Stellrad.

Wenn es mal durch ein externes (IPS) Programm abgelöst wird kann ja die Änderung der Setpoint nur noch durch manuelles Eingreifen erfolgt sein.

Na das hört man doch gerne! Wäre schön, hinterher zu hören, was Du geändert hast bzw. was Dir gefehlt hat …

Gruß,

ernie

Aber gerne doch Ernie… :slight_smile:
Der Hand / Automatik / Urlaub Modus will ich z.b. für jeden Raum dazu machen, bzw. auch zentral steuerbar.
Heißt wenn jemand meint er muss am Raumthermostat drehen dann wechsel ich in den Handmodus und lasse die Temperatur die gewünscht ist als Soll…
Es ist ausserdem etwas komplizierter sich in fremde Programmierungen einzudenken und die dann zu ändern anstatt diese neu mit eigenem Grundgerüst zu machen… :slight_smile:

Oli nutzt anscheinend im Moment das interne Programm des RT

nein, eben nicht, ich will alles über ips steuern… wie du schon sagtest vergleiche ich den wert im Soll (Thermostat) dann eben immer mit meinem Heizprogramm Soll wenn es abweicht muss ja jemand dran rumgedreht haben und ich deaktiviere (vorerst) meinen Automatikmodus…

Oli

nach 3 Monaten fallen die Dinger aus und dann dreht eh keiner mehr dran rum :smiley:

Ok, kann man machen. Ich lasse meine im Automatikmodus laufen. Dadurch ist auch sichergestellt, dass die manuell erdrehten Wünsche beim nächsten Schaltpunkt vergessen sind und somit auch nicht unnötig geheizt wird.
Für mich war der Punkt der Individualregelung auch lange ein Thema aber nach einiger Erfahrung hielt dieser Ansatz dauerhaft keiner Aufwand-Nutzen-Risiko-Analyse stand. Ne Heizung ist halt auch mehr als träge.

Dem Stimme ich zu. Der Programmier-Aufwand erhöht sich ziemlich und ob meine Frau jetzt irgendwie an die Heizung geht um was umzustellen (also direkt am Thermostat) oder das iPad oder den Browser am Laptop zum umstellen benutzt macht in meinen Augen nicht viel Unterschied. Es ist aber klar geregelt, wo neue Temperaturen her kommen.