Digitalprojekt

aus DerMoba, der Wissensdatenbank für Modellbahner
Version vom 24. Januar 2006, 13:28 Uhr von Guido Scholz (Diskussion | Beiträge) (JTrain Beschreibung aktualisiert)

Wechseln zu: Navigation, Suche

Einleitung

Am DER_MOBA Digitalprojekt arbeiten derzeit viele Entwickler, die sich über die Newsgroup de.rec.modelle.bahn koordinieren. Ziel ist die Schaffung eines skalierbaren - d.h. an die jeweiligen Anforderungen anpassbaren - Digitalsystems zur Modellbahnsteuerung. Einzelne Komponenten dieses Systems können ausgetauscht werden, falls sich die Anforderungen ändern. Dies erfordert, daß zwischen den Komponenten eine lose Koppelung besteht. Diese Koppelung wird durch das Kommunikationsprotokoll SRCP erreicht. Die Kommunikation zwischen den einzelnen Komponenten erfolgt mit herkömmlicher Internet-Technik.

Ein funktionsfähiges Digitalsystem des DER_MOBA Digitalprojekts besteht aus mindestens zwei Programmen: Einem SRCP-Server und einem SRCP-Client. Der Server stellt die eigentliche Schnittstelle zur Anlage dar und kommuniziert direkt mit einem Interface oder - im Falle eines DigitalDirekt-Systems - mit den Boostern. Der Client kommuniziert mit Hilfe von SRCP nur mit dem Server und stellt i.d.R. ein Steuerungs- oder Bedienprogramm dar.

Obwohl sehr viele, der derzeit verfügbaren Programme, die man dem DER_MOBA Digitalprojekt zuordnen kann, für das Betriebssystem Linux entwickelt wurden, ist das DER_MOBA Digitalprojekt grundsätzlich unabhängig von einem PC-Betriebssystem. Einige Programme laufen bereits jetzt auch unter anderen Betriebssystemen, andere können mit wenig Aufwand portiert werden.

Das DER_MOBA Digitalprojekt wird dezentral durchgeführt. Informationen zu den einzelnen Programmen werden überlichweise vom jeweiligen Author über dessen WWW-Seite angeboten. Diese Seite ist deshalb im wesentlichen eine Link-Liste, die einen Überblick über die verfügbare Soft- und Hardware bietet.

Simple Railroad Command Protocol (SRCP)

  • Protokollspezifikation SRCP<br\>Die aktuelleste Protokollspezifikation von SRCP: [HTML][PDF]<br\>SRCP 0.8.x ist inkompatibel zu früheren SRCP-Versionen. Bereits vorhandene Software für SRCP 0.7.x wird im Laufe der Zeit auf SRCP 0.8.x umgestellt.


Natürlich ist es wünschenswert, daß sich SRCP auch über die Grenzen des DER_MOBA Digitalprojekts verbreitet. Deshalb ist auch der Einsatz von SRCP in kommerziellen Produkten erlaubt. Allerdings sind folgende Bedingungen einzuhalten:

  1. Sowohl in der Software, wie auch in der zugehörigen Dokumentation wird auf die SRCP-Entwicklergruppe und diese Internetseite verwiesen.
  2. Es findet keine eigenmächtige Erweiterung von SRCP statt. Stattdessen werden Erweiterungen mit der SRCP Entwicklergruppe diskutiert und offiziell in SRCP integriert bzw. verworfen.
  3. Bei kommerziellem Erfolg des jeweiligen Produktes würden wir es gerne sehen, wenn sich die Entwickler über eine Spende zur Unterstützung von DER_MOBA Gedanken machen ;-).

SRCP-Server

Aktiv gepflegte

Diese SRCP Server werden aktiv weiterentwickelt. Wer sie einsetzt, hat einen einsatzbereiten und leistungsfähigen Server und kann bei jeglichen Problemen und Herausforderungen auf Hilfe und Unterstützung setzen.

  • DDW Server - DigitalDirekt-Server für Windows.
    Digitalbetrieb ohne Zentraleinheit und Computerinterface.
    Kontakt: Michael Gräfe
    Weitere Infos zu diesem Programm und die Möglichkeit die Software zu beziehen, gibt es auf den WWW-Seiten des Autors.
  • erddcd - DigitalDirekt-Server für Linux
    Digitalbetrieb ohne Zentraleinheit und Computerinterface.
    Kontakt: Torsten Vogt
    Neu: Version xmas-2005 mit Unterstützung für Linux Kernel 2.6 released!
    Weitere Infos zu diesem Programm und die Möglichkeit die Software zu beziehen, gibt es auf den Seiten des DDL-Projektes.
  • TrackONE SRCP-Server - SRCP-Server für Windows und die Intellibox.
    Wird benötigt, um SRCP-Clients mit der Intellibox zu betreiben.
    Kontakt: Michael Reukauff
    Weitere Infos zu diesem Programm und die Möglichkeit die Software zu beziehen, gibt es auf den WWW-Seiten des Autors.
  • srcpd - SRCP-Server für Linux/FreeBSD
    Kann eingesetzt werden, um mit SRCP-Clients Anlagen mit Intellibox, Märklin Interface 6051, Lenz LI100, Booster direkt am seriellen Port (RS232), Littfinski HSI-S88, S88-Module am Parallelport und/oder Zimo MX1 zu steuern. Weitere Module für seltener vorkommende Schnittstellen (CAN-Bus, I2C) sind schon realisiert. Es können auch mehrere Geräte gleichzeitig (z.B. zwei Intelliboxen) eingesetzt werden.
    Kontakt: srcpd-devel@lists.sourceforge.net
    Weitere Infos zu diesem Programm und die Möglichkeit die Software zu beziehen, gibt es auf den Projekt-Seiten bei SourceForge.

Einsetzbar aber nicht mehr weiterentwickelt

Diese SRCP Server funktionieren, der oder die Autoren halten sie für "gut genug" und wollen zumindest derzeit nichts weiter verändern.

  • zur Zeit sind keine Projekte mit diesem Status vorhanden!

Technologiestudien

Diese SRCP Server sind entstanden um Funktionen nicht nur am grünen Tisch testen zu können. Sie können auch als Anregung für Weiterentwicklungen dienen.

  • jsrcpd - Referenzimplementierung von SRCP 0.8.x Dieses Programm ist eine erste Implementierung von SRCP 0.8.x ohne weitere Funktionalität. Derzeit ist es nicht für den Einsatz in der Modellbahnpraxis geeignet. Es dient in erster Linie den Entwicklern, die noch vorhandenen Fehler und Schwächen von SRCP 0.8.x zu erkennen und zu beheben. Es ist auch als Hilfe für die Entwicklung von SRCP 0.8.x Clients gedacht. Wer einen einsatzfähigen SRCP-Server sucht, sollte sich die folgenden Produkte ansehen
    Kontakt: Olaf Schlachter
    Weitere Infos zu diesem Programm und die Möglichkeit die Software zu beziehen, gibt es auf den Seiten des Autors.

SRCP-Clients

  • J-Man - manuelle Steuerung von Lokomotiven und Magnetartikel mit grafischer Oberfläche.
  • loco-panel - Monitor zur Überwachung aller aktiven Loks.
  • uhl-programmer - Programmieren von Uhlenbrock-Dekodern
  • nmra-programmer - Programmieren von NMRA-DCC-Dekodern
  • phpTrainCtrl für SRCP 0.8 (alpha) - u.a. phpTamsProgrammer
    Kontakt: Torsten Vogt
    Weitere Infos zu diesen Programmen und die Möglichkeit die Software zu beziehen, gibt es auf den Seiten des DDL-Projektes.
  • dtcltiny - manuelle Steuerung von Lokomotiven mit besonders kompakter und übersichtlicher Bedienoberfläche.
    Kontakt: Markus Pfeiffer
    Weitere Infos zu diesem Programm und die Möglichkeit die Software zu beziehen, gibt es auf den Seiten den WWW-Seiten des Autors. Außerdem existiert eine von Guido Scholz weiterentwickelte Version dieses Programms.
  • SpDrS60 - grafisches Gleisbildstellpult nach Bundesbahnvorbild mit vorbildgerechter Fahrstraßensicherungslogik.
    Kontakt: Stefan Preis oder Guido Scholz
    Weitere Infos zu diesem Programm und die Möglichkeit die Software zu beziehen, gibt es auf den veralteten WWW-Seiten von Stefan Preis sowie der aktuellen Projektseite des Programms.
  • M6051emu - Emulation des Märklin Interfaces 6051 für erddcd.
    Wird benötigt, wenn Nicht-SRCP-Clients (z.B. Railroad&Co) mit erddcd betrieben werden sollen.
    Kontakt: Dieter Schaefer
    Weitere Infos zu diesem Programm und die Möglichkeit die Software zu beziehen, gibt es auf den Seiten des DDL-Projektes.
  • rcsh und rcman - Programmiersprache (Railroad Command Shell) und textuelle Bedienoberfläche (rcman)
    Kontakt: Dr. Peer Griebel
    Weitere Infos zu diesen Programmen und die Möglichkeit die Software zu beziehen, gibt es auf den WWW-Seiten des Autors.
  • Programmbibliothken für TCL/Tk und Python - Sammlung nützlicher Routinen und Prozesse für den Selbstprogrammierer: Client-Seiten des srcpd
  • SRCP Recorder - Zeichnet SRCP-Befehle einer laufenden Session auf und spielt sie später wieder ab.
    Kontakt: Matthias Trute
    Weitere Infos zu diesen Programmen und die Möglichkeit die Software zu beziehen, gibt es auf den WWW-Seiten des Autors.
  • SRCP Tester - SRCP-Befehle mit einem Web-Server und PHP generieren.
    Kontakt: Martin Wolf
    Weitere Infos zu diesen Programmen und die Möglichkeit die Software zu beziehen, gibt es auf den WWW-Seiten des Autors.
  • Gplan - Gleispläne erstellen und Magnetartikel steuern (für Windows und Linux).
    Kontakt: Michael Gräfe
    Weitere Infos zu diesem Programm und die Möglichkeit die Software zu beziehen, gibt es auf den WWW-Seiten des Autors.
  • TrackONE SRCP-Keyboard, Gleisplan-Editor und Steuersoftware (für Windows)
    Kontakt: Michael Reukauff
    Weitere Infos zu diesen Programmen und die Möglichkeit die Software zu beziehen, gibt es auf den WWW-Seiten des Autors.
  • JTrain - In Java geschriebener grafischer SRCP-Client zur Steuerung von Lokomotiven und Schaltdekodern mit grafischem Stellpult (für Windows und Linux). Die ursprünglich von Werner Kunkel betreute Original-Internetseite (www.jtrain.de) dieses Programms existiert nicht mehr. Es bestehen noch eine von Guido Scholz weiterentwickelte Version dieses Programms sowie eine darauf aufbauende, von Ingo Bruell betreute Projektseite.
  • Java DCC Network Client (ab Version 2.1) - SRCP-Client zur Steuerung einer Gartenbahn mit einem Sharp Zaurus PDA mit einem WLAN
    Kontakt: Helge Karoska
    Java-SRCP-Client für den PDA Zaurus unter Linux. Das Programms wurde entwickelt zur Steuerung von Loks, Weichen und Zubehör einer Gartenbahn mit einem WLAN. Es kann aber auch universell eingesetzt werden.
    Weitere Infos zu diesem Programm und die Möglichkeit die Software zu beziehen, gibt es auf den WWW-Seiten des Autors.
  • LD-X-Programmer - Programm zur Programmierung von Dekodern der Firma Tams Elektronik (für Windows)
    Kontakt: Michael Geramb
    SRCP-Client (SRCP 0.7.3) für Windows zur Programmierung von Tams-Dekodern.
    Weitere Infos zu diesem Programm und die Möglichkeit die Software zu beziehen, gibt es auf den WWW-Seiten des Autors.
  • TRAINer - Fahrstrassensteuerung, Lokomotiv-Bibliothek, Automatik-Betrieb (für Windows)
    Kontakt: Peter Keintzel
    SRCP-Client für Windows zur Anlagensteuerung.
    Weitere Infos zu diesem Programm und die Möglichkeit die Software zu beziehen, gibt es auf den WWW-Seiten des Autors.
  • SRCP-Pakete für verschiedene Linux-Distributionen - Guido Scholz hat einige der hier gelisteten Linux-Programme weiterentwickelt und diese in einfach zu installierende Pakete (SuSE, Fedora, Debian) verpackt.
    Kontakt: Guido Scholz
    Weitere Infos zu diesem Angebot und die Möglichkeit die Software zu beziehen, gibt es auf den WWW-Seiten des Autors (hier Linux User Group Burghausen).
  • Traindrive - SRCP-Client zum Steuern von Lokomotiven (Linux- und Windows-Version vorhanden)
    Kontakt: Fritz Ganter
    SCRP-Client für Linux und Windows
    Weitere Infos zu diesem Programm und die Möglichkeit die Software zu beziehen, gibt es auf den WWW-Seiten des Autors.
  • RocRail - Programm zum steuern von Lokomotiven und Gleisbildstellpult (Linux- und Windows-Version vorhanden)
    Kontakt: Rob Versluis
    SCRP-Client für Linux und Windows
    Weitere Infos zu diesem Programm und die Möglichkeit die Software zu beziehen, gibt es auf den WWW-Seiten des Autors.
  • MOBA-Package - Hilfsprogramme für die Entwicklung von SRCP-Clients und -Servern (Windows-Version)
    Kontakt: Roman Lauer
    SRCP-Tools für Windows
    Weitere Infos zu diesem Programm und die Möglichkeit die Software zu beziehen, gibt es auf den WWW-Seiten des Autors.
  • EnjoyTheTime - SRCP-Client zum Steuern von Lokomotiven (Windows-Version)
    Kontakt: Michael Geramb
    SRCP-Client für Windows
    Weitere Infos zu diesem Programm und die Möglichkeit die Software zu beziehen, gibt es auf den WWW-Seiten des Autors.
  • Railroad Express - SRCP-Client zum Steuern von Modellbahnanlagen (Windows-Version)
    Kontakt: Fred Stevens
    SRCP-Client für Windows
    Weitere Infos zu diesem Programm und die Möglichkeit die Software zu beziehen, gibt es auf den WWW-Seiten des Autors.
  • dras/Kdigirail - SRCP-Client zum Steuern von Modellbahnanlagen (Linux-Version)
    Kontakt: Frank Schmischke
    SRCP-Client für Linux
    Weitere Infos zu diesem Programm und die Möglichkeit die Software zu beziehen, gibt es auf den WWW-Seiten des Autors.

Hardware

Im Rahmens des DDL-Projektes wurde eine Technik entwickelt, mit der ein PC einfach an die Hardware der Modellbahnanlage angeschlossen werden kann. Prinzipiell benötigt man hierfür zwei Informationskanäle, die jedoch auch einzeln betrieben werden können:

  • Ein Kanal zum Senden von Steuerbefehlen an die Anlage
  • Ein Kanal zum Empfang von Rückmeldungen von der Anlage

Das Senden von Befehlen läuft über die serielle Schnittstelle, die im einfachsten Fall über zwei Kabel elektrisch mit einem Booster verbunden ist. Programmtechnisch wird die serielle Schnittstelle hierbei als Signalgenerator genutzt.

Zum Empfang von Rückmeldungen der Anlage benötigt man ein S88-Bus-System, das über Kabelverbindungen und eine 5 V-Spannungsversorgung an die parallele Schnittstelle angeschlossen wird.

Ein übersichtliche Zusammenstellung der für diese Anbindungen notwendigen elektischen Verbindungen gibt es von Holger Seider: http://home.snafu.de/mgrafe/Anleitung_Server.htm

Common Railroad Configuration Files (CRCF)

Ein Entwurf für ein Dateinformat, das eine zentrale Serverkonfiguration beschreibt, stammt von Edbert van Eimeren und ist zur Diskusssion in der Newsgroup de.rec.modelle.bahn freigegeben.