Kapitel 19. Modellbahnen
Zurück | 19.4 Software | Weiter

## 19.4 Software

Wie wir schon gesehen haben sind nur wenige Hardwarekomponenten für den Digitalbetrieb einer Modellbahn notwendig. Mit der Software verhält es sich ähnlich. Die Software einer digital gesteuerten Modellbahnanlage besteht aus zwei Komponenten; einem Serverprozess welche die Funktionalität einer Zentrale nachbildet sowie verschiedenen Clientprogrammen die zur Steuerung der Anlage dienen.

Die hier nachfolgend vorgestellten Projekte stehen zum großen Teil als inoffizielle Debian Pakete zur Verfügung. Tragen Sie folgende Zeile in die Datei `/etc/apt/sources.list` ein:

    deb http://www.openoffice.de/debian/ stable main

und installieren Sie dann die gewünschten Pakete, beispielsweise mit `apt-get`.

Natürlich können Sie sich auch die Sourcen der Programme besorgen und die kompletten Pakete selbst übersetzen.

### 19.4.1 Server

Die Auswahl der Software für den Server ist von der bereits vorhandenen Hardware abhängig. Beide hier vorgestellten Server unterstützen das SRC Protokoll (Simple Railroad Command Protocol). Die aktuelle Spezifikation dieses Protokolls findet sich unter http://srcpd.sourceforge.net/srcp/. Vorabversionen des Protokollstandards finden sich unter http://members.tripod.de/mtrute/Modellbahn/srcp-maintain.html

SRCP ist ein plattformunabhängiges Internetprotokoll zum Steuern von Modelleisenbahnen, insbesondere digital gesteuerter. Ein SRCP komformer Server stellt das Bindeglied zwischen der Modellbahn (Hardware) und den Steuerprogrammen (Clients), über welche die Modellbahn gesteuert werden soll, dar. Das Protokoll vermittelt eine Client-Server Struktur, wobei der Server die Schnittstelle zur Modellbahnanlage und die Clients die Schnittstelle zu den(m) Modellbahner(n) darstellen. SRCP ist Multiuser fähig.

#### 19.4.1.1 erddcd

Das Projekt DDL - Digital Direct for Linux http://www.vogt-it.com/OpenSource/DDL/ von Torsten Vogt stellt mit dem Daemon „erddcd“ einen Serverprozess zur Verfügung, der mit dem Booster kommuniziert und somit eine Digitalzentrale überflüssig macht. `erddcd` ist Bestandteil des Paketes DDL.

Dieser Server kann mit den Boostern 6604, 6015 oder 6017 der Firma Märklin, sowie mit verschiedenen Selbstbauboostern verwendet werden.

Der Daemon `erddcd` sendet die Steuerdaten von unterschiedlichen Clients zum Booster, welcher über ein serielles Kabel mit dem Rechner verbunden ist. Das Debian Paket wurde um das Init-Skript `/etc/init.d/erddcd` erweitert, ausserdem wird eine Konfigurationsdatei `/etc/erddcd.conf` ausgewertet. In dieser ist ggf. die Bezeichnung der seriellen Schnittstelle anzupassen, falls der Booster nicht an `/dev/ttyS0` angeschlossen ist.

#### 19.4.1.2 srcpd

Mit `srcpd` von Matthias Trute (http://srcpd.sourceforge.net) steht ein weiterer Server zur Verfügung mit dem die Märklin Central Unit 6020 oder 6021 zusammen mit den Märklin Interfaces 6050 oder 6051 angesprochen werden können. Weiterhin unterstützt `srcpd` die Intellibox der Firma Uhlenbrock.

Das `srcpd` Projekt wurde im Sommer 2001 aus der Taufe gehoben und hat sich zum Ziel gesetzt einen einfach zu benutzenden SRCP-konformen Server für die digitale Modellbahnsteuerung zu erstellen.

Der Urahn des `srcpd` ist der `erddcd` von Torsten Vogt. Dieser emuliert auf dem PC ein Interface und benötigt zur Steuerung der Modelleisenbahn nur die Booster, Schaltdecoder, Rückmeldemodule etc., jedoch kein Interface.

Auf dieser Basis wurde mit Beginn des Jahres 2000 die ersten SRCP Fassungen entwickelt und parallel dazu begann Matthias Trute einen Dämon (m6051d) für das Märklin-Interface M6051 zu schreiben. Dieser benutzte einige Routinen des `erddcd`, schlug aber schon früh einen anderen Weg ein. Diesen Dämon wiederum nahm Frank Schmischke wiederum zusammen mit dem `erddcd`als Ausgangsbasis für einen Dämon für die Intellibox von Uhlenbrock.

Da der überwiegende Teil der beiden Dämonen (für M6051 und Intellibox) identischen Code besitzt wurde von Matthias Trute die Idee geboren, einen universellen SRCP-Server zu erstellen, der alle bekannten Interfaces abdecken soll. Den größten und aufwendigsten Anteil am Server hat der SRCP-Teil, wo die eingehenden Befehle auf ihre Korrektheit geprüft und anschließend dekodiert werden, und wo die Informationen für die Clients zusammengestellt werden.

Aus diesem Grund wurde im Sommer 2001 das `srcpd`-Projekt vom Matthias Trute (Maintainer) und Frank Schmischke aus der Taufe gehoben. Sie haben ihre beiden SRCP-Server zum neuen `srcpd` verschmolzen. Änderungen die das SRCP betreffen (und da wird es einige sehr interessante geben!), brauchen jetzt nur noch einmalig für alle intergrierten Interfaces durchgeführt zu werden. Hierdurch ist ein wesentlich besseres weiterentwickeln möglich, da nun mehrere Leute am selben Code rumwerkeln und Fehler schneller und besser aufgespürt und beseitigt werden können.

### 19.4.2 Clients

Während die SRCP Serversoftware ledigliche eine anfängliche Konfiguration benötigt und dann unbemerkt im Hintergrund arbeitet, stellen die hier vorgestellten Client Programme die Verbindung zum Lokführer vor dem Bildschirm her. Jeder SRCP Server kann Instruktionen von mehreren Clients gleichzeitig verarbeiten, es können also die hier vorgestellten Programme bunt gemischt eingesetzt werden.

#### 19.4.2.1 telnet

Zuerst zu einem etwas ungewöhnlichen Client, `telnet`. `telnet` wird sich sicherlich nicht zum bevorzugten Werkzeug zur Modellbahnsteuerung entwickeln, für die Fehlersuche kann es jedoch sinnvoll sein auch dieses Werkzeug zu kennen.

`telnet` stellt die einfachste Variante der Arbeit mit dem `srcpd` dar. Wenn der `srcpd` und `telnet` auf dem gleichen Rechner laufen, kann man mittels

    % telnet localhost 12345

den `srcpd` in Verbindung mit `telnet` betreiben. Wenn der `srcpd` auf einem anderen Rechner läuft, so ist bei `telnet` der Parameter `localhost` durch den entsprechenden Rechnernamen zu ersetzten. Bei einer abweichenden Portadresse ist der Parameter 12345 entsprechend anzupassen.

Nach dem Start von `telnet` wird eine Verbindung zum `srcpd` aufgebaut. Wenn dies erfolgreich durchgeführt worden ist, wird vom `srcpd` eine Willkommensmeldung an `telnet` zurückgeschickt. Alle Ausgaben erscheinen auf der aktuellen Console, es gibt keine weitere Benutzeroberfläche. Nun kann am Prompt ein Befehl gemäß SRCP Standard eingegeben werden, Beispielsweise:

    % SET GL PS 33 1 12 14 0 4 0 0 0 0

Dieser bewirkt, daß die Lok mit der Adresse 33 mit Fahrstufe 12 (von 14 möglichen) ohne Licht oder sonstige Zusatzfunktionen (4) vorwärts fahren soll. Dies soll nur als Beispiel dienen, wenn `telnet` zur weiteren Steuerung benutzt werden soll, so hilft ein Blick in die SRCP Spezifikation.

Zum Beenden können die Befehle:

    % LOGOUT

oder

    % SHUTDOWN

verwendet werden. Bei ersterem wird nur die Verbindung zum `srcpd` unterbrochen und `telnet` beendet sich, während mit dem zweiten Befehl der `srcpd` angewiesen wird sich zu Beenden, `telnet` wird hierbei ebenfalls beendet.

#### 19.4.2.2 Traindrive

Traindrive wurde von Fritz Ganter geschrieben und steht auf der Seite http://traindrive.gpsdrive.cc/ zum Download bereit. Traindrive bietet neben einer übersichlichen Benutzeroberfläche auch die Möglichkeit Gamepads und Joysticks zur Steuerung einzusetzen. Als besonderes Feature ist eine Sprachausgabe implementiert, mit der es - zusammen mit einem Gamepad - möglich ist, die Anlage zu steuern ohne einen Blick auf den Bildschirm zu werfen. Traindrive nutzt das GTK-Toolkit (GNOME).

Mit Hilfe von „Drag and Drop“ (ziehen und fallenlassen) können sie Loks aus der Lokübersicht (auf der linken Bildschirmseite) auf eines der vier Lokkontrollfelder (rechts) ziehen. Auf der Steuerungsseite kann jede Lok nur einmal aktiviert werden, Versuche eine Lok zu übernehmen, welche bereits gesteuert wird, werden scheitern.

Traindrive kann die Befehle durch eine Sprachausgabe akustisch bestätigen. Dazu ist das Programm `festival` notwendig.

Traindrive kennt die folgenden Kommandozeilenoptionen bei Start

Traindrive Optionen

`-d`

  zeigt Infos zur Fehlersuche, Debugging Ausgabe.

`-j`

  schaltet die Verwendung von Joysticks/Gamepads ab.

`-l german | english`

  aktiviert deutsch bzw. englisch für die Sprachausgabe.

`-i`

  importiert die Konfigurationsdatei von älteren Traindrive Versionen (kleiner 0.21>.

Da Traindrive, wie alle anderen hier beschriebenen Programme, auf einen zentralen SRCP-Server zugreift, können mehrere Instanzen von Traindrive auf einem oder mehreren Rechnern gestartet werden und auf den Serverprozess zugreifen. Traindrive nutzt den Rückmeldeport des SRCP-Servers um Änderungen eines anderen Clients anzuzeigen.

Abbildung 19.4. Traindrive

Nach dem ersten Start von Traindrive sind zunächst einige Einstellungen vorzunehmen. Im Dialog „Traindrive Einstellungen“ muss der Server angegeben werden auf dem der SRCP-Dienst läuft. Läuft der Server auf dem gleichen Rechner wie das Programm Traindrive, so kann der Wert `localhost` beibehalten werden. Alternativ ist hier der Rechnername oder die IP-Nummer des Servers anzugeben. Weiterhin sind die Ports für den Server (Befehls- und Infoport) wie in folgendem Bild gezeigt mit den Werten `12345` und `12346` anzugeben (für die SRCP-Protokoll Version 0.7).

Abbildung 19.5. Traindrive Einstellungen

Im unteren Bereich des Einstellungsfensters können die Ports für die Gamepads/Joysticks und die Zeitverzögerung für die Sprachausgabe angepasst werden. Diese Werte können im allgemeinen so übernommen werden.

Wie im ersten Bild zu sehen sind die vier Bereiche für Loks mit einem Fragezeichen versehen. Zu jeder Lok können natürlich passende Bilder hinterlegt werden, einige vorbereitet Bilder sind bereits auf der Festplatte installiert. Das Archiv mit den Bildern liegt unter `/usr/share/doc/traindrive/locopics.tgz` und kann mit dem Kommando `tar xvfz /usr/share/doc/traindrive/locopics.tgz` im Heimatverzeichnis entpackt werden. Die Bilder werden den Loks über den Dateinamen, dieser bezeichnet die in Traindrive angegebene Digitaladresse der Lok, zugeordnet. Für jede Lok muss ein kleines (mit 128x96 Pixeln) und ein grosses (mit 200x150 Pixeln) Bild erstellt werden. Die Bilder müssen im Heimatverzeichniss des Benutzers im Unterverzeichnis `locopics/` abgelegt werden. Für die Lok mit der Digitaladresse „1“ lauten die Dateinamen `1-big.jpg`, für das grosse Bild, und `1.jpg`, für das kleine Bild.

Abbildung 19.6. Traindrive - individuelle Bilder

Traindrive kann mit der Maus bedient werden, bietet aber auch die Möglichkeit die Steuerung der Loks mit der Tastatur oder über ein(en) Gamepad/Joystick durchzuführen. Folgende Aktionen können über die Tastatur ausgeführt werden.

Traindrive Tastaturbelegung

Cursortaste rauf/runter

  Erhöht/Verringert die Geschwindigkeit

Cursortaste rechts/links

  Schaltet zwischen den vier Loks um, jeweils eine Lok hat den „Fokus“ und ist aktiv. Am Fokus des Fahrstufenschiebers ist zu erkennen, welche Lok für die Tastatur den Fokus hat.

F1, F2, F3, F4

  Betätigt die Funktionen F1 bis F4 der Lok.

ESC

  Schaltet das Licht ein/aus.

Leertaste

  Sofortiger Nothalt dieser Lok.

STRG

  Sofortiger Nothalt aller Loks.

Die komfortableste Art der Bedienung ist die Verwendung von Gamepads. Es lassen sich bis zu 4 Gamepads oder Joysticks anschliessen. Bei der Steuerung über ein Gamepad sind die Tasten wie folgt belegt:

Tastenbelegung Gamepad/Joystick

Vorwärts/Zurück

  Erhöht/Verringert die Geschwindigkeit.

Rechts/Links

  Wechselt zur nächsten/vorherigen Lok und aktiviert den Fokus für diese Lok.

Tasten 1 bis 4

  Betätigt die Funktionen F1 bis F4.

Taste 5

  Wechselt die Fahrtrichtung.

Taste 6

  Schaltet das Licht ein/aus.

Taste 7

  Setzt die Fahrtstufe auf 0, die Lok stoppt mit einer eventuell im Dekoder aktivierten Bremsverzögerung.

Taste 8

  Nothalt der aktiven Lok.

Im Lokeditor können den Loks alle notwendigen Parameter zugewiesen werden. Ist noch keine Lok definiert, so kann über die Schaltfläche „Lok hinzufügen“ ein neuer Eintrag erzeugt werden. Bestehende Einträge können durch einen Mausklick auf die entsprechende Spalte verändert werden. In der Spalte „Lokadresse“ ist die gewünschte Adresse für die Lok anzugeben, zu beachten ist hierbei, dass diese Angabe auch in direktem Zusammenhang mit dem Bild (und dem Dateinamen des Bildes) steht. Die Spalte „Lokname“ kann mit einem beliebiegen Text belegt werden.

Abbildung 19.7. Traindrive Lokeditor

In der Spalte „Protokoll“ ist das passende Protokoll für den in der Lok installierten Dekoder anzugeben. Eine Liste der möglichen Werte wird durch einen Mausklick auf die Schaltfläche „Informationen“angezeigt.

Abbildung 19.8. Traindrive Lokeditor - Informationen

In diesem Informationsfenster finden sich auch Informationen zu den Funktionen, welche über die entsprechende Zahl in der fünften Spalte angegeben werden können. Die vierte Spalte dient zur Festlegung der maximalen Geschwindigkeit jeder einzelnen Lokomotive.

Werden fünf oder mehr Loks definiert, so können diese nicht im rechten Bereich des Programmfensters angezeigt werden. Nicht aktive Loks können aus der Liste im linken Bereich des Programmfensters in den rechten Bereich mittels „Drag & Drop“ übertragen werden.

Traindrive kann Informationen über durchgeführte Aktionen mittels einer Sprachausgabe über einen Lautsprecher ausgeben. Hierzu ist das Paket `festival` zu installieren und die Sprachausgabe in der Konfiguration zu aktivieren.

#### 19.4.2.3 SpDrS60

SpDrS60 ist ein Programm zum komfortablen Steuern von Weichen und Signalen für die Benutzung mit SRCP-konformen Servern wie DDL. Es ist außerdem das erste grafische ausgereifte Programm, um unter Linux seine Modellbahn zu steuern. SpDrS60 bietet soviel Komfort, um seine Modellbahnanlage getreu den bei der Deutschen Bahn AG immer noch verwendeten Spurplan-Drucktastenstellwerken (SpDr) zu steuern. Bei der Benutzung dieses Programms muss man sich - sofern man es kennt - von einigen gewohnten Eigenschaften eines Steuerprogramms verabschieden, da diese meistens zu sehr auf die Belange der Modellbahn abgestimmt sind.

Ein Ziel bei der Erstellung dieses Programms ist es, die Darstellung des Gleisbildstellwerks möglichst vorbildnah zu verwirklichen. Natürlich heißt »möglichst vorbildnah« nur, dass alle für eine Modellbahn sinnvollen Anzeigen, Schalthandlungen etc. übernommen worden sind. Aber gerade bei letzterem ist als Beispiel anzumerken, dass Weichen halt nicht »einfach so« umgestellt werden, sondern dass dazu ein gewisser - der Sicherheit dienender - Ablauf einzuhalten ist, indem bestimmte andere Tasten vorher betätigt werden. In Zukunft werden noch einige weitere Features realisiert werden, so dass die Authentizität noch gesteigert werden kann. Hier ein Überblick über die schon vorhandenen Features:

- Einfaches Erstellen des Anlagenlayouts

- Einstellen von Fahrstraßen durch Anklicken der Start- und Zielsignale

- Automatische Rücknahme von Fahrstraßen durch Gleiskontakte oder durch Betätigen der

- Fahrstraßen-Hilfstaste FHT

- Stellen von einzelnen Weichen mit der Weichengruppentaste WGT

- Stellen von einzelnen Signalen mit der Signalgruppentaste SGT

- Drehscheiben- und Schiebebühnen-Ansteuerung

- Übersicht über alle Rückmeldeports

- Einfache Datenstruktur in den Dateien, für jedermann im Klartext lesbar und die Inhalte daher änderbar

„SpDrS60“ kann nicht eigenständig benutzt werden. Es benötigt z.B. den signalerzeugenden Daemon „erddcd“ aus dem DDL-Projekt oder jeden anderen SRCP Server, der die Verbindung zwischen PC und der Anlage herstellt. Zielsetzung ist, eine sinnvolle Kombination aus Anwenderfreundlichkeit (z.B. schnelles Lernen der Bedienung) und Übersichtlichkeit (z.B. klare Dialoge) zu bieten. Trotz der relativen Einfachkeit in der Bedienung, ist es sinnvoll die Dokumentation ausführlich zu studieren. Auch die kurze Durchsicht der Online-Hilfe (HTML-Format), welche über das Hilfe-Menü aufrufbar ist, sei vorher empfohlen, um einen Überblick über die Funktionen zu bekommen.

##### 19.4.2.3.1 Installation

###### 19.4.2.3.1.1 Bezugsquellen für SpDrS60

Die ursprüngliche Heimat dieses Projektes ist folgende Internetadresse:

http://www.linux-modellbahn.de/

Dort kann man den Quellcode bis zur Version 0.4.3 sowie zusätzliche Informationen herunterladen. Die aktuelle Version 0.4.3 wird zur Zeit von Guido Scholz gepflegt, und kann von den Seiten der LUG-Burghausen heruntergeladen werden. Dort finden sich auch Pakete für verschiedene Distributionen:

http://www.lug-burghausen.org/dienste/rpm.html

Die aktuelle Entwicklung findet als Projekt auf SourceForge statt und ist unter der Adresse http://spdrs60.sourceforge.net/ zu finden.

##### 19.4.2.3.2 Dateien im Paket

Dem Paket liegen einige sehenswerte Beispiel-Gleisbilddateien bei, die nach der Installation z.B. unter folgendem Verzeichnis zu finden sind: `/usr/share/spdrs60/layouts`

Tabelle 19.3. Auflistung der mitgelieferten Beispiel-Gleisbilddateien

Gleisbild-Datei | Beschreibung
--- | ---
alle_elemente.dat.gbs | Enthält alle zur Zeit verfügbaren Elemente
bahnhof_klein.dat.gbs | Ein kleiner Beispielbahnhof
bahnhof_gross.dat.gbs | Ein großer Beispielbahnhof
KleinMaschen.dat.gbs | Der Bahnhof von Klein Maschen
reststeinzeit.dat.gbs | ?
search_example.dat.gbs | ?
dedorf.dat.gbs | Schulungsbeispiel aus „Sp Dr 60- Stellwerke bedienen“
Flandersbach.dat.gbs | Ein real existierender Bahnhof

##### 19.4.2.3.3 Starten des Programms

Zum Starten gibt man in einem Terminalfenster oder in einem Dialog zum Starten von Programmen (z.B. unter KDE mit Alt-F2) das Kommando spdrs60 ein. Darauf startet das Programm, und es erscheint das Programmfenster.

Abbildung 19.9. Leeres Programmfenster nach dem Start

Das Programm wird automatisch in die Menühierarchie integriert und kann von dort gestartet werden.

Abbildung 19.10. SpDrS60 im KDE-Menü eingebunden

#### 19.4.2.4 Bedienung

##### 19.4.2.4.1 Bedienelemente

###### 19.4.2.4.1.1 Menüleiste

Am oberen Bildschirmrand erkennt man zunächst die Menüleiste mit den Einträgen:

Abbildung 19.11. Menüleiste

Die Menüpunkte haben folgende Funktionen:

Datei

  Alle dateibezogenen Aktionen

Bearbeiten

  Editieren des Gleisbilds und der Datendateien, suchen von Elementen, ändern der Programmeinstellungen

Ansicht

  Aktionen, die sich auf die Anzeige verschiedener Daten und den Anzeigemodus des aktuellen Gleisbilds beziehen

Daemon

  Auf den Daemon bezogene Kommandos

Gleisbild

  Interaktionen mit dem aktuell angezeigten Gleisbild

Hilfe

  Verweise auf die Hilfe und die Webseiten

Je nach Programmzustand kann der eine oder andere Menüeintrag nicht aktiviert werden. Bei nicht laufendem Server ist dies z.B. mit allen Einträgen des Punktes »Daemon« der Fall. Ist kein Gleisbild geladen, dann sind die meisten Einträge des Menüs »Gleisbild« ausgegraut.

###### 19.4.2.4.1.2 Werkzeugleiste

Darunter befindet sich die Werkzeugleiste mit den Symbolen und Funktionen, die am häufigsten verwendet werden (v.l.n.r.):

Abbildung 19.12. Werkzeugleiste

- Ein neues, leeres Gleisbild anlegen

- Ein Gleisbild öffnen

- Das aktive Gleisbild speichern

- Ausgewählte Elemente ausschneiden

- Ausgewählte Elemente kopieren

- Elemente aus der Zwischenablage einfügen

- Fahrstraßen-Fenster öffnen

- Übersicht über die Rückmeldemodule anzeigen

- Einfaches Schaltpult anzeigen

- Bahnhofsuhr anzeigen

- Senden der Daten zur Anlage starten

- Senden der Daten zur Anlage beenden

- Alle Signale auf Rot setzen (Nothalt)

Je nach Programmzustand ist das eine oder andere Symbol nicht aktivierbar. Ist der SRCP-Server nicht gestartet, können zum Beispiel die Anlagen-Symbole nicht aktiviert werden. Läuft der Server ohne Rückmeldeunterstützung, dann erscheint das Rückmeldesymbol ausgegraut.

###### 19.4.2.4.1.3 Debugging-Anzeige

Am unteren Rand findet man das Debugging-Fenster. Es ist umschaltbar in den Anzeigenarten »Kommandos«, »Infoport« und »Rückmeldung« (dies kann durch Drücken von Strg-D bzw. durch Wählen des Menüeintrages »Ansicht -> Statuszeile umschalten« geschehen).

###### 19.4.2.4.1.3.1 Kommandoanzeige

Hier erscheint alles, was mit der eigentlichen Programmaufgabe zu tun hat. Befehle, die an den SRCP-Server geschickt werden, sind durch ein '#' hinter der Uhrzeit gekennzeichnet; es folgt der genaue gesendete Befehl. Ein '>' dagegen zeigt an, dass es sich lediglich um eine Information des Programms handelt, also z.B. ob eine Gleisbild-Datei erfolgreich gespeichert wurde.

Abbildung 19.13. Kommandohistorie

Eine solche Historien-Anzeige sieht im Detail etwa so aus:

Abbildung 19.14. Kommandohistorienliste

###### 19.4.2.4.1.3.2 Infoportanzeige

In dieser Auflistung erscheinen alle Meldungen vom SRCP-Sever, die das Programm über den sogenannten Infoport erreichen. Alle Angaben erhalten daher, weil es SRCP-konforme Daten sind, ebenfalls ein '#' nach der Uhrzeit. Damit kann ermittelt werden, welche Befehle andere Programme an den Server geschickt haben.

Abbildung 19.15. Infoport-Historie

Zur Zeit werden diese Daten noch nicht ausgewertet. In Zukunft können aber Änderungen von Elementzuständen, wie sie z.B. durch eine zweite Instanz von SpDrS60 für Linux erzeugt werden, über diesen Infoport auch Auswirkungen auf die erste Instanz haben. Bis zu einer Realisation gilt daher, dass es noch keine Kommunikationsmöglichkeit zwischen zwei oder mehr Programm-Instanzen gibt. Insbesondere angezeigte Weichenstellungen und Zustände von Fahrstraßen können in beiden Programminstanzen widersprüchlich sein. Auch das Lesen der Informationen über den Rückmeldeport ist dann fraglich, da diese Informationen dann nur einem Programm zur Verfügung stehen.

###### 19.4.2.4.1.3.3 Rückmeldeanzeige

Die dritte Anzeigeart enthält Informationen zu den Rückmeldeeinheiten. Ein '>' bedeutet dabei wiederum, dass es sich um Informationen an den Benutzer, diesmal bezogen auf die Rückmeldefunktionen, handelt. Ein '#' bedeutet eine Zustandsänderung eines Rückmeldeanschlusses, wie es vom SRCP-Server gemeldet wurde (es wird die Modulnummer sowie der Anschluss inklusive neuem Zustand angezeigt).

Abbildung 19.16. Rückmeldehistorie

##### 19.4.2.4.2 Menüpunkte

Es stehen in den einzelnen Menüpunkten folgende Einträge zur Auswahl:

###### 19.4.2.4.2.1 Datei

Abbildung 19.17. Datei-Menü

Die Bedeutung der Einträge im Einzelnen von oben nach unten:

- Neues Gleisbild anlegen

- Öffnen eines vorhandenen Gleisbilds

- Speichern des aktiven Gleisbilds

- Speichern des aktiven Gleisbilds unter einem anderen Namen

- Beenden des Programms

###### 19.4.2.4.2.2 Bearbeiten

Abbildung 19.18. Bearbeiten-Menü

Die Bedeutung der Einträge im Einzelnen von oben nach unten:

- Ausgewählte Elemente ausschneiden

- Ausgewählte Elemente kopieren

- Elemente aus der Zwischenablage einfügen

- Untermenü: Editieren aller zu diesem Gleisbild gehörenden Dateien durch einen voreingestellten ASCII-Editor: Gleisbild-, Fahrstraßen- sowie ganz allgemein die Optionendatei zu SpDrS60

- Finden von Elementen

- Ändern der Programmeigenschaften

###### 19.4.2.4.2.3 Ansicht

Abbildung 19.19. Fahrstraßen-Menü

Die Bedeutung der Einträge im Einzelnen von oben nach unten:

- Öffnet die Fahrstraßenverwaltung

- Zeigt die Rückmeldemodule an

- Zeigt die Bahnhofsuhr an

- Öffnet ein einfaches Keyboard zum Testen von Antrieben

- Weiterschalten in den verschiedenen Debugging-Anzeigen am Fuß des Progammfensters

- Umschalten in den Editiermodus

###### 19.4.2.4.2.4 Daemon

Abbildung 19.20. Daemon-Menü

Die Bedeutung der Einträge im Einzelnen von oben nach unten:

- Netzwerkverbindung mit dem Daemon aufnehmen

- Netzwerkverbindung mit dem Daemon abbrechen

- Daemon erhält einen Reset

- Der Daemon wird heruntergefahren

- Information über die Version des Daemon sowie über die SRCP-Version

Abbildung 19.21. Daemon Info

###### 19.4.2.4.2.5 Gleisbild

Abbildung 19.22. Gleisbild-Menü

Die Bedeutung der Einträge im Einzelnen von oben nach unten:

- An- und Ausschalten des Anlagenstroms

- Benutzt die Fahrstraßenhilfstaste zum Auflösen von Fahrstraßen, auch wenn diese nicht als Symbol mit im Gleisbild liegt

- Benutzt die Weichengruppentaste, auch wenn diese nicht als Symbol mit im Gleisbild liegt

- Benutzt die Umfahrgruppentaste, auch wenn diese nicht als Symbol mit im Gleisbild liegt

- Setzt alle von Halt verschiedenen Signale auf Halt/Hp0/Sh0... (Nothalt)

- Schaltet alle Antriebe einen Zustand weiter

- Sendet den aktuellen Zustand des grafischen Gleisbilds an die Anlage (so kann man nach Handstellungen wieder einen Abgleich herbeiführen)

- Alle aktiven Fahrstraßen werden zurückgenommen und deren Startsignale auf Rot gestellt

###### 19.4.2.4.2.6 Hilfe

Abbildung 19.23. Hilfe-Menü

Die Bedeutung der Einträge im Einzelnen von oben nach unten:

- Öffnet diese Online-Hilfe

- Öffnen der SpDrS60-für-Linux-Webseiten (benötigt einen Internet-Zugang)

- Über dieses Programm

- Über das in diesem Programm verwendete GUI-Toolkit

##### 19.4.2.4.3 Grundlegende Bedienung

###### 19.4.2.4.3.1 Starten einer neuen Programminstanz

Über diesen Punkt kann ganz einfach eine neue Instanz von »SpDrS60 für Linux« gestartet werden. Auch dort gelten die Einstellungen, die über das Optionenmenü gemacht wurden, d.h. z.B., dass wiederum dieselbe Autostart-Datei geladen wird.

Aber Achtung:

Ändert man während der Laufzeit die eine oder andere Programmoption, so greifen zwar alle Instanzen darauf zurück, es kann allerdings zu ungewollten Komplikationen kommen. In diesem Fall ist es besser, alle Instanzen bis auf eine zu schließen, und dort die notwendigen Einstellungen durchzuführen. Im Allgemeinen ändert man an den Optionen aber eh nicht viel.

Nochmals Achtung:

Da die Rückmeldung vom Daemon zu den einzelnen Instanzen über den Infoportkanal nur informationshalber erfolgt, ergeben sich noch keine Konsquenzen aus der Tatsache, dass man mit dem einen Programm Antriebe schaltet und dann eventuell erwartet, dass dies in der 2. Instanz eben automatisch angezeigt wird. Dies wird erst in späteren Versionen möglich sein. Um auch hier vor unliebsamen Überraschungen gefeit zu sein, sollte man mit mehreren Instanzen am besten unterschiedliche Gleisbilder öffnen.

###### 19.4.2.4.3.2 Bearbeiten von Gleisbildern

Eine genaue Beschreibung zum Editiervorgang findet man im Abschnitt Symbole bearbeiten.

###### 19.4.2.4.3.3 Bearbeiten von Fahrstraßen

Auch dieses Thema wird in einem eigenen Kapitel (Fahrstraßen) beschrieben. Erreichbar ist der Fahrstraßeneditor über das Tastaturkürzel Strg-R oder den Menüpunkt »Ansicht -> Fahrstraßentabele«.

###### 19.4.2.4.3.4 Bearbeiten von Datendateien

Sollte man mal in die Notwendigkeit kommen, die dem Gleisbild zugrundeliegende Datei editieren zu wollen, so kann man das über den Punkt »Bearbeiten -> Datendateien -> <Dateiname>« erreichen. Das Programm öffnet einen normalen Editor, wie er über die Optionen einstellbar ist und zeigt die ASCII-Dateien an. Zur Auswahl stehen hierbei die Gleisbilddatei, die Fahrstraßendatei (wenn vorhanden) sowie die Programmoptionendatei.

Aber Achtung:

Änderungen, die man hier im Editor durchführt und abspeichert, werden beim Schließen des Programms oder beim Laden einer neuen Datei wieder überschrieben, da das angezeigte Gleisbild automatisch gespeichert wird (Ausnahme: Programm beenden über Strg-C im Terminal oder über den kill-Befehl). Ansonsten hilft nur ein Trick: Programm normal beenden, Datei wird gespeichert, danach dann die Datei aus dem Editor speichern. Mit dieser Editiermöglichkeit kann man sich in einem etwaigen Fehlerfall schnell die Datei anschauen, ohne dass man diese zeitraubend und umständlich über das Terminal aufrufen muss.

###### 19.4.2.4.3.5 Finden von Elementen

Nach einiger Zeit weiß man gar nicht mehr, wo welche Elemente mit bestimmten Adressen liegen. Da kommt einem der Elementefinder gerade recht. Durch Auswahl des Punktes »Bearbeiten -> Suchen« oder den Tastaturkürzel Strg-F öffnet sich der folgende Suchdialog.

Abbildung 19.24. Dialogfenster zum Suchen von Elementen

Der zu suchende Begriff wird im Textfeld eingegeben. Danach muss man auswählen, in welcher Elementeigenschaft der Elementfinder suchen soll; z.B. in Textfeldern, in den Hauptadressen (bei Einfachantrieben ist es die einzige Adresse, bei Mehrfachantrieben die Adresse, die auch in den Fahrstraßen angegeben wird) oder in den zusätzlichen Adressen bei Mehrfachantrieben. Desweiteren ist auswählbar, ob nur der erste Treffer zählt oder ob alle Vorkommen angezeigt werden.

Nach dem Klick auf »Suchen« erscheint entweder eine Meldung, dass nichts gefunden werden konnte,

Abbildung 19.25. Kein Element gefunden

oder aber ein positives Ergebnis wird dadurch angezeigt, dass alle gefundenen Elemente mit einem roten Rahmen angezeigt werden.

Abbildung 19.26. Element gefunden

Ein roter Rahmen um die einzelnen Elementw bedeutet das sich das Programm im Editiermodus befindet. Ein Linksklick auf das gefundene Element öffnet das Eigenschaftenfenster zu diesem Element, gewünschte Änderungen können so direkt und komfortabel durchgeführt werden. Aber: nach einem erfolgreichen Fund wird der Editiermodus für die gefundenen Elemente nur für fünf Sekunden eingeschaltet (denn eventuell will man ja nur wissen, wo das Element ist). Kommt keine Negativmeldung, aber es ist auch kein roter Rahmen sichtbar, so liegt das gefundene Element eventuell im nicht sichtbaren Bereich des Gleisbilds. Bitte dazu mit der unten liegenden Scrollleiste in den versteckten Bereich rollen, den Suchvorgang wiederholen: dann sollte man einen roten Rahmen um ein Element sehen.

###### 19.4.2.4.3.6 Daemon

Durch einige Menübefehle kann man auch den Daemon beeinflussen. Dazu gehört der Menüpunkt »Daemon->Start/Stop« (alternativ das Icon »Zp 9« oder die Notbremse bzw. F4 auf der Tastatur), die »Saft« auf die Anlage schaltet oder abschaltet. Außerdem kann man den Daemon zurücksetzen (Daemon->Reset). Möchte man den Daemon komplett abschalten, dann kann man das direkt über den Menüpunkt »Daemon->Beenden«. Danach ist das Versenden von Befehlen an den Daemon selbstverständlich nicht mehr möglich, gleichwohl kann man die grafische Oberfläche weiterhin wie gewohnt bedienen (es werden nur keine Befehle mehr geschickt). Ein einmal heruntergefahrener Daemon kann aus dem Programm nicht wieder neu gestartet werden.

###### 19.4.2.4.3.7 Anlage starten

Bevor man jedoch anfängt, Fahrstraßen zu stellen oder andere Aktionen auf der Anlage zu veranlassen, sollte man den Daemon zum Senden der Befehle veranlassen (wenn nicht bereits automatisch geschehen durch einen Eintrag im Optionenmenü): Dies geschieht am einfachsten durch das Zp 9-Icon in der Werkzeugleiste. Analog kann man über die Notbremse in der Tool-Leiste die Anlage strommäßig abschalten. Wer keine Maus benutzen will, benutze das Tastaturkürzel F4.

###### 19.4.2.4.3.8 Übersicht der Rückmeldemodule

Die Funktionalität der Rückmeldeübersicht (erreichbar durch Strg-M oder Menü Ansich -> Rückmeldemodule) beschränkt sich z.Zt. leider noch auf die einfache Anzeige, welcher Rückmeldeport gerade aktiv ist. Außerdem werden bei allen Modulen die Adressen angezeigt. Mehr dazu im eigenen Kapitel Rückmeldung.

###### 19.4.2.4.3.9 Fahrstraßen zurücknehmen

Dafür ist die sog. Fahrstraßen-Hilfstaste (FHT) zuständig:

Abbildung 19.27. Fahrstraßen-Hilfstaste

Entweder man klickt diese im Gleisbild, sofern man eine mit eingebunden hat. Oder aber man erspart sich die Mausbewegung und drückt das Tastaturkürzel F5.

###### 19.4.2.4.3.10 Einzelne Antriebe schalten

Einzelne Antriebe kann man jetzt z.B. über das Kontextmenü »Umschalten« eines schaltbaren Elements schalten (dieser Eintrag ist nur aktiv bei nicht durch Fahrstraßen benutzen Antrieben und wenn die Weichen o.ä. nicht durch ein Fahrzeug besetzt sind und die Element-LED rot leuchtet). Dabei wird »im Kreis« getoggled, d.h. bei mehr als zwei möglichen Elementstellungen bei jeder Benutzung von »Umschalten« die nächste Stellung angezeigt. Alternativ - und vorbildgetreuer - benutzt man zum Schalten von einzelnen Weichen oder Signalen die Weichengruppentaste (WGT), die man in obigem Bild als blaues Element erkennt:

Abbildung 19.28. Weichengruppentaste

Zunächst klickt man auf die WGT und dann innerhalb eines 5-Sekunden-Zeitraums auf das entsprechende Element, welches man gestellt haben möchte. Auch das vorherige Drücken der Taste F6 auf der Tastatur aktiviert im Hintergrund die WGT, das erspart eventuell einiges an Wegstrecke mit der Maus. Auch hier wird »im Kreis« getoggled (nicht ganz vorbildgetreu).

###### 19.4.2.4.3.11 Alle Signale auf Rot setzen

Mit dem Signalsymbol in der Werkzeugleiste (oder alternativ mit F12) können alle Signale, die nicht auf Halt stehen, auf Halt gestellt werden. Dies geschieht unabhängig von einer eingestellten Fahrstraße mit gegenseitigem Verschließen von Antrieben und dient als alternative Notbremse, wenn es auf der Anlage mal brenzlig wird.

###### 19.4.2.4.3.12 Alle Antriebe schalten

Möchte man aus Testgründen einmal ALLE Elemente schalten, benutzt man den Menüpunkt »Gleisbild->Alles umschalten« (oder F10). Dies sieht besonders gut bei Gleisbildern mit vielen Elementen aus. Einfach mal ausprobieren.

###### 19.4.2.4.3.13 Den aktuellen Zustand übermitteln

Möchte man den aktuell angezeigten Zustand an die Anlage übermitteln, benutzt man den Menüpunkt »Gleisbild->Alles senden« (oder F11). Dabei geschieht grafisch nichts, der Abschluss wird durch einen Pieps mitgeteilt.

###### 19.4.2.4.3.14 Bahnhofsuhr starten

Durch Klick auf das Uhr-Symbol der Werkzeugleiste (oder »Ansicht->Bahnhofsuhr«) erhält man eine Uhr im Stil der DBAG. Sie weist originalgetreu den Minutensprung auf (dieser kann beim ersten Sprung nach dem Fensteröffnen eventuell nicht sichtbar sein). Die Uhr kann z.Zt. noch nicht langsamer oder schneller geschaltet werden.

Abbildung 19.29. Bahnhofsuhr

###### 19.4.2.4.3.15 Einfaches Schaltpult

Will man mal außer der Reihe etwas schalten, benutzt man einfach das Schaltpult (Strg-K oder »Ansicht -> Schaltpult«). Auf die Bedienung wird im Abschnitt Keyboard hingewiesen.

###### 19.4.2.4.3.16 Hilfe

Durch die Taste F1 oder den Menüpunkt »Hilfe->Hilfe« öffnet der Browser, der über die Optionen zum Programm eingestellt wurde, diese Hilfedokumentation. Bei Mozilla und Firebird wird, wenn schon eine Programminstanz läuft, ein neues Tab-Fenster geöffnet. Beim Netscape Browser, gibt es eine Fehlermeldung, wenn bereits eine Instanz von Netscape geöffnet ist. Wann wählt dann einfach »Abbrechen« im erscheinenden Warnmeldungsfenster; dann öffnet sich ein neues Fenster mit dem Hilfetext.

##### 19.4.2.4.4 Tastaturkürzel

Zum schnelleren Arbeiten wurden Tastaturkürzel eingeführt, mit der die eine oder andere Mausbewegung überflüssig ist. Die folgenden Tabellen listen die vorhandenen Möglichkeiten in Abhängigkeit vom Betriebsmodus auf.

###### 19.4.2.4.4.1 Im normalen Bedienmodus

Folgende Tabelle zeigt die Tastaturkürzel für den normalen Bedienmodus.

Tabelle 19.4. Auflistung der Tastaturkürzel im normalen Bedienmodus

Tastaturkürzel | Beschreibung
--- | ---
Strg-N | Neues Gleisbild anlegen
Strg-D | Schaltet das Debugging-Fenster in einen von drei möglichen Modi
Strg-O | Öffnen eines Gleisbilds
Strg-S | Speichern des aktiven Gleisbilds
Strg-Q/Alt-F4 | Beenden des Programms
Strg-E | Umschalten in den Editiermodus
Strg-R | Öffnen der Fahrstraßenverwaltung
Strg-F | Finden von Elementen
Strg-P | Verwalten der Programmoptionen
Strg-K | Öffnet ein Einfach-Keyboard
Strg-U | Alle Fahrstraßen auflösen und deren Startsignale auf Rot stellen
F4 | An- und Ausschalten der Daten Richtung Anlage
F5 | Aktivieren der Fahrstraßen-Hilfstaste FHT
F6 | Aktivieren der Weichengruppentaste WGT
F7 | Aktivieren der Umfahrgruppentaste UfGT
F10 | Alle Elemente in den nächst-möglichen Zustand stellen
F11 | Den aktuell sichtbaren Zustand an die Anlage senden
F12 | Alle Signale auf Rot stellen (Nothalt)

###### 19.4.2.4.4.2 Im Editiermodus

Folgende Tabelle zeigt die Tastaturkürzel für den Editiermodus.

Tabelle 19.5. Auflistung der Tastaturkürzel im Editiermodus

Tastaturkürzel | Beschreibung
--- | ---
Strg-E | Schaltet zurück in den Bedienmodus

###### 19.4.2.4.4.3 Im Fahrstraßeneditor

Folgende Tabelle zeigt die Tastaturkürzel für den Fahrstraßeneditor.

Tabelle 19.6. Auflistung der Tastaturkürzel im Fahrstraßeneditor

Tastaturkürzel | Beschreibung
--- | ---
Strg-S | Speichern der Fahrstraße
Strg-A | Neue Fahrstraße hinzufügen
Strg-D | Löschen einer Fahrstraße
Strg-C | Kopieren einer Fahrstraße
Strg-R | Aufnehmen einer Fahrstraße aus dem Gleisbild

##### 19.4.2.4.5 Erzeugen eines leeren Gleisbilds

Ein neues, leeres Gleisbild kann auf drei Arten angelegt werden:

- Über den Tastaturkürzel Strg-N

- Über die Menüleiste »Datei -> Neu«

- Über den Toolbutton »Neues Gleisbild«

Nach allen Möglichkeiten erscheint zunächst ein kleines Dialogfenster, in dem der Benutzer aufgefordert wird, die Anzahl der benötigten neuen Spalten einzugeben:

Abbildung 19.30. Neues Gleisbild anlegen

Dazu benutzt man entweder die Pfeiltasten neben der Ziffernanzeige oder markiert zunächst den Text in der Ziffernanzeige, um dann die neue Zahl einzutippen. Der gültige Bereich liegt zwischen minimal fünf (bei einer kleineren Spaltenzahl wird man kaum noch eine sinnvolle Elementekombination unterbringen) und maximal 25 Spalten (dass dürfte auch für den reichsten Modellbahner erstmal ausreichen).

Nach einer kurzen Wartezeit, die durch eine Balkenanzeige dargestellt wird, erscheint ein leeres Gleisbild mit genau 18 Reihen und der gewählten Spaltenzahl. Der Übersichtlichkeit wegen wird empfohlen, die Spaltenanzahl nicht zu hoch anzusetzen. Denn bei einer Auflösung von z.B. 1024 x 768 können auf einmal nur ca. 20 Spalten angezeigt werden, alle anderen sind dann nur durch Scrollen erreichbar. In brenzligen Situationen kann dies schon mal zu unnötigen Zeitverzögerungen kommen, wenn man das entsprechende Signal erst mal umständlich suchen muss.

Wer im übrigen ein Gleisbild mit noch mehr Spalten benötigt, der muss zu folgendem Trick greifen:

In der Datei `resources.h`, die sich im Quellcode-Verzeichnis befindet, gibt es in der 4. Zeile den Eintrag

    #define MAX_COLS 25

Dies ist die maximale auswählbare Spaltenzahl. Diese kann vom Nutzer nach Bedarf geändert werden (einer der wenigen Werte, bei dem es in dieser Datei erlaubt ist!). Danach kompiliere man alles neu (make clean und make install), danach kann man im Programm mehr Spalten anlegen. Es gibt aufgrund der Art der Programmierung (leider noch nicht mit verketteten Listen für all diejenigen, denen es was sagt) keine Möglichkeit, diese Maximalzahl während der Laufzeit zu erhöhen, eine Änderung in der Zukunft ist aber geplant.

Nach dem Erstellen kann man dann mit dem Anlagen des Gleisbilds beginnen, in dem man in den Editiermodus umschaltet.

##### 19.4.2.4.6 Laden und Speichern von Gleisbildern

###### 19.4.2.4.6.1 Laden

Ein Gleisbild kann auf drei Arten geladen werden:

- Über das Tastaturkürzel Strg-O

- Über die Menüleiste »Datei -> Öffnen«

- Über den Toolbutton »Gleisbilddatei öffnen«

Nach allen Möglichkeiten erscheint zunächst ein kleines Datei-Dialogfenster, indem der Benutzer aufgefordert wird, die gewünschte Gleisbild-Datei durch Doppelklicken auszuwählen:

Abbildung 19.31. Gleisbild öffnen

Nach einer kurzen Wartezeit, die durch eine Balkenanzeige dargestellt wird, erscheint dann das ausgewählte Gleisbild. Ein eventuell vorher schon geöffnetes Gleisbild wird automatisch auf der Platte gespeichert. Handelte es sich dabei um ein leeres, noch nicht gesichertes Gleisbild, wird hierzu zunächst abgefragt, ob eine Sicherung des neuen Gleisbilds gewünscht ist (siehe mehr dazu im Abschnitt »Speichern«).

Die Ladezeit kann je nach Größe des Gleisbilds und Anzahl der darin befindlichen schaltbaren Elemente schon im Bereich von mehreren Sekunden bewegen. Ursache hierfür ist der Abgleich der Gleisbild-Daten mit der Anlage:

Für das Programm gibt es keine Möglichkeit, den wirklich aktuellen Zustand einer Anlage einzulesen, da - entgegen der Wirklichkeit - die Weichen oder Signale ihren Zustand nicht an den Daemon und damit dieses Programm zurückmelden. Man könnte natürlich an jeden Antrieb einen Rückmeldebaustein anschließen, dies wäre dann wirklichkeitsgetreuer (ist aber teuer und vor allem noch nicht realisert). Also wurde hier die einfachere Methode gewählt, dass die Anlage auf den gespeicherten Zustand der Gleisbild-Datei eingestellt wird. Für jedes schaltbare Element (Ausnahmen: Entkoppler, Drehscheibe und Schiebebühne) wird also ein entsprechendes Steuerkommando generiert, das den gespeicherten Zustand enthält. Auch wenn der Daemon nicht läuft, erscheinen auf dem Terminal die entsprechenden Befehle, es fällt dabei lediglich das Schreiben auf die Socket-Schnittstelle weg.

Nach der Ladezeit erhält man dann vielleicht das im folgenden dargestellte Bild, das auf der mitgelieferten Gleisbild-Datei `bahnhof_klein.dat.gbs` basiert.

Abbildung 19.32. SpDrS60 mit dem Beispiellayout »`bahnhof_klein.dat.gbs`«

In dieser kleinen Beispiel-Datei erkennt man schon das typische Aussehen eines SpDrS60-Stellpultes:

- Schaltbare Elemente wie Weichen mit einer (eventuell zwei) LED(s), die die aktuelle Lage der Weichenzungen anzeigen

- Nicht schaltbare Elemente mit LEDs, die je nach Aktivität auf den Gleisen diese Anzeigen (eingestellte Fahrstraßen oder besetzte Gleise)

- Einige zusätzliche, nur auf der Modellbahn befindlichen Elemente wie Drehscheibe, Häuser u.ä.

- Besondere Tasten (wie die Fahrstraßen-Hilfstaste (FHT), die die Rücknahme von Fahrstraßen ermöglicht), die aus Sicherheitsgründen immer vor den eigentlichen Stellaktionen betätigt werden müssen.

Eine genauere Beschreibung der Symbole findest sich im Abschnitt Symbole.

ACHTUNG:

Wenn zu einem Gleisbild noch eine Fahrstraßendatei mit einem alten Format der Version 0.3.4 oder jünger gehört, wird diese automatisch konvertiert. Es erscheint eine Meldung an den Nutzer, damit dieser darüber informiert wird. Näheres dazu im Kapitel über die Fahrstraßenverwaltung.

###### 19.4.2.4.6.2 Speichern einer Anlagendatei

Das Speichern eines Gleisbilds geschieht im Allgemeinen automatisch. Sowohl beim Schließen des Programms (durch Strg-Q, Alt-F4 oder die Fensteranfasser) als auch vor dem Anzeigen eines »Öffne ein neues Gleisbild«-Dialogs wird das aktuelle Gleisbild automatisch gespeichert. Es gibt daher in den meisten Fällen keinerlei Notwendigkeit, das benutzte Gleisbild aktiv zu speichern. Ein kleiner Hinweis sei aber hier fairerweise genannt: beende ich aus dem Terminal oder über den kill-Befehl das Programm, kann natürlich kein Gleisbild gespeichert werden.

Möchte man allerdings ein Gleisbild unter einem anderen Namen speichern, so wähle man den Menüpunkt »Datei -> Speichern unter«. Ist das aktuelle Gleisbild ein kürzlich erstelltes, welches noch nicht unter einem anderen Namen als dem Standard-Namen `default.dat.gbs` gespeichert wurde, erscheint ebenfalls vor Programmschluss oder dem Laden eines neuen Gleisbilds das Speicherfenster:

Abbildung 19.33. Gleisbild Speichern

Hier gibt man jetzt einfach den Namen der neuen Gleisbild-Datei ein. Dabei ist es nicht unbedingt notwendig, das Datei-Suffix .dat.gbs, welches die Gleisbild-Dateien kenntlich macht, mit einzugeben. Enthält der eingegebene Dateiname dieses Suffix nicht, wird es vor dem Speichern automatisch angehängt. Selbstverständlich darf man sich auch ein anderes Verzeichnis zum Speichern aussuchen.

##### 19.4.2.4.7 Exkurs: Struktur der Gleisbild-Dateien

Die folgenden Informationen sind nicht zwangsweise für die Benutzung des Programms notwendig. Sie enthalten detailliertere Beschreibungen zu einigen Vorgängen, Dateiaufbauten etc., für alle die, die hinter die Kulissen schauen wollen.

Die Gleisbild-Dateien sind wie folgt aufgebaut:

Zunächst findet man in den ersten paar Zeilen einen kleinen Header. Dieser enthält z.Zt. die Information, wieviele Elemente die entsprechende Gleisbild-Datei hat sowie das Datum der letzten Datei-Änderung:

    Symbols total #:180
    Last modified: Thu Nov 1 23:07:48 2001
    version: SpDrS60 for Linux v0.4.0
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Nach der ersten Trennzeile folgen dann alle Symbolbeschreibungen:

    SYMBOL - - - - - - -> 114
    icon: weiche_rechts
    rotate: 0
    invers turnout: 0
    decoder: Littfinsky (D)
    protocol: M
    address_1: 9
    address_2: -1
    change conn 1: 0
    change conn 2: -1
    direction: 0
    subtype: -1
    text: 009
    active time: 50
    feedback port: 3
    hide LEDs: -1
    data 2: -1
    data 3: -1
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    SYMBOL - - - - - - -> 115
    icon: gerade
    rotate: 0
    invers turnout: -1
    decoder: -1
    protocol: -1
    address_1: -1
    address_2: -1
    change conn 1: -1
    change conn 2: -1
    direction: -1
    subtype: -1
    text: -1
    active time: -1
    feedback port: 0
    hide LEDs: -1
    data 2: -1
    data 3: -1
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

- Man erkennt zunächst die Nummer des entsprechenden Elements. Dieses stimmt mit der Nummer überein, die über eine kleine Tooltip-Hilfe bei einer geladenen Gleisbild-Datei auch angezeigt wird. So kann man notfalls recht schnell den entsprechenden Eintrag in der Datei finden und dort manuell Änderungen vornehmen. Es ist nicht unbedingt notwendig, das diese Nummer wirklich in einer Reihe mit dem vorhergehenden oder nachfolgenden steht, da diese Zahlen erstmal nur zur Information für den Nutzer dienen. Spätestens beim Speichern einer Datei wird die richtige Reihenfolge sowieso wieder hergestellt.

- Es folgt der Name des Symbols, das angezeigt werden soll,

- danach ein Eintrag, ob das Icon drehbar sein soll oder nicht.

- Es schließt sich der Invers-Wert an (ACHTUNG: Ein Eintrag hier ist noch völlig irrelevant, da die Anzeige programmiertechnisch noch nicht umgesetzt ist; Ausnahme: Leer-Element).

- Es folgt der Dekoder-Typ.

- Weiter geht es mit dem Protokoll, hier steht entweder der Wert »M« für Märklin-Dekoder oder »N« für DCC-Dekoder zur Verfügung. Eine -1 heißt wieder, dass dieser Wert für das zugehörige Icon irrelevant ist.

- Die Adresse, die zum Symbol gehört, belegt die nächste Zeile. Zugelassen sind Werte von »1« bis »324« bei M-Dekodern bzw. »1« bis »4096« bei N-Dekodern. Die Richtung des Antriebs wird auch gespeichert, damit man nach dem Ausschalten der Anlage wieder den in der Datei gespeicherten Zustand herstellen kann. Für Weichen oder Signale mit mehr als 1 Antrieb folgt noch die Adresse des zweiten Antriebs. Diese kann, muss aber nicht auf die Adresse 1 unmittelbar folgend sein.

- Mit den Schlüsselwörtern »change conn« können die zwei Anschlüsse eines Dekoderausganges elektronisch getauscht werden, wenn hier eine »1« steht.

- Der Subtype gibt eine Unterkklassierung einiger Elemente wie Signale an.

- Es folgt noch die Textzeile,

- dann die Aktivierungszeit für einen Ausgang.

- Wichtig ist dann der Rückmeldeport, dieser steht hier allerdings nicht in der Form Modul-Nr. und Port-Nr., es werden hier alle Portnummern fortlaufend durchgezählt; demnach hat Modul 2 Port 3 den Eintrag 19.

- Zuletzt erscheint der Eintrag, mit dem man bei manchen Elementen die LED-Anzeige abschalten kann.

- Die letzten zwei Zeilen sind für zukünftige Erweiterungen gedacht.

#### 19.4.2.5 Symbole

##### 19.4.2.5.1 Übersicht der Symbole

Zur besseren Übersicht werden in der folgenden Tabelle die Symbole, die im Programm zur Verfügung stehen, und deren Eigenschaften beschrieben. Für Signale bzw. Weichen gibt es zusätzlich noch den Abscnitt Anschlüsse, in dem beschrieben wird, wie die Anschlüsse auszuführen sind. Für besondere Elemente wie die Drehscheibe gibt es ebenfalls ein eigenes Kapitel (Drehscheibe).

Tabelle 19.7. Auflistung aller Elementsymbole

Symbol | Dateiname | Beschreibung | Drehbar | LEDs schaltbar | Adressen | Bemerkung | Richtungswerte [a]
--- | --- | --- | --- | --- | --- | --- | ---
| leer | Leerfeld | nein | nein | 0 | Kann Hintergrundfarbe annehmen, Textanzeige möglich |
| gerade | Gerade Strecke horizontal | ja | ja | 0 | Gedreht wird nur ein eventuell vorhandener Text (ober- oder unterhalb des Gleises) |
| diagonale_links | Links diagonale Strecke | ja | ja | 0 |  |
| diagonale_rechts | Rechts diagonale Strecke | ja | ja | 0 |  |
| kurve_links | Linkskurve horizontal | ja | ja | 0 |  |
| kurve_rechts | Rechtskurve horizontal | ja | ja | 0 |  |
| weiche_links | Linke Weiche | ja | nein | 1 |  | 0 = gerade, 1 = abzweig
| weiche_rechts | Rechte Weiche | ja | nein | 1 |  | 0 = gerade, 1 = abzweig
| weiche_diag_links | Diagonale Weiche links | ja | nein | 1 |  | 0 = gerade (Diagonale), 1 = abzweig
| weiche_diag_rechts | Diagonale Weiche rechts | ja | nein | 1 |  | 0 = gerade (Diagonale), 1 = abzweig
| dkw_links | Doppelte Kreuzungsweiche links | nein | nein | 1 | [b] Subtyp = 0 | 0 = gerade Gleisführung, 1 = abzweigende Führung
| dkw_links | Doppelte Kreuzungsweiche links | nein | nein | 2 | [b] Subtyp = 1 | 0 = gerades Stammgleis, 1 = abzweigen oben, 2 = gerade Quergleis, 3 = abzweigen unten
| dkw_rechts | Doppelte Kreuzungsweiche links | nein | nein | 1 | [b] Subtyp = 0 | 0 = gerade Gleisführung, 1 = abzweigende Führung
| dkw_rechts | Doppelte Kreuzungsweiche links | nein | nein | 2 | [b] Subtyp = 1 | 0 = gerades Stammgleis, 1 = abzweigen oben, 2 = gerade Quergleis, 3 = abzweigen unten
| dreier_weiche | Dreiwegweiche | ja | nein | 2 | in der Realität nicht vorhanden (dort immer zwei normale Weichen) | 0 = gerade, 1 = abzweigen links, 2 = abzweigen rechts
| ekw_links | Einfache Kreuzungsweiche links | ja | nein | 2 |  | 0 = gerade Stammgleis, 1 = abzweigen, 2 = gerade Diagonalgleis
| ekw_rechts | Einfache Kreuzungsweiche rechts | ja | nein | 2 |  | 0 = gerade Stammgleis, 1 = abzweigen, 2 = gerade Diagonalgleis
| kreuzung_hose | Hosenträgerverbindung | nein | ja | 0 |  |
| kreuzung_links | Normale Kreuzung links | nein | ja | 0 |  |
| kreuzung_rechts | Normale Kreuzung rechts | nein | ja | 0 |  |
| signal_hs | Hauptsignal mit max. Hp0, Hp1 und Hp2 | ja | nein | 1 oder 2 | Bei Kombination Hp0/Hp1 oder Hp0/Hp2 nur 1 Adresse, sonst 2 Adressen | 0 = Hp0, 1 = Hp1, 2 = Hp2
| signal_hss | Hauptsperrsignal (Ausfahrsignal) mit allen Begriffen Hp00, Hp1, Hp2 und Sh1, Tasten für Zug- und Rangierfahrstraßen | ja | nein | 2 |  | 0 = Hp00, 1 = Hp1, 2 = Hp2, 3 = Sh1
| signal_ss | Schutzsignal (Rangiersignal) mit den Begriffen Sh0 und Sh1, Taste für Rangierfahrstraßen | ja | nein | 1 |  | 0 = Sh0, 1 = Sh1
| signal_ssh | Schutzsignal (Rangiersignal) mit den Begriffen Sh0 und Sh1, Taste für Zughilfsstraßen | ja | nein | 1 |  | 0 = Sh0, 1 = Sh1
| signal_sss | Schutzsignal (Rangiersignal) mit den Begriffen Sh0 und Sh1, Start- und Zieltasten für Rangierfahrstraßen | ja | nein | 1 |  | 0 = Sh0, 1 = Sh1
| signal_nrb | Gerades Gleis mit Taste für Zugfahrstraßen | ja | ja | 1 | Adresse wird nur Programm intern zur Identifizierung benötigt |
| signal_srb | Gerades Gleis mit Taste für Rangierfahrstraßen | ja | ja | 1 | Adresse wird nur Programm intern zur Identifizierung benötigt |
| signal_vs | Vorsignal | ja | nein | 1 oder 2 | Bei Kombination Vr0/Vr1 oder Vr0/Vr2 nur 1 Adresse, sonst 2 Adressen | 0 = Vr0, 1 = Vr1, 2 = Vr2
| signal_zp | Abfahrsignal Zp9 | ja | nein | 1 |  |
| signal_ws | Wartesignal mit Taste für Rangierfahrstraßen | ja | nein | 1 |  |
| entkoppler | Entkupplungsgleis | nein | nein | 1 | [b] Motorantrieb (Subtyp = -1) | 0 = Koppler aus 1 = Koppler an
| entkoppler | Entkupplungsgleis | nein | nein | 0,5 | [b] Monostabiler Antrieb (Subtyp 0 oder 1) |
| prellbock | Puffergleisstück | ja | nein | 0 |  |
| relais | Relais | nein | nein | 1 | Die Anzahl der schaltbaren Kontakte ist unerheblich | 0 = Relais aus, 1 = Relais an
| adresse | Adressanzeigefeld | nein | nein | 1 |  | Nur mit einem EDiTS-Pro Adressrückmeldemodul anwendbar
| blind | Blindschaltelement | nein | nein | 1 |  | Dient zur Anzeige von versteckten Bahnstromrelais zum Rückwärtsbefahren von Signalen
| drehscheibe | Drehscheibe | nein | nein | spezieller Dekoder | Nur für Märklin Protokoll verwendbar | Eigener Drehscheiben-Commander
| schiebebuehne | Schiebebühne | nein | nein | 2 | Märklin Schiebebühne kann mit Dekodern beider Protokolle angesprochen werden | Eigener Schiebebühnen-Commander
| uebergang | Bahnübergang | ja | nein | 0 | Eventuell in Zukunft einmal fernsteuerbar |
| richtung_1 | ein Richtungspfeil | ja | ja | 0 |  |
| richtung_2 | Doppelter Richtungspfeil | nein | ja | 0 |  |
| diagonale_links_tl | Diagonale links in Tunnel | ja | nein | 0 |  |
| diagonale_rechts_tl | Diagonale rechts in Tunnel | ja | nein | 0 |  |
| gerade_tl | Gerade in Tunnel | nein | nein | 0 |  |
| schuppen_o | Lockschuppen oben | ja | nein | 0 |  |
| schuppen_m | Lockschuppen Mitte | ja | nein | 0 |  |
| schuppen_u | Lockschuppen unten | ja | nein | 0 |  |
| haus_1 | Bahnhofsgebäude Mittelteil | nein | nein | 0 |  |
| haus_2 | Bahnhofsgebäude Seitenteil | ja | nein | 0 |  |
| taste_wgt | Weichengruppentaste zum manuellen Einstellen von Weichen | nein | nein | 0 | Hindergrundfarbe nicht veränderbar |
| panel_blue | Leeres Element zum Gestalten von Gruppentastenblöcken | nein | nein | 0 | In folgenden Farben verfügbar: blau (Weichen), gelb (Bahnübergang), rot (Signale), grün (Fahrstraßen), braun (Achszählkreise) und grau (Stromversorgung) |
| taste_fht | Fahrstraßenhilfstaste zum Auflösen von Fahrstraßen | nein | nein | 0 | Hindergrundfarbe nicht veränderbar |
| taste_ufgt | Umfahrgruppentaste zum Einstellen von Umfahrstraßen; Mittelweichengruppentaste hat noch keine Funktion | nein | nein | 0 | Hindergrundfarbe nicht veränderbar |
[a] Diese Werte kann man z.B. durch die Tooltip-Hilfe zu jedem Element überprüfen (wenn diese Hilfe über das Optionen-Menü eingeschaltet wurde, Zeile: direction). [b] Die Übersicht über einzelne Artikel der Hersteller befindet sich im Anschlüsse.

##### 19.4.2.5.2 Mögliche Element-Stellungen

In der folgenden Tabelle werden alle Gleis- und Signalelemente, die schaltbar sind, einer genauen Betrachtung unterzogen (selbstverständlich gilt dies auch für die rotierten Elemente, soweit wie vorhanden):

Tabelle 19.8. Auflistung aller Element-Stellungen

Name | Symbol | Richtungswert | Bemerkung
--- | --- | --- | ---
Weiche | oder | 0 = gerader Gleisstrang | [a]
oder | 1 = abzweigender Gleisstrang |  |
Diagonale Weichen | oder | 0 = gerader Gleisstrang (diagonal) | [a]
oder | 1 = abzweigender Gleisstrang |  |
Dreier-Weiche |  | 0 = gerader Gleisstrang | [b]
| 1 = abzweigender Gleisstrang links |  |
| 2 = abzweigender Gleisstrang rechts |  |
Einfache Kreuzungsweichen | oder | 0 = gerader Gleisstrang | [c]
oder | 1 = abzweigender Gleisstrang | [c] Bei rotierten Elementen liegt der abzweigende Gleisstrang unten, hat aber den selben Richtungswert 1 |
oder | 2 = diagonaler Gleisstrang | [c] |
Doppelte Kreuzungsweichen | oder | 0 = gerader Gleisstrang | [c]
oder | 1 = abzweigender Gleisstrang oben |  |
oder | 2 = diagonaler Gleisstrang |  |
oder | 3 = abzweigender Gleisstrang unten |  |
Hauptsignal, Blocksignal, Einfahrtsignal |  | 0 = Hp0 | [d]
| 1 = Hp1 |  |
| 2 = Hp2 |  |
Hauptsperrsignal, Ausfahrtsignal |  | 0 = Hp00 | [d]
| 1 = Hp1 |  |
| 2 = Hp2 |  |
| 3 = Hp0 + Sh1 |  |
Sperrsignal, Rangiersignal |  | 0 = Sh0 | Ist in drei Varianten vorhanden: eine oder zwei Rangierstraßentasten, Zughilfsstraßentaste
| 1 = Sh1 |  |
Wartesignal |  | 0 = W0 |
| 1 = W1 |  |
Abfahrsignal |  | 0 = Aus |
| 1 = Zp9 |  |
Blindelement |  | 0 = Aus |
| 1 = An |  |
Vorsignal |  | 0 = Vr0 | [d]
| 1 = Vr1 |  |
| 2 = Vr2 |  |
[a] Diese Symbole müssen auch genau entgegengesetzte reale Verhältnisse anzeigen: so kann in echt eine linke Weiche eingebaut sein, die im Gleisbild aus grafischen Gründen am Besten nur mit einer Rechtsweiche darstellbar ist. Dann stimmt auch nicht mehr unbedingt der Richtungswert mit der Wirklichkeit überein: in unserem Beispiel mit der linken Weiche ist deren abzweigende Stellung (1) in der Grafik mit einer rechten Weiche vertreten, die dann aber nur den Richtungswert 0 haben kann. Die Berücksichtigung dieser Tatsache ist aber noch nicht in der Programmierung berücksichtigt wurden. [b] Die Modell-Dreiwegweichen müssen wie folgt aufgebaut sein, um die Stellkommandos einwandfrei verarbeiten zu können: Erste Weichenzunge für Abzweig links; Zweite Weichenzunge für Abzweig rechts. [c] Die abgebildeten Symbole gelten nur für DKWs mit 2 Antrieben. Märklin-DKWs mit einem Antrieb (K-Gleis 2260, M-Gleis 5207 oder 5128, C-Gleis 24620) haben nur zwei verschiedene Richtungsmöglichkeiten. Die Anzeige bei diesen Symbolen richtet sich daher auch nach einer eingestellten Fahrstraße, die über ein solches Elemente verläuft (siehe auch Kapitel »Fahrstraßen«). [d] Die möglichen Anzeigen der Signale hängen stark vom Untertyp des jeweiligen Signals ab. Dies betrifft die Anzeigen Hp 1 und/oder Hp 2 (bzw. Vr 1 und Vr 2), die nicht bei jedem Signal vorhanden sind. Dazu mehr im Unterpunkt »Signale« in diesem Kapitel.

##### 19.4.2.5.3 Bearbeiten einzelner Symbole

Durch Drücken von Strg-E bzw. Auswahl des Menüpunktes »Edit -> Gleisbild« wird das Programm in den Editiermodus geschaltet. Ab sofort schalten einzelne Mausklicks nicht mehr die Antriebe, sondern werden als Editierkommandos interpretiert. Damit man auch weiß, dass sich das Programm im Editiermodus befindet, erhalten alle Elemente einen dicken roten Rahmen, was in etwa wie folgt aussieht.

Abbildung 19.34. Gleisbildansicht im Bearbeitungsmodus

Jeder Linksklick auf ein Element öffnet nun das Eigenschaftenfenster zum jeweiligen Element. Darin können dann die Daten zum Element eingegeben werden (siehe Symbol Eigenschaften).

Hat man ein Element hinzugefügt, was sehr häufig - nebeneinander - vorkommt, dann möchte man das auch meistens möglichst oft wiederholen. Dazu erleichtert einem das Kontextmenü im Bearbeitungsmodus die Arbeit:

Abbildung 19.35. Kontextmenü im Bearbeitungsmodus

Rechtsklickt man auf ein anderes Element als das eben erstellte, dann steht an oberster Stelle des Kontextmenüs der Name des eben erstellten Elementes (also z.B. gerade, wenn man zuvor eine Gerade ausgewählt hat). Das bedeutet, dass man viele gleiche aufeinanderfolgende Elemente sehr schnell erstellen kann.

Möchte man ein Element nachträglich noch drehen, muss man auch nicht mehr in die Eigenschaften des Elementes gehen: Es genügt die Auswahl des Punktes Rotate im Kontextmenü. Das Löschen eines Elementes geschieht mit dem Punkt Clear. Für die Schnellauswahl von weiteren Elementen (die wohl am häufigsten gewählten) stehen die unteren Punkte zur Verfügung. Damit richtet man grundsätzlich ein Element ein, vergibt ihm aber nicht weitere Werte wie Dekoder-Adressen etc. Dazu muss man weiterhin - nachträglich - noch das Eigenschaftenfenster öffnen.

WICHTIG: Alle Aktionen, für die bisher im Normalmodus im Bereich der Elemente die Maus zuständig war, sind jetzt nicht mehr mit dieser zu erreichen. Man kann also keine Antriebe mehr einzeln umschalten (auch nicht, wenn man vorher die Taste F6 drückt, da danach ein Linksklick erwartet wird). Ebenso verhält es sich mit der mausgesteuerten Aktivierung und Deaktivierung von Fahrstraßen. Diese können nur noch über das Fahrstraßen-Übersichtsfenster geschaltet werden.

##### 19.4.2.5.4 Symboleigenschaften

###### 19.4.2.5.4.1 Elemente ohne Dekoder

Im Allgemeinen wird man aber zunächst ein leeres Gleisbild erstellen, um darin seine Anlage grafisch darzustellen. Beim linken Mausklick auf jedes beliebige Element erhält man ein Eigenschaftenfenster, indem sich (fast) alle Elementeigenschaften einstellen lassen. Ein solches Fenster sieht wie folgt dargestellt aus.

Abbildung 19.36. Eigenschaften-Fenster des leeren Elementsymbols

In der Titelzeile wird die Nummer des angeklickten Elementes angezeigt. Das Fensterinhalt ist wie folgt aufgebaut:

Linke Seite (Datenseite)

  Hier können alle Daten eingegeben oder verändert werden, die das grafische Aussehen des Elements beeinflussen.

Rechte Seite (Logische Seite)

  Hier stehen die Daten, die zur Kommunikation mit der Anlage notwendig sind.

Das Beispiel oben zeigt das Eigenschaftenfenster für Symbole, die keinen Antrieb besitzen, also z.B. einfache Gleiselemente. Im Pull-Down-Menü wähle man zunächst das eigentliche Icon, dreht das Element, schaltet die LED-Anzeige für die Besetztmeldung aus oder gibt einen Text ein. Je nach Art des gewählten Symbols kann das eine oder andere Eigenschaftsfeld deaktiviert sein.

Bei Leerelementen ist z.B. das Feld »Inverted use« aktiviert: hier kann man durch ein Häkchen wählen, ob der Hintergrund eines Leerelements in dunkler Farbe dargestellt wird. Der eigentliche Nutzen dieses Feldes kommt eigentlich erst bei Weichenelementen zum Tragen, wurde dort aber bisher noch nicht programmiert, so dass diese eigentlich davon abweichende Verwendung die einzige ist.

Um eine Gleisbesetztmeldung zu bekommen, muss man im rechten unteren Bereich noch das Modul und den Port einstellen, an dem die Gleisbesetztmeldung für dieses Gleisstück angeschlossen ist. Beim »Durchscrollen« der Busnummern oder der Modulnummern springt die Anzeige automatisch auf die nächsten gültigen Werte. Braucht man mal mehr Übersicht, kann man sich über den Rückmeldebutton rechts neben dem Modulselektor die grafische Übersicht über alle Rückmeldemodule öffnen (viel Sinn macht es momentan so noch nicht, erst wenn eine komfortablere Modulverwaltung geschrieben wurde, kann man hierüber dann den richtigen Port auswählen - z.B. nach dem Namen).

###### 19.4.2.5.4.2 Normale Weichen etc.

Abbildung 19.37. Eigenschaften-Fenster des Elementsymbols für normale Antriebe

Wählt man ein Symbol aus, welches einen Antrieb besitzt, ergeben sich hier im einfachsten Fall die folgenden Einstellungen . In der linken Hälfte neu ist die Dekoderbezeichnung. Hier wird zunächst bei einem noch nicht mit einem Typ versehenen Element der Standard-Dekoder-Typ eingetragen, wie er über das Optionenmenü festgelegt wurde. Wählt man hier einen anderen, so passt sich auch automatisch das zugehörige Protokoll in der rechten Hälfte des Fensters an.

Danach gebe man die Adresse ein, die die Weiche haben soll. In den meisten Fällen wird der Anwender in den Antriebselementen auch die Adresse angezeigt haben. Deshalb wird standardgemäß bei Eingabe einer Adresse diese automatisch in das Textfeld übertragen. Möchte man aber die Vorbildbezeichnungen für Weichen, Signale etc. benutzen, muss man nachträglich den Eintrag im Textfeld ändern (z.B. P1 für ein Ausfahrsignal). Welche Anzeige auf dem Element dann letztendlich erscheint, bestimmt der Nutzer selbst über das Optionenmenü: entweder der Eintrag aus dem Textfeld oder die Adresse.

Wird eine Adresse eingeben, die nicht den Grenzen des verwendeten Protokolls entspricht, dann gibt es einen kleinen Holzhammer, wie in der Art:

Abbildung 19.38. Protokollfehler

Danach korrigiere man einfach die fehlerhafte Adresse, fertig! Übrigens: Die Anfangsstellung eines Antriebs kann nirgendwo eingegeben werden. Wenn ein Element vorher nicht schaltbar war, bekommt es nun den Richtungswert 0, ansonsten übernimmt es den Richtungswert, der vor dem Öffnen des Eigenschaftenfensters aktuell war.

Das Feld »Inverted use« ist zwar aktiviert, hat aber bei Weichenantrieben noch keinerlei Konsequenzen. Interessant zum Einstellen sind die Felder »xch conn«, »Reset after« und »Feedback«. Das erste ermöglicht es durch einen einfachen Klick, die Ausgänge zu einer Dekoderadresse elektronisch zu vertauschen. Wenn also die Weiche nicht so schaltet wie es die Grafik anzeigt, dann kann dies durch einen einfachen Haken korrigiert werden, ohne dass man unter die Anlage muss, um Kabel umzustecken oder sogar zu löten. Für ältere Weichen (wie häufig älter Märklin-M-Weichen) kann es nötig sein, dass der Stellbefehl etwas länger ausgeführt wird, damit die Spule genug Zeit hat, um sich in die andere Stellung zu bewegen. Die im Feld »Reset after« angegebene Zeit in Millisekunden kann dafür entsprechend erhöht werden, um eine ausreichende Funktion zu gewährleisten.

Für eine korrekte Funktion eines GBS sind die Einträge in den Feldern zu »Feedback« wichtig: hier kann man die Nummer des Rückmeldemoduls und des in Frage kommenden Eingangs einstellen, der die rote LED im Element (= Gleis besetzt) aktiviert.

###### 19.4.2.5.4.3 Signale

Abbildung 19.39. Eigenschaften-Fenster des Elementsymbols für Signale (1)

Abbildung 19.40. Eigenschaften-Fenster des Elementsymbols für Signale (2)

Abbildung 19.41. Eigenschaften-Fenster des Elementsymbols für Signale (3)

Diese drei Abbildungen zeigen die Eigenschaften-Fenster für die wichtigsten Signale.

In der ersten Abbildung, erkennt man die Einstellungen zu einem Standard-Hauptsignal oder Blocksignal. Zunächst vergibt man die Daten wie bei einer normalen Weiche. Dann allerdings kann man noch wählen, welche Begriffe das Signal überhaupt darstellen kann. Je nach Standort des Signals an der Strecke kann es sich zum Beispiel um die Kombinationen Hp 0/Hp 1 handeln, wie es in dem obersten der drei Subtypus-Buttons bereits aktiviert wurde. Beim unteren Button, wenn also das Signal alle drei Begriffe darstellen kann, wird automatisch das Feld für eine zweite Adresse aktiviert, da jetzt bei drei möglichen Stellungen ein Dekoderausgang nicht mehr ausreicht. In diesem Fall muss man natürlich noch eine weitere Adresse (normalerweise die nächsthöhere) vergeben.

In der zweiten Abbildung, erkennt man einen ähnlichen Fensteraufbau für ein Ausfahrsignal. Man wähle den Button aus, der die möglichen Signalkombinationen für dieses Element repräsentiert. Eine zweite Adresse ist bei diesen Signalen immer zu vergeben, da es sich um mind. 3-begriffige Signale handelt, also auf jeden Fall zwei Dekoderausgänge benötigt werden.

Obwohl in beiden Fällen nur Lichtsignale abgebildet sind, gelten die entsprechenden Tasten selbstverständlich auch für Formsignale. Zu beachten ist dabei aber der etwas andere Zusammenschluss von Form-Hauptsignal und Form-Schutzsignal an den Dekoder, da es sich hier immer um zwei getrennte Signale handelt.

###### 19.4.2.5.4.4 Doppelkreuzweichen

Abbildung 19.42. Eigenschaften-Fenster des Elementsymbols für Doppelkreuzweichen

Wenn man Modellbahner ist, benutzt man wahrscheinlich Doppelkreuzweichen (DKW) mit 2 Antrieben, wie es im Vorbild auch der Fall ist. Deshalb wird standardmäßig der untere Button mit den 4 möglichen Weichenstellungen aktiviert. Deshalb sind in den meisten Fällen auch hier wieder zwei Dekoderadressen einzugeben.

Ist man mehr Spielbahner, benutzt man eventuell auch die normalen DKWs mit einem Antrieb, die meines Wissens nur Märklin-spezifisch sind. Diese haben nur einen Antrieb, benötigen daher nur eine Adresse. Benötigt man diese Art von DKW, wähle man den oberen Button mit den zwei möglichen Weichenstellungen.

###### 19.4.2.5.4.5 Drehscheibe

Abbildung 19.43. Eigenschaften-Fenster des Drehscheiben-Elementsymbols

Die Drehscheibe ist ein ganz besonderer Fall, weswegen ihr auch ein spezielles Drehscheiben-Kapitel gewidmet wurde. Dort wird etwas genauer auf die Bedienung eingegangen. Zunächst einmal ist wichtig, dass die Drehscheibe in der Digitalversion nur von Märklin erhältlich ist und einen eigenen Dekoder mitbringt. Sie läuft daher nur im Motorola-Format, weswegen dies - auch beim Default-Protokoll DCC - unveränderbar automatisch ausgewählt wird. Eine Adresse gebe man hier nicht ein, denn diese wird aus der Aktivierung eines der beiden Buttons in der unteren linken Hälfte errechnet:

Erwirbt man eine Drehscheibe, so hat Märklin den zugehörigen Dekoder so programmiert, dass man diese mit einem Keyboard betreiben muss, welches die Keyboard-Adresse 15 besitzt. Braucht man eine zweite Drehscheibe, so muss man diese bei Märklin mit einer anderen Keyboard-Adresse bestellen (nämlich 14), die dann extra im Werk eingestellt wird. In diesen seltenen Fällen (nur die wenigsten dürften zwei digitale haben) wähle man daher Button 14, dann wird die Adresse angepasst. Mehr braucht man hier nicht zu tun, weitere Einstellungen erfolgen dann über den Drehscheiben-Commander, welcher im Drehscheiben-Kapitel beschrieben wird. Bis auf die Reset-Zeit kann hier nichts weiter eingestellt werden.

###### 19.4.2.5.4.6 Entkoppler

Abbildung 19.44. Eigenschaften-Fenster des Elementsymbols für Entkoppler

Auch Entkoppler benötigen eine spezielle Behandlung. Am einfachsten sind die motorischen Entkoppler, da diese zwei definierte und stabile Stellungen besitzen. Dies soll durch den obersten Button gekennzeichnet sein. Man vergebe dazu ganz normal die Adresse. Aber es gibt auch Entkoppler, die einen Momentkontakt aufweisen, dementsprechend auch nur einen Ausgang einer Adresse belegen (z.B. Märklin K-2297, M-5112 oder C-24997). Man kann daher an eine Adresse gleich zwei Entkoppler anschließen. Hierbei ist also auf jeden Fall auch ein eventuell Häkchen im Feld »xcg conn« zu beachten. Für momentan betätigte Entkoppler sind grundsätzlich die beiden unteren Buttons zuständig. Davon nehme man den mittleren, wenn der Entkoppler am roten/linken Ausgang einer Adresse angeschlossen wurde bzw. den unteren, wenn man den grünen/rechten Ausgang benutzt. Notfalls kann der Ausgang jedoch durch »xch conn« getauscht werden. Bei beiden Möglichkeiten ist ebenfalls nur eine Adresse einzugeben.

###### 19.4.2.5.4.7 Adress-Anzeigeelemente

Abbildung 19.45. Eigenschaften-Fenster des Elementsymbols für Adress-Anzeigeelemente

Diese Elemente sind ganz besondere Elemente. Dazu erstmal etwas zurück in der Historie. Obwohl das System der digitalen Zugsteuerungen nun seit schon ca. 20 Jahren existiert und in aller Hinsicht bereits verfeinert wurde, fehlt immer noch ein entscheidendes Element bei allen Anbietern: Die Rückmeldung der Lokadresse einer an einem bestimmten Punkt vorbeifahrenden Lok. Seit wenigen Jahren gibt es bereits Zuglesesysteme (Holtermann etc.), die jedoch sehr teuer sind (mehrere 100 DM!) und nicht direkt mit dem Märklin-System verbindbar sind.

Wie viele der User vielleicht wissen, hat die Zeitschrift Elektor Ende der 80er Jahre ein Selbstbau-Projekt zu einer Märklin-kompatiblen digitalen Steuerung namens EDiTS entwickelt (Elektor Digital Train System). Dies zeichnete sich schon damals gegenüber den Originalteilen durch äußerst geringe Kosten aus. Auch Selbstbau-Lokdekoder gehörten damals schon zum Programm.

Im Jahr 1999 startete Elektor mit einem Update des beliebten Systems. An manchen Stellen geschrumpft, wurde die CentralUnit durch einen einzigen Microcontroller ersetzt und Software zu einer einfachen Ansteurerung per PC angeboten. Ebenfalls runderneuert wurden die Lokdekoder, die jetzt auch das neue Märklin-Format verstehen.

Aber der Clou an der Geschichte ist, was auch bisher noch kein anderer Selbstbau-Dekoder (aus dem Internet z.B.) hat ist: diese Dekoder senden über eine Infrarotdiode die eigene aktuell eingestellte Adresse des Dekoders. Mit einem passenden Empfänger (auch mit in der Serie beschrieben) wird dieses über eine eigene Schaltung im bzw. am Gleis empfangen und binär dekodiert. Nun hängen diese Lesegeräte (Preis pro Stück ca. 80 DM) nicht an einem speziellen Bus, nein: sie können ganz normal als S88-Module in den Rückmeldebus eingereiht werden (EDiTS bietet nur 8-polige Rückmeldemodule an, was aber in manchen Fällen nicht falsch ist, denn wann hat man schonmal 16 RM-Kontakte auf kleiner Fläche, um ein Modul komplett zu beschalten? Rutger Friberg nennt diese »halben S88-Module« ganz einfach S44 :-). Die EDiTS-CU liest dann diese Module ganz normal beim Lesen des S88-Strangs aus und wertet die 8-Bit-Informationen an diesem Modul nicht als 8 voneinander unabhängige Kontakte aus, sondern als eine Information.

Und hier wurde jetzt SpDrS60 for Linux erweitert. Es ist jetzt in der Lage, Informationen von einem Adress-RM-Dekoder als Klartext anzuzeigen. Dazu wählt man das Element Adresse (Adresse).

Man gebe hier auf jeden Fall einen Text ein, auch wenn dieser nicht angezeigt wird. Das dient später einmal zur genauen Identifizierung der Module (wird erst richtig funktionieren beim Implementieren der S88-Resource-Dateien). Da es sich um dieses spezielle Modul handelt, erscheint jetzt im Bereich Feedback ein Tickmark bei Address module. Da alle 8 Kontakte dieses Moduls benötigt werden, macht es keinen Sinn, hier vom Anwender einen einzelnen Port wählen zu lassen, er braucht lediglich die Nummer des Moduls einzugeben. Befährt eine Lok mit diesem neuen »Superlokdekoder« einen solchen Empfänger, dann wird die eingestellte Adresse in dezimaler Form im Gleisbild dargestellt.

ACHTUNG:

Die Funktionalität habe ich mit einem normalen S88-Baustein getestet. Mal wieder liegt mir nicht die entsprechende Hardware vor. Ich habe daher die Berechnung der dezimalen Adressanzeige in der vorliegenden Form angenommen (d.h. »Kontakt 1« entspricht dem LSB, least significant bit, minderwertigstes Bit). Das kann genau falsch herum sein. Ich bitte diesbezüglich um Rückmeldung, wenn die Anzeige der eingestellten Adresse nicht entspricht.

###### 19.4.2.5.4.8 Was für alle Fenster gilt

Für alle Elemente, die schaltbar sind, muss unbedingt eine Adresse eingetragen werden. Durch Klicken auf OK werden die Werte in das aktuelle Gleisbild übernommen.

#### 19.4.2.6 Fahrstraßen

##### 19.4.2.6.1 Vorwort

Wie es schon einmal kurz in der Einleitung zu dieser Dokumentation angesprochen wurde, ist die hervorstechende Eigenschaft eines Spurplan-Drucktasten-Stellwerks, dass hier überwiegend mit Fahrstraßen gearbeitet wird. Der Fahrdienstleiter sucht sich nicht selber eine mögliche Strecke durch den Weichendschungel aus und stellt alle Weichen einzeln, es werden vielmehr durch bestimmte Relaisverschaltung vorprogrammierte Fahrstraßen aktiviert (sämtliche Fahrstraßen sind vorbestimmt, d.h. es gibt keine »Intelligenz« im System, die aus Start- und Zielsignal denn besten/schnellsten Weg durch ein Weichenfeld findet). Dies geschieht durch das gleichzeitige Drücken von zwei Fahrstraßentasten, die sich an den Signalen befinden: dem Startsignal, wo der Zug wartet (oder zuerst eintreffen wird) und das in seinem Fahrweg liegenden Zielsignal. Letzteres ist dann wiederum das Startsignal für den nächsten Abschnitt. Auf freier Strecke wird meistens im selbsttätigen Blockbetrieb gefahren, so dass hier im allgemeinen keine Stellvorgänge ausgelöst werden müssen, dennoch sind dafür Bedienmöglichkeiten vorhanden.

Wurden die Tasten gedrückt, dann laufen zunächst alle beteiligten Weichen in die erforderliche neue Lage und werden dort verriegelt. Die Fahrstraße wird im Bedienpult mit gelben Lampen ausgeleuchtet, damit man den gestellen Fahrweg direkt erkennen kann. Danach erst schaltet sich das Startsignal auf Fahrt (Hp 1 oder Hp 2), und der Zug kann losfahren; dabei meldet er über Gleismeldekontakte seine Position an den Stelltisch, der diese durch Ausleuchten der Fahrstraße mit roten Lampen anzeigt. Wenn der Zug das Zielsignal passiert hat, wird über Gleismeldekontakte automatisch die Fahrstraße deaktiviert, so dass die darin befindlichen Weichen dann für andere Fahrstraßen zur Verfügung stehen. Selbstverständlich sind auch bei der großen Bahn Weichen einzeln stellbar, dies ist z.B. allein für Wartungsarbeiten notwendig.

Nach dieser kurzen Zusammenfassung des wirklichen Geschehens nun zur Realisierung auf der Modellbahn und in diesem Programm.

Das Gleichzeitige Drücken von zwei Tasten oder Klicken von Elementen ist hier natürlich nicht möglich. Ich bin leider nicht im Besitz eines Touchscreens, und wenn ich das wäre, dürften es die wenigsten anderen sein. Also bleibt nur das Arbeiten mit der Maus, und das kann nunmal nur sequentiell erfolgen, nie parallel (deswegen auch serielle Schnittstelle ;-)). Dieser Mangel ist aber durch ein anderes Verfahren zumindest nachempfunden (siehe gleich mehr dazu). Ansonsten ist alles sehr ähnlich: die Weichen werden hintereinander angesteuert, das Startsignal wird zuletzt auf Fahrt gestellt, und die Fahrstraße wird mit gelben Lampen angezeigt. Auch die manuelle Rücknahme von Fahrstraßen ist hiermit möglich, denn man kann sich ja mal vertun (schlecht in der Wirklichkeit), oder ein Zug kann nicht abfahren, blockiert aber mit seiner Fahrstraße einen anderen.

##### 19.4.2.6.2 Bedienung

###### 19.4.2.6.2.1 Fahrstraße aktivieren

Nehmen wir hier der Einfachheit einmal an, dass sämtliche Fahrstraßen-Daten zu einem Gleisbild schon vorliegen (Wie? Siehe Punkt »Eingabe«). Das ist z.B. bei den meisten mitgelieferten Gleisbild-Dateien wie `spdrs60/layouts/bahnhof_klein.dat.gbs` der Fall. Aus dieser Datei ist auch das folgende Beispiel entnommen.

Abbildung 19.46. Fahrstraßenkonfiguration, Ausgangssituation

Man erkennt hier einen Gleisbild-Ausschnitt, indem die Fahrstraße von (Start-)Signal 5 nach (Ziel-)Signal 1 geschaltet werden soll. Dazu klickt man zuerst auf die Zugstraßentaste (rot) des Startsignals und innerhalb eines 5-Sekunden-Zeitraums auf die Zugstraßentaste des Zielsignals. Man erkennt dann, wie die für die Fahrstraße benötigten Weichen in die richtige Stellung laufen, indem die Stellungsanzeige wechselt. Sind alle Weichen gestellt, wird die Fahrstraße optisch angezeigt, was im folgenden dargestellt ist.

Abbildung 19.47. Aktivierte Fahrstraße

Man erkennt darauf weiterhin als Unterschied zum ersten Bild kleine gelb ausgefüllte Kreise an den Weichen (Verschlußmelder) und an den Signalen (Sperrmelder). Diese zeigen an, das der entsprechende Antrieb in einer aktivierten Fahrstraße benötigt wird und deshalb nicht durch die Weichengruppentaste (WGT) oder durch eine andere Fahrstraße, die diese Weiche enthält, gestellt werden kann. Wird dieses dennoch versucht, gibt es eine Fehlermeldung in der Kommando-Historie.

Hat eine Weiche schon die für die Fahrstraße benötigte Stellung, dann wird sie nicht noch einmal gestellt. Es wird daher auch kein Stellbefehl an den SRCP-Server geschickt, um unnötige Kommandos zu vermeiden. Selbstverständlich wird diese Weiche ebenfalls durch einen aktivierten Sperrmelder als einer Fahrstraße zugehörig gekennzeichnet.

###### 19.4.2.6.2.2 Zugbewegungen

Fährt der Zug ab, kann man dies sehr schön über die Gleisbesetztmelder erkennen, sofern diese installiert sind.

Abbildung 19.48. Aktivierte Fahrstraße mit Gleisbesetztmeldern

Man erkennt den Zug, der sich gerade im Weichenfeld befindet, repräsentiert durch die roten LEDs.

###### 19.4.2.6.2.3 Fahrstraße deaktivieren

Passiert der Zug einen Rückmeldekontakt, der eine Fahrstraße auflöst, so wird diese automatisch deaktiviert, d.h. die gelben Gleis-Lampen verlöschen. Befindet sich aus welchen Gründen auch immer noch ein Zug/Wagen auf den Gleisen, so wird dies natürlich weiterhin angezeigt. Mit einem Rückmeldekontakt können auch mehrere Fahrstraßen gleichzeitig deaktiviert werden.

ACHTUNG: Der Rückmeldekontakt für das Auflösen wird über den Fahrstraßendialog eingetragen (release port), während die Rückmeldekontakte der Gleisausleuchtung im Eigenschaftsdialog des entsprechenden Elements eingetragen wird.

Möchte man eine Fahrstraße wegen irrtümlicher Einstellung oder weil sie nicht mehr benötigt wird zurücknehmen, so benutzt man die auch in Echt vorhandene Fahrstraßenhilfstaste (FHT), die auf keinem Gleisbild fehlen sollte.

Abbildung 19.49. FHT-Taste

Man klickt zunächst auf das FHT-Element und hat dann maximal fünf Sekunden Zeit, um wie beim Aktivieren zuerst das Startsignal und dann wiederum innerhalb eines 5-Sekunden-Zeitraums das Zielsignal anzuklicken. Als Folge davon erlöscht die gelbe Fahrstraßenausleuchtung (nicht jedoch die Stellungsmelder der Weichen), die gelben Verschlußmelder verlöschen und das Startsignal sowie eventuelle Rangiersignale auf dem Fahrweg springen auf Rot. Ab jetzt sind die Weichen wieder für andere Fahrstraßen benutzbar oder können einzeln geschaltet werden. Möchte man sich ein Stück Mausbewegung sparen, so drücke man zuerst die Taste F5 und dann spätestens nach den erwähnten fünf Sekunden das erste Signal, nach weiteren max. fünf Sekunden das zweite Signal.

###### 19.4.2.6.2.4 Übersicht über alle Fahrstraßen

In der normalen Gleisbild-Darstellung erkennt man nicht, welche Fahrstraßen schon existieren. Man kann solch eine Anzeige aber durch das Fahrstraßen-Symbol in der Werkzeugleiste, die Tasten Strg-R oder den Menüpunkt »Ansicht -> Fahrstraßentabelle« aktivieren.

Abbildung 19.50. Fahrstraßentabelle

Hier erscheint die Anzahl der zum Gleisbild bereits existierenden Fahrstraßen, die dann im zentralen Fensterbereich mit Klartext-Namen aufgeführt sind. Daneben erkennt man ein Fahrtsignal und ein Stopsignal. Aus diesem Fenster können ebenfalls die Fahrstraßen gestellt werden. Dazu wählt man zunächst durch einfachen Klick die zu stellende Straße aus. Ist diese noch nicht aktiv, dann ist das Fahrtsignal aktiviert, durch ein Klick darauf wird die Straße dann aktiviert (ein Blick auf das Gleisbild zeigt dann das oben beschriebene Verhalten).

Ist eine Straße bereits aktiv, wird das Stopsignal aktiviert, durch einen Klick darauf wird die Fahrstraße wieder zurückgenommen, als hätte man die Kombination FHT + Start- + Zielsignal benutzt. Die in obigem Beispiel genannte Fahrstraße ist hier in der dritten Zeile »Gleis 2 -> links« vertreten. In der Fahrstraßendatei kann man dazu aussagekräftige Namen vergeben, damit man hier in diesem Fenster die gewünschte Straße auch leicht wiederfindet.

###### 19.4.2.6.2.5 Alle Fahrstraßen zurücknehmen

Evtl. könnte es nötig sein, alle Fahrstraßen zu de-aktivieren. Bei 1 oder 2 aktiven Straßen ist dies noch bequem über die FHT zu schaffen, bei mehreren benutzt man folgende Möglichkeit:

Der Menübefehl »Gleisbild -> Fahrstraßen entsperren« setzt alle Fahrstraßen schnell zurück (Tastaturkürzel: Strg-U)

##### 19.4.2.6.3 Verwaltung von Fahrstraßen

Ab der Version 0.4.0 wurde die Verwaltung von Fahrstraßen komplett in eine grafische Oberfläche integriert. Diese ist in der Lage, sämtliche Fahrstraßen zu einem Gleisbild komfortabel zu verwalten. Vorbei sind ab sofort daher die Zeiten, in denen die Fahrstraßen manuell mit einem ASCII-Editor angelegt werden mussten. Dabei wurde aber auch der Aufbau der Fahrstraßendatei verändert. Aber keine Sorge: die alten Dateien können weiter verwendet werden. Das Programm checkt die Dateiversion und konvertiert automatisch eine Fahrstraßendatei ins neue Format um. Wenn dies geschieht, wird dies dem Nutzer einmalig durch ein Fenster mitgeteilt.

Abbildung 19.51. Fahrstraßen-Konvertierung

Damit die Daten für alle Fahrstraßen richtig geladen werden, muss das Gleisbild erneut geöffnet werden. All dies passiert nur pro Gleisbild einmal, denn einmal konvertiert ist neue Version!

ACHTUNG:

Zum Konvertieren ist das Konvertierprogramm convertrts notwendig. Dies befindet sich als - automatisch von SpDrS60 ausführbare Datei - im `/usr/bin`-Verzeichnis. Ist diese Datei convertrts nicht dort, gibt es zwar eine Meldung, aber es wird nicht wirklich konvertiert.

###### 19.4.2.6.3.1 Aufbau des Verwaltungsfensters

Öffnet man mit Strg-R das Übersichtsfenster der Fahrstraßen, dann entdeckt man unten rechts eine Schaltfläche mit einem Schraubenschlüssel. Klickt man auf diese, so erweitert sich das Fenster auf ca. das dreifache, und man erkennt schon in etwa die ungefähre Struktur, in der man die Fahrstraßen-Daten eingeben kann. Zunächst einmal ein kleiner Überblick über die vorhandenen Fensterelemente.

Abbildung 19.52. Dialogfenster zum Bearbeiten von Fahrstraßen

In der linken Hälfte erkennt man weiterhin die Übersicht über alle Verfügbaren Fahrstraßen inkl. vollständigem Namen. Man wählt aus der Tabelle die Fahrstraße, die einen näher interessiert, durch einen einfachen Klick; sie wird dann blau unterlegt. Ist die Fahrstraße nicht aktiv im Gleisbild geschaltet, dann ist das Formsignal »Fahrt« aktiv, das bedeutet, dass diese Fahrstraße nun jederzeit über diesen Button aktiviert werden kann.

Wurde eine Straße ausgewählt, dann erscheinen in der rechten Hälfte die Informationen, die zu dieser Fahrstraße gespeichert sind:

- eine laufende Nummer

- der Name

stehen ganz oben.

Links darunter schließt sich ein Feld an, in dem die Interaktion zwischen Rückmeldern und dieser Fahrstraße eingestellt werden können. Zur Zeit ist dort das »Lösen«- und das »Aktivieren«-Feld aktiv. Die hier angezeigten Modul- und Portnummern geben an, durch welchen Kontakt diese Fahrstraße automatisch zurückgenommen bzw. aktiviert wird (zukünftig ist noch geplant, dass Fahrstraßen automatisch durch eine bestimmte Lokadresse aktiviert werden können).

Rechts daneben schließen sich die generellen Eigenschaften dieser Fahrstraße an. Hier werden vorbildgerecht fünf verschiedene Fahrstraßentypen unterschieden: Regelzugstraße, Umfahrzugstraße, Zughilfsstraße, Regelrangierstraße und Umfahrrangierstraße. Bei Rangierstraßen sind Fahrten in bereits besetzte Gleise erlaubt, was spdrs60 programmtechnisch jedoch leider noch nicht erkennen kann. Umfahrstraßen werden durch Aktivieren der Umfahrgruppentaste (UfGT) und anschließendes Wählen der Start- und Zieltasten im Gleisbild geschaltet. Die hier vorgesehene Option für mehrere Umfahrstufen, ist zur Zeit noch nicht implementiert.

Im Bereich darunter stehen die Daten der Signale, an denen diese Fahrstraße beginnt (Startsignal) und endet (Stopsignal). Nur am Startsignal gibt es ein Feld für die Signalstellung, das Zielsignal ist immer auf Halt (bis es eben selber bei einer anderen Fahrstraße zum Startsignal wird). Angezeigt wird in der Spalte »Adresse« die Hauptadresse des Antriebes (bei Mehrfachantriebs-Elementen also Adresse 1), in der Spalte »Status« der Dezimalwert der Antriebsstellung (wie es auch in der Tabelle Positionen beschrieben wurde). Die Spalte »Name« gibt die Klartextanzeige des Elementes wieder, bei Signalen also z.B. P 1 für ein Ausfahrsignal. Nur die Adresse und der Status sind editierbar, der Name wird automatisch aus der Datenbank ermittelt.

Im großen unteren Bereich stehen dann die zu dieser Fahrstraße gehörenden Elemente, die außer dem Startsignal noch geschaltet werden müssen. Bis zu 15 dieser Elemente sind möglich (eine überschlägige Rechnung hat ergeben, dass dies reichen sollte. Wenn nicht, bitte melden, ich passe den Code dann entsprechend an). Hier können nicht nur Weichen oder andere Signale (Schutzsignale, die »unterwegs« am Rand stehen), sondern auch Blindelemente (wenn man ein Signal mit Zugbeeinflussung mal von der anderen Seite durchfahren möchte) oder sonstige anderen normalen schaltbaren Elemente eintragen (von mir aus auch Entkoppler ;-)). Auch hier entdeckt man wieder die drei Spalten mit der Elementadresse, dem Status, den ein Antrieb in der Fahrstraße einnehmen soll, sowie den Klartextnamen (diese sind hier ebenfalls nicht editierbar).

WICHTIG: Wurde eine Fahrstraße ausgewählt und dann aktiv geschaltet, dann können die Daten zu dieser Fahrstraße nicht geändert werden, alle Anzeigeelemente werden für diese Fahrstraße ausgegraut. Das Verwalten von Fahrstraßen sollte daher nur dann am besten erfolgen, wenn keine Fahrstraße aktiv ist. Auch sollten keine Züge auf der Anlage fahren, wenn Fahrstraßen vorhanden sind, die durch Rückmeldekontakte oder eine bestimmte Lokadresse automatisch aktiviert werden können.

Am unteren Abschluss des Fensters erkennt man noch sechs Schaltflächen, die verschiedene Aktionen mit einer Fahrstraße auslösen. Bis auf den Hinzufügen-Button sind alle anderen Schaltflächen nicht verfügbar, wenn die zugehörige Fahrstraße sich gerade im aktiven, gerouteten Zustand im Gleisbild befindet (Ein Beispiel sieht man hier). Dies sind von links nach rechts:

- Speichern einer Änderung/einer Neuanlage in einer Fahrstraße

- Löschen der ausgewählten Fahrstraße

- Hinzufügen einer neuen Fahrstraße

- Kopieren einer Fahrstraße mit allen bereits angelegten Eigenschaften

- Aufnehmen einer Fahrstraße im Gleisbild

- Prüfen/Anzeigen einer kpl. Fahrstraße, ohne sie zu schalten

Im folgenden werden die einzelnen Aktionen beschrieben, die mit den Schaltflächen ausgelöst werden können.

WICHTIG:

Alle ändernden Aktionen an Fahrstraßen werden sofort in die Fahrstraßen-Datei geschrieben. Dies geschieht nicht - wie bei der Gleisbild-Datei - erst beim Beenden des Programmes. Man braucht also keine Angst zu haben, dass beim Absturz des Programmes während des Spielens die vorher mühsam eingepflegten Fahrstraßen verloren gehen.

###### 19.4.2.6.3.2 Löschen einer Fahrstraße

Nach der Auswahl einer Fahrstraße im Übersichtsfenster kann man durch einen Klick auf den Löschbutton die Fahrstraße löschen. Damit man nicht aus Versehen eine Fahrstraße löschen kann, fragt das Programm nochmals nach, ob die Löschung wirklich durchgeführt werden soll.

Abbildung 19.53. Sicherheitsabfrage beim Löschen einer Fahrstraße

Nach dem Betätigen der Ja-Schaltfläche wird die zugehörige Fahrstraße aus der Tabelle (und natürlich auch aus der Fahrstraßen-Datei) entfernt.

###### 19.4.2.6.3.3 Fahrstraße hinzufügen

Nach Klicken auf die Hinzufügen-Schaltfläche wird die rechte Eingabemaske komplett gelöscht, um die Eingabe von neuen Fahrstraßendaten vorzubereiten. Das Feld für den Fahrstraßennamen wird mit einer Aufforderung zur Eingabe eines neuen Namens gefüllt, der zudem komplett selektiert ist; d.h., man braucht nach Aktivierung des Schalters nicht mehr mit der Maus zu diesem Feld wandern, sondern kann den Fahrstraßennamen direkt eintippen. Das Fenster sieht daher ausschnittsweise wie in gezeigt aus.

Abbildung 19.54. Hinzufügen einer Fahrstraße

Nach dem Fahrstraßennamen wählt man noch den Rückmeldeport aus. Steht die Modulanzeige auf 0, dann ist die Portanzeige gesperrt. Damit kann man eingeben, dass für diese Fahrstraße keine automatische Auflösung benutzt werden soll. Möchte man dies, so wähle man zunächst das entsprechende Modul aus, danach die Portnummer dieses Moduls.

Die dann folgenden Eingaben zur Fahrstraße (Signale und zu schaltende Elemente) können sowohl händisch als auch halbautomatisch über das grafische Gleisbild geschehen. Letzteres wird hier beschrieben.

###### 19.4.2.6.3.3.1 Händische Eingabe

Diese Eingabe benötigt das Wissen, welche Hauptadresse die entsprechenden Elemente haben. Eventuell ist es dabei empfehlenswert, über die Programmoptionen die Anzeige der Elemente auf »Text« zu stellen.

In die Adressfelder gibt man die Adresse des zu schaltenden Elementes ein, im Feld Status der Zustand, den das Element neu einnehmen soll. Dies gilt sowohl für die Eingabe der Signale als auch für die übrigen zu schaltenden 15 Elemente. Zusätzliche Elemente KÖNNEN eingegeben werden. Ein Start- und Zielsignal MUSS auf jeden Fall eingegeben werden, ansonsten kann die Fahrstraße nicht geschaltet werden. Damit dies nicht passiert, meckert das Programm, wenn eine Signaladresse und/oder der Status des Startsignals fehlt.

Abbildung 19.55. Fehlermeldung bei fehlender Signaladresse

Ähnliches passiert auch, wenn man in den zusätzlichen Elementen in einer Zeile nur die Adresse/Status eingibt.

Abbildung 19.56. Fehlermeldung bei fehlenden Elementdaten

Wurden alle Eingaben gemacht, kann man durch die Speichern-Schaltfläche diese Fahrstraße abspeichern. Sie erscheint dann sofort mit ihrem neuen Namen links in der Fahrstraßentabelle. Sie kann sofort über die Signalschalter aktiviert und deaktiviert werden. Nach dem Speichern liest das Programm auch die Textfelder der betroffenen Elemente aus, ab dann können also auch diese Felder gefüllt sein. Ist der Name eines Elementes nicht auffindbar, so wird das entsprechende Feld mit dem Hinweis »unknown« versehen.

###### 19.4.2.6.3.4 Fahrstraße kopieren/duplizieren

Wenn für ein Gleisbild zwei sehr ähnliche Fahrstraßen existieren, in denen z.B. nur ein Element unterschiedlich geschaltet wird, sollte man sich der Kopierfunktion bedienen. Dazu klickt man auf den Copy-Button (oder drückt Strg-C). Alsdann erhält man ein neu vorbereitete Fahrstraße mit denselben zu schaltenden Elementen. Lediglich der Name der Fahrstraße lautet jetzt: »Copy of ...«, wobei »...« für den Namen der kopierten Originalroute steht. Aufgrund der schon ausgelesenen Textfelder sind diesmal die Felder »Name« bereits gefüllt.

Abbildung 19.57. Fahrstraße kopieren

Danach wählt man eventuell noch eine andere Verknüpfung zu einem Rückmeldeport, und natürlich auch die Elemente, die zur Originalroute verschieden sind. Danach nur noch speichern (Strg-S) - fertig!

###### 19.4.2.6.3.5 Fahrstraßendaten ändern

Sobald die Daten einer Fahrstraße angezeigt werden, können diese auch geändert werden. Voraussetzung ist lediglich, dass diese Fahrstraße nicht gerade geschaltet wurde (aber dann sind die Datenfelder sowieso für eine Eingabe gesperrt). Man kann daher jederzeit einzelne oder mehrere Felder in ihrem Inhalt ändern. Danach sollte man immer abspeichern. Tut man das nicht, wird eine Warnung ausgegeben, damit man die soeben gemachten Änderungen nicht leichtfertig in den Wind schießt:

Abbildung 19.58. Fehlermeldung bei ungesicherten Fahrstraßenänderungen

###### 19.4.2.6.3.6 Fahrstraße prüfen

Bei größeren Anlagen werden einem nach einer Zeit die ganzen Zahlen nicht mehr viel sagen. Es wird auch schwer sein, seine Fahrstraßen nachher noch genau nachvollziehen zu können. Es gibt daher die Funktion »Prüfen«, mit der die in der Übersicht angezeigte Fahrstraße im Gleisbild grafisch markiert werden kann. Dies sieht beispielsweise wie in gezeigt aus.

Abbildung 19.59. Visuelle Überprüfung einer Fahrstraße

Auffällig ist die blaue Umrandung sämtlicher Elemente. Diese Einfärbung steht für den Prüfmodus. Das Startsignal ist zusätzlich mit einem grünen Rand versehen, das Stopsignal mit einem roten (das heißt NICHT, dass sich das Stopsignal-Element jetzt im Editiermodus befindet!). Alle zusätzlich zu schaltenden Elemente sind gelb umrandet.

Hat man alles genau geprüft, dann klickt man mit der Maus einfach auf ein leeres Element, so dass der Prüfmodus wieder verlassen wird. Das Fahrstraßenfenster erscheint nun wieder.

###### 19.4.2.6.3.7 Fahrstraßen über das Gleisbild eingeben

Den High-End-Komfort erreicht man natürlich nur dann, wenn man die Fahrstraße über das grafische Gleisbild eingeben kann. Und das ist ja auch das, worauf alle hoffentlich lange genug gewartet haben. Die Bedienung ist ganz einfach. Zur Erinnerung nochmals vorneweg: aufgrund der Programmarchitektur ist es NICHT notwendig, dass sämtliche Elemente, die in einer Fahrstraße liegen und keine Antriebe haben, auch in die Fahrstraße mit aufgenommen werden müssen. Gerade oder gebogene Elemente können also sowohl bei der händischen als auch bei der grafischen Fahrstraßeneingabe getrost unbeachtet gelassen werden.

Idealerweise beginnt man mit dem Hinzufügen einer neuen Fahrstraße. Zunächst sollte man einen aussagekräftigen Namen nach den schon genannten Regeln vergeben. Danach klicke man auf den Aufnahmeschalter (oder Strg-R). Das Fahrstraßenfenster verschwindet, und man sieht das Gleisbild der Anlage, wobei alle Elemente mit einem dicken grünen Rand versehen sind. Dies bedeutet, dass sich das Gleisbild im Record- oder Aufnahmemodus befindet.

Abbildung 19.60. Darstellung des Gleisbilds im Aufnahmemodus

Es kommt nun nicht darauf an, ob man die zu schaltenden Element oder die Start/Zielsignale zuerst aufnimmt. Damit man aber nicht verwirrt wird, sollte man die Reihenfolge einhalten, wie sie auch in den Eingabefeldern des Fahrstraßenfensters vorgegeben wird. Grundregel: alle mit der linken Maustaste angeklickten Elemente mit Antrieb werden in die Fahrstraße übernommen. Klickt man mit der rechten Maustaste auf ein schaltbares Element, dann erscheint ein kleines Minikontextmenü mit dem Inhalt »Umschalten«. Damit muss man zuerst dem Element den richtigen Status geben, sprich die Weiche oder das Signal umschalten. Erst danach sollte das Element aufgenommen werden.

Dabei gilt (alles mit Linksklicks):

- Das zuallererst doppelt angeklickte Signal wird das Startsignal

- Das zweite doppelt angeklickte Signal wird das Zielsignal (dazwischen können jedoch beliebige Nicht-Signal-Elemente angeklickt werden)

- Alle Nicht-Signal-Elemente wandern durch einen einfachen Linksklick in den Bereich der übrigen zu schaltenden Elemente. Wurden davon bereits 15 angeklickt, öffnet sich automatisch wieder das Fahrstraßenfenster.

- Klickt man einfach auf ein leeres Element, zeigt man dem Recorder, dass die Aufnahme beendet ist. Das Fahrstraßenfenster erscheint wieder, und alle soeben angeklickten Elemente erscheinen mit ihren Adressen und ihren Stati in den Datenfeldern.

Im Einzelnen sieht eine Aufnahmeprozedur wie folgt aus: Im Aufnahmemodus rechts-klickt man auf ein Element, welches den falschen Status hat. Es erscheint das Mini-Kontextmenü mit dem Eintrag »Umschalten«. Folgende Abbildung zeigt das am Signal-Element »B«).

Abbildung 19.61. Status des Startsignals setzen

Nach der Auswahl von »Umschalten« bekommt das Element einen anderen Zustand. Ist dies nicht der richtige, dann wiederholt man den Umschalten-Befehl nochmals (hier nicht notwendig).

Abbildung 19.62. Status des Startsignals gesetzt

Durch einen einfachen Linksklick speichert man das Element als normal schaltbares Element, mit einem Doppelklick speichert man es als Signal wurde ein Signal angeklickt; da es das 1. Signal während der aktuellen Aufnahmeprozedur war, wird es das Startsignal).

Abbildung 19.63. Startsignal erfasst

Durch einen weiteren Doppelklick auf ein anderes Signal legt man das Zielsignal fest. In handelt es sich dabei um das Signal-Element »001«.

Abbildung 19.64. Haltsignal erfasst

Die zu schaltenden übrigen Antriebe werden ebenfalls durch einen einfachen Linksklick aufgenommen. Die in zu schaltenden Weichen auf dem Weg vom Start- zum Zielsignal hatten alle schon die richtige Stellung, so dass sich ein Umschalten erübrigte.

Abbildung 19.65. Zu schaltende Fahrstraßenelemente erfasst

Nach einen Linksklick auf ein leeres Element im Gleisbild erscheint wieder das Fahrstraßenfenster. Hier erscheinen jetzt in allen elementbezogenen Datenfeldern die Adressen und die Stati der Elemente, die man soeben im Gleisbild grafisch für diese Fahrstraße aufgenommen hat. Auch die Textfelder der betroffenen Elemente sind gefüllt. Wenn man sein Gleisbild gewöhnlich im Textanzeige-Modus betreibt, kann man so prüfen, ob alles eine Richtigkeit hat, da die Adresse dann in den Anzeigefeldern der Elemente nicht erscheint.

Abbildung 19.66. Fahrstraßendialog mit den erfassten Gleisbildelementen

Nach dem Speichern (Namen für diese Fahrstraße nicht vergessen!) kann man die Fahrstraße nochmals mit dem Prüfbutton überprüfen. Wenn alles richtig ist, kann diese Fahrstraße ab sofort in den Stellwerksbetrieb mit eingebunden werden!

##### 19.4.2.6.4 Exkurs: Fahrstraßendatei

Obwohl ab sofort die Verwaltung der Fahrstraßen grafisch möglich ist, sei hier - wie beim Gleisbild auch - nocheinmal in einem Exkurs auf den Aufbau der Fahrstraßen-Datei eingegangen. Wer mit dem grafischen Tool arbeitet, wird im allgemeinen kein Bedürfnis haben, sich dies hier durchzulesen. Falls aber mal die eine oder andere Frage auftaucht, sollte man schonmal eine Blick in dieses Kapitel werfen.

Zunächst einmal ein Auszug aus einer Fahrstraßen-Datei zum besseren Verständnis:

    Routes total #: 10
    Last modified: Thu Oct 18 22:05:25 2001
    version: SpDrS60 for Linux v0.4.0
    - - - - - - - - - - - - - - - - - - - - - - - -  - - - - - - - - - - - - -
    ROUTE - - - - - - - -> 1
    name: Gleis 1 -> rechts
    to signal: 0012
    switch x to y: 0010 0
    switch x to y: 0009 0
    from signal: 0008 1
    release port: 3
    activate port: -1
    active by loco: -1
    type: 0
    level: -1
    data1:
    data2:
    data3:
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ROUTE - - - - - - - -> 2
    name: Gleis 1 -> links
    to signal: 0001
    switch x to y: 0003 0
    switch x to y: 0004 0
    switch x to y: 0014 0
    from signal: 0006 1
    release port: 0
    activate port: -1
    active by loco: -1
    type: 0
    level: -1
    data1:
    data2:
    data3:
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - -  - - - - - - - -

Der Header der Datei gibt an, wieviele Fahrstraßen in der Datei gespeichert sind. Das Datum des letzten Updates sowie die Programmversion sind hier ebenfalls angegeben.

Man erkennt verschiedene, durch Striche getrennte Blöcke. Jeder Block steht für eine Fahrstraße. Jeder Block ist in zwei Spalten aufgeteilt. In der linken stehen die Schlüsselwörter, damit man als Nutzer die nachfolgenden Werte in der rechten Spalte auch interpretieren kann (leider hier durch den HTML-Code nicht richtig sichtbar). Hier ist es wichtig, das die Datenspalte in der Spalte 17 beginnt, da beim Lesen der Datei alle Zeichen der Spalten 1 bis 16 gnadenlos abgeschnitten werden.

In der ersten Zeile eines Blockes steht die Nummer der Straße, die wie bei den Elementen nur informationshalber hier steht. In dieser Version muss man also nicht auf eine fortlaufende Nummerierung achten. In der folgenden Zeile steht der Name der Straße, wie er in der Fahrstraßen-Übersicht angezeigt wird. Es folgt die Adresse des Zielsignals. Eine Eingabe der führenden Nullen ist nicht nötig, wird aber empfohlen, da dann die Lesbarkeit besser ist.

Liegen zwischen Start- und Zielsignal andere Antriebe, die noch geschaltet werden müssen, dann stehen die Daten hierzu in den folgenden Zeilen. Die Anzahl dieser Zeilen ist prinzipiell unbegrenzt (es können aber nur max. 15 in der grafischen Verwaltung angezeigt werden). In der Datenspalte steht hier nicht nur die Adresse des Antriebs, sondern auch der Wert der Richtung, den dieser Antrieb in der Fahrstraße einnehmen muss. Grundsätzlich möglich sind hier die Werte 0, 1, 2 oder 3, aber nicht jeder Wert ist bei jedem Antrieb verfügbar und sinnvoll. Welche Werte hier eingegeben werden können, kann aus der Übersichtstabelle der schaltbaren Symbole entnommen werden. Wichtig ist ein Leerzeichen zwischen der Adresse und dem Richtungswert.

Als vorletzte Zeile erkennt man noch das Startsignal, ebenfalls mit Adresse und Richtungswert. Der Unterschied zum Zielsignal erklärt sich dadurch, dass das Startsignal auch nocht geschaltet werden muss, das Zielsignal jedoch nicht.

Die letzte Zeile ist wichtig, sofern man Rückmeldekontakte einsetzt, die Fahrstraßen automatisch auflösen sollen. Der »Release port« gibt an, welcher Kontakt die aufgeführte Straße zurücknimmt. Die Portnummern sind fortlaufend nummeriert, also bei S88-Rückmeldern von 1 bis 1984. Damit erspart man sich eine weitere Variable zum Auswerten, und wenn später einmal die grafische Eingabe der Fahrstraßen möglich sein wird, dann fällt dies auch nicht mehr so ins Gewicht. Den einzutragenden Wert bei der ausschließlichen Verwendung von 16-Port-Modulen ermittle man durch die Formel:

„ 16 x Modulnummer + Anschlussnummer des Kontakts an diesem Modul - 1 “

ACHTUNG:

Einige Elemente besitzen zwei Adressen, z.B. die Doppelten Kreuzungsweichen. Da kommt man vielleicht ins Grübeln, welche Adresse in der Datenspalte auftauchen muss. Einfache und unumstößliche Antwort:

„ IMMER die erste Adresse. “

Hat ein Element mehr als einen Antrieb, dann wird bei einem Richtungswert >= 2 automatisch unter Hilfe der 2. Adresse der richtige Befehl berechnet, d.h. diese Adresse ist nur für das Programm interessant, nicht für den Anwender im Falle der Straßen-Programmierung.

Eine Fahrstraßen-Datei kann man also ganz einfach selber mit jedem beliebigen Editor erstellen, wenn die oben genannten Bedingungen eingehalten werden. Man speichere dann die Datei unter dem selben Namen wie die Gleisbild-Datei, allerdings mit der Endung `.dat.rts`. Zu einem normalen Gleisbild gehören daher immer zwei Dateien:

`bahnhof_klein.dat.gbs`

  enthält die Informationen für den grafischen Aufbau der Anlage mit den Elementen

`bahnhof_klein.dat.rts`

  enthält die Informationen zu den Fahrstraßen

#### 19.4.2.7 Rückmeldung

Mit der Tastenkombination Strg-M Öffnet man das Übersichtfenster für die Rückmeldebusse. Mit der neuen Version des Daemon (> 1.2 ) werden jetzt 4 Rückmeldebusse à 31 Module mit 16 Ports unterstützt (wenn man nach der Original Märklin-Portzahl geht). Dementsprechend aufgebaut ist auch das sich öffnende Fenster:

Abbildung 19.67. Übersichtfenster für Rückmeldebusse

Man erkennt je nach gewählter Art der Anzeige im Programm-Optionen-Menü (siehe nächstes Kapitel Abschnitt Daten) pro Seite entweder max. 31 Module a 16 Ports (z.B. Märklin-Module) oder max. 62 Module a 8 Ports (z.B. EDiTS-Module). Es erscheinen je Bus jedoch nur so viele Module, wie in dem Programm-Optionen-Menü unter dem Reiter »Daten« für jeden Bus einzeln anzuzeigen sind. Damit soll die Übersichtlichkeit besser gewahrt bleiben. Alle aktiven, d.h. geschlossenen Kontakte an den Moduln sind in dieser Übersicht mit einem roten Quadrat gekennzeichnet. Man erkennt jetzt neu unter der fortlaufenden Dekoder-Nummerierung eine blaue Zahl. Dies stellt die dekodierte Lokdekoder-Adresse dar, wenn dieser RM-Dekoder ein Adress-Dekoder ist. Da zum jetzigen Zeitpunkt das Programm aber nicht wissen kann, welcher Dekoder ein solcher ist, werden (noch) alle Dekoder mit der blauen Zahl angezeigt. Man muss sich leider noch selber merken, welcher Dekoder ein Adress-Dekoder ist. Bei allen anderen Dekodern ändert sich die blaue Zahl auch, macht aber hier keinen Sinn.

Apropos Sinn: Sinn macht diese Dekoder-Identifizierung auch nur, wenn man die Adresse nicht bloß anzeigt, sondern darüber auch noch eine automatische Steuerung legt. Im diesem Fall könnte das eine automatische Fahrstraßenschaltung je nach Loktyp sein [Dieselloks da lang, E-Loks über die Hauptstrecke]. Noch genialer wird es aber in dem Fall, wenn darüber automatisch ein Kommando zum Abbremsen der Lok kommt, z.B. vor Signalen [bedingt natürlich den Einsatz eines solchen Dekoders vor jedem Signal]. Das wäre dann der Zeitpunkt, wo ich mein altes DTCL bzw. den Nachfolger dtcl-tiny (Loksteuerprogramm unter Linux) wieder auskramen muss, um es mit SpDrS60 in eine komplette Steuersoftware zu integrieren ... Träume.

Alle weiteren Moduln der anderen Busse erreicht man ganz einfach durch einen Klick auf die Vorwärts-/Rückwärtspfeile neben der Busnummern-Anzeige. Welche Art der Anzeige (8 oder 16 Ports/Modul) man wählt, ist eigentlich egal. Natürlich ist die Übersicht besser, wenn man die passende Anzeige wählt. Was aber macht man, wenn man gemischte Module einsetzt, was durchaus möglich ist? Dieser Anzeigenfall ist noch nicht vorgesehen. Evtl. wird es in Zukunft einmal eine weitere `*.dat.fbm`-Datei geben, wo Daten zu den Moduln vorgehalten werden (Art des Moduls, Klartext-Beschreibung zu jedem Kontakt). Bis dahin sollte bei einem gemischten Betrieb der gemeinsame Nenner benutzt werden, und das sind meines Erachtens die 8-Port-Moduln. Die Funktionstüchtigkeit ist dadurch in keinster Weise beeinträchtigt.

Eine Verwendung der i8255 Multiport-PC-Karte wird nicht unterstützt.

#### 19.4.2.8 Anschlüsse

##### 19.4.2.8.1 Weichen

Die folgende kleine Übersicht listet die wichtigsten Hersteller mit ihren Produkten auf.

Tabelle 19.9. Weichenübersicht Märklin

Artikel | Antriebe | Bemerkung
--- | --- | ---
2270 Dreiwegweiche 5214 Dreiwegweiche 24630 Dreiwegweiche | 2 | erster Abzweig links (Adresse 1) zweiter Abzweig rechts (Adresse 2)
2275 Doppelkreuzungsweiche 15° | 2 | Antriebe können diagonal versetzt links oder rechts angebracht werden; in einer der beiden Positionen ergibt sich damit ein genau entgegengesetztes Schaltverhalten
2260 Doppelkreuzungsweiche 22° | 1 | Antrieb links oder rechts ansteckbar; in einer der beiden Positionen ergibt sich damit ein genau entgegengesetztes Schaltverhalten
5128 Doppelkreuzungsweiche 30° 5207 Doppelkreuzungsweiche 24° 24624 Doppelkreuzungsweiche 24° | 1 | fester Antrieb
2297 Entkoppler 5112 Entkoppler 24997 Entkoppler | 0,5 | Monostabil (Subtype 0 oder 1)

Tabelle 19.10. Weichenübersicht Roco Line

Artikel | Antriebe | Bemerkung
--- | --- | ---
42543 Dreiwegweiche (Bettung) 42454 Dreiwegweiche | 2 | erster Abzweig links (Adresse 1), zweiter Abzweig rechts (Adresse 2)
42594 DoppelKW 15° (Bettung) 42451 DoppelKW 15° | 2 |
42549 DoppelKW 10° (Bettung) 42496 DoppelKW 10° | 2 |
42546 Einfache KW 15° (Bettung) 42448 Einfache KW 15° | 2 |
42591 Einfache KW 10° (Bettung) 42493 Einfache KW 10° | 2 |
40292 Entkoppler Unterflur 42519 Entkoppler | 0,5 | monostabil (Subtype 0 oder 1)

Tabelle 19.11. Weichenübersicht Roco 2,5 mm

Artikel | Antriebe | Bemerkung
--- | --- | ---
42316 Dreiwegweiche | 2 | erster Abzweig links (Adresse 1), zweiter Abzweig rechts (Adresse 2)
42317 Doppelkreuzungsweiche | 2 |
42261 Entkoppler | 0,5 | Monostabil (Subtype 0 oder 1)

Tabelle 19.12. Weichenübersicht Fleischmann

Artikel | Antriebe | Bemerkung
--- | --- | ---
6158 Dreiwegweiche | 2 | erster Abzweig links (Adresse 1), zweiter Abzweig rechts (Adresse 2)
6166 DoppelKW links 6167 DoppelKW rechts | 1 |
6012 Entkoppler 6112 Entkoppler | 0,5 | monostabil (Subtype 0 oder 1)

Tabelle 19.13. Weichenübersicht Tillig

Artikel | Antriebe | Bemerkung
--- | --- | ---
82230 Dreiwegweiche | 2 | Antriebe wahlweise links oder rechts je abzweigendem Ast ansteckbar; dies widerspricht leider der z.Zt. programmierten Ausgabe der Kommandos, die auf 2 fest angebauten Antrieben beruht
82300 Doppelkreuzungsweiche | 2 | Im Gegensatz zu Märklin oder Roco sind beide Antriebe auf einer Seite anzubringen; dies widerspricht leider der z.Zt. programmierten Ausgabe der Kommandos, die auf 2 fest angebauten Antrieben beruht
85390 Doppelkreuzungsweiche | 2 | Antriebe sollten versetzt zueinander je 1 auf einer Seite angebracht werden; ansonsten Probleme mit der Adressierung
85395 Einfache Kreuzungsweiche | 2 | Antriebe sollten versetzt zueinander je 1 auf einer Seite angebracht werden; ansonsten Probleme mit der Adressierung

Die in den Tabellen aufgeführten Artikel-Nummern und Beschreibungen wurden nicht immer aus den aktuellsten Katalogen entnommen, so dass es unter Umständen zu Verständnisschwierigkeiten kommen kann.

Bei Kreuzungsweichen mit 2 Antrieben ist grundsätzlich im Eigenschaften-Fenster des Elements die Taste

Abbildung 19.68. Doppelkreuzungsweiche mit zwei Antrieben

für Kreuzungsweichen mit einem Antrieb grundsätzlich die Taste

Abbildung 19.69. Doppelkreuzungsweiche mit einem Antrieb

zu aktivieren. Bei Entkopplern mit motorischem Antrieb ist grundsätzlich im Eigenschaften-Fenster des Elements die Taste

Abbildung 19.70. Entkoppler mit motorischem Antrieb

für Entkoppler mit monostabilem (Einfachspulen-)Antrieb eine der beiden Tasten

Abbildung 19.71. Entkoppler mit monostabilem (Einfachspulen-)Antrieb

zu aktivieren.

##### 19.4.2.8.2 Signale

###### 19.4.2.8.2.1 Bis zu 3-begriffige Signale

Manchmal reicht ein Antrieb für ein Signal oder für eine Weiche nicht aus. Für ambitionierte Modellbahner gibt es halt mehr als nur Rot + Grün am Signal! Deswegen wurde in diesem Programm auf einfache Weise dafür Rechnung getragen, dass auch andere Signalbegriffe darstellbar sind (sofern man natürlich auch die entsprechenden Antriebe oder Elektroniken dafür hat). Im folgenden wird daher nochmal genauer auf die Anschlussvorschriften für Signale eingegangen.

ACHTUNG:

Es sei nochmal wiederholt: Ich habe keine Anlage zum Testen. Es kann daher sein, dass die unten gegeben Informationen genau falsch sind, sprich die Anschlüsse innerhalb einer Adresse (= einem Dekoderausgang) getauscht werden müssen.

Die folgende Tabelle gibt Aufschluss über das Anschlussschema bei den verschiedenen Signalmöglichkeiten. Ich gehe mal davon aus, dass dafür an einem Dekoder zwei nebeneinander liegende Ausgänge = zwei aufeinander folgende Adressen benutzt werden und das keinerlei Häkchen zum Tauschen der Ausgänge gesetzt wurde:

Die Tabelle oben gilt vor allem für Lichtsignale. Bei Formsignalen gibt es keine Kombination Haupt- und Schutzsignal, es besteht immer aus zwei eigenständigen Signalen. Dies wurde im Modell auch so gehalten. Die Anschlussart ist daher etwas anders. Das Hauptsignal mit seinen 1 oder 2 Antrieben wird wie beschrieben in die entsprechenden Dekoder-Ausgänge gesteckt. Der Antrieb des Sh-Signals wird für die Stellung Sh 1 in die beschriebene Buchse für Sh1 gesteckt. Der Anschluss für Sh 0 dagegen wird zusammen mit dem Anschluss für Hp 0 (bzw. Hp 00) gesteckt, damit das Schutzsignal auf jeden Fall zurückgestellt werden kann.

###### 19.4.2.8.2.2 Mehrbegriffige Signale

Von Modellbahnherstellern kann man im allgemeinen nur Signale kaufen, die maximal drei Begriffe anzeigen können, wenn sie mit herkömmlichen Bedienelementen wie Schaltpult oder Dekoder angesteuert werden. Bei Formsignalen ist dies irrelevant, da das Form-Hauptsignal sowieso nur drei Begriffe aufweist. Das Form-Rangiersignal (= Richtungswert 3) ist ein eigenständiges Signal mit eigenem Antrieb.

Bei Lichtsignalen jedoch gibt es zwar 4-begriffige zu kaufen (Busch, Viessmann etc.), jedoch ist dabei keine Ansteuerlogik inbegriffen. Man kann aber auch nicht einfach die LEDs der Signale an die Dekoder anschließen, sie würden kaputt gehen, außerdem habe ich nicht genug Ausgänge bei zwei Adressen, um z.B. die sechs LEDs eines Ausfahrsignals anzusteuern.

Dazu sind also meistens Ansteuerelektroniken notwendig. Diese sind z.B. erhältlich bei:

Völkner Elektronik,

Best.-Nr. 013-860-222 (Bausatz, Preis 19,95 DM),

Best.-Nr. 013-861-122 (Fertigmodul, Preis 34,95 DM)

Viessmann Modellbahntechnik,

Artikel-Nr. 5210, Preis ca. 75 DM

Der Dekoder von Littfinski (Littfinski Datentechnik, Best.-Nr. LS-DEC, Preis ab 64 DM) kann damit nicht angesteuert werden, da er eine andere Ausgangsbelegung als in der obigen Tabelle angegeben besitzt. Eine Realisierung wird erst in einer weiteren Version passieren.

##### 19.4.2.8.3 Drehscheibe & Co.

###### 19.4.2.8.3.1 Allgemeine Bedienung

Wie schon im Symbol-Kapitel kurz angesprochen, gibt es eine spezielle digitale Drehscheibe von Märklin mit eigenem Dekoder, der nur auf das Motorola-Format hört. Die Grundeinstellung geschieht im Eigenschaften-Fenster zum Drehscheibensymbol. Hier hört es aber noch nicht auf, denn um eine einwandfreie Funktion zu bekommen, muss man dem Dekoder auch noch sagen, an welchen der möglichen maximal 24 Gleisanschluss-Stutzen überhaupt ein Gleisstück dransteckt, die Schwenkbühne also halten kann.

Die Steuerung der Drehscheibe geschieht mit dem Drehscheiben-Commander (Turntable-Commander), der bei einem einfachen Links-Klick auf das Drehscheiben-Element wie folgt

Abbildung 19.72. Drehscheibensteuerung

V.l.n.r. erkennt man in der oberen Reihe folgende Bedienelemente:

- Anfahren des nächst-möglichen Gleisstutzens entgegen dem Uhrzeigersinn

- Wählen der Drehrichtung entgegen Uhrzeigersinn für 180°-Drehung oder Gehe-Zu-Gleis-Funktion

- Liste mit Nummern der anzufahrenden Gleispaare

- Wählen der Drehrichtung mit Uhrzeigersinn für 180°-Drehung oder Gehe-Zu-Gleis-Funktion

- Anfahren des nächstmöglichen Gleisstutzens mit dem Uhrzeigersinn

- Startknopf zum Anfahren des Gleises, welches im Nummernfeld gewählt wurde

- Drehen der Bühne um 180°

- Anhalten der Drehbewegung der Bühne

- Programmierung der Schiebebühne

Darunter folgen zwei Zahlenreihen der Werte 1-24, welche die maximal möglichen Gleisstutzen repräsentieren. Alle programmierten Gleisstutzen sind fett und grün unterlegt dargestellt. Die aktuelle Position der Bühne ist gelb unterlegt. Da durch die Bühne immer zwei gegenüberliegende Stutzen verbunden werden (sofern auf beiden Seiten einer ist), ist die Angabe einer aktuellen Position erstmal verwirrend. Man sollte sich aber an ein bestimmtes Ende halten, z.B. das, auf dem das Wärterhäuschen näher ist. Wenn man dies beim Programmieren berücksichtigt, kann man später auch einwandfrei die Position zur Anzeige zuordnen. Idealerweise beginnt man z.B. bei einem Ringlokschuppen mit der »1« beim Lokstand »1«. Der Button zum Schwenken der Bühne um 180° führt eventuell dazu, dass das aktuelle Gleis kein programmiertes Gleis ist. Dies hängt dann einfach mit der Lage des Bühnenreferenzendes zusammen und hat keinerlei Auswirkungen, d.h. beim nächsten Klick auf den Button »nächster Anschluss« fährt die Bühne mit dem Referenzende an den nächsten verfügbaren Stutzen.

Je nach gewählter Aktivität kann der eine oder andere Knopf dabei nicht verfügbar sein. Das Schwenken zum nächstmöglichen Stutzen sowie das 180°-Drehen brauchen keine besondere Erklärung. Zum Anfahren eines bestimmten Gleises wähle man zunächst die Nummer dessen aus und klicke dann auf den blauen Pfeil. Im Optionenmenü zum Programm kann man einstellen, ob die Drehrichtung der Bühne manuell gewählt werden muss oder ob das Programm die optimale, weil kürzeste Drehrichtung selber automatisch wählen soll. Ist erstgenannte Eigenschaft aktiv, dann kann man durch vorheriges Klicken auf den Links- oder Rechtspfeil die Drehrichtung der Bühne bestimmen. Es ist also so möglich, von Gleis 3 zu Gleis 4 über Gleis 2, 1, 24, 23, ... zu kommen. Beim automatischen Auswählen der Drehrichtung sind die Buttons mit den Drehpfeilen deaktiviert.

###### 19.4.2.8.3.2 Programmierung

Bevor man aber die Eigenschaften des Commanders benutzen kann, muss man dem Dekoder der Drehscheibe einmal am Anfang sagen, wo sich denn überhaupt Gleisstutzen befinden (eventuell auch nachträglich, wenn man die Drehscheibe erweitert). Beim Studieren der Original-Anleitung schwirrt einem aber schnell der Kopf, da man die Bedienung auf das Keyboard zugeschnitten hat und dort nunmal nur rote und grüne Tasten zur Verfügung standen. Am besten man schmeißt diese Anleitung in die Kiste zurück und benutzt diesen eingebauten komfortablen Programmer.

Klickt man auf das Schraubenschlüssel-Symbol, dann erweitert sich das Commander-Fenster und gibt die Programmiertasten frei. Die nächste Abbildung zeigt das erweiterte Fenster zum Programmieren der Drehscheibe, welches schon eine fortgeschrittene Programmierung anzeigt.

Abbildung 19.73. Programmierung der Drehscheibensteuerung

Die Programmierung kann jedoch nicht zu jedem beliebigem Zeitpunkt durchgeführt werden, sondern muss innerhalb von fünf Sekunden, nachdem Saft auf die Anlage gegeben wurde, gestartet worden sein. Diese Tatsache ist nicht auf meinem Mist gewachsen, sondern ist Vorgabe von Märklin. Wie geht man also vor?

- Man starte den Rechner mit dem DDL-Daemon sowie den SpDrS60-Client und lädt das Anlagen-Layout.

- Danach aktiviere man den Commander und öffne das Programmierfenster.

- Jetzt wird der Verstärker eingeschaltet (oder CentralUnit o.ä., was den Saft bereitstellt)

- Innerhalb von fünf Sekunden klicke man nun auf die Taste »Start programming«

Der Drehscheibendekoder befindet sich nun im Zustand, in dem er Programmierbefehle aufnehmen kann. Alle vorher programmierten Gleise, sichtbar durch Fettdruck und farbiger Unterlegung in der oberen Fensterhälfte, werden ausgeblendet. Mit den Pfeiltasten des Commanders (die einzigen Tasten, die überm Strich noch aktiv sind), fahre man jetzt die Schwenkbühne zu dem Gleis, welches die Nummer 1 werden soll (sind an beiden Enden Anschlüsse, muss man sich natürlich genauer merken, welches von beiden die 1 ist; am besten orientiere man sich an der Stellung des Bedienerhäuschens auf der Schwenkbühne). Ist die Position erreicht, klicke man auf »Save position #1«.

Jetzt heißt es, alle anderen vorhandenen Gleise in der Reihenfolge ihres Auftretens zu speichern. Dazu fährt man nacheinander im oder gegen den Uhrzeigersinn mit dem Referenzende der Bühne die Gleise an. Jedesmal nach Erreichen eines Gleises wird dessen Position durch Klicken des Tasters »Save pos. #x« gespeichert. Wurde eine Position schonmal gespeichert, dann erscheint als Tastentext »Pos. #x is saved!«. Wurden alle Gleise eingegeben, klicke man nur noch auf »Done« (ist die Drehscheibe voll belegt und alle 24 Positionen programmiert, beendet sich der Programmiermodus von selbst). Fertig! Das Commander-Fenster verkleinert sich, und die Zahlenreihen enthalten jetzt neu die soeben programmierten Gleise. Automatisch fährt dann die Bühne zur Position »1«, was man am sich bewegenden gelben Cursor erkennen kann. Die programmierten Gleise werden ebenfalls in der Gleisbild-Datei gespeichert und brauchen nicht jedesmal neu eingegeben zu werden (der Drehscheiben-Dekoder speichert die Positionen natürlich völlig unabhängig davon!)

###### 19.4.2.8.3.3 Anschluss-Schema

Für alle, die den Anschlussplan verlegt haben, kann man hier diesen nochmal einsehen. Er funktioniert NUR mit dem der Drehscheibe beiliegenden Spezialdekoder.

Abbildung 19.74. Drehscheibenbeschaltung aus dem Märklin Digital-Buch 0308

##### 19.4.2.8.4 Schiebebühne

Die Schiebebühne ist im Gegensatz zur digitalen Drehscheibe ein sehr einfaches Element. Es benötigt auch keinen speziellen Dekoder, stattdessen muss man die Schiebebühne, an einen völlig beliebigen Schaltdekoder anschließen.

Abbildung 19.75. Schiebebühnenbeschaltung aus dem Märklin Digital-Buch 0308

Hierbei sind die originalen Märklin-Bedienelemente aufgrund DDL natürlich nicht notwendig, sind aber zur Verdeutlichung der Anschlüsse mit in der Abbildung aufgenommen. Aus dem Bild erkennt man auch, dass die Schiebebühne zwei Dekoderadressen belegt, diese müssen für eine ausreichende Funktion im Eigenschaften-Fenster der Schiebebühne zunächst eingetragen werden.

Ein Links-Klick auf das Schiebebühnen-Element gibt den im folgenden gezeigten Commander.

Abbildung 19.76. Schiebebühnensteuerung

Hierbei kann man nur in die eine oder andere Richtung starten, am richtigen Gleis muss man selbsttätig stoppen. Auch hier werden einzelne Tasten aktiviert/deaktiviert je nach gewählter Aktivität.

##### 19.4.2.8.5 Gleichstrommotoren

Das Anschluss-Schema ist ähnlich dem der Schiebebühne, als Dekoder ist jeder beliebige Schaltdekoder zu verwenden:

Abbildung 19.77. Gleichstrommotorbeschaltung aus dem Märklin Digital-Buch 0308

Linksklickt man auf das Motorelement, erscheint folgender die in sichtbare Steuerung.

Abbildung 19.78. Gleichstrommotorsteuerung

Man wähle hier zwischen Links- und Rechtslauf oder Anhalten.

#### 19.4.2.9 FAQ

Was sind die Systemvoraussetzungen?

  Ich benutze einen AMD K6 200 MHz mit 64 MB RAM. Damit kann ich in zufriedenstellender Zeit die Quellcodes kompilieren. Außerdem lädt sich ein Gleisbild »Bahnhof groß« auch in aktzeptabler Zeit. Auch KDE läuft damit ausreichend. Da ich manchmal dennoch etwas mehr Power wünschte, komme ich daher zur Empfehlung, dass man unterhalb dieser genannten Daten wohl eher nicht zu diesem Programm greifen sollte (das ist kein absoluter Ausschluss, sondern lediglich eine Grenze aus praktischer Erfahrung).

Warum gibt es keine senkrechten Elemente?

  Das Aussehen dieses Programms lehnt sich sehr stark an das Vorbild an, wie es bei der Deutschen Bahn AG noch immer weit verbreitet ist. Dort ist es Usus, den Streckenverlauf waagerecht darzustellen (aus dem einfachen Grund: Ein Stellwerk bildet die vorbeilaufende Strecke ab, und die bildet nun mal keinen Kreis wie auf der Modellbahn), auch wenn sich Strecken teilen und diese z.B. in einem 90-Grad-Winkel zueinander verlaufen. So gibt es mehr Ordnung auf der Anzeigentafel, das Auge kann die Anzeigen besser und schneller erkennen.

Wird es dennoch eine Modellbahn-Anpassung durch senkrechte Elemente geben?

  Das kommt auf die weiteren Änderungen im Code an. Sollte sich da keine nennenswerten weiteren Widrigkeiten auftun, werde ich die senkrechten Elemente mit aufnehmen.

Wird es weitere sowie spezielle Elemente geben?

  Ja, ab der nächsten Version wird es voraussichtlich folgende Elemente geben:

  - Vorsignale

  - eventuell Märklin-Digitalkran

  - ins Gleisbild integrierte Bahnhofsuhr

  - senkrechte Elemente

Wie erfahre ich, ob es eine neue Version von »SpDrS60 for Linux« gibt?

  Am besten melde man sich über die Linux-Modellbahn-Seiten http://www.linux-modellbahn.de/ mit einem kurzen Formular bei mir. Alle angemeldeten User erhalten dann als erste eine Mitteilung, wenn eine neue Version vorliegt. Etwas später erfolgt die Mitteilung über die DDL-Mailingliste.

Warum zeigen Weichen auf der Anlage eine andere Stellung als im Programm?

  Das läßt sich konfigurieren. Man stecke dazu entweder die beiden Weichenanschlüsse am Dekoder um oder - wenn das nicht oder nur mühsam geht - benutze über die Elementeigenschaften die Option »xch conn«, damit werden die Anschlüsse elektronisch vertauscht.

Warum lassen sich meine mit zwei Antrieben versehenen Weichen nicht korrekt ansteuern?

  Dies liegt an einem Bug in Version 0.2, der in der neueren Version 0.2.1 beseitigt wurde. Bitte nur noch diese Version benutzen. Aber auch mit der neuen Version kann es zu Unstimmigkeiten kommen. Das liegt aber daran, dass das Anbringen von Weichenantrieben je nach Hersteller unterschiedlich ausfallen kann. Ich habe mich aber auf eine Art der Anbringung konzentriert (bei DKW/EKW diagonales Anbringen je ein Antrieb auf einer Seite, Dreiwegweichen erster Abzweig links, zweiter Abzweig rechts), so dass es zu Abweichungen kommen kann. Ich kann in der bereinigten Version 0.2.1 nicht alles berücksichtigen. Es wird ab der nächsten Version ein Tauschen der Anschlüsse möglich sein, so dass man dann alle Weichen aller Hersteller richtig herum ansteuern kann.

Warum stimmt die Gleisbesetztmeldung bei einfachen Kreuzungen manchmal nicht?

  Auch hier zeigen sich die DKWs mit nur einem Antrieb als die problematischeren Kandidaten für eine GBS-Programmierung. Für jedes Element ist nur ein Rückmeldekontakt einstellbar, obwohl hierfür eigentlich 2 passender wären. Aber dafür müsste ich extra noch die Datenstruktur für alle Elemente aufblasen, was nicht besonders ökonomisch ist. Bei besetztem Gleis nimmt daher das Element immer an, dass sich der Zug auf dem waagerechten Gleis bei Kreuzung links oder rechts oder auf dem links-diagonalen Gleis bei Hosenträgerkreuzugen befindet. In 50% der Fälle wird also das falsche Gleis angezeigt. Abhilfe: Bitte die LED-Anzeige für derartige Elemente ausschalten (Elementeigenschaften -> LEDs off).

Wieso funktioniert die Ansteuerung der digitalen Märklin-Drehscheibe nicht?

  Erst ab der Version 0.3.2 ist die Steuerung korrekt programmiert, bitte diese Version besorgen.

Das Programm startet nicht, ich bekomme Fehlermeldung »cannot find libstdc.2.so«

  Es fehlt die Laufzeitbibliothek »libstdc.2.so«, in der die elementaren C++-Funktionen abgelegt sind. Bitte nachinstallieren (bei SuSE 7.x das Paket lipgpp aus der Serie d).

Warum zeigen alle S88-Module in der Modulübersicht die »Adresse« der Loks an?

  Bisher gibt es noch keine S88-Resource-Datei. Erst wenn diese vorhanden ist, kann dem Programm dauerhaft mitgeteilt werden, bei welchem Modul es sich um ein Adressmodul handelt; und dann zeigt auch nur dieses Modul die Adresse an, keine Portstati mehr. Bis dahin der umgerechnete Dezimalwert der Ports. Man muss sich z.Zt. daher auch selber merken, welche Nummer das Adressmodul hat.

Warum werden manche Sachen in der Hilfe nicht dort beschrieben, wo man sie erwartet?

  Aufgrund der vielen neuen Funktionen im Programm ist die alte Struktur der Hilfedatei überfällig geworden. Dies ist mir in letzter Zeit im klarer geworden, das werde ich ebenfalls mit der neuen Version verbessern, da aufgrund der Implementierung der Fahrstraßeneingabe sowieso ein große Überarbeitung ansteht.

Wird es ein anderes Aussehen von spdrs60 geben, z.B. als elektronisches Stellwerk (ESTW)?

  Zunächst einmal ist dieses Programm geplant und ausgeführt auf der Basis des guten alten Drucktasten-Stellwerkes. Das macht optisch was her, und viele kennen es irgendwoher. Anders bei den elektronischen Dingern. Grundsätzlich könnte man nachdenken, ob man die Elemente in diesem Prog nicht nach modernerem Vorbild gestaltet. Aber mal ehrlich: es fehlt noch soviel an Bedienung an diesem Programm, da habe ich z.Zt. Überhaupt keinen Nerv, mich um andere Gleisbilder zu kümmern. Wenn wirklich mal alles fertig ist, kann man darüber nachdenken - aber momentan: No way!

Wieso werden Vorsignal nur einzeln, statt zusammen mit ihren Hauptsignalen angesteuert?

  Eigentlich hätte ich dies auch schon früher realisieren können. Aber ich wollte Vr erst dann erstellen, wenn auch die automatische Hauptsignalsteuerung mit dabei ist, die aber zu programmieren braucht Zeit, andere wichtigen Features gingen vor. So ist es auch jetzt, aber da die meisten großen Sachen jetzt fertig programmiert sind, wird es zu einer derartigen Realisierung nicht mehr lange dauern.

Kann ich mit spdrs60 auch originale serielle Interfaces (Märklin, Intellibox, Lenz ...) ansteuern?

  Nein, das ist auch nicht geplant. SpDrS60 soll ein reiner SRCP-Client bleiben. Mit der bald anstehenden Unterstützung der SRCP-Protokollversion 0.8 wird die Anbindung an den von Matthias Trute und anderen entwickelten SRCP-Server »srcpd« (http://srcpd.sourceforge.net/) die Ansteuerung dieser Hardware weitestgehend möglich sein.

Wann kommt SpDrS60 für Windows?

  Da SpDrS60 auf der Qt Bibliothek von Trolltech (http://www.trolltech.com/) basiert, ist eine Portierung auf dieses Betriebsystem prinzipiell möglich. Bisher hat sich allerdings kein Interessent gefunden, der diese Arbeit übernehmen will.

#### 19.4.2.10 Sonstiges

##### 19.4.2.10.1 Änderung von Programm-Optionen

Viele Eigenschaften des Programms können mittels eines Optionenmenüs eingestellt oder verändert werden. Dadurch ist es in gewissen Grenzen möglich, das Aussehen oder Verhalten auf die Benutzerwünsche abzustimmen. Das Optionenmenü erreicht man durch den Menüpunkt »Bearbeiten/Einstellungen« (Strg-P). Man erkennt im dann erscheinenden Fenster, dass die Optionen in die folgenden drei Bereiche geteilt sind.

###### 19.4.2.10.1.1 Gleisbild-Karteikarte

Abbildung 19.79. Gleisbild-Karteikarte

Am ersten Punkt kann man wählen, ob die Signale mit Begriff Hp 2 DB-konform in grün (wie Hp 1-Signale auch), oder für den Nutzer leichter zu unterscheiden eben in orange angezeigt werden. Man kann außerdem wählen, ob es zu den einzelnen Bedienelementen einen Quickhelp gibt und ob die aktuellen Daten jedes Elements als Quickhelp angezeigt werden sollen (letzteres nur im Fehlersuchfall zu empfehlen!)

Schaltbare Elemente haben ein Beschriftungsfeld, worin im Vorbild z.B. die Weichennummer (W001) oder die Signalbezeichnung (P1) unterkommt. Man entscheide sich hier zwischen der Darstellung dieser vorbildnahen Einträge (sofern sie im Textfeld der Elementeigenschaften eingetragen wurden) oder einfach der Dekoderadresse, an dem der Antrieb angeschlossen ist.

Die Zustände der Signale werden beim Beenden des Programms wie vorhanden gespeichert. Möchte man diesen Zustand genau wieder nach einem erneuten Laden erhalten, so wähle man »As saved in layout file«. Ist man sich aber nicht sicher, wie alle Signale zu stehen haben und möchte man sicher sein, dass beim Anlagenstart kein Crash wg. grüner Signale passiert, wähle man den anderen Punkt: alle Signal werden beim Laden auf Rot gestellt.

Legt man ein neues Gleisbild an, so entscheidet die folgende Zahl die defaultmäßig angegebene Zahl an Spalten für dieses neue Gleisbild, sie kann in dem kleinen Dialogfenster beim Neuerstellen selbstverständlich geändert werden.

In den nächsten zwei Einträgen wähle man das Programm zum Lesen der Online-Hilfe (Möglich sind: Firefox, Netscape, Opera und Konqueror) und zum hilfsweisen Editieren der Datendateien (möglich sind: kwrite, kedit und kword aus dem koffice-Paket) aus.

Als letztes folgt noch die Auswahl eines Gleisbilds, das automatisch beim Programmstart aufgerufen werden soll. Wenn man das genaue Verzeichnis nicht weiß, kann man über das Verzeichnisicon sich diese Datei aussuchen. Aktiviert man mit einem Haken den Autoloader, vergisst dann aber, einen Dateinamen anzugeben, so führt das beim Schließen der Optionen zu folgender Fehlermeldung:

Abbildung 19.80. Gleisbild-Fehlermeldung

###### 19.4.2.10.1.2 Daten-Karteikarte

Abbildung 19.81. Daten-Karteikarte

Im obersten Bereich kann man das Protokoll wählen, welches man standardmäßig bei den Elementeigenschaften eingeblendet haben will. Auch der entsprechende Dekoder ist hier voreinstellbar. Zweckmäßigerweise wählt man an beiden Punkten diejenigen Eigenschaften aus, die bei einem gemischten Betrieb am häufigsten vorkommt. Auch die Aktivierungszeit jedes einzelnen Ausgangs lässt sich hier voreinstellen (nachdem man am besten diesen Wert vorher durchschnittlich ermittelt hat).

Die Einstellungen für die Drehscheibe besagen, dass die Drehrichtung vom Programm automatisch ermittelt wird (kürzester Drehweg). Außerdem muss man angeben, wie lange eine komplette 360°-Drehung der Bühne dauert. Damit ist gewährleistet, dass die grafische Anzeige in etwa während des Drehvorgangs mit dem realen Stand der Bühne übereinstimmt. Wird keine Zeit eingeben, so erhält man beim Schließen der Optionen folgende Fehlermeldung (eine Eingabe ist immer nötig, auch wenn man gar keine Drehscheibe hat):

Abbildung 19.82. Fehlermeldung Drehscheibe

Autostart voltage sagt bei Aktivierung aus, dass automatisch Saft auf die Anlage nach dem Programmstart gegeben wird.

Damit man bei der Aktivierung von Fahrstraßen nicht dieselbe ad hoc aufleuchten sieht, sondern die Weichen nacheinander einlaufen, kann durch Anpassung der Zeit im Fahrstraßen delay die Zeit zwischen den Schaltvorgängen bei zwei Elementen innerhalb einer Fahrstraße beeinflusst werden.

Im unteren Bereich wählt man die Art der Rückmeldekontakte aus. Die Unterscheidung dient lediglich der genauen Anzeige, die eigentliche Funktionen wie Schalten von Fahrstraßen etc. ist davon nicht beeinflusst, wenn die Daten zu den einzelnen Kontakten in den Elementeigenschaften stimmig sind. Setzt man auf der Anlage s88-Module ein, dann kann man außerdem je anschließbaren Modulstrang die dort vorhandene Anzahl an Module eingeben. Dies erleichtert in der Modulübersicht das Auffinden der wichtigen Module. Sollte man aus Versehen einmal an allen Bussen keine Module zulassen, so meldet sich folgender Fehler:

Abbildung 19.83. Fehlermeldung Rückmeldung

Zu genaueren Informationen zur Beschaltung des S88-Busses an den SRCP-Server siehe den Link zu Martin Wolf auf den Linkseiten unter http://www.linux-modellbahn.de/.

###### 19.4.2.10.1.3 Interface-Karteikarte

Abbildung 19.84. Interface-Karteikarte

Diese Seite ist zugegebenermaßen noch recht leer und enthält nur zwei Eingabezeilen für den DDL-Servernamen und die Portnummer für die Verbindung dorthin. Alle anderen Felder sind noch ausgeschaltet, da sie für zukünftige Ansteuerungen reserviert sind. Denn denkbar ist, dass dieses Programm dereinst auchmal direkt Original-Interfaces mit Daten beschicken wird.

Bei fehlenden Eingaben im Bereich SRCP-Server erhält der User eine der folgenden Fehlermeldungen:

Abbildung 19.85. Fehlermeldung Hostname

Abbildung 19.86. Fehlermeldung Port

ACHTUNG: Eine Prüfung auf korrekte Eintragung einer IP-Adresse wurde hier verzichtet.

##### 19.4.2.10.2 Einfaches Keyboard

Durch Drücken der Tasten Strg-K bzw. Auswahl im Menü »Ansicht->Stellpult« erscheint ein einfaches Fenster zum Schalten von Antrieben:

Abbildung 19.87. Einfaches Keyboard

In der Zeile gebe man die Nummer des Antriebes ein und klicke dann auf der dem Ausgang entsprechenden farbigen Taste entsprechend dem Ausgangskontakt am Dekoder.

ACHTUNG: Es wird lediglich überprüft, ob die eingegebene Adresse im Bereich 1...4096 liegt. Desweiteren wird durch das Stellen eines Antriebes durch das Keyboard ein eventuell auch in einem Gleisbild vorhandener Antrieb mit gleicher Adresse NICHT gestellt. An dieser Stelle muss man sich keinerlei Gedanken darüber machen, ob der Antrieb auf das Motorola- oder DCC-Format hört. Es werden nämlich zwei Befehle hintereinander geschickt, die beide die gleiche Adresse, aber unterschiedliche Formate enthalten. So muss man sich nicht merken, zu welchem Format welche Nummer gehört. Durch die einfache Beschränkung des Adressbereiches kommt es dabei auch zum Aussenden von Motorola-Befehlen, die nicht umgesetzt werden können, der Server sollte aber im allgemeinen wissen, wie er damit umzugehen hat (verwerfen).

##### 19.4.2.10.3 Bekannte Programmfehler

Bisher gibt es die folgenden mir bekannten Fehler, die ich noch nicht beheben konnte:

- Liegt auf einer Fahrstraße eine Kreuzung, dann können über diese Kreuzung zwei Fahrstraßen aktiviert werden (von denen jedoch immer die zuletzt aktivierte die Kreuzung selbst grafisch routet). Es findet bei den Kreuzungen (die ja nicht schaltbar sind) keine Prüfung statt, ob sie schon durch andere Fahrstraßen benutzt werden. Eventuell muss dies bis auf weiteres durch Aktivieren von (Flankenschutz-) Weichen in der Umgebung der Kreuzung verhindert werden.

- Wird eine Fahrstraße aktiviert, die als Flankenschutzweiche eine Weiche enthält, die zum Aktivierungszeitpunkt bereits in einer anderen aktiven Fahrstraße enthalten ist, dann wird diese Flankenschutzweiche grafisch de-routed, d.h. die LED in der Weichenwurzel wird dadurch deaktiviert.

- Wenn man mit dem Schnelleditor ein Element über den Repeat-Modus einfügt, welches drehbar sein sollte, dann ist es nicht über den Kontext drehbar. Man sollte dann einmal auf das Element linksklicken und direkt danach Okay im Eigenschaften-Fenster, dann werden die entsprechenden Bits richtig gesetzt und es kann danach gedreht werden. Da man aber im Normalfall sowieso noch Rückmeldekontakte eintragen muss, wird diese Notwendigkeit kaum ins Gewicht fallen.

- Der Rückmeldemodul-Melder in den Element-Eigenschaften kann alle Module auswählbar machen, auch die, die laut Optionen eigentlich an einem Bus nicht vorhanden sind.

##### 19.4.2.10.4 Ausblick auf zukünftige Entwicklungen

Für den Frühsommer 2001 war die Aufnahme des DDL-Projektes mit den verschiedenen Teilprogrammen in die SuSE-Distribution vorgesehen. Leider habe ich bisher noch nichts weiteres davon gehört, in dem Release 7.3 war jedenfalls nichts enthalten. Mal sehen, was draus wird.

Dieses Programm stellt nur den Anfang eines leistungsfähigen Programms dar. Ich arbeite derweil schon mit Hochdruck an verbesserten Versionen, um der (zugegebenermaßen kommerziellen) Konkurrenz vorneweg zu sein. Das DDL-Projekt ist bisher das erste und einzige unter Linux lauffähige Projekt zur Steuerung der digitalen Modelleisenbahn. Ich hoffe, dass wir alle zusammen bald ein so leistungsfähiges Werkzeug zusammenkriegen, damit wir damit auch genug Leute erreichen. Vor allem der Kostenfaktor ist hier wohl entscheidend. Leider gibt es eine kommerzielle Anwendung, die ihr bisher auf Windows veröffentlichtes Steuerprogramm im Frühjahr 2002 auch auf Linux übertragen will.

Zur Zeit werden keinerlei Prognosen über die weitere Entwicklung abgegeben, da immer noch der Hausbau (Nacharbeiten im Innenausbau + Garten) noch Vorrang hat. Bisher habe ich immer die Termine angekündigt, aber nicht einhalten können.

Ich kann nur allen Usern versichern, dass ich sobald wie möglich die Arbeit versuche aufzunehmen.

Danach sind die wirklich wichtigsten und elementarsten Eigenschaften einer Gleisbildsteuerung realisiert, danach kann es an weitere kleinere Details gehen. Diese Angaben sind nicht verbindlich, man darf mich also nicht darauf festnageln, wann und wieso oder nicht oder warum etwas in einer Version kommt. Wenn diese Sachen alle realisiert sind und stabil laufen, wird also relativ bald (in ca. 1 bis 1 1/2 Jahren) eine Version 1.0 dieses Programms erscheinen können.

##### 19.4.2.10.5 Literatur

Als weiterführende Literatur zum Thema sei dem Interessierten folgendes Buch wärmstens empfohlen:

F. Hein, Sp Dr 60-Stellwerke bedienen, Teil A - im Regelbetrieb, Eisenbahn-Fachverlag, EUR 44,-, ISBN 3-9801093-0-5

### 19.4.3 j-man

`j-man` ist ein in Java geschriebenes Programm zur Steuerung von Lokomotiven und Magnetartikeln und Bestandteil des Paketes `DDL`. `j-man` bietet über ein Menü im Hauptfenster Zugriff auf alle weiteren Funktionen. Ein Context Menü ist über die rechte Maustaste zu erreichen.

Abbildung 19.88. Digitale Steuerung - j-man Hauptfenster

Über folgenden Dialog können weitere Lokomotiven hinzugefügt werden, neben einem Namen ist natürlich die Adresse des Decoders und der Typ festzulegen.

Abbildung 19.89. Digitale Steuerung - j-man Lok hinzufügen

Zur Steuerung steht neben dem Lok-Controler für einzelne Lokomotiven, auch der hier gezeigte Mehrfachcontroler zur Auswahl.

Abbildung 19.90. Digitale Steuerung - j-man Mehrfachcontroler

Zur Steuerung des Digital Krans „Goliath“ steht ein spezieller Dialog zur Verfügung.

Abbildung 19.91. Digitale Steuerung - j-man Goliath

`j-man` verfügt noch über einige weitere Funktionen, beispielsweise zum Schalten von Weichen und ganzen Fahrstraßen.

### 19.4.4 loco-panel

`loco-panel`, ebenfalls aus dem DDL Paket, dient zur Anzeige der von den Clients gesendeten Befehlen. Im Normalbetrieb werden Sie dieses Programm nicht benötigen, zur Fehlersuche kann es aber unter Umständen hilfreich sein.

Abbildung 19.92. Digitale Steuerung - loco-panel

### 19.4.5 monitor

Dieses Programm dient dem Test des Info- oder Feedbackports eines SRCP-Servers (srcpd, erddcd). Mit dem Kommando:

    % monitor localhost 12346

wird eine Verbindung zum Feedback-Port des `srcpd` hergestellt (bei Standardkonfiguration, sonst ggf. Parameter anpassen). Die Portnummer ist hierbei der Basisport des `srcpd` plus eins. Für den Infoport muß diese Portangabe nochmals um eins erhöht werden.

Anschließend schreibt das Programm alle vom `srcpd` eingehenden Meldungen auf den Bildschirm.Auf diese Art und Weise läßt sich die korrekte Rückmeldung durch den `srcpd` testen.

### 19.4.6 keyboard

Um einfach die Magnetartikel zu schalten, gibt es Keyboard. Um einen Automatikbetrieb zu realisieren gibt es Memory. Die gleichnamigen Produkte der Fa. Märklin sind zwar die geistigen Paten, aber haben nichts mit diesem Programm gemein. Das Programm benutzt TCL/TK und läuft auch unter Windows.

Benutzung: ganz unten wird die aktuelle Basisadresse angezeigt Diese kann mit den Buttons um jeweils 16 nach oben bzw. nach unten verändert werden. Zu dieser Basisadresse muß sodann die Zahl zwischen den Buttons hinzugezählt werden, um die Adresse des Dekoders zu ermitteln, die letztendlich angesprochen wird.

Solange eine der Tasten gedrückt wird, wird der entsprechende Ausgang des Dekoders aktiviert. Vorsicht ist also geboten, die Spulen können dabei durchbrennen.

### 19.4.7 recorder

Der Recorder ist für automatisierte Aktionen und für Makrofunktionen wie Weichenstraßensteuerung gedacht. Gegenwärtig kann man 24 Aktionen auf Knopfdruck abrufen und auch von einem Feedbackereignis triggern lassen. Daneben kann die Liste der SRCP Befehle editiert, gespeichert und auch wieder eingelesen werden. Einzig der Record-Modus funktioniert noch nicht. Auch gibt es noch Probleme mit der Parallelverarbeitung. Mehrere Trigger gleichzeitig funktionieren noch nicht.

Die Benutzung ist einfach: Programm starten und für die 24 „Tasten“ die jeweiligen Aktionen einlesen. Sodann kann mit einem Mausclick auf eine der Tasten die zugehörge Aktion ausgelöst werden. über die Radiobuttons ganz oben wird die Wirkung des Mausklicks verändert: Jetzt wird die Liste editierbar (ein Editfenster klappt auf), die Aktionsliste kann gespeichert und wieder eingelesen werden, oder eben das Programm lauscht am SRCP Server und speichert die Ereignisse so, daß sie wieder ausgeführt werden können. Momentan werden alle Befehle einer Taste auf einmal ausgeführt.

### 19.4.8 rcsh

rcsh ist eine Shell zur Steuerung von digitalen Modellbahnen. Eine einfach Skriptsprache erlaubt es Lokomotiven direkt aus der Shell heraus zu steuern. Hier ein einfaches Beispiel:

    l = locoN1(4)
    # Licht an, langsam aus Bahnhof herausfahren
    l.func(1)
    l.speed(1)
    l.send()
    # Immer noch langsam im Bahnhofsbereich
    l.speed(3)
    l.send()
    time.sleep(12)
    # Beschleunigen auf freier Strecke
    l.speed(7)
    l.send()
    time.sleep(20)
    # langsam in Bahnhof
    l.speed(2)
    l.send()
    time.sleep(5)
    # Kriechen und Stillstand an alter Startposition
    l.speed(1)
    l.send()
    time.sleep(3)
    l.speed(0)
    l.func(0)
    l.send()
    print l.speed()

In diesem Beispiel zur (zeitlichen) Steuerung eines Zuges aus dem Bahnhof auf die Strecke und wieder zurück in den Bahnhof, sind die wichtigsten Funktionen benutzt worden. Eine etwas ausführlichere Dokumentation finden Sie auf Ihrem Debian System in der Datei `/usr/share/doc/rcsh/README.Debian`.

### 19.4.9 rcman

rcman ist ein Client mit textueller Oberfläche zur Steuerung von Modellbahnen in Verbindung mit einem SRCP konformen Server. `rcman` orientiert sich an `j-man` aus dem DDL Projekt.

Abbildung 19.93. Digitale Steuerung - rcman

`rcman` ist eine in Python geschriebene Anwendung. `rcman` wird nicht direkt aufgerufen, es ist zunächste eine Skriptdatei zu erstellen. Diese importiert zunächst alle Funktionen von `rcman`, danach können mit einfachen Kommandos die einzelnen Lokomotiven definiert werden. Dem Paket liegt ein Beispiel (`rcmandemo.py`) im Verzeichnis `/usr/share/doc/rcman/examples/` bei.

Da `rcman` auch ohne grafische Benutzeroberfläche auskommt läßt sich `rcman` auch auf älteren Systemen gut einsetzen. Die Bedienung des Programmes kann über die Tastatur oder auch mit der Maus erfolgen. Wenn die Maus über ein Scrollrad verfügt, so kann damit die Geschwindigkeit der Lok gesteuert werden. `rcman` kann über eine Infrarot Fernbedienung gesteuert werden, hierzu muss das LIRC Paket installiert sein.

### 19.4.10 srcptt

HTML und HTTP bieten leider nur eingeschränkte Möglichkeiten zur Steuerung via Webbrowser. Die Interaktion zwischen der Benutzeroberfläche und dem System ist dabei leider nicht immer so zeitnah möglich wie es wünschenswert oder gar notwendig wäre. Trotzdem lassen sich mittels HTML, PHP oder auch Perl interessante Anwendungenerstellen. Das Paket `srcptt` legt die entsprechenden Dateien im Verzeichnis `/var/www/srcptt/` ab. Mittels eines beliebigen Webbrowsers sind diese nun im Netz (http://server.domain/srcptt/) oder auch lokal (http://localhost/srcptt/ erreichbar.

### 19.4.11 JoyCtrl

JoyCtrl benutzt den Joystick zur Steuerung der Loks unter Linux und ist eine Alternative/Ergänzung zu Maus- oder Tastatursteuerungen.

Als Hardware dient mir ein billiger analoger Joystick mit einigen Feuerknöpfen.

Für die Umrechnung der Knüppelbewegungen in Lokkommandos habe ich ein Kennlinienkonzept verwirklicht. Damit kann ich den Knüppelbewegungen unterschiedliche Lokaktionen zuordnen, je nach Situation. Ein jederzeitiges Umschalten ermöglicht, etwa im Bahnhofsbereich rangieren zu können und auf der freien Strecke entspannt die Lok laufen zu lassen.

### 19.4.12 dtcltiny

Ein weiterer Client ist mit dtcltiny von Markus Pfeiffer verfügbar, dieser Client basiert auf QT.

Auch dieses Paket wurde gegenüber dem urspünglichen Paket ein wenig angepasst, ein einfacher Aufruf von `dtcltiny` startet das Programm mit sinnvollen Parametern und versucht im Homeverzeichnis des Benutzers eine Konfigurationsdatei zu laden. Wenn Sie die Ursprungsversion benutzen möchten, so finden Sie das Programm unter `/usr/bin/dtcltiny.bin`.

Abbildung 19.94. Digitale Steuerung - dtcltiny

Die Beispielkonfiguration unter `/usr/share/doc/dtcltiny/SAMPLE.dtcltiny.data` kann als `.dtcltiny.data`in das Homeverzeichnis kopiert werden (`cp /usr/share/doc/dtcltiny/SAMPLE.dtcltiny.data ~/.dtcltiny.data`). Diese Beispielkonfiguration enthält zwei Einträge, mit der die beiden Decoder der Dampflokomotive „Big Boy“ (Märklin Nummer 37990) gesteuert werden können.

Über das Menü „File“ können andere Konfigurationsdateien geladen oder aber die aktuelle Konfiguration gespeichert werden. Auch können über den Menüpunkt „New loco“ weitere Lokomotiven hinzugefügt werden.

Abbildung 19.95. Digitale Steuerung - dtcltiny New loco / General

Unter dem Menüpunkt „General“ kann neben dem Namen und einem Alias, also eine Bezeichnung für den ganzen Zug beispielsweise, noch der verwendete Decoder, das Protokoll sowie natürlich die Adresse des Decoders eingestellt werden.

Abbildung 19.96. Digitale Steuerung - dtcltiny New loco / Funcs

Im zweiten Abschnitt lassen sich die Funktionen des Decoders einstellen. Unter „Type“ finden sich die Funktionen wie „light“,„smoke“, „coupling“, „sound“ und „shunting“. Dies verändert das angezeigte Symbol für diese Funktion. In der Zeile „Activate as“ lässt sich das Verhalten der Schaltfläche als Taster oder Schalter einstellen.

Abbildung 19.97. Digitale Steuerung - dtcltiny New loco / Speeds

Der letzte Abschnitt dient zur Parametrisierung des Fahrverhaltens der Lok. Zunächst kann die maximale Geschwindigkeit der Lok in km/h oder mph eingestellt werden. Es lassen sich Werte für die Minimale und die Durchschnittliche Geschwindigkeit einstellen. Diese drei Werte werden im Hauptfenster durch drei Balken (grün, gelb, rot) dargestellt. Ein Mausklick auf einen der Balken beschleunigt sanft auf die eingestellte Geschwindigkeit dieses Bereiches. Natürlich läßt sich die Lok durch einen Klick in einen langsameren Bereich auch sanft abbremsen.

Im unteren Bereich lassen sich die Verzögerungen für das Anfahren und Bremsen einstellen.

### 19.4.13 pythonTrain

##### 1 Einführung

pythonTrain ist ein Programm zur Steuerungen von Digital betriebenen Modellbahnanlagen.

Entwickelt wurde pythonTrain auf einem Debian GNU/Linux System („woody“ mit einigen wenigen Paketen als „Backports“, beispielsweise Python 2.2). Weiterhin wurde der neueste `erddcd` aus dem DDL Projekt eingesetzt. Grundsätzlich sollte aber jeder SRCP Server in der Version 0.7 ausreichend sein. Als Hardware kam bei der Entwicklung ein Märklin Motorola System mit Trafo 6002 und Booster 6015 bzw. 6604 zum Einsatz.

Wenn Sie nicht das Debian Paket von pythonTrain einsetzen, so werfen Sie einen Blick in die Sourcen von pythonTrain. Dort sind eine Informationen den weiteren benötigten Paketen und Abhängigkeiten zu finden.

##### 2 Benötigte Software

Wenn Sie die Debian Pakete von pythonTrain einsetzen, so müssen Sie sich eigentlich um garnichts weiter kümmern... Der folgende Eintrag in der Datei `/etc/apt/sources.list` sollte zunächst erstellt werden:

    deb http://www.openoffice.de/linux/debian/ sarge main

Der Installation mittels `apt-get update ; apt-get install pythontrain` steht dann nichts mehr im Wege.

Grundsätzlich baut pythonTrain auf die Funktionen aus dem Paket rcsh von Dr. Peter Griebel auf. Das Paket rcsh bietet einige sehr nützliche Funktionen die sich sehr leicht in eigene Python Programme einbinden lassen, davon macht auch pythonTrain regen Gebrauch. Weiterhin werden einige nützliche Python Erweiterungen eingesetzt. python-gtk für die grafische Benutzeroberfläche, python-optik für die Kommandozeileoptionen, python-glade2 um bei der Erstellung der Oberfläche nicht zu viel tippen zu müssen und sicher noch einige weitere....

Ein SRCP Server ist nicht in den Paketabhängigkeiten festgelegt, dieser könnte ja auch auf einem anderen Server laufen. Soll dieser auch auf dem lokalen System laufen, so muss dieser gezielt installiert werden.

##### 3 pythonTrain

Nach der Installation der benötigten Pakete kann das Programm aus dem Debian Menü „Apps“ - „Tools“ - „pythonTrain“ gestartet werden. Ein Aufruf aus der Kommandozeile ist mittels `pythonTrain` natürlich auch möglich.

Die komplette Benutzeroberfläche verwendet GTK2 Komponenten, dies erlaubt dem Anwender beispielsweise die Schriftgröße der Anwendung direkt über die Gnome2 Konfigurationstools zu verändern. pythonTrain passt sich diesen Einstellungen an.

Abbildung 19.98. pythonTrain

###### 3.1 Kommandozeilenoptionen

pythonTrain unterstützt einige Kommandozeilenoptionen, mit dem Parameter `-h` erhalten Sie Informationen über die Möglichkeiten:

    fr@inari:~$ pythonTrain -h
    usage: pythonTrain [options] arg

    options:
      --version             show program's version number and exit
      -h, --help            show this help message and exit
      -fFILENAME, --file=FILENAME
                            read config from FILENAME
      -v, -d, --verbose, --debug
                            verbose/debug mode on
      -pPORT, --port=PORT   port number
      -sSERVER, --server=SERVER
                            servername

Die Option `--version` zeigt die Versionsnummer der aktuell installierten pythonTrain Version an:

    fr@inari:~$ pythonTrain --version
    pythonTrain 1.0

Mit der Option `-h` oder `--help` kann, wie schon beschrieben, eine kurze Hilfe zu den pythonTrain Kommandozeilen angezeigt werden.

Mittels der Option `-f` oder `--filename` kann eine alternative Konfigurationsdatei ausgewählt werden. Wird keine Konfigurationsdatei auf der Kommandozeile angegeben, so versucht pythonTrain zunächst im Heimatverzeichnis des Benutzers die Datei `.pythonTrain.xml` zu laden. Wird diese nicht gefunden, so wird die Datei `/usr/share/pythonTrain/pythonTrain.xml` geladen.

Mit der Option `-v` oder `-d` bzw. `--verbose` oder `--debug` werden zur Laufzeit des Programmes verschiedene Statusinformationen ausgegeben. Diese Modus dient lediglich der Fehlersuche.

pythonTrain versucht beim Programmstart einen SRCP Server auf dem System „localhost“ auf dem Port „12345“ zu erreichen. Dies sollte in den meisten Fällen die korrekte Einstellung sein. Mit den Optionen `-p` und `-s` bzw. `--port` und `--server` kann ein andere Server bzw. Port angeben werden.

###### 3.2 File - New

Dieser Menüeintrag startet einen neuen pythonTrain Prozess. So können mehrere Lokomotiven gleichzeitig gesteuert werden.

###### 3.3 File - Open

Über diesen Dialog kann eine neue Konfigurationsdatei ausgewählt werden.

###### 3.4 File - Quit

Beendet das Programm. Extrem nutzloser Menüeintrag...

###### 3.5 Programm - Tams LD-W-3

Öffnet ein neues Fenster in dem Parameter zur Programmierung der Tams Decoder LD-W-3 und LD-G-3 eingegeben werden können.

Abbildung 19.99. Tams Programmer

Über den Button „Programm“ wird der Programmiervorgang gestartet.

Zurück | Nach oben | Weiter
19.3 Hardware | Zum Anfang | 19.5 Weitere Informationen

© 1999-2006 Frank Ronneburg - Dieser Inhalt ist unter einem Creative Commons Namensnennung - Nicht-kommerziell - Keine Bearbeitung Lizenzvertrag lizenziert (creativecommons.org/licenses/by-nc-nd/2.0/de/legalcode).