Programm wird ausgeführt obwohl Bedingung nicht zutrifft

Einrichtung, Nutzung und Hilfe zu RaspberryMatic (OCCU auf Raspberry Pi)

Moderatoren: jmaus, Co-Administratoren

Benutzeravatar
Centauri2k
Beiträge: 639
Registriert: 17.09.2016, 21:13

Programm wird ausgeführt obwohl Bedingung nicht zutrifft

Beitrag von Centauri2k » 08.11.2018, 11:41

Hallo, ich habe ein Programm erstellt, welches das Licht ausschaltet falls noch eins eingeschaltet ist, sobald ich die Homezone verlassen habe.

Das Programm wird ausgeführt obwohl die Bedingung nicht passt, also die SysVar "Licht_var" auf "ausgeschaltet" steht.

Wenn sich die SysVar "Homezone dev1" oder "Homezone dev2" auf "außer Haus" ändert, wird das Programm ausgeführt, obwohl die SysVar "Licht_var" auf "ausgeschaltet" steht.

Es sollte ja nur reagieren, wenn dann auch die SysVar "Licht_var" auf "eingeschaltet" steht.

Ich habe das Programm schon gelöscht und neu angelegt, es hat aber nichts gebracht.

Habt ihr eine Idee?

Hier mal die Programme ...

Programm welches die SysVar "Licht_var" schaltet:
Bildschirmfoto 2018-11-08 um 11.40.00.png

Programm welches das Licht ausschalten soll wenn SysVar "Homezone dev1" oder "Homezone dev2" auf "außer Haus" steht und SysVar "Licht_var" auf "eingeschaltet" steht:
Bildschirmfoto 2018-11-08 um 11.38.05.png
Danke euch

Black B
Beiträge: 22
Registriert: 15.05.2018, 12:55

Re: Programm wird ausgeführt obwohl Bedingung nicht zutrifft

Beitrag von Black B » 08.11.2018, 13:12

Mhm soweit ich das jetzt verstehe wird das Programm getriggert wenn du die Homezone verlässt. Daher hast du die SV Homezone_dev auf "bei Änderung auslösen".

Erst wenn das Programm getriggert wurde kann es prüfen ob die Definitionen im "WENN" stimmen, falls diese nicht stimmen würde das "SONST" ausgeführt. Wenn kein Licht mehr an ist, passiert daher auch nichts. Das Programm wurde aber dennoch aufgerufen...

Eine Ausführung heißt ja nicht das der "DANN" Pfad abgearbeitet wurde, sondern nur das der Trigger reagiert hat.

Benutzeravatar
Centauri2k
Beiträge: 639
Registriert: 17.09.2016, 21:13

Re: Programm wird ausgeführt obwohl Bedingung nicht zutrifft

Beitrag von Centauri2k » 08.11.2018, 13:15

Es wird insofern ausgeführt, weil die Push Nachricht geschickt wird.

Benutzeravatar
Centauri2k
Beiträge: 639
Registriert: 17.09.2016, 21:13

Re: Programm wird ausgeführt obwohl Bedingung nicht zutrifft

Beitrag von Centauri2k » 08.11.2018, 18:32

Sonst niemand eine Idee?

Black B
Beiträge: 22
Registriert: 15.05.2018, 12:55

Re: Programm wird ausgeführt obwohl Bedingung nicht zutrifft

Beitrag von Black B » 09.11.2018, 07:24

Trifft das denn nur auf das Büro zu oder werden alle Programme zu den einzelnen Leuchten ausgeführt?

Ich hatte mal ein ähnliches Problem, da war irgendwie die SV defekt oder was auch immer, die wurde ausgetauscht und dann lief es.

Benutzeravatar
Centauri2k
Beiträge: 639
Registriert: 17.09.2016, 21:13

Re: Programm wird ausgeführt obwohl Bedingung nicht zutrifft

Beitrag von Centauri2k » 09.11.2018, 17:28

Die SysVars habe ich schon mal neu angelegt, auch mit anderem Namen.

Benutzeravatar
Centauri2k
Beiträge: 639
Registriert: 17.09.2016, 21:13

Re: Programm wird ausgeführt obwohl Bedingung nicht zutrifft

Beitrag von Centauri2k » 09.11.2018, 20:15

Kann mir niemand helfen? Das Problem ist echt nicht schön.

nicolas-eric
Beiträge: 2742
Registriert: 07.01.2015, 23:26
Wohnort: Scheeßel

Re: Programm wird ausgeführt obwohl Bedingung nicht zutrifft

Beitrag von nicolas-eric » 09.11.2018, 21:54

Ich würde erstmal alle betreffenden Programme löschen und neu anlegen. Werden die öfter geändert kam es bei mir auch schon mal zu Problemen.

Benutzeravatar
Centauri2k
Beiträge: 639
Registriert: 17.09.2016, 21:13

Re: Programm wird ausgeführt obwohl Bedingung nicht zutrifft

Beitrag von Centauri2k » 10.11.2018, 01:07

Das habe ich wie bereits geschrieben schon alles gemacht

manfredh
Beiträge: 1526
Registriert: 09.09.2012, 10:41

Re: Programm wird ausgeführt obwohl Bedingung nicht zutrifft

Beitrag von manfredh » 10.11.2018, 10:14

Ich kann jetzt auf den ersten Blick auch keinen Fehler in den Programmen erkennen.

Was ich machen würde:

Zuerst einmal das zweite Programm LichtBueroAus... in zwei Programme aufteilen. Jeder Wenn-Block ein eigenes Programm.

Dann das erste Programm still legen und sukzessive neu aufbauen. Also im Wenn erst mal nur eine Bedingungszeile - testen - dann zweite Bedingunszeile dazu u.s.w.

Außerdem gewissenhafte Prüfung, ob eine der WENN- und DANN-Komponenten in anderen Programmen genutzt wird,
Es gibt 10 Arten von Menschen: solche die Binärcode verstehen und solche, die ihn nicht verstehen.

Antworten

Zurück zu „RaspberryMatic“