Zitat von AC-Spielkind im Beitrag #1
Ich habe jetzt gegrübelt, wie ich Sounds automatisch auslösen kann mit der CS3. Da alles andere vollautomatisch läuft, hatte ich den Ehrgeiz auch das zu automatisieren. Geht ja auch relativ einfach zu machen mit einem Reedkontakt als Auslöser. Lok ins Ereignis und Sound dahinter. Fertig.
Das Problem ist allerdings, dass dann ja leider auch andere Loks, die über diesen Reedkontakt fahren, bei dieser Lok den Sound auslösen.
Es ist interessant, dass auf eine Frage, die ausdrücklich als CS3 Problem dargestellt wurde, sofort 6 Beiträge gepostet werden von Leuten, die dabei keinerlei CS3 Erfahrung einbringen. Wie soll das dem Fragesteller helfen?
Hallo Arno,
Du musst Deine "Vollautomatik" so aufbauen, dass von einer gewählten Lok (und nicht von einem Rückmelder) eine Ereigniskette zur Lokfahrt gestartet wird. Dieses Lokereignis gilt dann in seiner ganzen Länge nur für diese Lok, daher gilt das Auslösen des Sounds nur im Ablauf dieser Ereigniskette.
Soll dieser Effekt auch bei anderen Loks funktionieren, dann gibt es auch eine Lösung für Dein Problem:
"Übernahme eines Lok-Makros in einem übergeordnetem Ereignis" in der Erweiterten Ereignissteuerung.
Nicht wie bei der PC-Software muss der Kontakt die Lok identifizieren, damit ein Befehl an diese Lok gegeben werden kann, sondern in der CS3 weiß das Lokereignis, was die Lok bei diesem Kontakt machen soll. NUR die momentan den Kontakt auslösende Lok gibt in ihrem zugeordneten Ereignis dadurch einen Befehl (Funktionsauslösung) ab. Andere Loks, die den Kontakt auslösen, verursachen nichts, denn sie haben
in diesem Moment keinen diesem Kontakt zugeordneten,
auf die Abarbeitung wartenden Befehl. Sie verursachen aber auch nichts in der zuerst erwähnten Lok, weil dort dieses Ereignis nicht gerade auf die Abarbeitung wartet. Das ist die Folge der "Einbettung" in einen übergeordneten Ereignisablauf.
Wird in einem Ereignis mit Lokbefehlen ein weiteres Ereignis mit Lokbefehlen aufgerufen, so wird dieser Lokbezug an das aufgerufene Ereignis weitergegeben und zum Bezug der derzeitigen Lok ausgeführt. (Quelle: Märklin)
Wie geht das praktisch?
1. Du erstellst ein Lokereignis für eine beliebige Lok mit einer einzigen Aufgabe, nämlich die von Dir gewünschte Funktion (zB Pfeifen) nach Aktivierung des betreffenden Rückmelders auszulösen.
2. In dem Lokereignis zur automatischen Steuerung einer konkreten Lok "bettest" Du an der Stelle im Ereignisablauf, an dem der Rückmelder für den Lokpfiff erwartet wird, das Lokereignis vom Punkt 1 als Makro ein.
Natürlich könnte man in einem Lokereignis an der richtigen Stelle die Ereigniselemente vom Punkt 1 nur für die Lok dieses Ereignisses einreihen - wie auch anfangs erläutert. Dann musst Du aber bei allen Lokereignissen anderer Loks ebenfalls diese Einfügungen jeweils passend vornehmen. Da ist es doch einfacher, das Lokmakro gemäß Punkt 1 als "Lokbezug" aufzurufen.
Wenn auch aus dem Jahre 2018 von den experimentierenden "Pionieren" stammend, so ist dieses Thema reich an Erfahrungen:
RE: Erfahrungen - Erweiterte Ereignissteuerung mit der CS3