Hallo,
nachdem ein Software-Engineering-Projekt der
FH-Trier mit dem Thema
"Digitale-Modelleisenbahnsteuerung" im
Sommersemester 2001
den Grundstock für
eine Reihe von weiteren "Eisenbahn-Projekten"
gelegt hat,
die teilweise noch laufen, gibt es inzwischen erste
brauchbare
"Zwischenergebnisse" (Prototypen):
Unter anderem wurde ein SRCP 0.8.1 Server in Java
entwickelt, der
derzeit allerdings "nur" die Ansteuerung und
Auswertung von 1 .. n
S88-High-Speed-Interfaces (LDT)
ermöglicht.
Zudem ist ein SRCP 0.8.0 Server in C++
entwickelt worden
(für Windows), der bis dato allerdings nur das
neue
Märklin-Motorola-Format beherrscht ...
Zuguterletzt wurde ein "Multi-Server /
Multi-Protokoll"-Client
in Java entwickelt, der sich mit einer beliebigen
Anzahl
von SRCP-Servern (0.7.3 & 0.8.0 & 0.8.1)
verbinden kann
und derzeit neben einer kompakten Loksteuerung
einen
umfangreichen Gleisplaneditor zur Verfügung
stellt.
Geplant sind neben der Ansteuerung von
Spezialdekodern
(Drehscheibe, Digitalkran) sowie der Realisierung
einer
Scriptsprache zur Automatisierung, eine
automatische
Zugverfolgung, Fahrstrassen- und
Blockstellenbetrieb,
Live-Videostreaming aus der Lok
(Lokführer-Perspektive)
und von der Anlage (Vogelperspektive), ein
Web-Interface zur Steuerung
(mit Live-Videobildern) , sowie eine Web-Seite mit der entwickelten Software,
den dazugehörigen Dokumentationen, wichtigen Links (zum
DDL-Projekt) etc ...
(derzeit arbeiten noch insgesammt 9 Personen
an der Umsetzung dieser Ziele ...)
Am heutigen Tag wurde dieser Client, in
Kombination
mit den beiden Servern (einen zur Steuerung, einen
zur
Rückmeldung) erfolgreich auf dem
Industrieseminar
der FH-Trier präsentiert.
Bis unser richtiger Web-Auftritt fertig
ist, gibt es hier ein paar Bilder
der Client-Software (die Server haben keine GUI...)
:
Und hier den Programm- / Quellcode des Java-Clients
(Achtung: bis dato nicht getestet unter Linux und
auch nicht
getestet mit DDL oder DDW sowie dem
SRCP-Protokoll 0.7.3 ...
aber vielleicht könnt ihr ja ... ;-)
)
(Für alle Windows-Nutzer mit installierter JVM
genügt ein Doppelklick
auf die BATCH Datei "startClient.bat" um den Client
zu starten ...)
Anmerkung:
Der Code ist sicher noch lange nicht perfekt und es
gibt sicher noch VIEL Verbesserungs-
und Erweiterungspotential, aber vielleicht hat ja
auch jemand von euch
Lust daran mitzuentwickeln ... es ist ja
schließlich Freeware !
Kurzanleitung:
1.) Im Reiter "SRCP-Server" einen neuen SRCP-Server
einrichten (Klick auf New):
- "Server-Name" und
"Server-Type" beliebig
- alles andere selbstklärend
...
2.) Im Reiter "Settings" die notwendigen Protokolle
definieren
- einfach alle Felder ausfüllen
und auf "Add" klicken
- ID ist das Protokollkurzel
(String) der an den Server geschickt wird
- Die Decoder-Liste ist derzeit
ohne Funktion, es muss aber min. eines existieren ... (ist halt ein
Prototyp)
3.) Nun kann man nach Belieben neue Loks und/oder
Gleispläne einrichten
- im Loco-Editor müssen auf dem
Reiter "General" alle Felder bis auf den "Icon-Path" ausgefüllt
werden. "Reverse
direction" und "Engage lock if possible" sind noch ohne Funktion
...
- im Loco-Editor kann man auf
dem Reiter "Funcs" die Funktionen aktivieren und benennen
- und im Reiter "Speeds" die
Geschwindigkeiten einstellen (allerdings geht auch hier noch nicht
alles)
- der Reiter "Programming" ist
noch ohne Funktion
- der Gleisplaneditor erklärt
sich fast von alleine (hoffentlich)
- um die einzelnen Elemente zu
konfigurieren einfach mit einem "Rechts-Klick" anklicken ...
- Gleispläne, Loks, etc...
werden immer automatisch gespeichert (sind beim erneuten
Programmstart wieder
da). Gleispläne lassen sich zusätzlich exportieren und importieren
....
(serialisierte
Objekte)
- um einen erstellten Glesiplan
auch nutzen zu können, den Editor verlassen und in
der
Gleisplanliste den gewünschten Eintrag einfach doppelt anklicken
oder
markieren und
auf "Show" klicken ...
- ein Klick auf Weichen /
Signale / etc. schaltet diese, falls richtig konfiguriert ...
- ein "Rechtsklick" auf ein
Weichen oder Signalelement öffnet die Detailansicht zu diesem
Element, die sich
zum Schalten ebenfalls anklicken lässt ....
So, das sollte fürs erste
reichen .... (Das ausführliche und verständliche Benutzerhandbuch ist noch in
Arbeit ... ;-))
Wer sich vor evtl. Bugs
und/oder unverständlichen Fehlermeldungen nicht fürchtet,
der darf sich den Client gerne
genauer ansehen und ausprobieren ;-)
Viel Spass beim hoffentlich
erfolgreichen Testen ...
Sebastian Lang
|