Interessengemeinschaft Modellbahn Kaarst eV

 
 
 

DB-Anlage / bauberichte / mein messwagen

Mit Arduino und Smartphone-App auf Messfahrt

Text und Bilder: Heinrich



Ein kleines Vorwort

Auch in diesem Baubericht spielt ein Arduino-Board eine wichtige Rolle. Viele Modellbahner haben eine Scheu vor diesen "Geräten". Gerade deshalb sollten Sie hier unbedingt weiterlesen.

Ein Arduino ist eine Art "Schweizer Taschenmesser" des Modellbaus. Insbesondere Modellbahner, die nicht gleich tief in die Tasche greifen wollen, wenn sie eine elektrische oder elektronische Funktion auf ihrer Bahn realisieren möchten, sind hier sehr gut aufgehoben.

Die Hürde "Ich kann nicht programmieren" kann mit Unterstützung tausender Hilfen und Beispiele aus dem Internet überwunden werden. Das geschieht nicht immer spielend leicht und auch nicht ohne Rückschläge, aber dennoch spielerisch.

Ist es nicht das entdeckende Lernen oder schlicht die Freunde am Selbstgebauten, was unser Hobby Modellbau/Modellbahn u.a. so anziehend macht? Diese Art des Lernens hat nichts mit dumpfer Paukerei zu tun und holt unser Hobby vielleicht etwas aus den verstaubten Kellern und Dachböden heraus. Denn da gehört unser Hobby nicht hin.

Junge Menschen (und solche wie ich… 65) mögen sich auch in einer Welt voller Bildschirme zwar immer wieder von Speichenrädern und Bahnromantik begeistern lassen. Ein Blick in die Welt der Elektronik kann dennoch nicht schaden, wenn wieder mehr Menschen Freude an der kreativen Modellbahnerei bekommen sollen. Und dazu muss man nicht immer alles fertig kaufen, was viele Leute auch nicht bezahlen können oder auch nicht wollen.

Dieser Baubericht ist nicht der erste, bei dem ein Arduino unmittelbar seine Anwendung bei der Modellbahn findet und er wird sicher auch nicht der letzte sein. Bleiben Sie also dran.

Vor ca. 2 Jahrzehnten brachte die Firma Fleischmann einen Tachowagen heraus, auf dem ein Fahrradtacho montiert war. Die Signale erzeugt ein auf einer der Achsen befestigter Dauermagnet.

Bei jeder Umdrehung kommt dieser Magnet an einem am Wagenboden befestigten Reedschalter vorbei (wie beim Fahrrad). Dabei wird dieser Schalter für eine kurze Zeit geschlossen. Alles andere machte der Fahrradtacho wie am Fahrrad auch. Nur der Raddurchmesser ist natürlich viel kleiner.

Zur Bestimmung der Vorbildgeschwindigkeit muss der Tacho das Ergebnis dann noch mit 87 multiplizieren. Ich nehme an, dass die Zahl 87 Ihnen als Modellbahner etwas sagt.

Nun ja. Da es für jeden von uns verhältnismäßig schwierig ist, auf einem H0-Wagen Platz zu nehmen, müssen wir stets neben dem Wagen hergehen, um die momentane Geschwindigkeit abzulesen. Das kann schwierig werden.

Es sind in der Zwischenzeit 2 Jahrzehnte vergangen. Natürlich gibt es jetzt neuere und bessere Messwagen von der Modellbahnindustrie. Deren Preis ist m.E. kein Pappenstiel. Glücklicherweise wurden in dieser langen Zeit mindestens 3 Erfindungen gemacht, die einen Messwagen im "Eigenbau" möglich machen:

1. Smartphones
2. Arduinos
3. Kleine wiederaufladbare Akkus (Lithium-Polymer-Akkus, kurz LIPOs)

  • Als erstes wurde der gute alte Fleischmannwagen seines Fahrradtachos beraubt. Messachse mit Magnet und Reedschalter wurden weiterverwendet.

  • Ein Smartphone (Android) ist bereits vorhanden.

  • Einen Lithium-Polymer-Akku bekommt man bei den einschlägigen Händlern im Netz.

  • Dort bekommt man auch einen Arduino. Da gibt’s unterschiedliche Typen. Meine
    Wahl fiel auf den Typ MKR1010. Dies hat 3 Gründe:

    • er ist klein und passt somit leicht ins H0-Lichtraumprofil
    • er hat eine Ladeschaltung mit an Bord, die sich um den Akku kümmert
    • er verfügt über verschiedene Funk-Fähigkeiten, z.B. WLAN und Bluetooth-Low-Energie (BLE); ich habe hier BLE verwendet, um den Funkverkehr zum Smartphone herzustellen

Je nach Geschmack lässt sich das Ganze mit einer Transportkiste (es ist mehr eine Haube) für den Anlagenbetrieb tarnen. Es wäre ja auch schade, wenn man den etwas ungewöhnlichen Tiefladewagen nur zum Messen aufs Gleis setzt. Hier sieht man die wenigen Komponenten:

Es ist fast schon ein wenig schade, dass nur ein einziger Eingang am Arduino benötigt wird. Alle anderen Eingänge sind leider noch nutzlos. Aber vielleicht gibt’s ja noch Ideen für Erweiterungen.

Wie ein Smartphone wird der Akku des Messwagens per USB-Kabel aufgeladen. Den Ladevorgang steuert der Arduino dabei selbst. Die orange LED zeigt an, dass das Laden im Gange ist. Ich habe hier die "Kiste" zur Veranschaulichung abgehoben.

Tja … zum Schaltplan muss man hier wohl nicht viel sagen. Das "Schweizer Taschenmesser" lässt grüßen. Der Plan wurde mit der Software "Kicad" erstellt. Auch diese Software ist für Modellbauer mehr als interessant.

Natürlich kann man sich eine Messachse leicht selbst herstellen, da es sowohl Reedschalter als auch kleine Magnete in den einschlägigen Online-Läden gibt. Damit lässt sich fast jeder Wagen, der genug Platz für Akku und Arduino hat, zum Messwagen machen.

Dieses Kapitel ist für den einen oder anderen Modellbahner mit Eigenbauabsichten womöglich eine Hürde. Dennoch möchte ich jeden ermutigen, auch hier weiterzulesen, auch wenn der Messwagen nicht unbedingt ein Anfängerprojekt ist.

Die Software für den Arduino wird mit Hilfe eines kostenlosen PC-Programms (Arduino-IDE) geschrieben und per USB-Kabel auf den Arduino übertragen. Ab dann kann der Arduino selbständig ohne den PC arbeiten (die Arduino-IDE hat u.a. auch eine deutsche Benutzeroberfläche).

Nun zum Inhalt: Was macht das Programm auf dem Arduino? Der Arduino soll die Impulse, die er vom Reedschalter bekommt mit der Zeit, die er von seiner inneren Uhr bekommt, zu einem Geschwindigkeitswert verrechnen. Alle Arduinos haben eine sehr genaue innere Uhr, die sich leicht per Programm auslesen lässt. Jetzt kommt eine kleine Portion Physik:

Geschwindigkeit = Weg / Zeit

Genauer gesagt: Der Weg zwischen 2 Impulsen dividiert durch die Zeit zwischen 2 Impulsen. Zwischen 2 Impulsen vom Reedschalter liegt jeweils eine Radumdrehung. Das bedeutet, dass unser Wagen genau einen Radumfang weitergefahren ist. Und diesen Weg können wir ausrechnen. Natürlich nehmen wir dazu den Raddurchmesser, auf dem der Wagen auf der Schiene rollt.

Weg = Raddurchmesser * 3,14159

Jetzt noch ein klein wenig Mathe:

Geschwindigkeit = Raddurchmesser * 3,14159
                                                              / 
Zeit zwischen 2 Impulsen * 87 * 3,6

Den Faktor 87 kennen wir ja. Der Faktor 3,6 rechnet die Geschwindigkeit, gemessen in mm/ms, in km/h um.

Ganz nebenbei zählen wir noch jede Radumdrehung und berechnen damit die zurückgelegte Strecke:

Zurückgelegte Strecke = Anzahl der Radumdrehungen
                                                                 * Raddurchmesser * 3,14159

Diese beiden Werte, Geschwindigkeit und zurückgelegte Strecke, funken wir wieder und wieder an das Smartphone…. das war's!

Hier folgt beispielhaft ein kleiner Ausschnitt aus dem Programm für den Arduino, damit man sieht, dass sich diese Überlegungen sehr ähnlich niederschreiben lassen. Weiter möchte ich es hier aber nicht vertiefen. Es geht nur um einen allerersten Eindruck.

Benötigt wird eine APP, die die vom Arduino verschickten Signale auffängt und anzeigt. Die Suche nach etwas Fertigem war erwartungsgemäß erfolglos. Aber es gibt Abhilfe, denn es gibt auch hierfür eine PC-Software, mit der man APPs tatsächlich selbst schreiben kann.

Die Software "APP-Inventor" (deutsch: App-Erfinder) wird vom MIT (deutsch: Massachusetts-Institut für Technologie) bereitgestellt. Auch diese Software ist kostenlos und ihre Benutzerführung ist in Deutsch verfügbar. Die Software ist Cloud basierend, was aber kein Hindernis darstellt.

Der APP-Inventor ist für Jugendliche zum Erlernen von Programmierung gedacht und m.E. sehr anschaulich. Programmelemente, die zueinander passen, erkennt man auf Anhieb, da sie wie Puzzelteile gestaltet sind.

Auch dieser Ausschnitt soll natürlich nur einen kleinen Eindruck vermitteln, was man am PC vor sich sieht. Die bunten Blöcke schiebt man munter mit der Maus an- und ineinander. Einen besseren Eindruck bekommen Sie, wenn Sie sich dazu das eine oder andere von tausenden YouTube-Videos ansehen.

Und so sieht die "fertige" App aus

Im Ergebnis zeigt die so erstellte Messwagen-APP auf dem Smartphone eine einfache Oberfläche.

  









Zunächst ein großes Zeigerinstrument für die Geschwindigkeit, wie wir es wohl alle kennen dürften. Natürlich zeigt es die Vorbildgeschwindigkeit an. Zusätzlich darunter noch als Digitalanzeige (gelb).








Darunter kommt noch der "Kilometerzähler", der aber hier ein Millimeterzähler ist und wie ein Tageskilometerzähler beim Auto jederzeit per Knopfdruck wieder auf 0 gesetzt werden kann (grün). Damit lassen sich Strecken auf der Anlage sehr bequem ausmessen.


Dann noch 3 Schaltflächen, deren Funktion nicht weiter beschrieben werden muss.

 

Übrigens: Auf der Vereinsanlage Karlsforst kann ein Zug etwa 76.000 mm = 76 m an einem Stück fahren, ohne ein Gleisstück oder auch nur eine Weiche doppelt zu befahren. Da lohnt sich ein Besuch bei unserem Stammtisch in Neuss vielleicht doch einmal.

Die Aussicht, Dinge wie etwa diesen verhältnismäßig preiswerten Messwagen mit Ablesung per APP auf das Gleis zu stellen, ist für mich immer wieder eine zusätzliche Motivation. Besonders weil er ja auch noch "selbstgemacht" ist.