action-example-de
Differences
This shows you the differences between two versions of the page.
— | action-example-de [2024/04/22 21:05] (current) – created - external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Aktionen-Beispiele ====== | ||
+ | [[: | ||
+ | [[german|Inhalt]] -> [[german# | ||
+ | * [[actions-de|Aktionen definieren]] | [[actionctrl-de|Aktions-Steuerung]] | [[actionctrl-de# | ||
+ | * //Der " | ||
+ | \\ | ||
+ | |||
+ | ===== Anwendung der Statuswerte ===== | ||
+ | **Die Aktionssteuerung wird bei einer Weiche aufgerufen, | ||
+ | -->> damit ist definiert, dass das Betätigen **dieser** Weiche die im Dialog eingestellte Aktion startet.\\ | ||
+ | Im Feld " | ||
+ | -->> damit ist definiert, dass die Aktion genau dann gestartet wird, wenn die Weiche auf " | ||
+ | \\ | ||
+ | **Die Aktionssteuerung wird bei einem Rückmelder aufgerufen, | ||
+ | -->> damit ist definiert, dass **dieser** Rückmelder die im Dialog eingestellte Aktion startet.\\ | ||
+ | Im Feld " | ||
+ | -->> damit ist definiert, dass die Aktion genau dann gestartet wird, wenn der Rückmelder von " | ||
+ | \\ | ||
+ | Die bei **Fahrplänen** definierbaren Aktionssteuerungen bilden eine Ausnahme: | ||
+ | |||
+ | Auf Karteikarte " | ||
+ | -->> Die Aktion wird gestartet, wenn der Zug in den jeweiligen Block einfährt. | ||
+ | |||
+ | Auf Karteikarte " | ||
+ | -->> Die Aktion wird gestartet wenn der Fahrplan zu Ende ist. | ||
+ | |||
+ | Irgendwelche Statusdefinitionen sind hier z.Zt. nicht möglich. (**Objekttyp = Fahrplan**)\\ | ||
+ | \\ | ||
+ | **Zähler (count)**\\ | ||
+ | {{: | ||
+ | \\ | ||
+ | In diesem Beispiel wird diese Aktionssteuerung einem Rückmelder zugewiesen.\\ | ||
+ | Wird dieser Rückmelder zum dritten Mal aktiv (Status = 3), wird die Aktion "Telex V90 030" ausgeführt.\\ | ||
+ | \\ | ||
+ | |||
+ | ===== Fahrstraße durch Start- und Zieltaste einstellen ===== | ||
+ | Dieses Beispiel zeigt auf, wie man eine Fahrstraße durch zwei ' | ||
+ | am Ende der Fahrstraßen, | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Wenn man die Schalter ' | ||
+ | und so weiter. | ||
+ | |||
+ | Der beste Weg um die Vorgänge zu verstehen, ist, einen Blick auf die Definitionen der Aktionen und Fahrstraßen bzw. wie die Aktionen in den fünf Rückmeldern verwendet werden. Die Namen der Objekte in dem Beispiel sind möglichst selbsterklärend | ||
+ | gewählt. | ||
+ | |||
+ | In dem Beispiel ist keine weitere Logik (wie z. B. Blöcke) definiert, aber wenn man einmal die Idee hinter dieser Vorgehensweise verstanden hat, ist es einfach, weitere Aktionen mit mehr Logik hinzuzufügen. | ||
+ | |||
+ | Für einen Test des Beispiels enthält die folgende Zip-Datei eine " | ||
+ | " | ||
+ | |||
+ | * {{: | ||
+ | |||
+ | | ||
+ | |||
+ | ===== Manuell zu schaltende Fahrstraßen mit Selbstverschluss und Ausleuchtung ===== | ||
+ | |||
+ | Für die Ausleuchtung manuell geschalteter Fahrstraßen ist der Selbstverschluss Voraussetzung. | ||
+ | |||
+ | {{: | ||
+ | |||
+ | * {{: | ||
+ | |||
+ | |||
+ | \\ | ||
+ | |||
+ | ===== Gleichzeitig geschaltete Weichen ===== | ||
+ | Das erste Beispiel zeigt, wie Weichen eingestellt werden, die immer zusammen geschaltet werden (beide gerade oder beide abzweigend), | ||
+ | \\ | ||
+ | * {{: | ||
+ | |||
+ | * **Hinweis: | ||
+ | |||
+ | \\ | ||
+ | Im zweiten Beispiel wird gezeigt, wie dasselbe Resultat erzielt werden kann, wenn die Weichenantriebe an zwei verschiedene Decoderausgänge mit zwei realen Decoderadressen angeschlossen sind. | ||
+ | Demonstriert wird dies anhand eines Weichenpaares, | ||
+ | \\ | ||
+ | * {{: | ||
+ | \\ | ||
+ | Im dritten Beispiel wird diese Technik auf die beiden Schranken eines **Bahnüberganges** angewendet. | ||
+ | * {{: | ||
+ | \\ \\ | ||
+ | |||
+ | ===== Lokbild der Blockbelegung anzeigen ===== | ||
+ | Mit Aktionen kann das Bild einer den Block belegenden Lok angezeigt werden:\\ | ||
+ | **[[action-example-lcimg-de|Blockbelegung als Lokbild]]** | ||
+ | \\ | ||
+ | \\ | ||
+ | |||
+ | ===== Variable (z. B. ' | ||
+ | 1. ein Text-Element erstellen, z.B. " | ||
+ | 2. eine neue Aktion definieren " | ||
+ | 3. diese Aktion wird nun dem Rückmelder eines Blocks zugeordnet (status=" | ||
+ | Die Variable (hier ' | ||
+ | {{: | ||
+ | \\ | ||
+ | |||
+ | ===== Handhabung zwei kurzer Blöcke in Reihe für lange Züge ===== | ||
+ | | Dies wird nicht offiziell unterstützt und wird als Problem-Umgehung für Fehler im Plan-Entwurf angesehen. \\ Besser ist es, lange Züge durch Fahrstraßen-Bedingungen unter Verwendung der zwei kurzen Blöcke als kreuzende Blöcke direkt in Block " | ||
+ | Dieser Demo-Plan hat - hoffentlich - selbsterklärende Namen für die Objekte (englisch). | ||
+ | Die Idee hinter diesem Plan ist es, dass ein (Schatten-) Bahnhof zwei Blöcke hintereinander haben kann. | ||
+ | Jeder von diesen Blöcken **1a** u. **1b** kann einen kurzen Zug enthalten, während ein langer Zug beide Blöcke belegt, | ||
+ | indem er eine Fahrstraße zu Block **1b** mit Block **1a** als kreuzenden Block verwendet. \\ | ||
+ | {{: | ||
+ | Ohne besondere Maßnahmen würde nach der Ankunft eines langen Zuges in Block **1b** der Block **1a** wieder frei sein | ||
+ | und Rocrail könnte einen Zug dorthin leiten. | ||
+ | Auch wenn der lange Zug den Block **1b** wieder verlässt, könnten Rückmelder in Block **1a** ein Geisterzug-Ereignis in Block **1a** auslösen.\\ | ||
+ | \\ | ||
+ | Der Plan verwendet eine Dummy-Lok, wobei diese Lok entweder der virtuellen Zentrale zugewiesen wird oder eine nicht verwendete Adresse erhält. | ||
+ | (Es muss aber sichergestellt sein, dass diese Adresse auch zukünftig unbenutzt bleibt) | ||
+ | Für jeden " | ||
+ | Vier Fahrstrassen werden manuell angelegt, **manual-[start]-[destination]** genannt. Die anderen Fahrstrassen wurden vom Router angelegt. | ||
+ | Einige Fahrstraßen haben Berechtigungs-Einstellungen, | ||
+ | Zwei der manuellen Fahrstrassen beinhalten eine Aktions-Steuerung und eine hat eine Aktions-Bedingung. | ||
+ | Eine Aktion setzt die Dummy-Lok in Block **1a**, die andere entfernt sie wieder. | ||
+ | Beide Aktionen werden am Ende der Fahrstrasse ausgelöst, wenn der Zug seinen Ziel-Block erreicht hat und die Fahrstraße wieder freigegeben wurde. | ||
+ | Nochmal, wenn mehrere " | ||
+ | Beim Setzen einer Dummy-Lok in Block **1a** kümmert sich Rocrail nicht darum, dass Rückmelder in Block **1a** aktiv werden, weil der lange Zug in **1b** sie auslöst, wenn er zu Block **3** fährt. | ||
+ | Das verhindert den Geisterzug-Status in Block **1a**.\\ | ||
+ | Für Versuche mit der virtuellen Zentrale den kurzen Zug **short** in Block **start2**, den langen Zug **long** in Block **start** setzen und beide im Automodus starten. | ||
+ | Der Zug **long** verwendet die Fahrstraße von **start** zu **1b** und **1a** als kreuzenden Block. | ||
+ | Nach der Ankunft in Block **1b** erscheint durch die Aktion in der Fahrstraße die Dummy-Lok in Block **1a**. | ||
+ | Der Zug **short** wartet in Block **start**, weil Block **1a** durch die Dummy-Lok belegt und Block **2** geschlossen ist. | ||
+ | Nach dem Aufenthalt in **1b** verwendet **long** die manuelle lange Fahrstraße von **1b** nach **3**. | ||
+ | Man kann die Rückmelder von Block **1a** so oft auslösen wie man will, aber weil die Dummy-Lok darin ist, tritt kein Geisterzug-Status auf. | ||
+ | Nach der Ankunft in Block **3** entfernt die zweite Aktion die Dummy-Lok aus Block **1a** und der Zug **short** fährt nun nach Block **1a**.\\ | ||
+ | \\ | ||
+ | Damit soll es probiert werden.\\ | ||
+ | * {{: | ||
+ | \\ | ||
+ | |||
+ | ===== Geteiltes Bahnhofsgleis ===== | ||
+ | Aufgabenstellung: | ||
+ | Ein Bahnhofs-Bahnsteig soll unterteilt werden in z. B. die Blöcke 1A und 1B. | ||
+ | Wie kann man es lösen, dass lange Züge den kompletten Bahnsteig nutzen und kürzere Züge sich einen Bahnsteig teilen? Zusätzlich befindet sich in der Mitte des Bahnsteigs eine Weiche, um auf ein Durchfahrtsgleis zu gelangen, sodass der hintere Zug eher abfahren kann. | ||
+ | Das Beispiel beinhaltet 3 Züge, einen langen und zwei kurze. Das Bahnhofsgleis ist aufgeteilt in 2 Blöcke (1A + 1B) mit Umfahrgleis.\\ | ||
+ | {{: | ||
+ | \\ | ||
+ | |||
+ | Lösungsvorschlag: | ||
+ | *) Zu den automatisch erstellten Fahrstrassen ist eine manuelle FS (Fahrstraße) hinzugefügt: | ||
+ | *) Eine weitere manuelle FS ist erstellt: 1A -> Ausfahrblock mit kreuzendem Block 1B.\\ | ||
+ | *) Die FS Efb -> 1A ist für den langen Zug gesperrt (FS-Berechtigung) - somit muss der lange Zug immer die manuelle FS nach 1B nehmen.\\ | ||
+ | *) Fährt der lange Zug in 1B ein, sperrt er die FS Efb -> 1A. Es kann also kein Zug in 1A einfahren, der ja auch noch vom langen Ende des Zuges belegt ist (Aktion bei Block " | ||
+ | *) Fährt der lange Zug aus 1B aus, bleibt die FS Efb -> 1A gesperrt. Ein folgender Zug fährt also auch bis 1B durch (via die manuell angelegte FS!)\\ | ||
+ | *) Fährt einer der beiden kurzen Züge in 1B ein, wird die FS Efb -> 1A wieder freigegeben und ein nachfolgender kurzer Zug kann in 1A einfahren.\\ | ||
+ | *) Fährt einer der beiden kurzen Züge in 1A ein, sperrt er mittels Aktion die FS 1A -> 1B und kann somit nur über das Umfahrgleis ausfahren. Die Aktion verhindert, dass dieser Zug erst in 1A und dann in 1B anhält, falls 1B in der Zwischenzeit frei geworden ist.\\ | ||
+ | *) Fährt Kurzzug aus 1B früher los und räumt den Block 1B, so wählt der nachfolgende Kurzzug in 1A die FS 1A -> Ausfahrblock (und nicht das Umfahrgleis) und fährt ohne Halt in 1B zum Ausfahrblock. Eine Aktion sperrt die FS " | ||
+ | *) Bei einer Ausfahrt über das Umfahrgleis wird die FS 1A -> 1B wieder freigegeben (Aktion: Block 1A, Status " | ||
+ | |||
+ | Unter " | ||
+ | |||
+ | Zum Testen den angehängten Plan herunter laden und im virtuellen Modus laufen lassen.\\ | ||
+ | {{: | ||
+ | |||
+ | Das Verhalten der FS kann an Hand der FS-Symbole mitverfolgt werden: rote Farbe - FS gesperrt, weiße Farbe - FS geöffnet.\\ | ||
+ | > // **Hinweis: | ||
+ | > Das Beispiel zeigt didaktisch den Umgang mit und die Verwendung von Aktionen. \\ Mit der virtuellen Zentrale funktioniert dieses Beispiel problemlos. | ||
+ | > An realen Anlagen kann es erforderlich sein, z. B. mit Aktionen Vorkehrungen zu treffen, die die Melder im Block 1A zurücksetzen, | ||
+ | \\ | ||
+ | ===== Warten im Block ein-/ | ||
+ | Aufgabenstellung: | ||
+ | Mittels Taster in der Gleisplanansicht die Eigenschaft " | ||
+ | Lösungsvorschlag von User peters:\\ | ||
+ | {{: |