Table of Contents
Router/Prüfer
Wichtiger Hinweis: Ab Rev. 2.1.2736 ist die Registerkarte "Router/Prüfer" der Rocrail-Eigenschaften entfernt! Die Optionen werden in den Aufruf-Dialogen von Router und Prüfer für die laufende Sitzung eingestellt. Siehe: Router/Prüfer-Optionen |
Eigenschaften
- Analysiert den Gleisplan und erzeugt automatisch alle Fahrstraßen, die zwischen zwei benachbarten Blöcken möglich sind.
- Setzt das Fahrstraßen-Feld in allen Gleis-, Signal- und Rückmelder-Objekten für die Fahrstraßen-Darstellung (optional).
- Setzt das Block-Feld in allen Gleis-, Signal- und Rückmelder-Objekten für die Block-Belegungs-Darstellung (optional).
- Das Richtungsgleis kann dazu verwendet werden, Fahrstraßen nur in dieser einen Richtung zu erzeugen.
- Mit Verbindern können Fahrstraßen über andere Objekte, leere Felder und Gleisplan-Ebenen hinweg erstellt werden.
- Weichen-Befehle werden der Fahrstraße hinzugefügt.
- Signalpaare können dem Block (Signale) als Plus(+)- bzw. Minus(-)-Seiten-Signale hinzugefügt werden (optional).
- Enter- und In-Rückmelder können dem Block (Fahrstraßen) zugewiesen werden (optional).
- Unterstützung von Modulen.
- Unterstützung von Fiddle Yard.
Hinweis:
Der Router wurde entwickelt, um Einsteigern eine Hilfestellung für einen einfachen und schnellen Einstieg an die Hand zu geben, indem viele Eintragungen automatisch vorgenommen werden.
Bei komplexen oder ungewöhnlichen Szenarien kann der Router jedoch an seine Grenzen gelangen oder es werden nicht alle oder unerwünschte Fahrstraßen angelegt.
In solchen Fällen müssen die Eintragungen von Hand korrigiert bzw. ergänzt werden, wobei durch den Router korrekt angelegte Fahrstraßen als Vorbild dienen können.
Siehe auch Abschnitt Einschränkungen.
Bedienung
Voraussetzungen
- Der Gleisplan muss vor der Analyse gesund sein!
- Alle Gleisplan-Symbole, die eine Fahrstraße bilden sollen, müssen ohne Zwischenraum aneinander gefügt sein. Ausnahme: Der Verbinder.
- Der Router basiert auf den Symbolgrößen im voreingestellten SpDrS60-Thema. (Siehe auch Themen-Eigenschaften)
Aktivierung
Die Analyse wird manuell ausgelöst. Dies geschieht
- durch Eingabe von z im Rocrail-Terminal, wenn die -console-Option aktiv ist
oder
- durch Auswahl des Menü-Eintrags Router im Menü Gleisplan von Rocview.
Bereinigung
Wenn der Router nach Veränderungen am Gleisplan erneut aufgerufen wird, werden alle Fahrstraßen mit gesetzter Option Automatisch erzeugt gelöscht.
Damit wird sichergestellt, dass keine ungültig gewordenen Fahrstraßen im Plan enthalten sind, bevor Fahrstraßen neu bzw. wieder neu erzeugt werden.
Dazu musss natürlich bei allen Fahrstraßen für die Änderungen erwartet werden oder die bearbeitet werden sollen, die Option "Automatisch erzeugt" aktiviert sein.
Von Hand hinzugefügte Fahrstraßen ohne Option "Automatisch erzeugt" verbleiben unverändert in der Liste.
Konfiguration der Rückmelder und Signale
Die Grafik zeigt die Positionierung von Rückmeldern (fb) sowie Vor- (sgv) u. Haupt- (sgh) Signalen für einen Block (bk). Die Rückmelder und Signale werden damit dem Block und den Fahrstraßen beider Blockseiten korrekt zugeordnet. Auf beiden Blockseiten müssen die Rückmelder und Signale zwischen dem Block und der nächsten Weiche (sw) positioniert sein. Die Reihenfolge der Objekte zwischen Block und Weiche ist beliebig. |
Die Signale müssen - wie dargestellt - mit dem "Symbol in Fahrtrichtung rechts vom Gleis" ausgerichtet sein. (Ausnahme z.B.: SBB-L-Signale) |
Enthält die Fahrstraße zwischen zwei Blöcken keine Weiche, kann es sein, dass der Router die Signale dem nächsten Block zuordnet. |
Rückmelder
Die Rückmelder werden den allgemeinen Fahrstraßen all enter + bzw. all enter - zugeordnet.
Die all enter +-Fahrstraße wird für alle Fahrstraßen verwendet, über die in die + Seite des Blocks eingefahren wird (angezeigt durch das kleine + im Blocksymbol).
Die all enter - -Fahrstraße wird dementsprechend für alle Fahrstraßen verwendet, über die in die - Seite des Blocks eingefahren wird.
Die Zuordnung ist auf der Registerkarte Block: Fahrstraßen ersichtlich und kann bei Bedarf manuell geändert werden.
Hinweis:
Die Zuordnung durch den Router funktioniert nur, wenn mit "enter"- und "in"-Rückmeldern gearbeitet wird.
Außerdem muss je ein Rückmelder auf jeder Seite zwischen Block und nächster Weiche positioniert sein.
Für Blöcke mit ein, drei oder vier-Meldern ergeben sich keine nutzbaren Einträge.
Bei mehreren Rückmeldern auf einer Blockseite wird nur der dem Block nächstgelegene Rückmelder berücksichtigt.
Signale
Das zu einem Hauptsignal einer Blockseite gehörende Vorsignal muss an der anderen Seite des Blocks positioniert sein.
Die Zuordnung ist auf der Registerkarte Block: Signale ersichtlich und kann bei Bedarf manuell geändert werden.
Richtungsgleise
Richtungsgleise (s. auch Gleise: Typ) können dazu verwendet werden, die vom Router zu erstellenden Fahrstraßen auf eine bestimmte Richtung zu beschränken. Dazu wird das Richtungsgleis zwischen zwei oder mehreren Blöcken angeordnet:
Tipp: Wenn in einem Gleisabschnitt in beiden Richtungen keine Fahrstraße erzeugt werden soll, kann das durch zwei entgegengesetzte Richtungsgleis-Symbole erreicht werden. Alternativ kann für die Zeit der Router-Aktivität ein Gleis-Symbol aus dem Abschnitt entfernt werden.
Siehe auch: Router Richtungs-Ausnahmen
Verbinder
Änderung ab Rev. 2.0.1564+ |
---|
Es müssen immer eindeutig mit 0…655351) nummerierte Verbinder-Paare gebildet werden. Die zuvor mögliche Verwendung der Nummern 0…9 für mehrere Verbinder-Paare führt zum Abbruch des Routerlaufs. Die orthogonale Positionierung und zueinander zeigende Schnittflächen beider Symbole werden nicht mehr berücksichtigt. Dies gilt auch für das geteilte Brückenelement (tracknr 2). Damit der Gleisplan für den Router "gesund" ist und bisherige Paarungen auch zukünftig gültig bleiben, müssen die "alten" Verbinder-Paare 0…9 auf eine im gesamten Gleisplan über alle Ebenen eindeutige Nummerierung geändert werden. |
Änderung ab Rev. 2.1.1593+ |
---|
Die Brückenelemente (tracknr 2 + 3) werden vom Router nicht mehr unterstützt. |
Hinweis:
Die SVG-Dateien dieser Symbole wurden ins User-SVG-Thema verschoben. Sollen diese Symbole weiterhin verwendet werden, muss das User-Thema zusätzlich ausgewählt werden. Das Einrichten und Ändern von Fahrstraßen (inkl. Ausleuchtungen), die über diese Gleiselemente verlaufen, muss manuell erfolgen.
Wozu Verbinder ?
Über Verbinder können voneinander entfernte Objekte miteinander verbunden werden: Der Router sucht nach einem Gegenstück (zweiter Verbinder) und ignoriert sowohl leere Felder als auch andere, zwischen diesen beiden liegende Objekte.
Mit Verbindern ist es einfach, Gleisabschnitte verschiedener Ebenen eines Gleisplans miteinander zu verbinden.
- Verbinderpaare werden in den Eigenschaften des Gleis-Objekts mit derselben Nummer zwischen 0 und 65535 konfiguriert.
Die Lage bzw. Ausrichtung der Verbinder eines Paares ist beliebig und sie können auf verschiedenen Gleisplan-Ebenen liegen.
Verbinder bei Modulanlagen vermeiden
Bei Modulplänen können an den Modul-Übergängen Verbinder verwendet werden, wenn sie paarweise mit derselben Nummer definiert sind.
Nachteile:
Verbinder am Modul-Übergang ohne Partner mit derselben Nummer meldet der Router als Fehler.
Wird die Modul-Anlage in einer anderen Zusammenstellung aufgebaut, muss die Nummerierung betroffener Verbinder-Paare angepasst werden.
Werden dabei in der Zusammenstellung zwei Verbinder mit derselben Nummer irgendwo - auch in beliebig weit voneinader entfernten Modulen - vergessen, können "seltsame" Fahrstraßen entstehen.
Empfehlung:
Um die genannten Nachteile - u.a. Fehler, hohe Aufwände bei Änderungen usw. - zu vermeiden, wird empfohlen, auf Verbinder an den Modul-Übergängen zu verzichten.
Anstelle der Verbinder sollten "gerade Gleiselemente" so positioniert werden, dass sie bei der Zusammenstellung der Module unterbrechungsfrei zueinander passen.
Dadurch ergeben sich aus Sicht des Router durchgehende Gleisverbindungen, aus denen problemlos Fahrstraßen erzeugt werden können.
Mit dieser Methode entfallen auf sehr einfache Weise alle Nachteile mit Verbindern an Modul-Übergängen.
Siehe auch: Meldungen im Server-Trace
Einschränkungen
- Der Router ist nicht unfehlbar.
- Nicht alle "seltsamen" Situationen werden erkannt.
- Der Router konfiguriert Rückmelder nur, wenn die Option Rückmelder zu Blöcken zuordnen aktiviert ist. (Standardmäßig "deaktiviert").
- Bei aktivierter Option "Rückmelder zu Blöcken zuordnen" wird nur dann die Zuordnung der Melder versucht, wenn "enter" und/oder "in" bei den allgemeinen Fahrstraßen noch nicht vollständig vorhanden sind (ob vom Anwender manuell konfiguriert oder aus früheren Analysen bereits vorhanden, ist dabei unerheblich).
Hinweis: Bereits konfigurierte "enter" und/oder "in" werden nicht verändert; auch wenn sie fehlerhaft sind. - Das gilt nur für die dem Block nächstliegenden Rückmelder und nur, wenn sie diesem Block eindeutig zuzuordnen sind. (Es gibt da in speziellen Situationen auch Ausnahmen).
- Wird ein konfigurierter "enter2in" bei einem Block gefunden, dann wird an diesem Block keine Änderung vorgenommen.
- "enter2in" wird vom Router nie zugeordnet (oder gelöscht).
- Nur ein Teil der Gleisplan-Objekte des Weichentyps "Zubehör" und des Gleistyps "tracknr" werden erkannt:
Weichentyp "Zubehör" | |
---|---|
Zubehör# | Beschreibung |
1 | doppelgleisiger Bahnübergang, veraltet |
10 | eingleisiger Bahnübergang, unbeschrankt |
11 | eingleisiger Bahnübergang, einseitig beschrankt |
12 | eingleisiger Bahnübergang, beidseitig beschrankt |
40 | doppelgleisige Klappbrücke |
41 | eingleisige Klappbrücke |
Andere Zubehör- u. Gleis- Nummern werden vom Router nicht unterstützt. Der Router kennt die unterschiedlichen Raster-Größen und Ausrichtungen der Symbole nicht. Deshalb müssen diese Objekte vor einem Routerlauf temporär (evtl. auch später wieder) durch normale Gleis-Objekte ersetzt werden.
- Hinweis: Niemals doppelgleisige Elemente direkt hintereinander platzieren. Der Router erzeugt dann falsche Fahrstraßen
Beispiel
Automatisch erzeugte Fahrstraßen
<stlist> <st id="[01+]-[02+]" generated="true" bka="01" bkb="02" bkaside="true" bkbside="true" show="false" x="0" y="0"> <swcmd id="sw1" cmd="straight"/> </st> <st id="[01+]-[03+]" generated="true" bka="01" bkb="03" bkaside="true" bkbside="true" show="false" x="0" y="0"> <swcmd id="sw1" cmd="turnout"/> </st> <st id="[04+]-[01-]" generated="true" bka="04" bkb="01" bkaside="true" bkbside="false" show="false" x="0" y="0"/> <st id="[02-]-[04-]" generated="true" bka="02" bkb="04" bkaside="false" bkbside="false" show="false" x="0" y="0"> <swcmd id="sw2" cmd="straight"/> </st> <st id="[03-]-[04-]" generated="true" bka="03" bkb="04" bkaside="false" bkbside="false" show="false" x="0" y="0"> <swcmd id="sw2" cmd="turnout"/> </st> </stlist>
- Hinweis: Der früher verwendete Präfix autogen- ist durch den Parameter
generated="true"
im Datensatz der Fahrstraße ersetzt2).
In der Fahrstraßen-Übersicht zeigt ein führendes ""-Zeichen im Feld 'Beschreibung' die aktivierte Option "Automatisch erzeugt" an.
Tipps und Tricks
Fahrstraßen beibehalten
Frage: Warum überschreibt der Router meine Änderungen an den Fahrstraßen?
Antwort: Der Router löscht zunächst alle Fahrstraßen mit gesetzter Option "Automatisch erzeugt" und erzeugt dann die Fahrstraßen neu.
Frage: Wie kann man verhindern, daß eine Fahrstraße neu erzeugt wird?
Antwort: Indem die Option "Automatisch erzeugt" dieser Fahrstraße deaktiviert wird.
Alternative Fahrstraßen
Verhinderung der alternativen Fahrstraßen von A- nach B+ mit Gleiswechsel
- Vorher:
- "[A-]-[B+]" (direkter Weg)
- "[A-]-[B+]-42" (alternative Fahrstraße über das Gegengleis)
- Manuelle Aktionen:
- Deaktivieren der Option "Automatisch erzeugt" bei "[A-]-[B+]"
- Löschen von "[A-]-[B+]-42"
- Nachher:
- Aufruf des Router lässt "[A-]-[B-+]" unberührt (da die Option "Automatisch erzeugt" nicht gesetzt ist) und erzeugt auch keine neue/alternative Fahrstraße von [A-] nach [B+], da es bereits eine "manuell angelegte" Fahrstraße für diesen Fahrweg gibt.
Meldungen im Server-Trace
Zur Anzeige der Router-Ergebisse im Server-Trace und der Meldungen im Popup-Dialog muss Traces: Berechnungen aktiviert sein.
- Hinweis:
Die Aktivierung der Trace-Ebene "Router" wird nicht empfohlen.
Diese Option sollte der Fehlersuche in Router-Funktionen vorbehalten bleiben.
Beispiele
Hinweis: Die jeweils letzte Aktion steht oben im Log.
Server-Trace bei "Router" mit typischem Fehler beim Entwurf des Gleisplans:
17:23:09 route generator (re)created routes (0 -> 8) 17:23:08 Router: max. recursion depth (101 > 100) reached
- Bei der Suche von Verbindungen zwischen 2 Blöcken wurden mehr als 100 Gleisplanelemente gefunden. (Zwei Meldungen = Suche in beiden Richtungen)
Siehe diesen Forumbeitrag - Der Router hat 8 Fahrstraßen erzeugt
- Bitte Bewährtes Vorgehen beachten.
Server-Trace bei "Router zurücksetzen" und anschließendem "Routen":
23:45:36 route generator (re)created routes (0 -> 4) 23:45:35 starting router... 23:45:25 route generator cleanup removed 4 routes (4 -> 0) 23:45:24 starting router cleanup...
- Es wurden 4 Fahrstraßen gelöscht
- Es wurden 4 Fahrstraßen neu erzeugt
Server-Trace bei "Router -> Routing" mit typischen Fehlern bei Verbindern:
14:08:06 Router skipped because plan has ERRORs 14:08:06 ERROR: connector [tk5] at (6-5-1) number[3] : Too many counterparts (total 3) 14:08:06 WARNING: connector [tk4] at (14-3-0) with number[2] : no counterpart found. 14:08:06 ERROR: connector [tk3] at (14-1-0) number[3] : Too many counterparts (total 3) 14:08:06 ERROR: connector [tk2] at (6-3-0) number[3] : Too many counterparts (total 3)
- Es gibt mehr als die zwei zu einem Paar gehörenden Verbinder mit Nummer 3 an den angegebenen Positionen. (Beispiel: 6-3-0 = x-y-z)
- Dem Verbinder mit Nummer 2 fehlt der Partner.
- Der Routerlauf wurde wegen der gelisteten Fehler im Gleisplan abgebrochen.
Meldungen im Popup-Dialog
Die wichtigsten Meldungen des Routers werden in einem Popup-Dialog angezeigt.
Traces: Berechnungen muss aktiviert sein.
Wichtige Hinweise zu Neustarts von Rocrail und Rocview
Während des Routerlaufs werden die Daten im Rocrail-Server aktuell gehalten. Ein Neustart des Rocrail-Servers ist deshalb nicht erforderlich.
Die Daten werden auch zu den Objekten in Rocview-Clients übertragen, sind aber in Einzelfällen nicht in allen Objekt-Dialogen aktualisiert.
Um die Daten auch hier zu aktualisieren, sollte grundsätzlich nach jedem Routerlauf, der Rocview-Client neu gestart werden.
Vor einem Neustart von Rocview dürfen keinesfalls die Schaltflächen [ < ], [ > ], [ Übernehmem ] und [ OK ] in den Dialogen bedient werden. Anderenfalls werden die aktuellen Daten im Rocrail-Server durch ggf. nicht mehr aktuelle Daten der Dialog-Felder überschrieben. |