mediola

Variablenvergleich und Aktion per Skript

Einrichtung, Anschluss und Programmierung der HomeMatic CCU

Werbung


Variablenvergleich und Aktion per Skript

Beitragvon mguenther » 15.04.2018, 20:04

Hallo Zusammen,
ich verzweifle noch und brauch Hilfe. Es geht bei mir um die Steuerung meiner Hauslüftung.
Ich habe durch mehrere Sensoren HM-Variablen mit einer Zahl (Temperatur) belegt. Wenn nun z.B. die Differenz zwischen Temperatur1 und Temperatur2 hat, soll eine andere Variable einen bestimmten Wert einnehmen.

Und das für bestimmte Differenz-Bereiche, z.B.:
Differenz zwischen 0-2.99999999 --> Variable=1
Differenz zwischen 3-6 --> Variable=2
Differenz >6 --> Variable=3

Wie setze ich sowas im Skript um?

danke
Zuletzt geändert von alchy am 15.04.2018, 21:10, insgesamt 1-mal geändert.
Grund: verschoben aus HomeMatic OCCU
------
DANKE!
mguenther
 
Beiträge: 9
Registriert: 12.02.2018, 04:13

Re: Variablenvergleich und Aktion per Skript

Beitragvon alchy » 15.04.2018, 20:25

Das >> H I E R <<sollte reichen, oder?

Alchy

...................
Sprichst Du zu Gott bist Du gesegnet. Spricht Gott zu Dir bist Du schizophren.


Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
alchy
 
Beiträge: 6740
Registriert: 24.02.2011, 02:34

Re: Variablenvergleich und Aktion per Skript

Beitragvon mguenther » 15.04.2018, 21:06

ähm, nicht ganz... bin noch Anfänger.
und ich sehe gerade, dass ich im falschen Bereich (?) bin.
Wollte eigentlich da hin.

gibt es irgendwie nen Tutorial für die Skript-Sprache?
------
DANKE!
mguenther
 
Beiträge: 9
Registriert: 12.02.2018, 04:13

Re: Variablenvergleich und Aktion per Skript

Beitragvon alchy » 15.04.2018, 21:17

Code: Alles auswählen
object out = dom.GetObject(ID_SYSTEM_VARIABLES).Get("Temperaturvariable1");
object in =  dom.GetObject(ID_SYSTEM_VARIABLES).Get("Temperaturvariable2");
object delta = dom.GetObject(ID_SYSTEM_VARIABLES).Get("Temperaturdifferenz");
if ( (in) && (out) && (delta) ) {
WriteLine("Datenpunkt und Variablen in Ordnung");
delta.State( out.Value() - in.Value() );
WriteLine( (out.Value() - in.Value()) #" gespeichert");
}else{WriteLine("Datenpunkt oder eine Systemvariable falsch");
}


Das Script liest zu seiner Laufzeit den Wert aus der Systemvariablen Temperaturvariable1 sowie Temperaturvariable2 aus und speichert die Differenz dann in der Variablen Temperaturdifferenz.
Die Namen kannst du ja anpassen wie du willst.
In einem Programm kannst du dann zusammenklicken wie du reagieren willst.

Wenn Temperaturdifferenz <3 dann..

Alchy

...................
Sprichst Du zu Gott bist Du gesegnet. Spricht Gott zu Dir bist Du schizophren.


Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
alchy
 
Beiträge: 6740
Registriert: 24.02.2011, 02:34


Zurück zu HomeMatic Zentrale (CCU / CCU2 / CCU3)

Wer ist online?

Mitglieder in diesem Forum: zwirni und 11 Gäste







© homematic-forum.de & Lizenzgebern. Alle Rechte vorbehalten. Alle Bilder & Texte auf dieser Seite sind Eigentum
der jeweiligen Besitzer und dürfen ohne deren Einwilligung weder kopiert noch sonstwie weiter verwendet werden.