• Hallo TT-Modellbahner, schön, dass du zu uns gefunden hast.
    Um alle Funktionen nutzen zu können, empfehlen wir dir, dich anzumelden. Denn vieles, was das Board zu bieten hat, ist ausschließlich angemeldeten Nutzern vorbehalten. Du benötigst nur eine gültige E-Mail-Adresse und schon kannst du dich registrieren.
    Deine Mailadresse wird für nichts Anderes verwendet als zur Kommunikation zwischen uns.
    Die Crew des TT-Boardes

Rechnersteuerung ohne teure Zentraleinheit - Teil 2 - DDW/DDL-Hardware

Epoche VI

Foriker
Beiträge
160
Ort
Berlin
Hallo,

wie man dem vorigen Thread entnehmen konnte, habe ich mich für DDW/DDL entschieden.
Hier zunächst eine Definition von DDL und DDW:

DDL = Digital Direct for Linux
Link http://www.vogt-it.com/OpenSource/DDL





Wortlaut von der DDL-Seite:
"Multiprotokoll-Controler und Steuerungssoftware für digitale Modelleisenbahnen
Digitale Modellbahnsteuerung ohne spezielle Hardware der Modellbahnhersteller

- Digital fahren und schalten, d.h. Lok- und Schaltdekoder können verwendet werden
- Multiprotokollfähig, d.h. Parallelbetrieb von Märklin-Digital und NMRA-DCC (Lenz, Roco, Digitrax, Zimo, ...) im gleichen Digitalstromkreis
- Direkte Ansteuerung der 27 Fahrstufen bei neueren Märklin-Dekodern (60901/60902/60904)
- Unterstützung erweiterter Möglichkeiten von Drittanbietern im System Märklin. Z.B.: 256 Lokadressen, 28 Fahrstufen
- Unterstützung der empfohlenen Standards im System NMRA-DCC.
(14, 28 und 128 Fahrstufen, 10366 Lokadressen, 4 Zusatzfunktionen)
- Unterstützung von Rückmeldemoduln (s88-Module und kompatible Selbstbauten)
- 4 s88-Busse (d.h. 124 s88-Module, 1984 Rückmeldekontakte) möglich
- Unterstützung eines Programmiergleises
- Komfortable Programmierung von NMRA-DCC- und Uhlenbrock-Dekodern.
- Netzwerkfähig, d.h. flexibel erweiterbar
- open source, d.h. frei verfügbar und von jedermann bei Bedarf erweiterbar
- kompatibel zum Simple Railroad Command Protocol (SRCP)"




DDW = Digital Direct for Windows
Link http://home.snafu.de/mgrafe/





Wortlaut von der DDW-Seite:
"Digital Direct für Windows ist ein Programm, mit dem es möglich ist Modelleisenbahnen ohne besonderes Interface direkt mit einem PC unter Windows zu betreiben. Es generiert die notwendigen Informationen für den Betrieb von digital gesteuerten Lokomotiven und Magnetartikeln und gibt diese auf der seriellen Schnittstelle aus. Es ist daher lediglich ein Verstärker (Booster) zusätzlich notwendig, der an die serielle Schnittstelle angeschlossen wird. DDW ist die Portierung von DDL für Windows.

Die Programmteile für die Generierung der Signale und deren Verwaltung sind nach Anpassungen aus dem erddcd Daemon, der von Torsten Vogt für Linux entwickelt wurde, übernommen worden. Ohne diese enorme Entwicklungsarbeit und die von ihm entwickelte Konzeption wäre DDW nicht denkbar. DDW arbeitet - wie DDL - mit dem SRCP-Protokoll (Version 0.73 oder 0.80) und kann mit beliebigen Clients betrieben werden."



Und jetzt kommen Informationen zur benötigten Hardware:

  1. Trafo

    Mein Trafo:
    Bild
    Link: http://www.conrad.de
    Um den Booster mit Strom zu versorgen, wird ein handelsüblicher Trafo benötigt.
    Mein Trafo ist z.B. ein Conrad-Trafo mit folgenden Daten:
    18V AC, 52 VA, 2,9 A, Conrad-Nr. 212728, Kosten: 25,95 €


  2. Booster

    Mein Booster:
    Bilder
    Link: http://www.tams-online.de
    Booster gibt es von den Modellbahnherstellern zu kaufen oder auch als Selbstbau-Bausätze.
    Mein Booster ist z.B. ein Conrad bzw. Tams Booster B-2 mit folgenden Daten:
    18V AC, 3 A
    Conrad-Nr. 217351 Fertig-Baustein, Kosten: 64,95 € oder
    Conrad-Nr. 214013 Bausatz, Kosten: 49,95 €

    Die Beschreibungen für den Anschluss anderer Booster sind für folgende Booster verfügbar:
    - Märklin Delta Control 6604
    - Märklin Digital Booster 6015, 6017
    - EDITS Booster
    - Conrad Booster 212075 (aktuell nicht mehr verfügbar)
    - Lenz Booster LV100/LV101
    - Roco Booster 10761 (siehe TRAINer Online-Doku)
    Wenn man einen hier nicht erwähnten Booster hat, müsste man mit dem Hersteller sprechen, ob er eine entsprechende Anschluss-Beschreibung erstellen kann.


  3. Adapterkabel COM-Booster

    Mein Adapterkabel (serielle Schnittstelle an Tams-Booster B-2):
    Bilder
    Schaltplan
    Link: http://www.tams-online.de
    Link: http://www.vogt-it.com/OpenSource/DDL/index.php3?connections
    Die Beschreibung für den Anschluss des Tams-Booster B-2 an die serielle Schnittstelle habe ich auf der FAQ-Seite der Tams-Homepage gefunden. Damit hat es auf Anhieb funktioniert. Die zuerst von mir festgestellten Verzögerungen kann man nicht durch eine andere Schaltung lösen, sondern nur durch einen schnelleren Rechner (Verzögerungen bei Pentium 166, schnelle Reaktion bei AMD 2 GHz). Wahrscheinlich spielt der FIFO-Chip der seriellen Schnittstelle auch eine Rolle. Wenn man für einen älteren Rechner eine aktuelle Schnittstellenkarte holt, könnte man auch schon schnellere Reaktionen erhalten.

    Hier alle Anschlussbeschreibungen:
    - Conrad/Tams-Booster 217351/214013
    - Märklin Delta Control 6604
    - Märklin Digital Booster 6015, 6017
    - EDITS Booster
    - Conrad Booster 212075 (aktuell nicht mehr verfügbar)
    - Lenz Booster LV100/LV101
    - Roco Booster 10761 (siehe TRAINer Online-Doku)

    Kosten: ca. 0,50 €


  4. Programmiergleis

    Mein Programmiergleis:
    Bilder
    Schaltplan
    Es handelt sich um eine Schaltung zur Erkennung von Dekoder-Programmierrückmeldungen und einem Adapterkabel COM-Programmiergleis, wobei die Schaltung an den Booster und das Gleis angeschlossen wird.
    Die Software zur Dekoderprogrammierung (siehe Teil 3) kommt auch ohne Programmiergleis aus, sofern der Dekoder auch zur Programmierung am Hauptgleis vorgesehen ist und nicht aussteigt. Wenn man jedoch eine Rückmeldung über den Erfolg/Misserfolg der Dekoder-Programmierung haben will, so benötigt man ein "Programmiergleis" (Schaltung für Decoder-Programmierrückmeldungserkennung).
    In der Software Railyprog z.B. bedeuten die angezeigten Rückmeldungen folgendes (siehe auch Teil 3):
    ##++ WRITE fehlgeschlagen Meldung vom DDW
    ##** VERIFYfehlgeschlagen Meldung vom DDW
    ++++ WRITE OK Meldung vom DDW
    **** VERIFY OK Meldung vom DDW
    ??++ WRITE STATUS dem DDW unbekannt
    ??** VERIFY STATUS dem DDW unbekannt

    Dadurch konnte ich meine Schaltung durch Veränderung des Kondensators dazu bringen, dass irgendwann der Write und Verify erfolgreich war.

    Kosten: ca. 1,00 €


  5. Adapterkabel LPT-S88-Baustein

    Mein Adapterkabel (parallele Schnittstelle an S88-Baustein):
    Bilder
    Schaltplan für Trafo
    Schaltplan für PC-Netzteil
    Für die Stromversorgung des S88-Bausteins gibt es die folgenden beiden Alternativen:
    - über einen Stromstecker (eines alten 5 1/4-Zoll-Laufwerks oder einer Festplatte), der an das PC-Netzteil angeschlossen wird.
    - mit entsprechender Zusatzschaltung aus einem 18V AC Netzteil

    Bei mir liegt die Spannung an den entsprechenden Pins des S88-Bausteins an. Dass meine S88-Rückmeldung trotzdem nicht funktioniert, liegt wohl an dem (defekten) Selbstbau-S88-Baustein. Einen gekauften S88-Baustein sollte man wohl problemlos anschließen können.

    Kosten: ca. 0,50 €


  6. Selbstbau-Fahrregler oder Joystick (optional)

    Mein Selbstbau-Fahrregler:
    Bilder
    Schaltplan
    Bei manchen SRCP-Clients kann man zur Lok-Steuerung normale Joysticks benutzen oder den gezeigten Selbstbau-Fahrregler nehmen. Bei mir hatte der Selbstbau-Regler für Gplan leider nicht den gewünschten Effekt.

    Kosten: ca. 2,50 €


  7. Selbstbau-S88-Rückmeldebaustein (nur Zusatzinfo)

    Mein S88-Baustein:
    Bild
    Schaltplan
    Ein Selbstbau ist natürlich keine Voraussetzung für DDW/DDL. Man kann genauso gut auch einen gekauften S88-Baustein nehmen. Ein Selbstbau ist kostengünstiger aber auch aufwendiger. Bei meinem Aufbau ist jedoch irgendeine Komponente leider defekt (beim ersten Test hat es scheinbar kurz funktioniert, jetzt reagiert nur noch Rückmelder 7 manchmal unmotiviert, d.h. ohne dass ich ihn ausgelöst hätte).

    Kosten: ca. 2,50 €




Fazit:
Die Hardware für DDW/DDL ist mit geringem Kostenaufwand machbar (keine teure Zentraleinheit) und funktioniert bei einem aktuellen Rechner auch ohne Verzögerungen.
- Für die reine Steuerung (auch Dekoderprogrammierung ohne Rückmeldung des Programmiererfolgs):
nur Trafo, Booster, Adapterkabel COM-Booster
- Für die reine Dekoderprogrammierung mit Rückmeldung des Programmiererfolgs:
nur Trafo, Booster, Programmiergleis (Schaltung mit Anschlusskabel COM-Programmiergleis)
- zusätzlich für die S88-Rückmeldung:
Adapterkabel LPT-S88 (mit PC-Stromstecker oder einer Schaltung für Anschluss an Trafo), S88-Baustein


Bauteil-Listen zu den gezeigten Schaltplänen mit Reichelt-Bestellnummern sind bei mir auf Anfrage erhältlich. Die Schaltpläne sind aber nicht von mir.


------------------------------
Lebenslauf dieses Beitrags:
erstellt: 02.04.04
Stand: 06.04.04
Fortschritt Teil 2: 100 % (fertig)
Edits:
Zuletzt bearbeitet von Epoche VI, 02.4.04 um 13:10. Grund: Bilder und Schaltpläne eingefügt (zu 1. und 2.)
Zuletzt bearbeitet von Epoche VI, 02.4.04 um 14:11. Grund: Bilder und Schaltpläne eingefügt (zu 3., 4., 5. und 7.)
Zuletzt bearbeitet von Epoche VI, 02.4.04 um 22:22. Grund: Bild und Schaltplan (zu 6) sowie Kosten eingefügt
Zuletzt bearbeitet von Epoche VI, 02.4.04 um 22:49. Grund: Bilder zu DDL/DDW-Konzept eingefügt
Zuletzt bearbeitet von Epoche VI, 06.4.04 um 23:21. Grund: Bilder der Adapterkabel COM-Booster, Roco Booster

Hier findet Ihr Teil 1 (Auswahl): http://www.tt-board.de/forum/showthread.php?t=2289
In Teil 3 berichte ich über die SRCP-Client-Erfahrungen: http://www.tt-board.de/forum/showthread.php?threadid=2334
 
Zuletzt bearbeitet:
ZU schön, aber ...

Das wollte ich Lokmausgeplagter Digitaleinsteiger denn nun doch nicht glauben: ein Adapterkabel reicht, um mit Hilfe meines ohnehin vorhanden Roco 10761-Verstärker und einiger Freeware endlich das zu programmieren wozu der Lokmauskram zu doof ist ...
Das Kabel war schnell gebaut, die Software am Laufen. RAILYprog programmierte auch irgendwas aber den Decoder interessierte es nicht. GPlan erzeugte dann einen DCC-Dauerdatenstrom, der aber etwas seltsam flackerte. OK, vielleicht liegts daran, dass ich einen spannungsreduzierten Trafo verwende, und schloß den originalen von ROCO an. Das Licht flackerte immer noch, aber nach zwei Sekunden setzte der achtbeinige Käfer im 10761 nächst den Anschlußbuchsen das Selbstzerstörungsprogramm und ich darf vorerst wieder analog fahren :heul:

Nun bin ich erst mal herb ernüchtert. Das soll nun keineswegs heißen, dass alles Beschriebene mit Vorsicht zu genießen ist, aber den Roco-Verstärker zu himmeln war erst mal gaanz einfach ...

Kabel etc. habe ich alles kontrolliert, auch stat. Entladungen o.ä. kommen nicht als Fehler in Betracht. Bin reichlich ratlos.
 
Hallo Pfriemler,

ooops, das ist natürlich nicht so gut. Aber ich habe mir auch noch einen Roco-Verstärker 10761 (mit Roco-Trafo) geholt, um es zu probieren (hatte schon den Tams/Conrad Booster B-2). Ich habe auch schonmal Roco und Tams Booster DDW-Ströme gemeinsam aufs Gleis gejagt - hatte zwar nicht den gewünschten Erfolg, aber es ist nichts kaputt gegangen.

Die Railyprog-Programmierung funktioniert auch auf dem Hauptgleis sehr gut. Wenn man die Schaltung für das Programmiergleis bastelt, bekommt man nur ein OK oder einen Fehler. Man kann aber keine Werte auslesen. Auf jeden Fall hat es aber der Dekoder angenommen.

Der DCC-Strom, der seltsam flackert ist von der Software abhängig. Beim DDW-Server mit Gplan oder Railyplan möglicherweise ein flackern, beim DCC-Testserver von Roman Lauer (digitaldirect component auf der DDW-Seite) jedoch kaum oder gar kein flackern. Die Linux-Software kann ich diesbezüglich noch nicht beurteilen. Wahrscheinlich liegt es aber an der Anzahl der Prozesse, die die Steuerungssoftware zu bewältigen hat.

Hmmm, das alles hilft die jetzt wahrscheinlich wenig. Nochmal Herzliches Beileid. Ich habe z.B. auch schon einen Dekoder abrauchen sehen. Echt schade um das Geld.
 
Danke für Mitgefühl. Den fraglichen IC habe ich inzwischen identifiziert, diesen oder einen bauähnlichen bekomme ich für ca. 1 Euro nach, das wird also schon wieder.

Das mit dem Flackern kann ich mir trotzdem nicht erklären: ich lasse den Gräfe-Server auf einem 2-GHz-Pentium unter XP laufen... werde trotzdem mal die Alternativen probieren. Erst muss der 10761 wieder laufen ...
 
An sich finde ich die Sache mit DDL/DDW ganz interessant. Dass aber der PC alle Arbeit übernehmen soll, finde ich trotzdem zweifelhaft, weil zu instabil. Wenn Du da mal ein bißchen die Platte defragmentierst oder 5 Applikationen gleichzeitig laufen läßt, dann hat auch ein aktuelle PC seine Probleme.

Aus meiner Sicht wäre es vielleicht sinnvoller (aber leider etwas teurer), einen externen, programmierbaren Rechner (Mini-Rechner wie vielleicht Conrads Examplar) die Signalgeneration übernehmen zu lassen, während der PC nur noch Befehle gibt (und dem externen Rechner ein neues Programm hochladen kann).

Tom
 
Hallo Tom,

das ist aufgrund der Netzwerkfähigkeit von DDW/DDL überhaupt kein Problem. Stell deinen Mini-Rechner, oder wie du ihn nennen magst, als DDW-Server hin und du kannst mit jedem beliebigen DDW- oder DDL-Client von anderen Rechnern aus die Befehle geben. Mit den Client-Rechnern dürftest du dann solche Aktionen wie Defragmentieren oder so problemlos hinbekommen, weil der Mini-Rechner (DDW-Server) die ganze Arbeit macht.
 
..., bei richtiger Konfiguration sollte selbst das ausführen am Arbeitsplatz kein Problem sein. Leider kenne ich DDW/DDL nicht genau genug, aber unter jedem modernen Betriebssystem lassen sich Prozesse mit höchster Priorität starten (Windows-Treiber-Prozesse (WDM) und Linux-Kernel-Prozesse), so dass die anderen Prozesse (auch Platte defragmentieren) immer dem DDL/DDW Prozess für die Signalerzeugung vorrang gewähren. Nur der Systemabsturz bringt die Bahn zum stehen ;) (das allerdings auch mit jedem anderen Hardware-System)

Ob das mit DDW/DDL auch funktioniert - ich meine Kernel/oder WDM-Prozesse?
 
Interessant wäre, was die absolut niedrigste Softwarevoraussetzung wäre. Unter http://www.mini-itx.com/ gibt es sehr kleine Mainboards, die man angeblich auch von USB-Sticks booten kann. Vielleicht kann man sowas als Server benutzen...

Tom
 
Hallo,

tsinger schrieb:
Interessant wäre, was die absolut niedrigste Softwarevoraussetzung wäre. Unter http://www.mini-itx.com/ gibt es sehr kleine Mainboards, die man angeblich auch von USB-Sticks booten kann. Vielleicht kann man sowas als Server benutzen...

Tom

ich habe das hier zwar irgendwo schon mal gepostet:
ich nutze eine C-Control II von Conrad für die Erzeugung des DCC Signals und für die Rückmeldungen. Das ganze ist zwar noch in den Kinderschuhen, aber bei mir funktioniert es recht gut.
Die C-Control II empfängt/sendet SRCP Daten seriell und hat 2 selbstgebaute Handregler.

Holgi
 
Hallo,

tsinger schrieb:
Klingt noch interessanter, weil man da nicht noch extra RAM und PC-Netzteil braucht...
Tom

für die C-Control benötigt man aber ebenfalls ein (unstabilisiertes) Netzteil sowie einige externe Bauteile wie z.B. EEprom Speicher, Logikbausteine, Ansteuerung für den Booster.
Also mehr was für Bastler.
Und mit etwas über 100 € für die CControl auch nicht ganz billig.

Holgi
 
Holgi schrieb:
Hallo,
für die C-Control benötigt man aber ebenfalls ein (unstabilisiertes) Netzteil
...
Und mit etwas über 100 € für die CControl auch nicht ganz billig.
Holgi

Wäre es nicht besser einen kleinen Linuxrechner zu nehmen?
Man könnte ja einen WLAN Router befreien:
http://www.nslu2-linux.org/wiki/Info/PhotosOfTheInternals

Da sollte das auch alles drauf laufen und man muss die Sourcen
nicht anpassen. O.E.d.A. bin ich aber eher für noch weniger Computer
im Leben, wie auf der Moba.
 
Hallo,


mich als Programmierer hat ja interessiert, wie ich das DCC Signal selbst erzeugen kann. Erste Erfolge hatte ich mit einem Z8 Einchip, mit der C-Control dann etwas komfortabler (A/D Wandler für Handregler, mehr Ausgänge, Hochsprache mit Compiler).
Die C-Control ist recht robust und relativ einfach zu programmieren und findet Ihren Platz unter der Moba. So kann ich auch ohne PC fahren, nur das Weichenstellen, da bin ich noch am basteln (evtl kleiner Touchscreen)
Aber so ein kleiner Linuxrechner wäre auch noch eine Alternative ...

Holgi
 
Holgi schrieb:
Hallo,


mich als Programmierer hat ja interessiert, wie ich das DCC Signal selbst erzeugen kann. Erste Erfolge hatte ich mit einem Z8 Einchip, mit der C-Control dann etwas komfortabler (A/D Wandler für Handregler, mehr Ausgänge, Hochsprache mit Compiler).
Die C-Control ist recht robust und relativ einfach zu programmieren und findet Ihren Platz unter der Moba. So kann ich auch ohne PC fahren, nur das Weichenstellen, da bin ich noch am basteln (evtl kleiner Touchscreen)
Aber so ein kleiner Linuxrechner wäre auch noch eine Alternative ...

Holgi


Hallo Holgi

Ich verwende die CC I und die CC II;
auf welcher C-Control hast du die DCC-Programme erstellt ?

Kannst du mir deinen Lösungs-Ansatz verraten ? / evtl. dein Programm-Coding zur Verfügung stellen ?

vielen Dank im Voraus

Günter

meine email-Adresse:

guenter.lintzmeyer@planet-interkom.de
 
Hallo,
guenter schrieb:
Hallo Holgi

Ich verwende die CC I und die CC II;
auf welcher C-Control hast du die DCC-Programme erstellt ?

Kannst du mir deinen Lösungs-Ansatz verraten ? / evtl. dein Programm-Coding zur Verfügung stellen ?

vielen Dank im Voraus

Günter

meine email-Adresse:

guenter.lintzmeyer@planet-interkom.de

Ich verwende die CC2.

Kern ist eine Assemblerroutine, die die zeitkritischen Signale erzeugt.
Diese wird aus dem C2 mit den zu übertragenden Parametern aufgerufen. Während der "Rechenzeit" in C2 wird das Ausgangssignal auf PWM umgeschaltet, damit der Booster weiterhin Rechteck Signale zur Stromversorgung erzeut.
In C2 werden dann die Handregler (I2C + Analogausgang), Rückmeldekontate und Zubehördekoder (ebenfalls I2C) bedient.
Per serieller Schnittstelle kann der PC zugreifen / Informationen erhalten. Das Protokoll ist an SRCP angeleht.
Die Programme sende ich dir per Mail.
Sind aber ziemlich Beta :gruebel:

Holgi
 
So, ein paar Jahre später - was sind denn so die Erfahrungen mit DDL/DDW? Hat es sich als praxistauglich herausgestellt? Wie sieht es mit USB-Serial-Adaptern aus?
 
Hallo Tsinger,

HOBO hat es aktiv im Einsatz. Ich erst im Bau....

Ergo: Frag ihn doch mal.

Kay
 
So, ein paar Jahre später - was sind denn so die Erfahrungen mit DDL/DDW? Hat es sich als praxistauglich herausgestellt? Wie sieht es mit USB-Serial-Adaptern aus?

Hallo tsinger,

Ich bin auch auf der Suche ...

Wenn das Gleissignal direkt über die serielle Schnittstelle erzeugt wird funktioniert ein USB-Serial Adapter nicht, da dort das mühevoll mit allen Tricks erzeugte Signaltiming nicht ankommt. Jedweder Versuch dahingehend ist zum Scheitern verdammt.

Als Alternative kommt wohl nur eine Lösung ala DCC-Signaler oder OpenDCC in betracht.

gruß Rudolf
 
Also, ich hab mich vor kurzer Zeit auch damit beschäftigt.
Bei mir läuft folgendes System erfolgreich:fasziniert::

Roco Verstärker 10761
Multimaus
Adapterleitung seriell - Verstärker ( Eigenbau )
Adapter USB - seriell

Als Software verwende ich Rocrail und dort DDX. Sowohl das fahren von Loks als auch das schalten von Weichen funktioniert einwandfrei.

Über Rückmeldung, ... kann ich jedoch nichts sagen da ich sowas nicht benötige.
 
Hallo FireDD,

was für einen Adapter USB-Seriell hast du benutzt?

K.
 
Hallo,

den Adapter USB - seriell hab ich aus nem PC- Geschäft. Also ein ganz handelsüblicher sozusagen.

Gruß,

Thomas
 
...

ja, ja, ganz handelsüblich...

Steht in der Beschreibung /auf dem Teil was von Chipsatz oder eine Bezeichnung?

Nicht alle können Rocrail (siehe Rocrail-Forum, aber nicht nur diese Software), da wollte ich mal einen Adapter wissen, der auf alle Fälle funktioniert.

Danke!

K.
 
Also, ich hab mal nachgekuckt.
Auf dem Adapter steht nichts, auch nicht in der Beschreibung :bruell:
 
Zurück
Oben