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.
  • 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.

Schaut Euch unser Video zu Sensoren an:

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.

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.

Es gibt eine weitere Art und Weise, wie man die Reed Sensoren am Gleis befestigen kann (Dank an Henk):

Alternative fixing of reed sensors on LEGO tracks.

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.

Anzumerken ist weiterhin, dass ein Zugmotor einen Reed-Schalter nur dann auslöst, wenn er aktiv betrieben wird, wenn er also unter Strom steht. Dies sollte beim Überfahren von Sensoren praktisch immer der Fall sein. Nichtsdestotrotz wird der Profi auch aus diesem Grunde nicht auf zusätzliche, stromunabhängige Magnete in Loks und Waggons verzichten wollen.

Wenn Ihr die Sensoren nachbauen wollt, benötigt Ihr Reed-Schalter des Typs GPS-14A, Größe 2,5x14mm. Die im Video gezeigten Neodym-Magnete haben einen Durchmesser von 5mm, Höhe 3mm. Grundsätzlich lassen sich natürlich auch andere Neodymmagnete einbauen. Magnete lassen sich in Reihe schalten, so dass das Magnetfeld größer und stärker wird. Im Zweifel baut man lieber einen Magneten mehr ein.

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

Wir wünschen viel Spaß und Erfolg beim Bauen!

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.