User Tools

Site Tools


analyzer-de

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
analyzer-de [2019/01/07 05:51] rainerkanalyzer-de [2020/01/30 00:50] (current) – page moved to "router-de" rainerk
Line 1: Line 1:
-====== Gleisplan-Analyser ====== 
-[[:german#rocrail|{{  :server.png}}]][[:german|{{  :rocrail-logo-32.png}}]] 
-[[:german | Inhalt ]] -> [[:german#rocrail|Rocrail-Server]]\\ 
-  * **[[analyzer-de|Gleisplan-Analyser]]** 
-    * [[rocrailini-analyser-de|Gleisplan-Analyser-Einstelldialog]] 
- \\ 
-{{:schaakbord.png?200}} 
- 
-=====Wichtige Änderung===== 
-|< >| 
-^Analyser-Markierung geändert^ 
-|:!: Ab Rev. 12.859+ ist die "**autogen-**"-Markierung von Fahrstraßen durch die Option __**[[route-gen-de#automatisch_erzeugt|Automatisch erzeugt]]**__ ersetzt. \\ Bei Fahrstraßen-Kennungen, die noch das führende "autogen-" enthalten, wird dies beim nächsten Analyser-Lauf entfernt und durch die neue Option ersetzt. \\ Zusätzlich ist im Feld 'Beschreibung'  "Generated by the analyser" eingetragen. \\ Im Dialog __**[[route-index-de|Fahrstraßen: Übersicht]]**__ zeigt ein führendes "** * **" in der Spalte 'Beschreibung' die aktivierte Option 'Automatisch erzeugt'. \\ In den Beispielen unten auf dieser Seite ist diese Änderung berücksichtigt. | 
- 
- \\ 
- 
-===== Eigenschaften ===== 
-  * Analysiert den Gleisplan und erzeugt automatisch alle möglichen Fahrstraßen. 
-  * Setzt das **Fahrstraßen**-Feld in allen Gleis-, Signal- und Rückmelder-Objekten für die Fahrstraßen-Darstellung {{SpDrS60-track-route.png}} (**[[rocrailini-analyser-de|optional]]**).  
-  * Setzt das **Block**-Feld in allen Gleis-, Signal- und Rückmelder-Objekten für die Block-Belegungs-Darstellung {{SpDrS60-track-occ.png}} (**[[rocrailini-analyser-de|optional]]**).  
-  * Das **[[#richtungsgleise|Richtungsgleis]]** kann dazu verwendet werden, Fahrstraßen nur in dieser einen Richtung zu erzeugen. 
-  * Mit **[[#verbinder|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-signals-de|Block (Signale)]]** als Plus(+)- bzw. Minus(-)-Seiten-Signale hinzugefügt werden (**[[rocrailini-analyser-de|optional]]**). 
-  * Enter- und In-Rückmelder können dem **[[block-routes-de|Block (Fahrstraßen)]]** zugewiesen werden (**[[rocrailini-analyser-de|optional]]**). 
-  * Unterstützung von Modulen. 
-  * Unterstützung von Fiddle Yard. 
-\\ 
-**Hinweis:**\\ 
-Der Analyser 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 Analyser 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 Analyser korrekt angelegte Fahrstraßen als Vorbild dienen können. \\  
-Siehe auch Abschnitt **[[analyzer-de#einschraenkungen|Einschränkungen]]**. 
- 
- \\ 
- 
-===== Bedienung ===== 
- 
-==== Voraussetzungen ==== 
-  - Der Gleisplan muss __vor__ der Analyse **[[planhealth-de|gesund]]** sein! 
-  - Alle Gleisplan-Symbole, die eine Fahrstraße bilden sollen, müssen ohne Zwischenraum aneinander gefügt sein. Ausnahme: Der **[[#verbinder|Verbinder]]**. 
-  - An jeder Position des Gleisplans ist nur ein Symbol erlaubt **(Keine Überlappungen)** 
-  - Der Analyser basiert auf den Symbolgrößen im voreingestellten **[[:symbols-themes-spdr60-de|SpDrS60]]**-Thema. (Siehe auch **[[symbols-theme-props-de#grundlagen|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 **[[rocgui-menu-de#datei|Analysieren]]** im Datei-Menü von Rocview.\\ 
- 
- \\ 
- 
-==== Bereinigung ==== 
-Wenn der Analyser 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==== 
-|  {{:analyzer:analyser-bk-fb-sg.png?750}}  | 
-|  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.: __**[[:symbols-themes-sbblsignals-de|SBB-L-Signale]]**__)// | 
-| :!: Enthält die Fahrstraße zwischen zwei Blöcken __keine Weiche__, können Signale z.T. dem falschen Block zugeordnet sein. | 
- 
-=== 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-routes-de|Block: Fahrstraßen]]** ersichtlich und kann bei Bedarf manuell geändert werden. \\ 
-**Hinweis:**\\ 
-Die Zuordnung durch den Analyser 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-signals-de|Block: Signale]]** ersichtlich und kann bei Bedarf manuell geändert werden.\\ 
-\\ 
-==== Richtungsgleise ==== 
-Richtungsgleise (s. auch **[[:tracks-gen-de#typ|Gleise: Typ]]**) können dazu verwendet werden, die vom Analyser zu erstellenden Fahrstraßen auf eine bestimmte Richtung zu beschränken. Dazu wird das Richtungsgleis zwischen zwei oder mehreren Blöcken angeordnet: 
-^ Beispiel ^ Beschreibung ^ Durch den Analyser erstellte Fahrstraßen ^ 
-| {{:analyzer:dir-no.png}} | Zwei durch Gleise verbundene Blöcke | Von A nach B __und__ von B nach A | 
-| {{:analyzer:dir-all.png}} | Zwei Blöcke mit einem Gleis für beide Richtungen dazwischen | Wie oben; Das Gleis für beide Richtungen ist nur ein Hinweis, hat aber keine Funktion | 
-| {{:analyzer:dir-right.png}} | Zwei Blöcke mit einem Richtungsgleis dazwischen, Pfeil nach rechts zeigend | __Nur__ von A nach B | 
-| {{:analyzer:dir-left.png}} | Zwei Blöcke mit einem Richtungsgleis dazwischen, Pfeil nach links zeigend | __Nur__ von B nach A | 
-| {{:analyzer:dir-no1.png}} | Abzweigung ohne Richtungsgleise | A nach B, A nach C, B nach A, C nach A | 
-| {{:analyzer:dir-right1.png}} | Richtungsgleis in einer Abzweigung | A nach B, A nach C und B nach A | 
-| {{:analyzer:dir-right2.png}} | Richtungsgleis vor einer Abzweigung | A nach B und A nach C | 
-{{  :symbols:no-route.png}} 
- \\ 
-**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 Analyser-Aktivität ein Gleis-Symbol aus dem Abschnitt entfernt werden. 
- 
- \\ 
- 
-==== Verbinder ==== 
-Über Verbinder können entfernte Objekte miteinander verbunden werden: Der Analyser sucht nach einem Gegenstück (zweiter Verbinder) und ignoriert sowohl leere Felder als auch andere, zwischen diesen beiden liegende Objekte.\\ 
- 
-^ Beispiele für Verbinder \\ Vermeiden von Gleiselementen ohne Funktion ^^ 
-| {{:analyzer:verbinder.png?800}}  || 
-| \\ || 
-^ Schematische Darstellung von Brücken ^^ 
-|  {{:analyzer:bridge.png}} \\ {{:analyzer:bridge-connector-example.png}}  |  {{:analyzer:bridge-crossing-example.png}}  | 
-|  Brücke mit zwei Verbindern \\ Oben Typ = **connector** \\ Unten Typ = **tracknr** mit Nummer = **2**  |  Brücken-Symbol als Typ = **tracknr** mit Nummer = **3** \\ Damit kann der Analyser die möglichen Fahrstraßen A- < > B+ und C- < > D+ erkennen und erzeugen.  | 
-\\ 
-  * Der maximale Abstand zwischen den zusammengehörenden Verbindern eines Verbinder-Paares ist unbegrenzt. 
-  * Verbinderpaare können sich entweder auf derselben Gleisplan-Ebene befinden und müssen, wie oben abgebildet, in einer Linie liegen und zueinander orientiert sein, \\ oder 
-  * beide Verbinder eines Paares werden in den Eigenschaften des **[[tracks-gen-de#nummer|Gleis-Objekts]]** mit __derselben__ Nummer zwischen 10 und 99 konfiguriert. \\ Die Lage bzw. Ausrichtung der Verbinder solcher Paare ist dann beliebig und sie werden auch berücksichtigt, wenn sie 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 **beliebiger** (auch unterschiedlicher) Nummer im Bereichs **0 - 9** gegenüberstehen.\\ 
-oder 
-  * mit **derselben** Nummer im Bereich **10 - 99** definiert sind. 
- 
-**Nachteile:**\\ 
-Hat ein Verbinder mit einer Nummer im Bereich **0 - 9** keinen Partner am Übergang, darf in der Richtung bis zum Modulplan-Rand kein anderer Verbinder ohne Partner gegenüberstehen.\\ 
-Verbinder am Modul-Übergang ohne Partner mit derselben Nummer im Bereich **10 - 99** meldet der Analyser als Fehler. \\  
-Wird die Modul-Anlage in einer anderen Zusammenstellung aufgebaut, müssen betroffene Verbinder-Paare mit Nummern im Bereich **10 - 99** angepasst werden.\\ 
-Werden dabei in der Zusammenstellung zwei Verbinder mit derselben Nummer im Bereich **10 - 99** irgendwo 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" {{:spdrs60-track-norm.png}} so positioniert werden, dass sie bei der Zusammenstellung der Module unterbrechungsfrei zueinander passen.\\ 
-Dadurch ergeben sich aus Sicht des Analyser 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. 
-\\   
-|  An Modul-Übergängen gerade Gleiselemente verwenden :!:  | 
-|  {{:modules:no-connector.png?200}}  | 
-\\ 
- 
- 
-=====Einschränkungen===== 
-   * Der Analyser ist nicht unfehlbar. 
-   * Nicht alle "seltsamen" Situationen werden erkannt. 
-   * Der Analyser konfiguriert Rückmelder nur, wenn die Option **[[rocrailini-analyser-de#rueckmelder_zu_bloecken_zuordnen|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 komplett falsch wären). 
-   * 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 Analyser nie zugeordnet (oder gelöscht). 
-  * Elemente vom Typ "Straße" werden nicht unterstützt. 
-  * Nur ein Teil der Gleisplan-Objekte des **[[switch-gen-de#zubehoer|Weichentyps "Zubehör"]]** und des **[[tracks-gen-de#typ|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 | 
-| || 
-^Gleistyp "tracknr"^^ 
-^Nummer^Beschreibung^ 
-|  2  | Brücken-Verbinder | 
-|  3  | kreuzende Brücke | 
-\\ 
-Andere Zubehör- u. Gleis- Nummern werden vom Analyser __nicht__ unterstützt. Der Analyser kennt die unterschiedlichen Raster-Größen und Ausrichtungen der Symbole nicht. Deshalb müssen diese Objekte vor einer Auswertung __temporär__ (evtl. auch später wieder) durch normale Gleis-Objekte ersetzt werden. 
- 
-> **Hinweis:** Niemals doppelgleisige Elemente direkt hintereinander platzieren. Der Analyser erzeugt dann falsche Fahrstraßen :!: 
- 
-===== Beispiel ===== 
-{{:analyzer:demo-plan.png?500}}\\ 
-{{:analyzer:demo-plan.zip}}\\ 
-\\ 
- 
-==== Automatisch erzeugte Fahrstraßen ==== 
-<code xml> 
-<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> 
-</code> 
-**Hinweis:** Der früher verwendete Präfix **autogen-** ist durch den Parameter **''generated="true"''** im Datensatz der Fahrstraße ersetzt((Siehe **[[#wichtige_aenderung|Wichtige Änderung]]** oben auf dieser Seite.))    
- 
-===== Tipps und Tricks ===== 
-==== Fahrstraßen beibehalten ==== 
-Frage: Warum überschreibt der Analyser meine Änderungen an den Fahrstraßen?\\ 
-Antwort: Der Analyser 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 
- 
-{{:analyzer:alt_route_ab.png}} \\ 
-  * 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 Analyser 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-Log ==== 
-- ''ANALYSER: max. recursion depth (101 > 100) reached'' 
-  * Bei der Suche von Verbindungen zwischen 2 Blöcken werden mehr als 100 Gleisplanelemente gefunden. \\ **[[http://forum.rocrail.net/viewtopic.php?p=89410#p89410|Siehe diesen Forumbeitrag]]** 
-  => Bitte **[[goldenrules-de|Bewährtes Vorgehen]]** beachten\\ 
-   
-Zur Anzeige der Analyser-Ergebisse muss **[[rocrailini-trace-de#berechnung|Traces: Berechnungen]]** aktiviert sein. 
- 
-Beispiel eines Server-Log bei "Analyser zurücksetzen" und anschließendem "Analysieren": 
-<code> 
-23:45:36 route generator (re)created routes (0 -> 4) 
-23:45:35 starting analyzer... 
-23:45:25 route generator cleanup removed 4 routes (4 -> 0) 
-23:45:24 starting analyzer cleanup... 
-</code> 
-  * **Hinweis:** \\ Die Aktivierung der Trace-Ebene "Analysieren" wird nicht empfohlen. \\ Diese Option sollte der Fehlersuche in Analyser-Funktionen vorbehalten bleiben.\\ 
-\\ 
-===== Wichtige Hinweise zu Neustarts von Rocrail und Rocview ===== 
-Während des Analyserlaufs 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 Analyserlauf__, 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.**  | 
- 
  
analyzer-de.1546836714.txt.gz · Last modified: 2019/01/07 05:51 by rainerk