RgZm Konfiguration
- RgZm Konfiguration
- Allgemeines
- Liste der verfügbaren Betriebsstellen
- Definition der Betriebsstellengleise
- Definition des Betriebsstellenanzeigenamens
- Definition IP-Adresse der Betriebsstellenrechner
- Definition der Ports der Betriebsstellenrechnern
- Ports zur Fernsteuerung der RgZm
- Fahrplan & BFO
- Konfiguration der Nachbarbetriebsstellen bzw. Strecken
- Konfiguration von Gleisbeschränkungen
- Konfiguration der Uhranzeige
- Komplette Beispielkonfiguration:
- Anpassung des Startscriptes
Allgemeines
Die Konfiguration der RgZm erfolgt in einer Textdatei. Der Name der Datei ist frei wählbar. Üblich als Dateiname ist das Treffenskürzel gefolgt von der Jahreszahl, sowie die Dateiendung “rgzm”.
Zum Beispiel: rwn-2011.rgzm
Am einfachsten ist es eine bestehende Konfiguration zu kopieren und anzupassen, da viele der Einträge gleich bleiben. Die Zeilen der Konfiguration, die nur zur Kommentierung der Einträge dienen, beginnen mit “#“. Die Reihenfolge der Konfigurationszeilen ist prinzipiell egal. Zur Übersicht ist eine Blockbildung sinnvoll. Alle selbstdefinierten Namen (Betriebsstellen und deren Aliasse) müssen eindeutig sein. Unterschiede in der Schreibung können eine mühsame Fehlersuche nach sich ziehen.
Hinweis: Die Datei sollte als UTF-8 kodierte Datei abgespeichert werden, da sie mit dieser Kodierung eingelesen wird! Anderenfalls kann es Schwierigkeiten mit der Darstellung von Sonderzeichen, insbesondere von Umlauten, geben.
Liste der verfügbaren Betriebsstellen
Mit der Definition:
Betriebsstellen=<Betriebsstellenliste>
werden alle Betriebsstellen auflistet, welche im Arrangement mit RgZm bedient werden. In der Betriebsstellenliste erfolgt die Angabe der Namen mit Komma getrennt, wobei die Namen nur aus Buchstaben und keine Leer- sowie Sonderzeichen enthalten sollten. Die Betriebsstellen erscheinen in der Reihenfolge der Listung in der Auswahlbox. Also ist eine alphabetische Reihung oder eine Reihung entsprechend der Astreihung sinnvoll.
Als Beispiel die Definition für Rosswein 2011:
Betriebsstellen=Albertsthal,Barby,Blockstelle,Brettleben,Dahmstadt,Finkenheerd,Hartmannsdorf,...
Definition der Betriebsstellengleise
Die Definition erfolgt in der Form:
<Betriebsstellenname>.gleise=<Gleisliste>
Die Gleise werden als kommaseparierte Liste angeben. Der erste Eintrag der Liste erscheint in der Ansicht als erstes Gleis oben, der letzte entsprechend unten. Es ist auch möglich Gleise nebeneinander anzuordnen. Diese Gleise sind in Klammern anzugeben.
Dresden.gleise=(1,1a),2,3,(4a,4b)
Für dieses Beispiel erscheinen die Gleise 1 und 1a sowie 4a und 4b nebeneinander. Dazwischen sind die Gleise 2 und 3 in je einer Zeile angeordnet.
Da man die RgZm-Ansicht drehen und wenden kann, ist ein Standortwechsel des FDL kein Problem. Die Gleise müssen in der Schreibweise angegeben werden, wie sie in der BFO verwendet wurden, bzw. die BFO ist auf die Bezeichnung hier anzupassen. Damit kann die Zuordnung der Gleisbelegungen in der RgZm erfolgen. In der Liste können auch Betriebsstellen verbleiben, die im aktuellen Arrangement nicht benötigt werden. Da sie in der definierten Betriebsstellenauswahl nicht enthalten sind, stören sie nicht, können bei der nächsten Konfiguration aber wieder genutzt werden.
Eine Besonderheit sind Blockstellen und Abzweige, denn sie haben keine Betriebsstellengleise. Die Liste hinter dem “=” bleibt einfach leer:
Saaleck.gleise=
Wenn bei einer Betriebsstelle ohne Gleise aber die RgZm-Meldekette endet, braucht man ein BS-Gleis um die Züge von der Strecke zu schleusen. Dann muß ein Gleis angegeben werden. Bei OKW ist das meist der Fall. Hier wird für Züge die auf die IBahn überleiten das Gleis “IBahn” angegeben. Die Züge können auf das Gleis angenommen und aufgelöst werden. Beispiele:
Barby.gleise=6,5,3,2,1
Oberkaselwitz.gleise=I-Bahn
Definition des Betriebsstellenanzeigenamens
Per folgender Definition in der Form:
<Betriebsstellenname>.anzeigeName=<Betriebsstellenname mit Leer- und/oder Sonderzeichen>
lässt sich ein alternativer Betriebsstellenname angeben, der in der graphischen Oberfläche zur Anzeige dient. Beispiele:
BW_Tim.anzeigeName=BW Tim
Zella-Mehlis-West.anzeigeName=Zella-Mehlis West
P\u00f6hlau.anzeigeName=P\u00f6hlau (Gbf)
Definition IP-Adresse der Betriebsstellenrechner
Die IP-Adressen der im Netz befindlichen RgZm-Betriebsstellen werden im Standardfall automatisch im Netz bekannt gemacht (als Broadcast bzw. Rundruf) und ausgewertet. Wenn in einem Netz aber Broadcasts nicht erlaubt sind, kann man die IPs in folgender Form fest konfigurieren:
<Betriebsstelle>.ip=<IP-Adresse>
Die IP-Adresse muss natürlich mit der IP-Adresse überein stimmen, die der entsprechende Rechner mit RgZm der Betriebsstelle wirklich im Netz nutzt. Ansonsten ist keine Kommunikation möglich. Im Normalfall ist der Block komplett auskommentiert oder fehlt. Die automatische Konfiguration ist in jedem Fall vorzuziehen.
Den eigenen Port, sowie IP-Adresse und Port der Nachbarbetriebsstellen kann man in der Anwendung unter dem Menü “Einstellungen/Konfiguration ändern…” einsehen. Ist dort nichts gelistet, wurden sie nicht konfiguriert und (noch) nicht per Broadcast übertragen. Beispiel für eine fest konfigurierte IP:
Albertsthal.ip=127.0.0.1
Definition der Ports der Betriebsstellenrechnern
Für die Ports gilt das selbe wie für die IP-Adressen, sie werden normalerweise vom Betriebsstellenrechner selbst als Broadcast ins Netz gesendet und von den Nachbarbetriebsstellen empfangen und ausgewertet. Wenn in einem Netz aber Broadcasts nicht erlaubt sind, kann man diePorts fest einstellen:
<Betriebsstelle>.port=<Portnummer>
Die RgZm der Betriebsstelle wird dann mit diesem Port geöffnet. Laufen mehrere RgZm auf einem Rechner, dann müssen diese Ports unterschiedlich sein. Es dürfen auch keine Ports genutzt werden, die bereits von anderen Anwendungen genutzt werden. Jeder Port ist auf einem System einmalig. Ports können von 1 - 65536 vergeben werden.
Im Normalfall ist der Block komplett auskommentiert, die RgZm sucht selbst einen freien Port und teilt diesen den anderen RgZm im Netz mit. Beispiel für einen fest konfigurierten Port:
Albertsthal.port=4711
Ports zur Fernsteuerung der RgZm
Die RC-Ports dienen der Fernsteuerung einer Betriebsstelle. Ist der Port definiert, wird ein Service in der RgZm gestartet über den man sich mit der RgZm verbinden kann. Das Protokoll für die Fernsteuerung ist separat dokumentiert. Für die Verwendung der Portnummern gilt das selbe, wie im Abschnitt Ports. Die Konfiguration erfolgt in der Form:
<Betriebsstellenname>.rcport=<Portnummer>
Beispiel:
Blockstelle.rcport=22220
Anmerkung: Die Vergabe der Ports zur Fernsteuerung wird ebenfalls noch auf das Verfahren per Broadcast umgestellt. Dann ändert sich dieser Abschnitt der Konfiguration entsprechend.
Fahrplan & BFO
Fahrpläne werden eingelesen, um die möglichen Zugfahrten in der RgZm bekannt zu geben und die BFO zu füllen. Die BFO muß in einer Textdatei vorliegen. Das erwartete Dateiformat ist separat dokumentiert und entspricht den Datenformaten, welche die vom FKTT benutzten Fahrplanwerkzeuge als BFO exportieren. Die einzelnen Felder sind darin durch ein definiertes Trennzeichen getrennt. Die Konfiguration der einzulesenden BFO-Datei erfolgt in der Form:
<Betriebsstellenname>.fahrplan=<Pfad und Dateiname>
Als Pfad kann sowohl ein absoluter als auch ein relativer Pfad angegeben werden. Ein relativer Pfad muß mit “./” beginnen. Der Punkt “.” bezeichnet dabei das Verzeichnis in dem die RgZm gestartet wird. Als Pfadtrenner sollte der Slash “/” genutzt werden, da der Backslash “\” betriebssystemabhängig zur Maskierung von Sonderzeichen benutzt wird. Kann die konfigurierte Datei nicht gefunden werden, erfolgt beim Start eine Fehlermeldung. Die RgZm startet trotzdem, aber dann mit nicht gefülltem Fahrplan. Beispiel:
Albertsthal.fahrplan=./fahrplan/ATL.txt
Hinweis: werden die BFOen nicht mit FBS erzeugt, so kann auch ein alternativer Separator für die Datenfelder angegeben werden:
timetable_separator=<Separator>
Der Standardwert für den Separator ist “\t” und entspricht einem Tabulator.
Konfiguration der Nachbarbetriebsstellen bzw. Strecken
Die Konfiguration der Nachbarn bzw. Strecken zu ihnen erfolgt in der einfachsten Form so:
Strecke.<Betriebsstelle-A>.<Betriebsstelle-B>=<seite>,<seite>
Damit wird eine zweigleisige (=Voreinstellung) Strecke zwischen 2 Betriebsstellen (A und B) definiert. Die zwei Parameter <seite>
geben an auf welcher Seite der Betriebsstelle die Strecke angeordnet wird. Die Angaben erfolgen als “rechts” oder “links”, wobei die beiden Worte bis zum ersten Buchstaben verkürzt werden können. Beispiel:
Strecke.Finkenheerd.Albertsthal=rech,li
Der erste Seitenparameter bezieht sich dabei immer auf die erste Betriebsstelle in der Definition, der zweite Seitenparameter entsprechend auf die zweite angegebene Betriebsstelle. Die Reihenfolge der Betriebsstellen ist nicht von belang. Bei Vertauschung müssen die Seitenangaben natürlich ebenfalls getauscht werden:
Strecke.Albertsthal.Finkenheerd=li,re
Können an einer Seite einer Betriebsstelle mehrere Strecken abgehen (eine Verzweigung), kann es nötig sein die Anzeigeposition festzulegen. Das erfolgt durch Angabe einer Zahl an der Seitenangabe, welche durch einen Doppelpunkt getrennt wird:
Strecke.Oberkaselwitz.Dahmstadt=li:2,re
Strecke.Oberkaselwitz.Jenshausen=li:1,re
In diesem Beispiel wird die Strecke nach Jenshausen als erstes (oben) gelistet, gefolgt von der Strecke nach Dahmstadt. Beide Strecken auf der linken Seite. Wird die Position in der Definition nicht angegeben, werden die Strecken in der Reihenfolge der Definition angeordnet.
Als 3. Parameter der Definition kann der Streckentyp mit “2gl”, “1gl” oder “glw” angeben werden, wobei “glw” Gleiswechselbetrieb bedeutet. Der Standardwert ist “2gl” und kann weggelassen werden. Beispiel:
Strecke.Dahmstadt.Brettleben=li,re:1,1gl
Als 4. und 5. Parameter kann ein Alias für die Bezeichnung der Strecke angegeben werden. Das ist zwingend nötig wenn zwei Betriebsstellen doppelt verbunden sind (z.B. Hauptbahn und I-Bahn), oder eine zweigleisige Strecke als 2 eingleisige Strecken genutzt wird. Der 4. Parameter bezieht sich dann auf die Anzeige in der ersten Betriebsstelle der Definition. Der 5. Parameter auf die zweite Betriebsstelle der Definition.
Wichtiger Hinweis: Wurden für die Betriebsstellen explizit eine IP und ein Port definiert (siehe Abschnitte Port- und IP-Definition) so müssen für die Aliasse die selben Ports und IPs definiert werden!
Beispiel für die Definition zweier Strecken zwischen gleichen Betriebsstellen:
Strecke.Oberkaselwitz.Finkenheerd=li:2,re:1,1gl,nach FIH,nach OKW
Strecke.Oberkaselwitz.Finkenheerd=li:1,re:2,,I-Bahn,I-Bahn
Bei der zweiten Definition wurde der 3. Parameter weggelassen. Die Strecke ist also zweigleisig.
Konfiguration von Gleisbeschränkungen
Bei einigen Betriebsstellen ist es auf Grund der vorhandenen Weichen oder Signale nicht möglich von allen Gleisen in bestimmte Richtungen auszufahren, bzw. aus allen Richtungen in bestimmte Gleise einzufahren. Diese Beschränkungen können auch in der RgZm abgebildet werden.
Den Ausschluß der Einfahrt in ein Gleis aus einer Richtung erfolgt mit der Definition:
<Betriebsstelle>.<Nachbarbetriebsstelle>.keineEinfahrt=<Gleisliste>
Die Gleise in der Gleisliste werden durch Komma getrennt. Ist in der Streckendefinition zur Nachbarbetriebsstelle ein Alias definiert worden, so muß dieser auch hier verwendet werden. Die Liste der Gleise muß die Gleisnamen entsprechend der Gleisdefinition der Betriebsstelle enthalten. Beispiel (in der ersten Zeile die zugehörige Streckendefinition):
Strecke.Finkenheerd.Albertsthal=li,li,,ATL,FIH
Finkenheerd.ATL.keineEinfahrt=Gl.1
In Finkenheerd ist aus Richtung Albertsthal keine Einfahrt nach Gleis 1 möglich. Da für die Strecke von/nach Albertsthal der Alias “ATL” definiert wurde, muß dieser auch in der Definition der Beschränkung benutzt werden. Die Definition der Ausfahrtbeschränkungen aus bestimmten Gleisen erfolgt analog mit:
<Betriebsstelle>.<Nachbarbetriebsstelle>.keineAusfahrt=<Gleisliste>
zum Beispiel:
Finkenheerd.ATL.keineAusfahrt=Gl.2,Gl.4
Achtung!: wird für die selbe Nachbarbetriebsstelle eine Einfahrtbeschränkung definiert, aber keine Ausfahrtbeschränkung, so gilt die Einfahrtbeschränkung ebenfalls als Ausfahrtbeschränkung. Soll diese nicht gelten, so muß eine leere Ausfahrtbeschränkung definiert werden!
Konfiguration der Gleisbeschränkungen für Fahren im Gegengleis
Wird eine Strecke für das Fahren im Gegengleis konfiguriert, so ist es auch hier möglich Beschränkungen für die Ein- und Ausfahrt zu definieren. Denn in der Regel kann nicht aus allen Gleisen ins Gegengleis ausgefahren werden, bzw. in alle Gleise aus dem Gegengleis eingefahren werden. Die Definition erfolgt analog zur Definition der normalen Gleisbeschränkungen, allerdings mit den folgenden Schlüsseln:
<Betriebsstelle>.<Nachbarbetriebsstelle>.keineGglAusfahrt=<Gleisliste>
<Betriebsstelle>.<Nachbarbetriebsstelle>.keineGglEinfahrt=<Gleisliste>
Beispiele für die Anwendung sind:
Strecke.Finkenheerd.Albertsthal=li,li,,ATL,FIH
Finkenheerd.ATL.keineGglEinfahrt=Gl.22
Finkenheerd.ATL.keineGglAusfahrt=Gl.1,Gl.3
Konfiguration der Uhranzeige
Diese Konfiguration kommt nur zum Tragen, wenn auf dem Rechner, auf dem die RgZm genutzt wird, noch keine Nutzereinstellungen abgelegt wurden. Die lokalen Nutzereinstellungen können durch Anklicken des Menüpunktes “Nutzereinstellung löschen” gelöscht werden.
Der Anzeigetyp der Uhr wird mit der Definition:
clock.type=<anzeigetype>
vorgenommen. Der Anzeigetyp kann “analog” oder “digital” lauten.
Die Farbe der Zeiger, bzw. Ziffern wird mit der Definition:
clock.color=<RGB>
vorgenommen. Die RGB-Farbwerte sind als Hexadezimalzahlen zwischen 0 und ff durch Komma getrennt anzugeben (z.B. “09,ac,7f”).
Für die Analoganzeige kann ein Bild als Hintergrund der Uhr geladen werden, um z.B. ein Ziffernblatt dar zu stellen. Die Definition erfolgt in der Form:
clock.ziffernblatt=<dateipfad>
Der Pfad kann relativ zum Startverzeichnis der RgZm oder absolut angegeben werden. Z.B.:
./resources/clockfaces/ziffernblatt-roem.1.gif
Komplette Beispielkonfiguration:
Konfiguration für 2 Betriebsstellen, welche über eine zweigleisige Strecke und eine I-Bahn verbunden sind. Die Blöcke mit IP- und Port-Konfigurationen können in Netzen in denen Broadcast erlaubt ist entfallen. Zum Testen der Kofiguration müssen beide Betriebsstellen auf einem Rechner gestartet werden.
Betriebsstellen=Astadt,Bdorf
Astadt.gleise=1,2
Bdorf.gleise=21,22
Astadt.ip=127.0.0.1
Astadt-IBahn.ip=127.0.0.1
Bdorf.ip=127.0.0.1
Bdorf-IBahn.ip=127.0.0.1
Astadt.port=4711
Astadt-IBahn.port=4711
Bdorf.port=4712
Bdorf-IBahn.port=4712
Astadt.fahrplan=./fahrplan/ATL.txt
Bdorf.fahrplan=./fahrplan/BY.txt
Strecke.Astadt.Bdorf=re:2,li
Strecke.Astadt.Bdorf=re:1,li,1gl,Bdorf-IBahn,Astadt-IBahn
###Uhr:
clock.type=analog
clock.color=aa,cc,00
clock.ziffernblatt=./resources/clockfaces/ziffernblatt-roem.1.gif
Anpassung des Startscriptes
Beim Start der RgZm wird ein Dateidialog geöffnet, um die gewünschte RgZm-Konfiguration zu laden. Die zu ladende RgZm-Konfiguration kann dem Startskript als Parameter mitgegeben werden. Dafür wird beim Aufruf des Startscripts der Pfad zur Konfigurationsdatei nach einem Leerzeichen angehängt. Getrennt durch ein weiteres Leerzeichen kann auch der Name der zu startenden Betriebsstelle übergeben werden. Dann wird auch der Betriebsstellenauswahldialog übersprungen und die RgZm öffnet sich direkt. Diese Möglichkeiten bestehen unabhängig von der Betriebssystemplattform.
c:\RgZm> bin\rgzm.bat ./config/rwn-2011.rgzm Finkenheerd