Projekt 12: Unser Faller-Car-System
a) Fahrzeugen sinnvolle Fahrtrouten zuweisen

Dieser Beitrag hat neben der Hauptseite und dieser Seite vier weitere:
b) Fahrzeuge steuern
c) Fahrzeuge in sicherem Abstand hintereinander her fahren lassen
d) Fahrzeuge selber bauen
e) Fahrzeuge automatisch auf der Anlage nachladen

Wenn Fahrzeuge auf unterschiedlichen Routen fahren sollen, könnte man die Weichen im Fahrweg zufällig hin- und herschalten. Das ergäbe zwar immer wieder unterschiedliches Fahren, aber sinnvoll wäre dies nicht. Unter "sinnvoll" verstehen wir z.B. Buslinien und Bushaltestellen, aber auch unmerkliches Abweisen von zu langen Fahrzeugen bei Engstellen (oder von Bussen an der Tankstelle).
Dazu müssen wir die Fahrzeuge unterscheiden, also erkennen können.

Diese Erkennung hat vom Prinzip her sehr wenig mit den anderen Aktivitäten für das Faller-Car-System zu tun und kann somit auch unabhängig davon installiert werden.
Sender Nach verschiedenen Versuchen, z.B. das Codieren über Permanentmagnete in einem bestimmten Raster oder Barcode-Leser, sind wir zu der betriebssichersten Methode gekommen, einer aktiven Codierung. Diese wird fest in die Fahrzeuge eingebaut und strahlt ständig zur rechten Seite über eine IR-Diode eine Kennung aus. Diese enthält neben dem Fahrzeugtyp (1 ... 31) auch eine Kennung, die besagt, daß der Akku nachgeladen werden muß. Somit wird automatisch der befürchtete höhere Stromverbrauch durch dieses Senden ausgeglichen. Und - diese Version kann sich in ihrer Information ändern (zumindest beim Akku-leer-Bit), was wir mit den statischen anderen Codierungen nicht hätten erreichen können. Im Bild sehen Sie so einen Sender (Größe 16×10mm) in einem Bus und, ganz links, die Sendediode. Sie strahlt normalerweise durch ein kleines Loch an der Seite der Karosserie.
Empf Die Empfänger-Dioden am Straßenrand (Bild rechts) sind in einem kleinen Messingrohr untergebracht, das 3mm Durchmesser hat und etwa 10mm aus dem Boden ragt. Oben seitlich ist ein Fenster für die IR-Diode eingearbeitet. Der Anschluß erfolgt durch ein Koax-Kabel (grün), das durch einen Schrumpfschlauch befestigt ist. Dieser besitzt bei uns einen Innenkleber, da der Mantel unseres Kabels aus Teflon ist und sonst hätte herausrutschen können. Das Röhrchen wollen wir durch unterschiedliche Gegenstände kaschieren, vom Kinderwagen bis zur Mülltonne. Die Empfangs-Elektroniken entsprechen in ihrer Funktionalität genau denen, die wir in den Fahrzeugen bei der Infrarotsteuerung verwenden wollen und die auch schon gut funktionieren. Die Telegramme, mit denen die Daten aus dem Fahrzeug übertragen werden, entsprechen im Aufbau denen der Infrarotsteuerung, sind aber im Inhalt grundsätzlich anders, so daß ein versehentlich von einer Infrarotsteuerung empfangenes Fahrzeug-Erkennungs-Telegrann dort zu keiner Fehlfunktion führen kann und umgekehrt.
Die Auswertung der Fahrzeug-Information muß kurz vor jeder Weiche eingebaut werden und hat (zunächst jedenfalls!!) nur das Ergebnis "Weiche nach rechts" oder "Weiche nach links", s. die Beschreibung des Bitmusters weiter unten.
Damit reduziert sich das seinerzeit in Projekt 8 angesprochene Blocksystem auf "autarke Inseln", zwischen denen die Fahrzeuge ungehindert fahren können. Damit ist für uns das Projekt 8 gestorben.

Wir wollen die Auswerte-Elektroniken in großer Zahl (maximal 63 verschiedene) einsetzen. Da bietet es sich an, diese gleichartig aufzubauen, auch aus Gründen der Ersatzteilhaltung. Da prinzipiell jede Weiche anders ist, also auch anders auf einen bestimmten Fahrzeug-Typ reagieren muß, muß der Elektronik vor Einbau in die Anlage gesagt werden, zu welcher Weiche sie gehören soll. Steckbrücken auf der Platine würden zu einem enormen Platzverbrauch führen. Dies wurde verworfen. Auch wurde die Idee, Codierschalter ("Mäuseklaviere") einzubauen, fallengelassen, da diese nur ein einziges Mal beim Start eingelesen werden müssen und dann nie wieder. Und - sie verbrauchen immens viele Eingänge bei dem Steuerungs-Prozessor (PIC16F690), die viel besser benutzt werden könnten.
Die hier beschriebenen Platinen heißen bei uns Weichendecoder (WD).
DIP Aus dieser Problematik heraus wurde eine Software-Lösung entworfen, bei der Codierschalter einmalig auf die Platine aufgesteckt werden. (Das funktioniert auch auf dem Schreibtisch!) Der PIC erkennt beim Start, ob diese Schalter gesteckt sind, liest sie aus und merkt sich ihre Stellung. Falls er beim (nächsten) Start keine gesteckten Schalter bemerkt (das ist der Normalfall), greift er auf die gemerkten Werte zurück. Ab diesem Zeitpunkt werden die jetzt eingesparten Eingänge anderweitig und damit sinnvoller verwendet. In dem PIC stecken 63 verschiedene Auswerte-Programme. Eines von denen wird durch die Codierung ausgewählt und übernimmt die Steuerung. Alle anderen 62 Programme werden nicht benutzt. Somit ist auch auf der Programm-Ebene nur eine einzige Reserve vonnöten. Bei Änderung eines Programms wird dieses in den betroffenen PIC gebrannt und in den Reserve-PIC. Alle anderen Weichendecoder laufen mit "ihrem" anderen Programm. Sollte ein WD ausgetauscht werden müssen, wird nach Reparatur dieser zur Reserve und erhält dabei automatisch das neueste Programm.
Im Laufe der immer weiter schreitenden Programmierung haben wir festgestellt, daß der 16F690 mit seiner Speicherkapazität nicht ausreicht. Wir sind daher zu dem inzwischen preiswerteren PIC16F1829 umgestiegen, der doppelt so viel Speicherplatz beinhaltet. Sollte auch dieser nicht ausreichen, könnten wir uns auch zwei verschiedene Auswerte-Systeme für je 32 Weichen vorstellen. Auf der Anlage haben wir zwei voneinander räumlich getrennte (aber zusammenhängend befahrbare) Bereiche, Landbahnhof und Stadt, für die wir dann zwei unterschiedlich programmierte PICs bevorraten müßten. Aber auch das ist machbar.

Warum das alles?
Wir haben zur Organisation des Fahrverkehrs nichts Anderes als diese Auswerte-Elektroniken. Wir wollen sie auch zur Vorfahrt-Steuerung bei Kreuzungen usw. einsetzen; auch um kurzfristiges Halten an Tankstellen und Busbahnhöfen zu ermöglichen. Daher wurde auf jede Elektronik-Platine zusätzlich eine aufwendige Logik (Software) gebaut, die mit anderen Elektroniken kommunizieren kann.
Jede Elektronik erhält frei verfügbare 9 Aus- und 6 Eingänge. Mit diesen schaltet sie Weichen und Stopstellen, kommuniziert aber auch mit benachbarten Logiken. Wir haben mit Absicht diesen etwas umständlichen Weg gewählt, da er für Nicht-Programmierer besser verständlich ist.
Durch die o.g. Codierung wird auch die zu der gewählten Weiche zugehörige Logik angesprochen.
Dabei ist noch das Einfachste die Weichenposition. Jede der 64 möglichen Weichen erhält in der Software ein Bitmuster für unsere 32 Fahrzeug-Typen, wobei eine "1" für "nach rechts" steht; zusätzlich noch Bits für generelle Sachen, die für alle Autos gelten, wie "Akku leer" oder "Betriebsende". Hierbei sollen alle Autos an einen bestimmten Punkt auf der Anlage geführt werden, wo sie abgesammelt (bzw. geladen) werden können.
Die Zuordnung von 64 Weichen zu 32 Fahrzeugen ergibt einen Codier-Umfang von 2048 Verknüpfungen, die Sonderregelungen nicht mitgerechnet. Dieser ist nur durch Einführung eines Bitmusters beherrschbar. Dieses wird einmalig bei der Konzeptionierung der Fahrstraßen erstellt und dann (hoffentlich) nie wieder geändert.

Der Sender der Fahrzeugerkennung
Sender Der Sender der Fahrzeugerkennung ist eine recht kleine Platine, die in jedes Fahrzeug paßt. Den Einbauort haben wir schon weiter oben beschrieben.
Die Platine enthält zwei Baugruppen: eine Stufe, die eine geregelte und von der Akkuspannung unabhängige Spannung von 3,3 Volt erzeugt, und einen kleinen PIC, der laufend die Akkuspannung mißt und das Ergebnis zusammen mit der Fahrzeugkennung in ein Telegramm wandelt und abstrahlt. Auf der linken Seite der Platine (Bild rechts) ist die Spannungserzeugung (mit TPS61221) plaziert, rechts der PIC (12F222). Er vergleicht die Akku-Spannung mit der 3,3-V-Spannung und erkennt somit eine Unterspannung des Akkus. Die Programme sind leicht unterschiedlich: es muß der Fahrzeug-Code eingebrannt werden. Aus diesem wird intern automatisch abgeleitet, ob das Fahrzeug mit 2,4 Volt läuft oder ein "Einzeller" ist. Wir haben es uns einfach gemacht: Alle Fahrzeugtypen von 24 bis 31 sind Einzeller.

Der Empfänger der Fahrzeugerkennung
WD Der Empfänger sitzt auf einer recht große Platine, die sehr viele Steckverbindungen halten muß. In der Mitte der PIC mit 20 Beinchen, links davon das IC des Empfänger-Vorverstärkers für die Infrarot-Signale. Darunter befinden sich 2 Stecker für die Empfangsdiode und einen Reed-Kontakt; weiter darunter (stehend) ein Anschluß zum Testen, rechts daneben der oben schon besprochene Stecker für die Codier-Schalter (s. Bild weiter oben). Ganz in der Mitte sitzt eine grüne LED, die den Empfang eines gültigen Telegramms anzeigt. Ganz ehrlich gesagt: bei der Fehlersuche ist sie das wichtigste Bauelement auf der Platine.
VV Der Vorverstärker besteht aus einem Doppel-OP (MCP6002), dessen erste Stufe als Transimpedanzverstärker geschaltet ist; ein großer Name für 3 Bauelemente. Die zweite Stufe ist nicht gegengekoppelt, funktioniert daher fast wie ein Schmitt-Trigger. An deren Ausgang ist direkt der PIC angeschaltet. Mit dem Spannungsteiler am "-" - Eingang der 2. Stufe wird die Schaltschwelle eingestellt.
Leider passen auf eine Euro-Karte gerade eben nicht 4 Platinen, so daß der Rohling ein leichtes Übermaß haben (175 x 125 mm) muß. Als Operationsverstärker sollte es schon der MCP6002 sein. Bei anderen Typen, die nicht Eingänge "rail-to-rail" haben, funktioniert die Schaltung nicht.
Die 4 Stecker oben rechts sind Durchschleifungen für 2 Weichenantriebe. Sie beinhalten automatisch auch die Stromversorgung. Die 3 Stecker weiter unten sind 5 Ausgänge und 6 Eingänge. Sie sind frei benutzbar, je nach aktivem Programm.

Der Einbau auf der Straße
Das Auto mit der Sendediode fährt an der Empfangsdiode vorbei. Dabei entstehen mit Sicherheit verstümmelte Telegramme bei Beginn oder Ende der Vorbeifahrt. Um sicher zu gehen, daß immer ein vollständiges Telegramm ausgewertet wird, wurde festgelegt, daß in die Straße unter den Fahrdraht ein Reed-Kontakt eingebaut wird, der vom Schleifer des Fahrzeuges betätigt wird. Diese Anordnung wird so neben der Empfangs-Fotodiode positioniert, daß das zur Zeit der Betätigung empfangene Telegramm vollständig ist. Ist dies nicht der Fall, weil etwas defekt ist oder weil das Auto noch keinen Sender besitzt, so wird im Empfänger der Fz-Typ "0" generiert, zu dem ebenfalls ein Auswerte-Programm existiert. Somit ist das System kompatibel zu noch nicht umgerüsteten Fahrzeugen.
Was uns die Möglichkeit schafft, ohne Streß einen Mischbetrieb zu fahren.
Und - das System ist auch stabil gegenüber plausiblen Telegrammen, die "irgendwoher" kommen, ohne daß tatsächlich ein Auto vorbeifährt.

Probleme
Bulli Die gibt es mit Kleinstfahrzeugen, wie z.B. dem Bulli. Wegen seines geringen Gewichtes besitzt er einen nur sehr schwachen Führungsmagneten. Bei dem ist die Betätigung des Reed-Kontaktes unsicher. Baut man nun einen stärkeren Magneten ein, so "krallt sich der derart am Führungdraht fest", daß der Wagen mit seinen Hinterrädern "strampelt" und nicht vorwärts kommt. Also keine gute Idee. Wir haben am Boden kurz vor der Hinterachse mittig einen weiteren, relativ starken Magneten angebracht, der den Reed-Kontakt verspätet, aber sicher betätigt. Vorteil 1: er bremst nicht. Vorteil 2: Er zieht (wegen des Fahrdrahtes) den Wagen (theoretisch: ganz leicht) auf die Straße, was für einen besseren Vortrieb sorgt. Der Magnet hat die Größe Ø3x2mm, Werkstoff Neodym N52. Auf dem Bild sehen Sie den Magneten genau zwischen dem weißen Fleck und dem Zahnrad.

ganz zum Anfang

Für weitere Fragen stehen gern zur Verfügung:
- der MEC; Besichtigung und Fachsimpelei z.B. an unseren "Club-Abenden"
- der Autor: Hans Peter Kastner

Version vom: 22.09.2021; erstellt am: 21.04.2020
Copyright © 2020 - 2021 by Modelleisenbahnclub Castrop-Rauxel 1987 e.V.

Valid HTML 4.01!