Zum Auslesen der Informationen kommt ein unter dem Gleis montiert günstiges RFID/NFC RC522 Modul von NXP zum Einsatz. Der NFC Leser decodiert während des überfahren des Zuges den TAG der auf der Unterseite des Zuges angebracht ist. Dabei wir die “unique serial number” (UID) des TAG ausgelesen. Die UID ist je nach Typ 4 oder 7 Byte lang. Aus diesem Grund benutze ich nur die ersten 4 Bytes. Diese 4 Bytes werden addiert und man erhält so eine eigene “Zugidentifikationsnummer”. Es können durch diese Methode allerdings gleiche Nummern entstehen, wenn das Risiko auch sehr gering ist. Diese Tags können leider nicht benutzt werden.
Programmierung:
Programmiert wird der Sx-Decoder über den Sx-Bus. Durch drücken der Prog-Taste wird der Programmiermodus aktiviert. Auf der LCD-Anzeige erscheint Prog-Mode und die aktuelle Decoder Adresse. Die aktuellen Daten des Sx-Bus werden im EEprom abgespeichert und die Decoder-Adresse wird auf den Sx-Bus in Adresse 0 geschrieben.
Jetzt kann mit einem Handregler oder PC die Sx-Adresse geändert werden.
Danach die Prog-Taste erneut drücken und die Adresse wird dauerhaft im EEprom abgespeichert.
Die alten Daten des Sx-Bus werden aus dem EEprom geladen und auf den Sx-Bus geschrieben. Somit hat der Sx-Bus den gleichen Zustand wie vor der Programmierung. Es erscheint Prog beendet sowie die neue Adresse auf der Anzeige und der Decoder ist bereit.
Es kann ein Display zur Anzeige der Loknummer einfach auf die rechte Buchsenleiste des Sx-Decoders gesteckt werden. Die Schaltung unterstützt nur Display-Controller des Typs HD44780.
Es gibt eine Status Led die kurz aufleuchtet wenn ein neuer Tag ausgelesen wurde.
Zusätzlich kann über eine Led signalisiert werden, ob die Gleisspannung eingeschaltet ist.
Die Prog-Led ist nicht wie sonst die Led auf dem Nano, da der Ausgang für den Takt vom RFID-Leser fest vorgegeben ist, sondern muß extern verkabelt werden.
Als TAG’s kommen NTAG213 Aufkleber die es in verschiedenen Größen und Formen gibt zum Einsatz. Die kleinen rechteckigen Aufkleber mit ca. 12x19mm gefallen mir von der Größe am Besten. Allerdings funktionieren diese nicht auf Metallgehäuse. Dafür werden spezielle OnMetal Tags benötigt die leider etwas grösser sind. Alle TAG’s werden einfach am Fahrzeugboden angeklebt und benötigen keine eigene Stromversorgung. Die Loks müssen also nicht geöffnet und verkabelt werden. Allerdings dürfen die Aufkleber nicht weit von der Lesestelle entfernt sein.
Der Preis liegt unter einem Euro pro TAG.
Belegung ab Version 3.2
Buchsenleiste links
Arduino
I/O
Funktion
1
Vin
+12V
2
+5V
3
D1
 
4
D0
 
5
RST
6
GND
7
D2
Takt
8
D3
Schreiben H
9
D4
Lesen
10
D5
Gleis
11
D6
Schreiben L
12
D7
 
13
D8
 
14
D9
Reset
15
D10
SPI SS
16
D11
SPI MOSI
17
D12
SPI MISO
18
D13
SPI SCK
19
3V3
20
GND
Buchsenleiste rechts
Arduino
I/O
Funktion
1
 
2
 
3
 
4
 
5
GND
GND
6
100Ohm
Beleuchtung
7
A5
D7
8
A4
D6
9
A3
D5
10
A2
D4
11
 
 
12
A7
13
A6
Prog Taster
14
 
15
A1
E
16
GND
GND
17
A0
RS
18
100Ohm
Kontrast
19
+5V
+5V
20
GND
GND
Zuletzt geändert am 28.12.2020
 
 
.
Zugnummernerkennung mittels RFID oder landläufig auch NFC genannt.
Damit dies funktioniert ist es nötig jeder Lok einen einmaligen RFID Tag zu zuweisen.
Sobald ein bekanntes RFID Etikett ausgelesen wird, wird die damit verknüpfte Lokadresse in eine SxAdresse auf den Sx-Bus geschrieben. Dies ist hilfreich um Steuerprogrammen wie SRC60 mitzuteilen, wenn eine neue Lok auf die Modellbahn kommt bzw verschwindet. Danach wird die Lok automatisch vom Programm verfolgt.
Die Verknüpfung der NFC-Nummer mit der Lokadresse findet diesmal nicht über den Sx-Bus statt.
Bei den Datenmengen finde ich dies zu umständlich.
Es gibt statt dessen eine Datei zum Beschreiben der EEpromzellen die die Daten der Tags und der Lokadressen enthält.
(c) Frank Keil