Der aktuelle Stand auf meinem Hosenträger
Nach den vielen Experimenten mit RFID auf meiner Teststrecke, auf dem Hosenträger, habe ich mich für die Variante 2-fach RFID mit Kommunikation über WLAN entschieden. WLAN reduziert den Kabelsalat und wird aktuell für alle Rückmelder, Belegtmelder, Gleiskontakte und eben auch für die Erkennung der Fahrzeugnummer über RFID verwendet.

Zum Erkennen eines Modellbahnfahrzeuges muss es mit einem „Tag“, quasi einem elektronischen Typenschild, versehen werden. Es gibt verschiedene Möglichkeiten, ein Fahrzeug mit einem Tag zu identifizieren.
Tag UID
Die naheliegendste Variante ist es, die einmalige Identifikationsnummer des Tags zu verwenden. Bei den von mir verwendeten Tags aus der Gruppe „NTAG2xxt“ ist das eine Gruppe von 7-Bytes, UID genannt (für Unique IDentifier). Es besteht natürlich keinen Zusammenhang zwischen Fahrzeugtype und UID. Die muss im Modellbahnsteuerprogramm festgelegt werden, indem man die 7 Stellen abschreibt und als „Code“ für ein bestimmtes Fahrzeug eintippt. Hier ein Beispiel aus der Zeit, als ich die Lok-ID noch über LocoNet eingelesen haben. Die Tag UID lautete 04:97:0F:4A:62:3E:84, also eine hexadezimale Darstellung wie bei der Mac-ID einer Netzwerkkarte. Rocrail verlangte die dezimale Darstellung dieser UID als 4.151.15.74.98.62.132. Separat dazu muss bei einem DCC Fahrzeug auch noch eine Adresse eingetragen werden.

CRC14 aus Tag UID
Eine weitere Variante zur Identifikation eines Fahrzeuges, die ebenfalls auf der UID des Tags basiert, ist die Aufbereitung einer 14-Bit CRC Prüfsumme aus der UID, wobei Zahlen im Bereich von 0 bis 16.383 erzeugt werden. Um das wie eine DCC Decoderadresse (1 – 10239) aussehen zu lassen, musste bei CRC Prüfsummen über 10.239 einfach 10.240 abgezogen werden. So war es möglich, die aus der UID des Tags abgeleitete Kennung auch als DCC-Adresse zu verwenden. Warum nun aber die Lok BR78 486 ausgerechnet die DCC-Adresse 1184 haben sollte, war natürlich für niemanden ersichtlich, weil auf Anhieb nicht klar ist, dass die CRC14 Prüfsumme aus 4.151.15.74.98.62.132 die 1184 ergibt. Aber die Variante war schon mal ein ganzes Stück einfacher, weil für Code und DCC-Adresse dieselbe Zahl Verwendung fand.
Hatten wir bei der CRC14 Lösung noch die Adresse der Lok dem Tag angepasst, wird bei der aktuell von mir bevorzugten Lösung das Tag der Fahrzeugadresse angepasst. Die NTAG2xx Tags haben einen Speicherbereich, der dem Anwender im Lese- und Schreibmodus zur Verfügung steht. Deswegen schreibe ich aktuell die Lok-Adresse oder Wagenkennung zusammen mit noch anderen Informationen in diesen Bereich. So kann ich auch eine Internet- oder Intranet-Web-Adresse eintragen, um eine Seite mit weiteren Informationen zu diesem Fahrzeug aufzurufen. Halte ich das Fahrzeug mit dem Tag an mein Smartphone, zeigt mir der Browser alles Wissenswertes zu diesem Fahrzeug an. So habe eigentlich den Komfort einer RailCom Lösung, ohne alle Lokdecoder zu ersetzen und eine entsprechende RC Infrastruktur bereitstellen zu müssen.
Der Fahrzeug-Tag wird einfach unter das Fahrzeug geklebt. Der RFID-Tag-Leser wird unter die Schienen gebaut bzw. die RFID-Antenne ausgelagert und in die Schiene integriert.
Erkennung der Aufgleisrichtung
Befestigt man das RFID-Tag links oder rechts von der Fahrzeugmitte, kann man mit 2 Lesern und ebenfalls mittig versetzten Lesern (Antennen) feststellen, wo der Führerstand 1 des Fahrzeuges ist und damit im Modellbahnsteuerprogramm festlegen, in welcher Richtung losgefahren werden muss (nicht in Richtung Schuppenwand, sondern in Richtung Schuppentor).
Verwendung des RFID NFC PN532 V3 Lesers
Aktuell ist dieses RFID Lesemodul für kleines Geld im Netz verfügbar. Die bisher verwendete Arduino RFID Bibliothek MFRC522 ist für den Chip PN532 nicht brauchbar und so habe ich mich für die Adafruit-PN532 Bibliothek entschieden. Der Code für einen Leser musste deswegen komplett neu geschrieben werden.
Nun sollte der Leser nicht, wie bisher, nur NTAG2xx Tags lesen können, aber alternativ auch die Mifare Classic 1k Tags, die ich massenweise herumliegen habe. Sie gibt es in Kreditkartenformat, aber auch als runde Tags in Form eines blauen Schlüsselanhängers. Immer, wenn ich RFID-RC522 Lesemodule gekauft habe, war eine solche Mifare Classic Checkkarte und ein blauer Schlüsselanhänger mit Mifare Classic Tag dabei. Beide letzte Varianten sind wohl für größere Spuren gut geeignet.
Die NTAG2xx gibt es in den Maßen von 15 × 6, 20 × 6 und 19 × 12 mm und sind deswegen für Fahrzeuge der kleineren Spuren N, TT und H0 prädestiniert. Die meisten Tags sind selbstklebend und werden auf einem Trägerband aus Papier geliefert. Einige werden auch lose geliefert und haben eine Ferrit-Folie als Träger. Damit sind sie geeignet für den Betrieb auf metallischen Untergründen.
Nicht nur Lesen, sondern auch Schreiben.
Wenn schon ein neuer RFID-Leser für die Modellbahn gebaut wird, sollte dieser die Tags auch schreiben können. Schon in den Anfangstagen unserer RFID Experimente wurde ein Format vereinbart, das nicht nur die Fahrzeugadresse, sondern auch das Fahrzeugprotokoll, die Anzahl der Fahrstufen und einen anwenderdefinierten Wert beinhaltet. Außerdem sollte es möglich sein, einen Link für eine Web-Adresse mit zusätzlichen Informationen zu diesem Modell oder seinem Vorbild im Tag zu speichern. Mit einem Smartphone kann man dann den Tag lesen und die entsprechende Seite aufrufen.
Der bisherige Tagwriter auf der Basis eines Arduino Uno wendet dieses Format auch schon an, ohne die dafür erforderlichen Werte im seriellen Monitor beim Anwender anzufordern. Überhaupt ist die Bedienung und Eingabe der Daten im seriellen Monitor nicht sehr komfortabel.
Deswegen werden beim neuen Tagwriter die Eingaben im Web-Interface gemacht und die gelesenen Werte auch dort angezeigt.
| Nachbauen des Tagwriters mit PN532 V3 |
| Firmware für Lolin(Wemos) D1 R1 (Mini) als Tagleser und Tagwriter (Nextgen Z21 ) |
| Schaltbild für die Verdrahtung des PN532 |
| Beitrag zum Arduino Uno mit RF522 als Tagwriter |
© 2025 Gerard Clemens – letzte Aktualisierung 23.10.2025
Schreibe einen Kommentar