ich bin unbedarft im scripting und brauche einen Schubs in die richtige Richtung.
Ich möchte Ist-Werte für die Raumtemperatur von einem HM-Sensor an einen KNX Heizungsaktor übergeben. Dazu habe ich eine funktionierende Sensor/Aktor Abbildung im Webfront:
Ein funktionierender Ansatz erscheint in ID 10160 ein Script:
EIB_Value(32406, GetValue(21409));
laufen zu lassen. Der Ansatz ist nur mäßig schön, weil stark zugeschnitten (fixe IDs).
Wie kann ich z.B. mit $_IPS[‚Value‘] auf den Wert der Instanz zugreifen, ohne die Variable direkt Referenzieren zu müssen? Damit würde das GetValue entfallen.
Es wäre schöner, den Wert in die Variable von ID 32406 zu kopieren, um nicht unnötig viele „Sendende Instanzen“ zu haben. Mit SetValue bekomme ich ein „read only“. Man könnte dann dort ein einfaches
Ich würde das nicht über ein Aktionsskript, sondern über ein Ereignis lösen. Du kannst an den Heizungsaktor ein ausgelöstes Ereignis hängen, das auf Änderungen der Raumtemperatur reagiert. Als Aktion verwendest du dann den PHP-Code EIB_Value($_IPS[‚TARGET‘], $_IPS[‚VALUE‘]).
Die Raumtemperatur (ID 21409) würdest du ja als Auslöser des Ereignisses wählen und damit steht der dazugehörige Wert in $_IPS[‚VALUE‘]. Den Zielwert würdest du dann ja über EIB_Value in die Variable 18501 schreiben, da sich $_IPS[‚TARGET‘] als Ziel des Ereignisses ja auf die entsprechende EIB Group (ID 32406) bezieht.