HARDWARE ★ WIE BEI DER BUNDESBAHN - MODELLBAHNSTEUERUNG MIT DEM CPC (CPC AMSTRAD INTERNATIONAL) ★

Wie bei der Bundesbahn - Modellbahnsteuerung mit dem CPC (CPC Amstrad International)
★ Ce texte vous est présenté dans sa version originale ★ 
 ★ This text is presented to you in its original version ★ 
 ★ Este texto se presenta en su versión original ★ 
 ★ Dieser Text wird in seiner Originalfassung präsentiert ★ 

Wie bei der Bundesbahn
Modellbahnsteuerung mit dem CPC

Natürlich haben Sie es schon immer gewußt, aber hier ist ein Beweis mehr - die Möglichkeiten des CPC sind, wenn man weiß wie, wirklich unbegrenzt. Dieses Mal wollen wir Ihnen eine professionelle Modelleisenbahnsteuerung per CPC vorstellen

Die Krönung für jeden Benutzer eines Computers ist es, mit seiner Hille Geräte aller Art steuern zu können. Da wird die Lichtanlage einer Discothek automatisiert, an anderer Stelle läßt jemand zur passenden Zeit seine Kaffeemaschine oder das Licht in der Wohnung ein- oder ausschalten.

Zwei Tüftler aus dem Ruhrgebiet hatten da aber eine ganz andere Idee, nämlich die Steuerung einer Modelleisenbahnanlage mit dem CPC. Über Umwege erfuhren wir von dieser tollen Sache, waren begeistert und haben uns das Ganze angeschaut.
Nachdem wir erste telefonische Kontakte geknüpft hatten, nahmen wir an, eine “unscheinbare Anlage“ (Zitat) vorgeführt zu bekommen, die nicht sehr fotogen sein sollte.

Die richtige Idee bringt's

Vor Ort stellten wir aber fest, daß die uns mitgeteilte Unscheinbarkeit der Anlage eine grandiose Untertreibung darstellte. Vor uns stand ein Aufbau von etwa 4,00 Meter Breite und 1,30 Meter Tiefe, auf der sich die verschiedensten Züge auf verschlungenen Gleiswegen tummelten. Wir sahen schaltende Signale und Züge, die langsam anhielten, um andere passieren zu lassen, sich danach selbst die Weichen legten und dann sachte wieder anfuhren — alles ohne menschlichen Eingriff. Mittendrin ein CPC 464 mit Diskettenlaufwerk.

... wie von Geisterhand bewegt

Es stimmte also — der CPC steuerte die gesamte Gleisanlage — eine Anlage übrigens, die zwar ohne die üblichen Aufbauten wie Wiesen, Berge und Häuser aufgebaut war. nach der sich jedoch mancher eingeschworene Modelleisenbahner wegen der vielseitigen Fahrmöglichkeiten die “Finger lecken“ würde. Nachdem wir alles in Augenschein genommen hatten, stellten wir fest, daß hier Leute sehr viele Ideen und Arbeit investiert hatten mit dem Ergebnis einer professionellen Gleisanlagensteuerung, die alles bisher Dagewesene in diesem Bereich der Modelleisenbahnerei in den Schatten stellen dürfte. Wie kam es dazu?

Dietmar Gabler, von Beruf Bauingenieur. beschäftigt sich in seiner Freizeit seit 25 Jahren mit Elektronik aller Art. Er absolvierte neben seiner Arbeit als Ingenieur ein zusätzliches Elektronik-Fernstudium und spezialisierte sich im Laufe der Zeit als Hobby auf den Bau und die Reparatur von elektronischen Orgeln. Er genoß dadurch in Bastlerkreisen einen sehr guten Ruf, der mit der Zeit dazu führte, daß ihn Freunde und Kollegen bei elektronischen Problemen um Rat und Hilfe fragten, die er gern leistete.

So bekam er Kontakt zu einigen Modelleisenbahnern, die versuchten, die Steuerung ihrer Anlagen mit verschiedenen, zu der Zeit handelsüblichen Insellösungen zu verbessern. Insellösungen heißen sie deshalb, weil sic immer nur einem einzigen Problem zu Leibe rücken. Ärgerlich war jedoch, daß manche dieser Lösungen, beispielsweise der Anfahr-Brems- Vorgang oder die Fahrstraßenschaltung nicht ausgereift waren oder aber Gahler noch Verbesserungsmöglichkeiten fand. Er tüftelte, reparierte und half, wo er konnte - mit der Zeit reifte aber die Idee, die ganzen Insellösungen zusammenzufassen und in einer einzigen Steuerungsanlage zu integrieren.

In der Gleisanlagensteuerung, sowohl im Modellbereich wie auch in natura, sieht für den Laien das Hin- und Herfahren der Züge zwar sehr einfach aus, tatsächlich aber ist es eine äußerst komplizierte Sache, die von vielerlei Faktoren beeinflußt wird. Als Beispiel soll das Thema Blocksicherung dienen. Eine Gleisanlage wird immer in einzelne Abschnitte, im Fachjargon Blöcke, aufgeteilt.

Die Blocksicherung trägt nun Sorge dafür, daß sich in einem Block immer nur ein Zug befindet, der auch nur dann Fahrerlaubnis (Strom) erhält, wenn der nächste in Fahrtrichtung liegende
Block frei ist. Wird dieses einfache Prinzip konsequent eingehalten, kann es keine Unfälle geben. Hierdurch kommt jedoch lediglich ein Kreisverkehr zustande, in dem jeder Zug warten muß, bis der vorausgefahrene den Block frei gemacht hat, um ihn dann flugs zu verfolgen.

Die Gleisanlagensteuerung ist hochkompliziert

Kompliziert wird die Sache erst, wenn Weichen ins Spiel kommen und sich dadurch mehrere Fahrwege ergeben oder sich sogar kreuzen. Wenn die Züge dann auch noch ihre Fahrtrichtung wechseln und den Verfolgern entgegenfahren, ist es mit der Einfachheit vorbei. Jetzt muß nach allen Seiten, nach vorne und hinten, nach rechts und links gesichert werden. Die Blocksicherung ist aber nur eine von vielen wichtigen Vorgängen in der Gleisanlagensteuerung.

Die Idee Gablers war also, eine Steuerung zu konzipieren, welche in der Lage ist, alles, was an einer Modelleisenbahn gesteuert werden kann, zu koordinieren - genauso, wie dies bei der Bundesbahn auch gemacht wird. Naheliegend war da natürlich die Verwendung eines Computers — in diesem Fall eines CPC, mit dem Gahler an seiner Arbeitsstelle über einen Kollegen in Berührung kam.

Daß die Wahl auf den CPC fiel, lag aber auch daran, daß dieser Rechner alle Voraussetzungen erfüllte, die für das Funktionieren dieser Computersteuerung erforderlich waren. Die wichtigste dieser Voraussetzungen war die Möglichkeit, ohne Umweg über die genormten 2400-Baud-Schnittstellen direkt auf das Herz des Computers zugreifen zu können. Ein wichtiger Aspekt war nämlich, daß der Datenaustausch für eine Echtzeitsteuerung schnell genug sein mußte. Lediglich der CPC - im Gegensatz zum ebenfalls weitverbreiteten C64 von Commodore - besaß unter den Homecomputern diesen und auch noch andere Vorteile. Mit ihm wird eine Übertragungsrate von sagenhaften 450000 Baud erreicht.

Natürlich stand die heutige Steuerungsanlage nicht gleich von Anfang an, denn für diese Verwendung des CPC gab es weder Hard- noch Software. Gahler begann den CPC dazu zu bringen, eine Weiche zu schalten. Er entwickelte dafür eine Elektronik, die mit dem Expansionsport und einer Weiche gekoppelt wurde. Dazu schrieb er ein kleines BASIC-Programm, das mit OUT-Befehlen Impulse “nach draußen“, also an die Weiche, sendete. Er benötigte ein halbes Jahr und etliche Versuche, bis eines Tages die Weiche “klick“ machte und er die endgültige Gewißheit hatte, daß der CPC in der Lage ist, Steuerbefehle in der gewünschten Weise an die Außenwelt zu senden. Dabei mußten verschiedenste Schwierigkeiten überwunden werden. Als Beispiel seien hier die langen Kabelverbindungen genannt, die den Rechner immer wieder zum Absturz brachten. Doch auch diese Probleme wurden gelöst, und das heißersehnte Klicken der Weiche legte den eigentlichen Grundstein für die weitere Entwicklung.

... die Weiche machte “klick“

Der Vorläufer der heutigen Version, die Fahrstraßensteuerung, wurde nun rasch weiterentwickelt und zur Serienreife gebracht. Gahler konstruierte dafür zunächst eine Schnittstellen-Karte als Hauptverbindungsstück zwischen Rechner und Gleisanlage, der dann die Karte für die Weichenschaltung folgte. Es entstand auch ein erstes vollständiges Steuerprogramm für den CPC, geschrieben in BASIC. Mit dieser Ausrüstung war es dann möglich, beliebig viele Weichen einer Modelleisenbahnanlage zu großräumigen Fahrstraßen zusammenzufassen oder auch einzeln zu schalten.

Die Arbeiten an dem Projekt wurden nun immer umfangreicher — schließlich sollte es nicht bei der puren Weichenschaltung bleiben - und für eine Person wurde es zu viel, sich um die Hardware- und Software-Entwicklung allein zu kümmern. Gahler, mehr Hardware-Mann als Programmierer, suchte und fand einen Tüftler, Bauingenieur Frank Ringstmeier, ein Arbeitskollege, der auf der Universität mit EDV in Berührung kam, sich für Programmierung interessierte und Spaß an den außergewöhnlichen Ideen und Lösungen seines Kollegen hatte.

Ein zeitfüllendes Hobby für zwei Tüftler

Ringstmeier hatte schon einige Erfahrung mit den CPCs, da er diese Geräte bei seinem Arbeitgeber für bautechnische Berechnungen mit Erfolg eingeführt hatte. Er war derjenige, der, allerdings ohne zu ahnen, was da auf ihn zukommen würde, Gahler mit diesen Rechnern an der Arbeit bekannt machte. Ab Beginn der Zusammenarbeit der beiden Entwickler konzentrierte er sich dann darauf, parallel zu Gahlers Hardware-Entwicklungen das Programm zu verfeinern, indem er es komplett mit Assembler neu schrieb.

Durch diese Arbeitsteilung konnte sich Gahler voll auf die Weiterentwicklung der Elektronik konzentrieren. Ende 1987 waren er und Ringstmeier dann soweit. Ihr Ziel war erreicht. Ein vollständig vom Fahrdienstleiter steuerbarer und durch den Computer gesicherter Zugverkehr war möglich geworden. Diese Version wurde 1988 weiter verbessert und konnte am Beispiel einer Spur-N-Anlage im September 1988 Interessenten aus ganz Deutschland präsentiert werden.

Sie wurde im weiteren noch auf verschiedenen Messen gezeigt, wobei die Entwicklung natürlich nicht stehenblieb, denn die Vorschläge vieler Modelleisenbahner waren ein ständiger Fundus für Erweiterungen. Sehr wichtig bei der hier realisierten Mehrzugsteuerung war für viele Modelleisenbahner. daß im Gegensatz zu manchen anderen Steuerlösungen keinerlei Eingriffe in die Lokomotiven, in denen der Antriebsmotor sitzt, notwendig waren. Der Einsatzbereich der Steuerung ist übrigens lediglich abhängig von der Leistung der Elektronik, so daß Gleichstromanlagen der Spuren “Z“, “N“, “TT“ und “HO“ angeschlossen werden können.

Die Entwicklung ist nicht zu bremsen

Neben der Hardware gibt es nun ein vollständig menügesteuertes Programm. das auf allen CPCs läuft. Im Dialog wird ein computerinternes Modell des Streckennetzes einer beliebigen Anlage erstellt. Im Programm wird das durch die Unterroutine Fahrstraßen eingeben realisiert. Anhand der eingegebenen Vorlage berechnet der Computer seine Reaktionen auf die sogenannten “Einflüsse seiner Umwelt“. Darunter sind zum Beispiel die Fahrstreckenvorgabe des Anwenders oder die Position eines Zuges zu verstehen. Das Programm bildet also eine kontrollierende Schnittstelle zwischen Mensch und Steuerung der Modelleisenbahn. Man kann den Zugbetrieb ohne Einschränkungen, als wenn der Rechner überhaupt nicht vorhanden wäre, über das Gleisbildsteilpult, das bei großen Anlagen empfehlenswert ist, abwickeln. Das Steuerprogramm wacht aber darüber, daß vom Anwender keine fehlerhaften Fahrstrecken vorgegeben werden und daß sich Züge auf der Strecke nicht in die Quere kommen. Auch werden Vorgänge, wie etwa das Schalten einer Weiche unter dem Zug, verhindert.

Mit fehlerhaften Fahrstrecken sind solche Vorgaben gemeint, deren Ausführung nicht möglich ist oder die zur Kollision zweier Züge führen würden. Der Rechner sorgt auch dafür, daß die der jeweiligen Betriebssituation entsprechenden Signale richtig gesetzt sind. Wo genau welcher Zug steht, weiß das Programm zu Anfang natürlich nicht.
Es muß ihm erst “gesagt“ werden. Hat man dieses aber einmal getan, wird die jeweilige Position des Zuges über die gesamte Fahrstrecke hinweg verfolgt. Möglich wird das durch die Kontrolle, ob in einem jeweiligen Bereich Strom fließen kann oder nicht.

Der kleinste kontrollierbare und mit einer gesonderten Stromzufuhr versehene Bereich ist ein Fünftel eines Blok-kes. Innerhalb eines Blockes, der im allgemeinen die Strecke zwischen zwei Weichen darstellt, befindet sich maximal ein Zug. Ein anderer Zug, der den Block befahren will, erhält solange ein rotes Signal, bis der Block frei ist. Auch Blöcke, die laut Vorgabe von dem Zug noch befahren werden sollen, sind für diesen reserviert und können von anderen nicht befahren werden.

Die Physik verlangtes - wo ein Zug ist, kann kein anderer sein

Eine korrekte Funktionsweise des Programms kann nur gewährleistet werden, wenn das durch die Computerdaten repräsentierte Modell und die zu steuernde Hardware auch übereinstimmen. Sollte dies einmal nicht der Fall sein, zum Beispiel wenn ein Zug entgleist oder ähnliches, gibt der Computer eine Fehlermeldung aus und sichert den betroffenen Bereich, der ja nun von der Anlage her fälschlicherweise “frei gemeldet“ wird. Jetzt ist der Eingriff des Menschen gefragt, der zum Glück immer noch unersetzlich ist.

Sie warten bestimmt schon gespannt darauf, etwas mehr über die Hardware zu lesen. Im folgenden Abschnitt gehen wir etwas näher darauf ein.

Neben der erforderlichen Grundausrüstung, die vor allem den Computeranschluß und die notwendigen Trafos enthält, besteht die Elektronik aus einzelnen Steckkarten im Europaformat. Die 160x100 mm großen Platinen sind in einem externen 19-Zoll-Einschubrah-men untergebracht.

Bedingt durch die Tatsache, daß sich auf den Platinen keinerlei Logik befindet, ist ihr Aufbau relativ einfach. Außerdem ist es möglich, im Bedarfsfall Platinen mit gleicher Funktion untereinander zu tauschen. Bei der Fehlersuche ist das ein nicht zu unterschät-zender Vorteil.

Die Steuerkarten setzen sich zusammen aus Platinen für Weichen- und Formsignalschaltung, Lichtsignalschaltung sowie für die Fahrstromerzeugung. Diese Steuerkarten sind für den Signalweg vom Computer zur Anlage vorgesehen. Für die Gegenrichtung. von der Anlage zum Computer, gibt es Rückmeldeplatinen. Je nach Verwendungszweck können sie dem Computer ein besetztes Gleis, einen im Gleisbildstellpult gedrückten Taster oder die momentane Stellung eines Schalters melden.

Die Kopplung des CPCs mit der Anlage geschieht über den Expansionsport. Direkt angesteckt ist eine Leiterplatte mit Bustreiberschaltkreisen. Buffer genannt. Von hier aus geht eine relativ lange Leitung zu der Interface-Karte. Bis zu diesem Punkt handelt es sich um eine parallele Datenübertragung.

Hier geschieht nun das Erstaunliche dieser Entwicklung — die Daten werden einer parallel-seriell-Wandlung unterzogen. Dies geschieht aus dem einfachen Grund der begrenzt vorhandenen freien Portadressen des CPC. Es soll aber eine große Zahl von Geräteteilen, zum Beispiel Weichen, Züge und so weiter, angesprochen werden.

Der Expansionsport ist Mittler zwischen dem CPC und der Anlage

Das Prinzip ist einfach aber genial. Es wird ein Steuerwort gebildet, in welchem alle Bits, außer einem, auf Null gesetzt sind. Dieses eine Bit entspricht dem Objekt der Anlage, das angesprochen werden soll. Das Steuerwort wird nun durch Schieberegister geschoben. An entsprechender Stelle wird das Schieben gestoppt. Das gesetzte Bit befindet sich jetzt an einer Stelle der Schaltung, die den gewünschten Teil aktiviert.

Aber wie funktioniert die Motorsteuerung? Bei dieser gibt es ja einige Be Sonderheiten, da ja die Züge langsam anfahren und auch allmählich anhalten sollen. Die Endgeschwindigkeit für einen Zug wird vom Anwender bestimmt und vom Computer an den Ort der Lok, d.h. an den Block gesendet. Und wie ist das bei der Digitaltechnik am einfachsten zu realisieren?

Natürlich durch Impulse, wobei die Impulsbreite in diesem Fall bestimmend ist für die Drehzahl der Motoren. Durch diese einfache, aber wirkungsvolle Methode wird eine aufwendige Digital-Analogwandlung geschickt umgangen. Dies ist nicht die einzige Lösung, die durch ihre Einfachheit besticht. Zum Beispiel wurde ja auch die Positionsbestimmung ohne aufwendige Sensoren erreicht. Nur durch die Feststellung, ob in einem Bereich Strom fließen kann oder nicht, verfolgt der Computer die Position des Zuges.

Einfach - aber gut

Das aus drei Teilen bestehende Programm ist sehr anwenderfreundlich aufgebaut. Mit dem Hauptprogramm MST, dem Prüfprogramm MSTP und dem Druckprogramm MSTD kann der Anwender alle an der Anlage anstehenden Arbeiten problemlos ausführen. Hier nun die Vorstellung des Hauptprogramms. Nachdem MST geladen und gestartet wurde, erscheint nach einem Eröffnungsbild das Auswahlmenü. bestehend aus fünf Fenstern, die übereinander angeordnet sind. Im Fenster eins befinden sich Programmname und Copy right-Vermerk. Das zweite Fenster zeigt alle vorhandenen Programmverzweigungen. Diese sind zweibuchstabig abgekürzt. Daher werden die durch den Anwender mit den Cursortasten gewählten Menüpunkte im Fenster drei kurz dokumentiert. Fenster vier und fünf sind Arbeitsfenster für das jeweils laufende Unterprogramm.

Das gesamte System ist bei den verschiedensten Modelleisenbahnanlagen der erwähnten Spuren einsetzbar. Da die spezielle Konfiguration durch den Anwender im Dialog mit dem Computer geschieht, kann jeder das Programm auf seine spezielle Modelleisenbahnanlage abstimmen. Das System stellt eine sehr gute Alternative zu den handelsüblichen Digitalsystemen, deren Erläuterung hier zu weit führen würde, dar.

Dietmar Gahler und Frank Ringstmeier vertreiben ihre Erfindung mittlerweile europaweit. Die Software wird fertig ausgeliefert. Die je nach Umfang der eigenen Anlage benötigte Hardware ist als Bausatz oder mit fertig bestückten Leiterplatinen erhältlich. Auch dieses Beispiel einer CPC-Anwendung zeigt deutlich, was alles mit diesem Rechner möglich ist.

Jörg Gurowski/Frank Sippel/tk , CPCAI

★ PAYS:
★ YEARE: 1990 , 1991
★ AUTORS: Dietmar Gahlerund Frank Ringstmeier
★ PREISE: ab 1000,– DM

★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Hardware » Crayon - Crayon Optique - Light Pen - Dart
» Hardware » Autopsie : Interface Serie Pace RS232
» Hardware » Interface série RS232 (Megahertz)
» Hardware » Thermostyl
» Hardware » Crayon Optique Amstrad LP-1
» Hardware » Crayon - Electric Studio Light Pen Mk 2
Je participe au site:

» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.7-desktop/c
Page créée en 192 millisecondes et consultée 1188 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.