Generelle technische Frage zu Polling und Events (Max!)

Begonnen von hme, 03 Januar 2017, 00:47:20

Vorheriges Thema - Nächstes Thema

hme


Könnte mir jemand bei folgendem technischen Problem helfen? Ich habe mich gefragt ob JEDER Schaltvorgang (mal abgesehen von Funkstörungen o.ä.) beim jeweils nächsten Polling des Max-Cubes erfasst wird?

Speziell geht es um folgende hypothetische Situation. MAXLAN Modul, Polling ist auf alle 60 Sekunden eingestellt. Ein Fensterkontakt existiert. Ein Watchdog existiert der auf Fensterkontakt:open reagiert.

Zeitpunkt A, Fensterkontakt geschlossen -> Polling 1 erfolgt -> Watchdog löst nicht aus, da Bedingung (Fensterkontakt:open) nicht erfüllt ist
Zeitpunkt B (20 Sekunden nach A) -> Fensterkontakt wird geöffnet
Zeitpunkt C (40 Sekunden nach A) -> Fensterkontakt wird geschlossen
Zeitpunkt D (60 Sekunden nach A) -> Polling 2 erfolgt -> Löst jetzt der Watchdog aus, weil die Bedingung (Fensterkontakt:open) zwischenzeitlich erfüllt war, oder löst der Watchdog nicht aus, weil momentan die Bedingung (wieder) nicht erfüllt ist?


willyk

Das solltest Du eigentlich recht einfach selbst testen können ....

Beim Pollen werden die aktuellen Daten, sprich Zustände, abgeliefert. Bei Polling 2 ist der Kontakt geschlossen, also wird "closed" abgeliefert. Das ist keine Änderung zu Polling 1, also kann der Watchdog nicht auslösen.

Gruss
willyk
NUC mit Ubuntu, MAX!Cube, CUNO, 6 MAX WT, 16 MAX HT, 2 MAX Fensterkontakt, MaxScanner

hme

Danke! Gibt es irgendeine Möglichkeit dieses Verhalten zu realisieren (d.h. Zwischenzustände abzufragen) ohne mit einem CUL den Funkverkehr mitzuschneiden? Das Polling Invall kann man ja m.W. nicht so kurz einstellen, weil dann der Cube blockiert. Wenn das nicht möglich ist würde man ja kurze Fenster/Türöffnungen sehr oft verpassen...