Fenster löst Programm aus, ohne dass das Fenster geöffnet wird

Einrichtung, Anschluss und Programmierung der HomeMatic CCU

Moderator: Co-Administratoren

Benutzeravatar
SHC
Beiträge: 202
Registriert: 24.10.2007, 13:57

Fenster löst Programm aus, ohne dass das Fenster geöffnet wird

Beitrag von SHC » 04.06.2019, 12:38

Hallo,

durch Zufall bin ich auf ein Programm aufmerksam geworden, wo u.a. das Öffnen eines Fensters/Terrassentür als Trigger definiert ist. Sowohl beim Öffnen als auch beim Schließen soll das Programm laufen. Daher habe ich als Auswahl "bei Aktualisierung" gewählt.

Nun habe ich aber festgestellt, dass das Programm ca. einmal stündlich ausgelöst wird, vermutlich bei jedem "Telegramm", das der Fenstersensor an die Zentrale schickt. Erst habe ich an einen Defekt gedacht, aber es verhalten sich alle Fenstersensoren so. Soll das so sein? Oder programmiere ich das Programm falsch?

Für einen Test habe ich die Fenster in ein neues Programm aufgenommen und lasse mir jeweils eine Mail schicken:

Bild

Alternativ könnte ich natürlich "bei Änderung" auswählen, dann muss ich die Bedingung aber doppelt aufführen:
- Auslösen wenn 'offen' (bei Änderung)
- Auslösen wenn 'geschlossen' (bei Änderung)

Daher hatte ich "bei Aktualisierung" gewählt.


Vielen Dank!
SHC
Dateianhänge
Fenster.JPG

HMNutzer
Beiträge: 710
Registriert: 24.10.2016, 17:18
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 151 Mal
Danksagung erhalten: 22 Mal

Re: Fenster löst Programm aus, ohne dass das Fenster geöffnet wird

Beitrag von HMNutzer » 04.06.2019, 12:59

Servus,

bei Aktualiserung bedeutet, dass das Programm ausgelöst wird, wenn die CCU regelmäßig bei dem Programm vorbeischaut. Welcher Zyklus das ist weiß ich nicht; steht aber sicher irgendwo bei den Anfängertipps.
Du musst das Programm schon auf Änderung umbauen.
Viele Grüße

Martin

RaspberryMatic auf ESXi 7 mit RPI-RF-MOD/HB-RF-ETH. Div. HM und HMIP Funkkomponenten im Holzständerhaus

Benutzeravatar
Roland M.
Beiträge: 9855
Registriert: 08.12.2012, 15:53
System: CCU
Wohnort: Graz, Österreich
Hat sich bedankt: 255 Mal
Danksagung erhalten: 1403 Mal

Re: Fenster löst Programm aus, ohne dass das Fenster geöffnet wird

Beitrag von Roland M. » 04.06.2019, 13:00

Hallo!
SHC hat geschrieben:
04.06.2019, 12:38
Sowohl beim Öffnen als auch beim Schließen soll das Programm laufen. Daher habe ich als Auswahl "bei Aktualisierung" gewählt.
Wie du selber erkannt hast falsch... ;)

Soll das so sein?
Ja.
Das sind die zyklischen Meldungen, anhand derer auch eine Kommunikationsstörung diagnostiziert wird.

Oder programmiere ich das Programm falsch?
Ja.

Alternativ könnte ich natürlich "bei Änderung" auswählen, dann muss ich die Bedingung aber doppelt aufführen:
- Auslösen wenn 'offen' (bei Änderung)
- Auslösen wenn 'geschlossen' (bei Änderung)
Exakt so gehört es.


Roland
Zur leichteren Hilfestellung bitte unbedingt beachten:
  • Bezeichnung (HM-... bzw. HmIP-...) der betroffenen Geräte angeben (nicht Artikelnummer)
  • Kurzbeschreibung des Soll-Zustandes (Was soll erreicht werden?)
  • Kurzbeschreibung des Ist-Zustandes (Was funktioniert nicht?)
  • Fehlermeldungen genau abschreiben, besser noch...
  • Screenshots von Programmen, Geräteeinstellungen und Fehlermeldungen (direkt als jpg/png) einstellen!

-----------------------------------------------------------------------
1. CCU2 mit ~100 Geräten (in Umstellung auf RaspberryMatic-OVA auf Proxmox-Server)
2. CCU2 per VPN mit ~50 Geräten (geplant: RaspberryMatic auf Charly)
3. CCU2 per VPN mit ~40 Geräten (geplant: RaspberryMatic auf CCU3)
CCU1, Test-CCU2, Raspi 1 mit kleinem Funkmodul, RaspberryMatic als VM unter Proxmox, Access Point,...

Benutzeravatar
Roland M.
Beiträge: 9855
Registriert: 08.12.2012, 15:53
System: CCU
Wohnort: Graz, Österreich
Hat sich bedankt: 255 Mal
Danksagung erhalten: 1403 Mal

Re: Fenster löst Programm aus, ohne dass das Fenster geöffnet wird

Beitrag von Roland M. » 04.06.2019, 13:04

Hallo Martin!
HMNutzer hat geschrieben:
04.06.2019, 12:59
bei Aktualiserung bedeutet, dass das Programm ausgelöst wird, wenn die CCU regelmäßig bei dem Programm vorbeischaut.
Nein.
Welcher Zyklus das ist weiß ich nicht;
Bei Aktualisierung bedeutet, dass ein Programm ausgeführt wird, sobald die CCU eine neue Meldung vom Gerät bekommt, unabhängig davon, ob sich dessen Status geändert hat, oder nicht.
Bei den zyklischen Statusmeldungen ändert sich der eben nicht, aber das Gerät sagt damit "Hey, ich lebe noch!".


Roland
Zur leichteren Hilfestellung bitte unbedingt beachten:
  • Bezeichnung (HM-... bzw. HmIP-...) der betroffenen Geräte angeben (nicht Artikelnummer)
  • Kurzbeschreibung des Soll-Zustandes (Was soll erreicht werden?)
  • Kurzbeschreibung des Ist-Zustandes (Was funktioniert nicht?)
  • Fehlermeldungen genau abschreiben, besser noch...
  • Screenshots von Programmen, Geräteeinstellungen und Fehlermeldungen (direkt als jpg/png) einstellen!

-----------------------------------------------------------------------
1. CCU2 mit ~100 Geräten (in Umstellung auf RaspberryMatic-OVA auf Proxmox-Server)
2. CCU2 per VPN mit ~50 Geräten (geplant: RaspberryMatic auf Charly)
3. CCU2 per VPN mit ~40 Geräten (geplant: RaspberryMatic auf CCU3)
CCU1, Test-CCU2, Raspi 1 mit kleinem Funkmodul, RaspberryMatic als VM unter Proxmox, Access Point,...

Benutzeravatar
SHC
Beiträge: 202
Registriert: 24.10.2007, 13:57

Re: Fenster löst Programm aus, ohne dass das Fenster geöffnet wird

Beitrag von SHC » 04.06.2019, 13:08

Hallo Roland,

vielen Dank! Dann habe ich das verstanden und werde es umbauen.

Beste Grüße,
SHC

dtp
Beiträge: 10676
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 328 Mal
Danksagung erhalten: 503 Mal

Re: Fenster löst Programm aus, ohne dass das Fenster geöffnet wird

Beitrag von dtp » 04.06.2019, 14:45

Roland M. hat geschrieben:
04.06.2019, 13:04
Bei Aktualisierung bedeutet, dass ein Programm ausgeführt wird, sobald die CCU eine neue Meldung vom Gerät bekommt, unabhängig davon, ob sich dessen Status geändert hat, oder nicht.
Ist das so?

Gehen wir mal von einem Fenster-Drehgriffkontakt mit den Zuständen "offen", "gekippt" und "geschlossen" aus.

Wenn nun die Auslösebedingung lautet "geschlossen" "bei Aktualisierung auslösen", bei welchen der nachfolgenden Bedingungen wird dann ausgelöst?

1. Änderung von "geschlossen" auf "offen"
2. Änderung von "gekippt" auf "geschlossen"
3. Änderung von "geschlossen" auf "geschlossen"
4. Änderung von "gekippt" auf "offen"
5. Änderung von "offen" auf "offen"

Ich meine, die Antworten lauten

1. ja
2. ja
3. ja
4. nein
5. nein

Würde man die Auslösebedingung auf "bei Änderung auslösen" ändern, so wäre nur noch 2. mit ja zu beantworten. Kurzum, bei einer Aktualisierung muss die Bedingung zumindest vor oder nach der Änderung erfüllt gewesen sein. Alles andere wäre ja auch Harakiri. 8)
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

Benutzeravatar
Sammy
Beiträge: 9172
Registriert: 09.09.2008, 20:47
Hat sich bedankt: 15 Mal
Danksagung erhalten: 174 Mal

Re: Fenster löst Programm aus, ohne dass das Fenster geöffnet wird

Beitrag von Sammy » 04.06.2019, 15:24

Du wirfst "Programmausführung" und "Ausführen des ersten Dann-Teils" durcheinander.
Eine beliebige Aktualisierung sorgt (bei Aktualisierung) dafür, dass das (ganze) Programm (mit dem Prüfen der Bedingungen) ausgeführt wird.
Links: CCU-Logik, Tipps für Anfänger, WebUI-Doku, Expertenparameter, virtuelle Aktorkanäle
Inventur vom 22.01.14: 516 Kanäle in 165 Geräten, 132 Programme, 270 Direkte Verknüpfungen
Ich übernehme für alle von mir gegebenen Hinweise, Tipps und Links keine Haftung! Das Befolgen meiner Tipps ist nur für Fachkundige gedacht und erfolgt auf eigene Gefahr!

Benutzeravatar
Roland M.
Beiträge: 9855
Registriert: 08.12.2012, 15:53
System: CCU
Wohnort: Graz, Österreich
Hat sich bedankt: 255 Mal
Danksagung erhalten: 1403 Mal

Re: Fenster löst Programm aus, ohne dass das Fenster geöffnet wird

Beitrag von Roland M. » 04.06.2019, 15:40

Hallo Thorsten!
dtp hat geschrieben:
04.06.2019, 14:45
Ist das so?
Meines Erachtens ja!

Wenn nun die Auslösebedingung lautet "geschlossen" "bei Aktualisierung auslösen", bei welchen der nachfolgenden Bedingungen wird dann ausgelöst?

1. Änderung von "geschlossen" auf "offen"
2. Änderung von "gekippt" auf "geschlossen"
3. Änderung von "geschlossen" auf "geschlossen"
4. Änderung von "gekippt" auf "offen"
5. Änderung von "offen" auf "offen"

Ich meine, die Antworten lauten

1. ja
2. ja
3. ja
4. nein
5. nein
4. ja
5. ja

Bitte beachte: Das Programm wird ausgelöst (bekommt neuen Zeitstempel!), was dann im Programm ausgeführt wird, steht auf einem anderen Blatt!

Nehmen wir dein obiges Beispiel und programmieren
WENN Fenster geschlossen (aulösen auf ...)
DANN MP3-Ansage "Fenster ist geschlossen"

Bei Auslösen bei Änderung wird die Ansage einmal ausgeführt, wenn das Fenster von der Kippstellung oder Vollöffnung geschlossen wird.
Bei Auslösen auf Aktualisierung dagegen wird die Ansage im Abstand der zyklischen Statusmeldungen (je nach Gerät ~1 bis ~24 h) dauernd wiederholt, solange das Fenster geschlossen ist.

Kurzum, bei einer Aktualisierung muss die Bedingung zumindest vor oder nach der Änderung erfüllt gewesen sein.
Nein.
Denke da an die immer wiederkehrenden Fragen a la "Rolladenaktor klickt alle 3 Minuten" oder "Wenn ich den Rolladen öffne, geht er gleich wieder zu" - nur weil der Lichtsensor regelmäßig Werte meldet und das Beschattungsprogramm auf Aktualisieren steht...


Roland
Zur leichteren Hilfestellung bitte unbedingt beachten:
  • Bezeichnung (HM-... bzw. HmIP-...) der betroffenen Geräte angeben (nicht Artikelnummer)
  • Kurzbeschreibung des Soll-Zustandes (Was soll erreicht werden?)
  • Kurzbeschreibung des Ist-Zustandes (Was funktioniert nicht?)
  • Fehlermeldungen genau abschreiben, besser noch...
  • Screenshots von Programmen, Geräteeinstellungen und Fehlermeldungen (direkt als jpg/png) einstellen!

-----------------------------------------------------------------------
1. CCU2 mit ~100 Geräten (in Umstellung auf RaspberryMatic-OVA auf Proxmox-Server)
2. CCU2 per VPN mit ~50 Geräten (geplant: RaspberryMatic auf Charly)
3. CCU2 per VPN mit ~40 Geräten (geplant: RaspberryMatic auf CCU3)
CCU1, Test-CCU2, Raspi 1 mit kleinem Funkmodul, RaspberryMatic als VM unter Proxmox, Access Point,...

dtp
Beiträge: 10676
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 328 Mal
Danksagung erhalten: 503 Mal

Re: Fenster löst Programm aus, ohne dass das Fenster geöffnet wird

Beitrag von dtp » 04.06.2019, 16:35

Danke für Eure Erklärungen. Ich weiß schon, warum ich Skripte viel lieber mag, als diese elende Programmlogik. Und das nach so vielen Jahren mit der HomeMatic. 8)

Um ehrlich zu sein habe ich aber fast kein einziges Programm, das die Bedingung "auf Aktualisierung auslösen" enthält. Ich bin aber wirklich bisher davon ausgegangen, dass selbst bei "auf Aktualisierung auslösen" die zugehörige Nebenbedingung erfüllt sein muss, damit überhaupt ein Auslösen des Programms erfolgen kann.
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

Benutzeravatar
Roland M.
Beiträge: 9855
Registriert: 08.12.2012, 15:53
System: CCU
Wohnort: Graz, Österreich
Hat sich bedankt: 255 Mal
Danksagung erhalten: 1403 Mal

Re: Fenster löst Programm aus, ohne dass das Fenster geöffnet wird

Beitrag von Roland M. » 04.06.2019, 16:52

Hallo Thorsten!
dtp hat geschrieben:
04.06.2019, 16:35
Ich weiß schon, warum ich Skripte viel lieber mag,
Gib mir eine vernünftige Programmiersprache für HM, dann lerne ich sie (nach Basic, COBOL, Pascal und C) gerne auch noch (und nein, Bindfäden gehören nicht dazu! :twisted: ).
Aber bitte nicht diesen Script-Sprachfehler! :twisted: :mrgreen:

als diese elende Programmlogik.
Man muss nur einmal vertraut sein... ;)

Um ehrlich zu sein habe ich aber fast kein einziges Programm, das die Bedingung "auf Aktualisierung auslösen" enthält.
Nein, ich auch nicht.
Einzig beim Arbeiten mit Temperaturen (Min/Max, Protokollieren, etc.) verwende ich das immer wieder einmal.
WENN Temp > -20°C (Auslösen bei Aktualisierung) [also innerhalb des Messbereiches]
DANN ...


Roland
Zur leichteren Hilfestellung bitte unbedingt beachten:
  • Bezeichnung (HM-... bzw. HmIP-...) der betroffenen Geräte angeben (nicht Artikelnummer)
  • Kurzbeschreibung des Soll-Zustandes (Was soll erreicht werden?)
  • Kurzbeschreibung des Ist-Zustandes (Was funktioniert nicht?)
  • Fehlermeldungen genau abschreiben, besser noch...
  • Screenshots von Programmen, Geräteeinstellungen und Fehlermeldungen (direkt als jpg/png) einstellen!

-----------------------------------------------------------------------
1. CCU2 mit ~100 Geräten (in Umstellung auf RaspberryMatic-OVA auf Proxmox-Server)
2. CCU2 per VPN mit ~50 Geräten (geplant: RaspberryMatic auf Charly)
3. CCU2 per VPN mit ~40 Geräten (geplant: RaspberryMatic auf CCU3)
CCU1, Test-CCU2, Raspi 1 mit kleinem Funkmodul, RaspberryMatic als VM unter Proxmox, Access Point,...

Antworten

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