Sensoren bilden eine wichtige Komponente in der Automatisierung von LEGO Eisenbahnen. Sie werden verwendet, um das Erreichen einer bestimmten Position durch einen Zug festzustellen und an den zentralen Steuerungsrechner weiterzuleiten. Die Steuerungssoftware löst dann je nach Situation verschiedene Aktionen aus, wie z.B. Stoppen des Zuges, Belegen des nächsten Blocks, Freigeben des letzten Blocks usw.

Das folgende Diagramm zeigt, wie Sensoren in das MattzoBricks Train Automation System eingebunden werden:

MattzoBricks Train Automation System: Sensoren
MattzoBricks Train Automation System: Sensoren

Bisher wurden in der Automatisierung von LEGO Eisenbahnen überwiegend Infrarot-Sensoren auf optischer Basis verwendet. Diese Technologie hat jedoch erhebliche Nachteile:

  • Starke Abhängigkeit von Umgebungslicht und anderen Umwelteinflussen.
  • Probleme bei der Erfassung von dunklen Fahrzeugen mit komplizierten Reflektions-Flächen, speziell Dampfloks.
  • Sie sind hässlich und benötigen relativ viel Platz.
  • Schwierig in Kurven zu installieren.
  • Aufgrund der analogen Basis-Technologie werden relativ aufwendige, teure Controller benötigt, um das Signal zu verarbeiten.

Um diese Probleme zu lösen, haben wir neue Detektoren entwickelt, die auf einer völlig anderen Technologie basieren: Reed-Sensoren!

Die Vorteile von Reed-Sensoren im Vergleich mit optischen Sensoren sind:

  • Hundertprozentige Zuverlässigkeit.
  • Verzögerungsfreie Meldung eines Kontakts.
  • Auslösung durch Magnete – Unabhängigkeit von Lichtsituation und anderen Umwelteinflüssen.
  • Problemlose Installation in Kurven.
  • Sehr geringer Platzbedarf, kleiner “Footprint”. Kann sogar unsichtbar unter den Gleisen platziert werden.
  • Arbeitet digital und benötigt weniger aufwendige Controller.
  • Günstig und einfach zu bauen.

Medien

Bevor man Teile bestellt, sollte man zunächst dieses Video ansehen:

Video: Reed-Sensoren für die LEGO Eisenbahn

In dem Video zeigen wir das Design der Sensoren und fahren ein paar Runden mit der V200 und dem Smaragd-Express über unsere Test-Anlage.

Das Video ist ein wenig älter. Wenn ich etwas Zeit finde, werde ich ein neues machen.

Sensoren bauen

Benötigtes Material

  • Reed Sensoren Typ GPS-14A, Größe 2,5x14mm.
  • 2x LEGO Teil 4081b (Plate, Modified 1 x 1 with Light Attachment – Thick Ring).
  • Grundlegende Elektronik-Sachen aus der Schublade wie Kabel, Stecker etc.
  • Optional ein paar LEGO-Steine zur Verschönerung des Sensors (s. unten).

Auf dieser Seite findet man mehr Details und Links zur Beschaffung der notwendigen Materialien (bill of materials).

Zum Übertragen der Rückmelde-Ereignisse an Rocrail benötigt man außerdem einen MattzoLayoutController.

Vorgehensweise

Die Vorgehensweise ist einfach:

  • Reed Sensor mittig in beide Plate Modifieds einführen.
  • Kabel an beiden Enden anlöten.
  • Ins Gleis einsetzen und mit MattzoLayoutController verbinden.

Verschönerung

Wie man die Sensoren ins Gleibett einbaut, ist natürlich einem selbst überlassen. Das LEGO-System gibt einem hier alle Freiheiten.

Meine Standard Konstruktion sieht in etwa wie folgt aus:

Reed Sensor für LEGO Eisenbahnen
Reed Sensor für LEGO Eisenbahnen

Ich habe dazu auch eine kleine Anleitung als pdf-Datei gemacht [Download].

Beispiel-Seite aus der Bauanleitung für Sensoren für LEGO-Eisenbahnen

Die Bauanleitung enthält auch eine Seite mit den benötigten Teilen.

Magnete

Ein LEGO Zugmotor löst einen Reed-Schalter nur dann aus, wenn er aktiv betrieben wird, also wenn er unter Strom steht. Nur dann spannt er das notwendige Magnetfeld auf, das den Reed-Schalter auslöst. Unter normalen Bedingungen geschieht dies auch relativ zuverlässig.

Nichtsdestotrotz wird der Profi immer auf höchste Betriebssicherheit setzen und aus diesem Grunde nicht auf zusätzliche, stromunabhängige Magnete in Loks und Waggons verzichten. Diese lösen die Sensoren praktisch in allen Fällen aus.

Benötigtes Material

  • Neodyme Magnete, Durchmesser 5mm, Länge 15mm
  • 2x LEGO Teil 3700 (Technic, Brick 1 x 2 with Hole)

Installation

Um die Magnete in die Technik-Steine zu pressen, benötigt man erheblichen Druck. Die Aufgabe löst man am besten mit einem Schraubstock. Der Magnet ist später nicht mehr ohne Weiteres aus den LEGO-Steine zu entfernen, und die Steine verformen sich beim Einpressen ebenfalls, so dass anschließend auch nur noch als Magnethalter taugen.

Wichtig: die Magnete müssen quer zur Schiene eingebaut werden, damit das Magnetfeld günstig ausgerichtet ist!

Alternative Sensor-Orientierung

Dieser Abschnitt kann beim Lesen übersprungen werden, da sein praktischer Nutzen eher gering ist.

Der Einbau der Magnete in die Züge hat sich wie im Video gezeigt als optimal erwiesen. Es gibt aber auch eine andere Möglichkeit, nämlich das Auslösen der Reed Sensoren mit den Magneten der Zugkupplungen. Dies ist jedoch etwas trickreich, bedingt das Drehen des Reed Schalters um 90° und funktioniert auch nicht so zuverlässig wie die im Video gezeigte Variante mit den Neodym-Magneten.

Der Reed-Schalter wird um 90° gedreht und in Kurven etwas nach außen versetzt, da die Kupplungen wegen der Länge der Fahrzeuge nach außen auslenken und nicht mehr über die Gleismitte sind. Eine Einzelkupplung ist dabei jedoch auch unter optimalen Bedingungen nicht in der Lage, den Reed Schalter sicher auszulösen. Grund dafür ist nicht so sehr die Stärke des Magnetfelds des Kupplungsmagneten, sondern die mangelnde Kontrolle über seine Ausrichtung im abgekuppelten Zustand innerhalb des Kupplungsträgers:

Reed Schalter und Einzelkupplung: kein Kontakt

Anders, wenn man einen 10mm Neodym-Magneten vor die Kupplung setzt. Dieser sorgt für die korrekte Ausrichtung des Kupplungsmagneten und verstärkt überdies auch das Magnetfeld. Der Kontakt wird ausgelöst:

Reed Schalter mit Einzelkupplung und zusätzlichem 10mm-Neodym-Magnet: Kontakt!

Dies funktioniert sogar noch bei weggedrehter Kupplung:

Funktioniert sogar noch bei ausgeschwenkter Kupplung

Verbundene Magnete lösen hingegen auch ohne zusätzlichen Neodym-Magnet aus, da sie stets korrekt ausgerichtet sind und sich gegenseitig verstärken:

Reed Schalter mit verbundenen Kupplungen: Kontakt!

Die Kupplungsvariante ist insgesamt etwas wackelig und – wenn überhaupt – nur für kleinere Anlagen empfehlenswert. Da ein gedrehter Reed-Schalter nicht mehr von einem Zugmotor ausgelöst wird, wird ohne Zusatzmagnete an der Frontkupplung der Lokomotive der Reedschalter dann zwischen Lok und erstem Waggon (knapp) auslösen. Dies ist bei der Positionierung der Sensoren zu beachten.

Das folgende Video zeigt die Option mit den gedrehten Reed Sensoren in Aktion:

Video: Reed-Sensoren Teil 2

Bei größeren Anlagen mit 20 Zügen, von denen zehn gleichzeitig in Bewegung sind, wird man sich immer für die maximale Betriebssicherheit entscheiden, damit wegen eines überfahrenen Sensors nicht gleich die ganze Show platzt.

Sensor-Varianten

Im MattzoBricks Train Automation System 2.0 gibt es unterschiedliche physische und logische Typen von Sensoren. Diese werden im folgenden beschrieben.

Lokale Sensoren

Sensoren sind in der Regel physisch tatsächlich existierende Reed-Schalter wie oben beschrieben. Sie werden als lokale Sensoren (local sensors) bezeichnet.

Entfernte Sensoren

Entfernte Sensoren (remote sensors) sind an einem anderen MattzoController angeschlossen als an dem, für den der Sensor-Event relevant ist. Zum Einsatz kommen entfernte Sensoren bei Bahnübergängen im Autonomous Mode. Speziell Inbound-Sensoren können relativ weit vom Bahnübergang entfernt stehen, so dass es hier sinnvoll sein kann, sich die langen Kabel zu sparen und stattdessen einen Remote Sensor zu verwenden.

Virtuelle Sensoren

Virtuelle Sensoren (virtual sensors) existieren nicht in der physischen Welt. Sie sind reine Software-Sensoren. Virtuelle Sensoren werden bei bestimmten Ereignissen in MattzoControllern ausgelöst. Es gibt folgende Varianten:

  • Virtuelle Sensoren für Weichen
    • In Rocrail können Sensoren für Weichen definiert werden. Die Sensoren kontrollieren die korrekte Weichenlage. Erst wenn der Sensor auf der entsprechenden Seite rückgemeldet hat, geht Rocrail davon aus, dass die Weiche sicher geschaltet wurde und gibt die Route frei.
    • Virtuelle Sensoren für Weichen werden im MattzoLayoutController definiert und senen einen Sensor-Event an Rocrail, wenn ein Weichenkommando empfangen und die Weiche umgelegt wurde.
  • Virtuelle Sensoren für Bahnübergänge
    • Auch Bahnübergänge können in Rocrail mit Sensoren konfiguriert werden. Rocrail geht dann davon aus, dass die Schranken des Bahnübergangs erst dann vollständig geöffnet oder geschlossen wurde, wenn der entsprechende Sensor-Event empangen wurde. Erst wenn die Schranken vollständig geschlossen sind, sendet der MattzoController den entsprechenden Sensor-Event an Rocrail.
    • Virtuelle Sensoren für Bahnübergänge erlauben, dass Züge erst dann in den Bahnübergangsbereich einfahren, wenn die Schranken tatsächlich vollständig geschlossen sind. Dies ist sinnvoll v.a. für Züge, die direkt vor dem Bahnübergang halten und erst losfahren sollen, wenn die Schranken zu sind.
  • Virtuelle Sensoren für Klappbrücken oder andere bewegliche Brücken
    • Klappbrücken profitieren eindeutig am meisten von virtuellen Sensoren. Rocrail darf Züge erst dann über Klappbrücken freigeben, wenn die Brücke sicher, eindeutig und vollständig geschlossen ist. Dies wird über einen entsprechenden virtuellen Sensor im MattzoBridgeController realisiert. Der Sensor-Event wird übermittelt, wenn der Brückenmotor die Brücke vollständig geschlossen hat.
    • So kann sichergestellt werden, dass Züge nicht in einen Brückenbereich einfahren, obwohl die Brücke nicht vollständig geschlossen ist.

14 thoughts on “Sensoren

  1. Super Artikel und ich stimme dir zu, bei dem Aufwand den man hier betreibt sollte man nicht an den Magnete sparen und die die Zuverlässigkeit des Systems gefährden.

    Ggf. kannst du den Artikel ja noch um ein Bild vom Schaltplan und eine Erläuterung, wie das Sensorsignal an Rocrail weitergeleitet wird, erweitern (oder kommt das später noch in einem Extra-Artikel?)

  2. Es gibt noch die omnipolaren Hallsensoren bei welchen die Richtung der Magneten keine Rolle spielt. Da ja auch der Reedkontakt einen Neodym Magneten benötigt, ginge dies auch für den Hallsensor.

    1. Stimmt, aber leider sind die auch entsprechend teuer. Da wir fast 100 Sensoren benötigen, ist die Lösung mit den Reed-Schaltern aus unserer Sicht besser. Zu Hall-Sensoren werde ich aber vielleicht auch noch mal etwas bringen.

  3. I’d like to suggest adding amazon affiliate links for the equipment your are using. I would like to start playing around with this, but I have very little experience with micro controllers. Affiliate links would help lower the barrier to entry because i know I’m at least buying the right equipment.

    1. Hi Andrew,
      sounds like a good idea. I hesitated at first, because I wanted to keep the project private and didn’t want to give it a commercial touch. But I believe you are right, it might help in the end.

      When I have more time, I could shoot a video showing how to wire and solder the controller. Would you be interested in that as well?

      Cheers,
      Mattze

  4. Hello Mattze,

    I’m starting to build your excellent solution for automation, and have several esp8266’s at my desk now to start working with. What are the lego 1×2 plates you are using to keep the reed sensors on the tracking, do you have a part number? I can’t find it on bricklink.

    Thanks for your impressive work.

  5. These magnetic seems to work much better than infrared. Can you share details on how you to program a controller and how to configure Rocrail, so we can use them as well? Thanks in advance!

  6. Hello Mattze!

    First of all I would like to thank you for the awesome technology, development, information and videos! To make a long story short I completely taken by the modern Lego and especially with the Lego trains and availability of complex switches (Tribrix) etc. Currently, I am learning Rocrail and in a few days I will receive a couple of ESP-WROOM-32 from Amazon (HiLetgo ESP-WROOM-32 ESP32 ESP-32S). One will be for the MTC4PU and the other on for the sensors. I have also ordered the 41632 1×1 plates for the reed sensors but I am not sure about which reed sensors to get. Will the “Gebildet 10pcs Plastic Reed Switch Reed Contact Normally Open (N/O) Magnetic Induction Switch (3mm×14mm)” I found in Amazon work?

    Many Thanks!
    Nikos

    1. I recommend to order reed sensors of type “GPS-14A, size 2,5x14mm”. A look on the wbesite of Ali Express should help you.

      Please note that you need an ESP-8266 / ESP-12 for the sensor controller. Using an ESP-32 as a sensor controller might work, but presumably you would need to do firmware code changes, and need to figure out the features of the i/o pins of the ESP-32 in terms of pull-up / pull-down functionality. So it might be easier to use an ESP-8266 from the beginning.

Comments are closed.