NEWS
HeizungsSteuerungs / Festern Open/Close Script
-
zunächst einmal brauchst Du einen "timer Stop" der bei "sonst falls" den ersten timer stoppt.
So wie Du es aktuell umgesetzt hast würde die Heizung auch erst 13 Minuten nach dem schliessen wieder hochfahren - bist Du sicher dass Du das willst?
sollte die Heizung nicht sofort wieder nach dem schliessen auf den Normalmodus zurückfallen?Ich meine Du hast noch eine weitere Unschärfe in deinem Script.
Wenn Du nun beide Fenster geöffnet hast, würde dann der "sonst falls" Fall nicht bereits eintreten wenn Du nur ein Fenster wieder schliessen würdest? -
@BBTown
Hi, danke schon mal für deine Antwort.
Nein du hast recht ich möchte natürlich das die Heizung sofort wieder auf Normalmodus fährt.
Dies habe ich auch geändert, allerdings bekomme ich trotzdem immer noch die Nachricht das die Heizung wieder im Normalmodus läuft. Hast du da eine Idee wie ich diese nicht mehr bekomme?Abgesehen davon habe ich deinen letzten Part nicht verstanden. Meinst du er erkennt das ein Objekt offen oder geschlossen ist und führt das Script aus obwohl nur eins geschlossen ist?
Kopiere ich dann am besten das Skript und mache es pro Fenster oder kann ich die auch zusammen packen (also zwei mal Falls Objekt) untereinander? -
Was sind das für Sensoren, die Werte von 0 und 100 (als String?) liefern ?
-
@paul53
Hi, ich habe mein XS1 eingebunden und das sind Intertechno Fensterkontakte auf 433MHz. -
@Ag3nt_Sn4k3 ich kenne diese Sensoren nicht.
Kennen die nur zwei Zustände?
0 oder 100
oder auch etwas dazwischen? -
@BBTown
Die können nur 0 oder 100. -
@Ag3nt_Sn4k3 ich würde im "sonst falls" dann eine "und" Verknüpfung machen.
WENN Sensor1 = 0 UND Sensor2= 0 DANN erhöhe die Temperatur auf Normalwert -
Die können nur 0 oder 100.
Dann dürften sie aber nicht vom Typ "boolean" sein !
Prinzip der Verknüpfung in Blockly:
-
@paul53 ist so herum vielleicht sogar der einfachere Weg
-
Es geht auch mit einem gemeinsamen Trigger, wenn man die ID des Triggers auswertet.
-
@paul53
Soweit habe ich es nachgebaut so wie ich es verstanden haben. Allerdings habe ich deinen Block "Oder" im ersten falls block nicht gefunden.
Aber ich verstehe noch nicht ganz wo in dem Script der Sensor gelanden wird
-
@Ag3nt_Sn4k3 sagte:
habe ich deinen Block "Oder" im ersten falls block nicht gefunden.
Anschließend rechte Maustaste über dem Block und "externe Eingänge" auswählen.
Das Stoppen des Timers im sonst-Zweig nicht vergessen !
-
@paul53
Vielen dank das habe ich jetzt geschafft und auch den Stop Timeout gesetzt.
Muss ich jetzt noch bei Wert und den leeren feldern etwas einfügen?Ich finde nichts wo ich sage wenn Wert 100 oder 0 ist
-
@Ag3nt_Sn4k3 sagte:
Muss ich jetzt noch bei Wert und den leeren feldern etwas einfügen?
Ja, in die leeren Felder den Wert, den der Datenpunkt bei "Fenster offen" hat, also vermutlich den Text "100".
Wert enthält den Wert des Trigger-Datenpunktes (Du hast hoffentlich keine Variable Wert erstellt ?)
-
@paul53
Okay das habe ich gemacht (erster Roter Kreis) Mathematik ersten block (Zahl) genommen und auf 100 gesetzt.
Die beiden Werte, die noch Rot sind (WERT) muss ich da was ändern?Der Wert ist keine Variable sondern aus Trigger -> Objekt ID. rechte Maustaste auf Wert gestellt.
-
@Ag3nt_Sn4k3 sagte):
Der Wert ist keine Variable sondern aus Trigger -> Objekt ID. rechte Maustaste auf Wert gestellt.
Dann ist es richtig.
@Ag3nt_Sn4k3 sagte:
Mathematik ersten block (Zahl) genommen und auf 100 gesetzt.
Das ist dann richtig, wenn der Datenpunkt die Zahl 100 liefert. Wenn er allerdings einen String "100" liefert, muss ein Textblock mit 100 verwendet werden.
-
@paul53
Ich habe das jetzt mal so gemacht allerdings funktioniert dies nur so semi gut.
Wenn ich beide Fenster öffne bekomme ich die Benachrichtigung 2 x. schließe ich ein Fenster bekomme ich die Benachrichtigung Fenster Offen erneut. Schließe ich dann beide Fenster ist der Gespeicherte Heizungswert überschrieben mit 6°C. Hast du da noch eine Idee? -
@Ag3nt_Sn4k3 Du solltest immer einen Screenshot beifügen, das macht es leichter
-
@Ag3nt_Sn4k3 Vor Ausführen timeout in 13 Min ein weiteres stop timeout einfügen
-