Wenn dies dein erster Besuch hier ist, lies bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich vermutlich registrieren, bevor du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um den Registrierungsprozess zu starten. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.
@Michel:
Wenn er das "Aktualisieren" Flag rausnimmt, sollten die anderen Aktoren in der GA doch auch nicht reagieren (schalten), wenn gelesen wird, oder?
Mal noch unabhängig davon: Ich finde es designmäßig völlig krank wenn irgendwas schaltet nur weil man den Status von etwas ausliest. Mir ist bei keiner anderen Programmierung sowas schonmal untergekommen.
Ich verstehe nicht, wieso es keine klare Unterscheidung zwischen "ich will schreiben" und "ich will lesen" gibt, dass die Aktoren berücksichtigen.
Gibt es dafür einen sinnvollen Grund?
Also ein Szenario in dem ein Aktor schalten soll wenn der Status eines anderen Aktors gelesen wird?
Wenn man das abhängig machen will wäre es doch sinnvoller, den Status von Aktor 1 zu lesen und dann an alle anderen per Schreibbefehjl zu schicken.... *grübel*
Ist das Aktualisieren-Flag gesetzt, so wird ein Antworttelegramm eines Lesevorgangs als Schreibtelegramm interpretiert, d. h. der Objektstatus der Teilnehmer wird eventuell verändert.
Die Anwahl und Auswertung des Aktualisieren- Flag kann nur an System 2, System B und System 7 Busankopplern vorgenommen werden.
System 1 Busankoppler interpretieren Antworttelegramme immer als Schreibtelegramme und ändern deshalb eventuell ihren Objektstatus.
Trotzdem haben die Gruppenadressen für übergeordnete Funktionen an der ersten Stelle generell nichts verloren.
Als "sendende" Gruppenadresse gehört die kanalspezifische. Alles andere ist Murks.
Ausserdem ist das Verhalten bei gesetztem A-Flag oft durchaus erwünscht
@Merlin: Also ich habe bei mir konkrete Szenarien, bei denen das sinnvoll ist vor allem beim Initialisieren nach einem Reset. Beispiel:
Du hast einen Sensor und darüber eine Statusanzeige realisiert. In der zugehörigen GA sind dann noch mehrere andere KOs.
Den Sensor hast Du so eingestellt, dass er nach einem Neustart seine Stati aktualisiert (also die GA liest). In der Regel hast Du ganz gezielt bei bestimmten KOs das L-Flag gesetzt. Wenn nun eine Antwort kommt, möchte ich, dass alle anderen KOs diesen Status annehmen um einen konsistenzen Zustand zu haben.
Und das ist das was ich mit meinem vorigen Post meinte: So wie ich das kenne, nehmen die anderen KOs den Status nur an, wenn auch das A-Flag gesetzt ist. Ansonsten reagieren sie nur auf eine gezielte Schreibanforderung. Ich muss aber auch gestehen, dass ich damit auch schon auf die Nase gefallen bin, weil sich einige KOs dann doch nicht so verhalten haben wie zu erwarten gewesen wäre
Also mach ich auf jeden Fall die individuelle Adresse des Aktors an die erste Stelle und prüfe, ob irgendwo ein Aktualisierungsflag ist und lösche das ggf.
Richtig soweit?
Das mit dem Busankoppler verstehe ich jetzt aber noch nicht:
Der taster schickt z.B. ein "Umschalten" an 1/1/1. Die LED des Tasters soll dann den aktuellen Status des Aktors anzeigen.
Wie muss ich das dann genau machen?
Hilft aber auch nicht gegen sein Problem mit doppeltem Tasterdruck.
Damit meinst Du, dass ich bei einem Taster ggf. zweimal drücken muss in dem Szenario:
Taster für Lampe wird betätigt, schickt "Umschalten" an den Aktor und meint dann, dass der Aktor "ein" ist.
Dann drücke ich irgendwo "zentral aus", das licht geht aus, dann muss ich aber zweimal auf dem "UM" Taster drücken, damit das Licht wieder angeht?
Mal noch unabhängig davon: Ich finde es designmäßig völlig krank wenn irgendwas schaltet nur weil man den Status von etwas ausliest....
Ich verstehe nicht, wieso es keine klare Unterscheidung zwischen "ich will schreiben" und "ich will lesen" gibt, dass die Aktoren berücksichtigen.
Deswegen ist das A-Flag standardmäßig meist nicht aktiviert
Ich vermute mal, daß dein damaliger Eli einfach generell alle Flags aktiviert hat, nach dem Motto "viel hilft viel".
Also mach ich auf jeden Fall die individuelle Adresse des Aktors an die erste Stelle
Exakt!
und prüfe, ob irgendwo ein Aktualisierungsflag ist und lösche das ggf.
Richtig soweit?
Ja, ist aber nach Schritt 1 nicht mehr notwendig, da ja kein anderer Aktor mehr auf "die individuelle Adresse des Aktors hört".
Trotzdem "sauberer".
Der taster schickt z.B. ein "Umschalten" an 1/1/1. Die LED des Tasters soll dann den aktuellen Status des Aktors anzeigen.
Wie muss ich das dann genau machen?
Was bitte ist jetzt die GA 1/1/1?
Allgemein:
Du hast 2 Tastsensoren, die nur ein und denselben Kanal schalten sollen ->
die Gruppenadresse dieses Kanals ist als einzige im Tastsensor hinterlegt ->
kein Problem, denn beide bekommen ja den Schaltbefehl des anderen Tastsensors mit (hören auf dieselbe Adresse) ->
senden dann beim nächsten Tastendruck den UM-Befehl mit dem richtigen Wert (EIN/AUS).
Ein Tastsensor schaltet wie oben, der andere jedoch mehrere Aktorkanäle über eine andere Gruppenadresse (z.B. 0/0/10).
-> So lange diese nicht ebenfalls als zusätzliche "hörende" Adresse beim ersten Tastsensor eingetragen ist, bekommt der Tastsensor nicht mit, daß "seine" Leuchte über die 0/0/10 geschaltet wurde. Also bleibt seine LED dunkel und er sendet bei einem Tastendruck das falsche Telegramm ->
man muss also zweimal drücken, um das gewünschte Ergebnis zu erhalten.
Für die korrekte UM-Schaltung des Tastsensors für Zentral-AUS (0/0/10) ist es eben, wie beschrieben, etwas komplizierter
Mit dem doppelten Tastendruck muss ich vermutlich weiter leben, aber das ging schon 12 Jahre
Nein, das musst du nicht!
Im Zweifel schick mir einfach mal dein ETS-Projekt und ich schau mal, wie man das Problem mit dem doppelten Tastendruck bei Zentral-AUS bei dir lösen kann. Für alle anderen Tastsensoren sollte das ja jetzt gelöst sein.
Nur ein Beispiel für die GA eines Aktors....
Das mit dem zweiten Fall Deiner Liste (was leider alle Lichter betrifft) muss ich mir nochmal genau anschauen und verstehen.....
Im Zweifel schick mir einfach mal dein ETS-Projekt und ich schau mal, wie man das Problem mit dem doppelten Tastendruck bei Zentral-AUS bei dir lösen kann. Für alle anderen Tastsensoren sollte das ja jetzt gelöst sein.
Danke für das Angebot. Das mach ich doch gerne wenn ich die ganzen Adressen umgestellt hab und die Lichter beim Lesen eines Status nicht mehr ausgehen
(Also dann, wenn das Grundsetup stimmt )
Hab´ mir jetzt mal die Mühe gemacht und die Applikation deines Schaltaktors 75314004 importiert und siehe da: es gibt kein Objekt für den Status.
Ergo: der Aktor kann seinen Status nicht aktiv (an einen Tastsensor) senden.
So, jetzt auch den 6-fach mal importiert. Gute Nachricht:
Der 6-fach hat (mit der richtigen Applikation) Rückmeldeobjekte und (mit einer anderen Applikation) auch die Möglichkeit ODER-Verknüpfungen anzulegen.
[ACHTUNG] Jetzt auf keinen Fall einfach eine andere Applikation auswählen!
Damit löscht du die vorhandenen Assoziationen!
[/ACHTUNG]
Je nach dem, wie der Aufbau deiner Anlage ist, besteht eventuell die Möglichkeit durch relativ einfache Anpassungen alle deine Probleme zu beseitigen.
Wir verarbeiten personenbezogene Daten über die Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen. Weitere Informationen findest Du in unserer Datenschutzerklärung.
Indem Du unten auf "ICH stimme zu" klickst, stimmst Du unserer Datenschutzerklärung und unseren persönlichen Datenverarbeitungs- und Cookie-Praktiken zu, wie darin beschrieben. Du erkennst außerdem an, dass dieses Forum möglicherweise außerhalb Deines Landes gehostet wird und bist damit einverstanden, dass Deine Daten in dem Land, in dem dieses Forum gehostet wird, gesammelt, gespeichert und verarbeitet werden.
Kommentar