Hallo Mike,
schau dir mal den S_IN vom BLIND_CONTROL an. Der zeigt dir, welches Modul gerade die Kontrolle hat. Das ist die wichtigste Information um zu verstehen, was vor sich geht.
11x ist SECURITY
13x ist INPUT
14x ist NIGHT
15x ist SHADE
Grundsätzlich ist der manuelle Betrieb vom Automatikmodus zu unterscheiden.
Im manuellen Betrieb fährt der BLIND_CONTROL so, wie es UP und DOWN vorgeben, dh bei TRUE an UP hoch und bei TRUE an DOWN runter.
Im automatischen Betrieb (UP und DOWN beide TRUE) fährt der BLIND_CONTROL die Position an, die ihm an PI und AI vorgegeben werden.
Der Wert von PI und AI wird immer vom letzten aktiven Modul in der Kette festgelegt.
Beispiel:
Module INPUT->SHADE->NIGHT->SECURITY->CONTROL
Automatikmodus ist aktiv, alle Module sind deaktiv.
POS und ANG am Input kommen jetzt als Feedback vom CONTROL, INPUT gibt diese Werte auch an PO und AO aus. Alle Module reichen diese Werte weiter durch, da alle inaktiv sind. Am Eingang von CONTROL liegt somit auch dieser Wert an. Nichts bewegt sich.
Jetzt wird der SHADE aktiv, dh der Wert an PI und AI von SHADE wird nicht mehr durchgereicht, sondern SHADE legt jetzt fest, welcher Wert an PO und AO anliegt. Die Folge, CONTROL fährt die Position an, die SHADE ausgibt. Über die Feedbackschleife liegt dieser Wert nun auch am POS, ANG, PO und AO von Input und in der Folge auch an PI und AI von SHADE an. Schaltet sich SHADE ab, bleiben diese Werte also stehen und CONTROL fährt nicht.
Ok, SHADE ist aktiv und hat eine bestimmte Position angefahren, nun wird NIGHT aktiv. PO und AO von NIGHT werden nun von NIGHT festgelegt, CONTROL fährt diese Werte an. SHADE ist immer noch aktiv, PO und AO von SHADE liegen auch an PI und AI von NIGHT an. Das spielt aber keine Rolle, weil NIGHT diese Werte nicht durchreicht.
Schaltet sich NIGHT nun ab, liegen an CONTROL wieder die Werte von SHADE an und CONTROL fährt diese Position wieder an.
Was macht nun der IN von INPUT? Der schaltet den Automatikmodus ein und legt PI und AI von INPUT auf PO und AO. Nur wenn kein anderes Modul aktiv ist, liegen diese Werte dann auch an PI und AI von CONTROL und werden angefahren. Wenn ein anderes Modul aktiv ist, werden diese Werte nicht zu CONTROL durchgereicht.
Kannst du beschreiben, was du eigentlich erreichen willst?
Bei mir war das Problem, dass normalerweise nach Deaktivierung eines Moduls die aktuelle Position stehen bleibt. Bei NIGHT möchte ich das auch so, da wir keine Vorhänge im Haus haben und ich das Hochfahren gern ähhh "situationsabhängig" steuern möchte...
Bei SHADE möchte ich aber, dass nach der Deaktivierung die Raffstore wieder reinfahren. Dazu habe ich meinen SHADE etwas erweitert
Gruß
Klaus
Noch ein Nachtrag zur Info. BLIND_SECURITY funktioniert ein wenig anders. Bei Alarm werden hier nicht PI und AI gesetzt, da man diese ja mit dem manuellen Betrieb übersteuern könnte. Stattdessen wird UP und DOWN gesetzt. Wenn SECURITY das letzte Modul von CONTROL ist, was es ein muss, kann man so SECURITY nicht übersteuern.