Rocrail, bestehend aus Rocview und dem Rocrail-Server, erhalten Sie über den Download-Bereich [4] der Projektwebseite und installieren es, indem Sie den Inhalt des Archivs in einem Verzeichnis eigener Wahl ablegen und die Installationsskripte dort ausführen. Die freie Software arbeitet plattformübergreifend. Trotz der umfangreichen Funktionalität lässt sich Rocrail relativ schnell beherrschen. Bei Fragen oder Problemen steht Ihnen außerdem eine große Community bereitwillig zur Seite. Wie man alles konfiguriert und die wenigen Sensoren und Aktoren im Projekt einbindet, soll deswegen an dieser Stelle kein Thema sein.
Bevor wir starten, benötigen wir noch ein Stückchen Software, die das Übersetzen der IP-basierten Signale zusammen mit dem RasPi und per CAN-Bus in Richtung Gleisanschlussbox übernimmt. Im Beispiel kommt die Lösung PiCanS88 von Daniel Mrkonjic zum Einsatz. Zuerst stellen Sie den gewünschten Zugriff auf die GPIO-Ports des RasPi sicher. Dazu nutzen Sie eine C-Library für den BCM2835-Chip, die Sie mit den Befehlen aus Listing 3 herunterladen und installieren. Danach geht es an das eigentliche Einrichten von PiCanS88 (Listing 4).
Listing 3
BCM2835-Library installieren
$ wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.42.tar.gz $ tar zxvf bcm2835-1.42.tar.gz $ cd bcm2835-1.42 $ ./configure $ make $ sudo make check $ sudo make install
Listing 4
PiCanS88 installieren
$ wget http://www.ifoedit.com/PiCanS88.tar $ tar xvf PiCanS88.tar $ cd PiCanS88 $ make
Anschließend packen Sie am besten alle notwendigen Aufrufe in ein kleines Shell-Skript. Im Beispiel heißt es startrs.sh (Listing 5). Mit dem Kommando sudo chmod ugo+x startrs.sh machen Sie es ausführbar. Die IP-Adressen für das Gateway und den lokalen Server ersetzen Sie durch die aus der eigenen Installation; beides ist einfach mittels ifconfig herauszufinden.
Listing 5
startrs.sh
sudo ip link set can0 up type can bitrate 250000 sleep 2 ifconfig sudo ./PiCanS88 -f -b 192.168.2.255 -v -d 192.168.2.96 m 1
Das Skript starten Sie vor dem Aufrufen von Rocrail in einem Terminal (Abbildung 5), um alle Anfragen an die Steuerung und deren Antworten mitlesen zu können. Zudem sehen Sie auf diese Weise die Ereignisse am Rückmelder wie etwa den Druck auf einen dort angeschlossenen Taster. Das ist vor allem beim Debugging in der Aufbauphase nützlich.
Volldampf voraus
Für durchgängige Tests sollten Sie möglichst viel Peripherie einbinden. Mit dabei sind in unserem Test die Gleisanschlussbox, zwei Weichen- und Zubehördekoder sowie ein S88-Rückmelder. Als Gegenüber bauen wir eine Gleisstrecke mit Weiche, Signal und Entkuppler auf. Zum Test für Rückmeldungen verfügt sie über ein einseitig isoliertes Abstellgleis (Abbildung 6).
Bei der fertigen Anlage wandern sicher einige Komponenten weiter weg und unter das Modellbahnbrett. Daneben wollen Sie womöglich noch andere Komponenten wie diverse Booster ergänzen und auf der Fläche verteilen. Hier geht es dem Modellbahner in der Praxis nicht nur um die angestrebte Funktionalität, sondern auch darum, Kabellängen und -wege zu optimieren. Das gewährleistet eine gleichmäßige Versorgung mit Fahrstrom. Zudem reduziert eine Trennung der Netze Störungen.
Jetzt ist es Zeit für einen ersten Test, bei dem wir einen minimalen Bahnbetrieb aufnehmen. Dazu braucht es in Rocrail nur einen kleinen Gleisplan und ein einzelnes, dem System bekanntes Fahrzeug. Es lässt sich in mehreren Geschwindigkeitsstufen vorwärts und rückwärts bewegen und in seinen Zusatzfunktionen steuern. Unsere Beispielgüterlok ist dazu auf dem kurzen Testgleis unterwegs und kann ihre Fahrlichter aufleuchten lassen. Raspberry Pi und Steuerplatine funktionieren einwandfrei. Wir können nun die Weiche und den Entkuppler kontrollieren, die wir in unserem Aufbau beide über einen externen Dekoder schalten. Bei Signalen mit vor Ort eingebauter Intelligenz, die beispielsweise dazu dient, Gleise abschnittsweise freizugeben, ist das mitunter anders. Aber auch das gelingt – die Konfiguration des Zubehörs macht in Rocrail keinen Unterschied zur CS2 aus dem Märklin-Baukasten.
Der RasPi empfängt alle Rückmeldungen einwandfrei, zum Beispiel von einem Kontaktgleis. Wie gewohnt lassen Sie sich diese in Rocview anzeigen und können mit diversen Aktionen reagieren. Funktioniert das, haben Sie Ihr Ziel erreicht und alles über den Desktop des Raspberry Pi unter Kontrolle. Darüber hinaus können Sie sich auf Ihrer Anlage einem automatisierten Fahrbetrieb zuwenden.
Auf dem Desktop des Raspberry Pi findet nun noch meine eigene Entwicklung Platz, eine in Python 3 geschriebene Lichtsteuerung für Häuser und Straßenlampen. Sie lässt sich in einzelnen Gruppen und per Programm beeinflussen, wie bereits in Abbildung 4 zu erkennen war. Hier spielt der Raspberry Pi seine Stärken aus, denn er ist ja nicht nur an die Steuerplatine angebunden, sondern verfügt noch über freie GPIOs und den I2C-Bus. Ich habe ihn mit einem Expander ausgestattet, über den ich genügend Lichtkreise schalten kann. Wer möchte, mag dort noch beispielsweise einen städtischen Springbrunnen, ein Mühlrad oder ein Sägewerk betreiben.
Die Beleuchtungskörper (Abbildung 7) für den Bahnhof und die Modellhäuser bestehen aus einem NPN-Transistor-Treiber und einem Stück LED-Strip. Kreisrund ausgeführt sorgen sie für eine gleichmäßige Ausleuchtung im Inneren der Häuser. Sie sind vom Bahnstrom getrennt und werden aus demselben Netzteil wie der RasPi mit 5 Volt Gleichspannung versorgt.
Ausblick
Ein Manko der Modellbahnlösung mit dem Raspberry Pi und eigener Elektronik besteht momentan darin, dass Sie Loks mit variabler Adresse (ohne DIP-Schalter) nicht ohne die originalen Hilfsmittel des Modellbahnherstellers anlernen können. Das erfordert bei MFX-Loks noch eine kleine Mobile Station von Märklin, die aber viel weniger kostet als die größere Schwester Central Station. Ein separates Programmiergleis braucht es dazu nicht. Es genügt, die Mobile Station am zweiten Gleisboxanschluss anzustecken und danach die neue Lok in der Anlage irgendwo aufzusetzen. Kennt Rocrail die Mobile Station, können Sie das Märklin-Gerät wieder abkabeln.









