Czytnik RFID 125 kHz

Podłączenie i test czytnika RFID

Wstęp

System RFID w uproszczeniu składa się z dwóch elementów – czytnika i tokenów. Token to fizyczna rzecz, mająca w sobie trochę elektroniki. Każdy token ma swój unikalny numer. Gdy token zostanie zbliżony do drugiego elementu – czytnika, ten będzie w stanie odczytać ten numer.

Jakie ma to zalety? Po pierwsze – token nie musi mieć swojego zasilania (wbudowanej baterii). Może być mały, lekki i odporny na wodę. Po drugie – nie jest potrzebny fizyczny kontakt tokena i czytnika – wystarczy token zbliżyć na kilka, kilkanaście centymetrów aby go odczytać.

Na rynku dostępnych jest kilka standardów, jeden z pierwszych to standard działający na częstotliwości 125 kHz. Urządzenia i tokeny do niego są proste a co za tym idzie niedrogie.

Jak skorzystać z RFID?

Pokażę teraz jak wygląda odczytywanie tokenów. Zestaw RFID sprzedawany przez Nettigo składa się z czytnika oraz 5 tokenów – 2 kart oraz trzech breloczków. Przyjrzyjmy się jednemu.

Token RFID

Jest na nim numer. Ale to nie numer, który zostanie odczytany przez czytnik. Dlaczego? Gdyby numer nadrukowany na tokenie oraz ten ‚w środku’ były takie same, łatwo byłoby sklonować token, a tak aby poznać jego numer trzeba go odczytać – nie jest to jakiś duży problem, ale zawsze utrudnienie.

Teraz – jak go odczytać. Przyjrzyjmy się czytnikowi. Jak napisałem ma interfejs UART, czyli można go podłączyć do Arduino korzystając z portu szeregowego, lub do komputera za pomocą konwertera USB/Serial.

Czytnik ma trzy złącza: 2, 3, i 5 pinów. Złącze dwu-pinowe jest przeznaczone na antenę dołączoną do zestawu. Nie ma znaczenia jak ją podłączymy. Pozostałe dwa złącza pozwoli opisać to zdjęcie:

Wyprowadzenia czytnika RFID

Zaznaczyliśmy na czerwono piny nr 1 i tak złącze trzy-pinowe:

Jak widać rola jego jest informacyjna – można podłączyć diodę, która będzie ludziom sygnalizować że został odczytany token.

Złącze 5-cio pinowe to jest to co nam jest potrzebne aby uzyskać informację od czytnika:

Zademonstrujemy podłączenie czytnika do komputera z wykorzystaniem konwertera USB/Serial – FTDI Friend. Podłączamy TX (pin 1) czytnika do RX na FTDI Friend, masę i zasilanie 5V – i gotowe:

Podłączenie czytnika RFID do FTDI Friend

Po wsadzeniu kabla USB do komputera i podpięciu monitora portu szeregowego (Hyperterminal na Windows, gtkterm lub minicom na Linuxie, lub monitor z Arduino IDE, parametry portu 9600,8,N,1) dostaniemy np taki ciąg:

0041DEF392FE

Najpierw – bajt o wartości 0x02 – symbol startu numeru karty, potem 5 bajtów zapisanych w ASCI w kodowaniu szesnastkowym (tutaj to 00-41-DE-F3-92), dwa znaki sumy kontrolnej (XOR 5 bajtów, tutaj to FE), bajt o wartości 0x03 – znak końca transmisji.

W dużym skrócie – to tyle. Podłączyć do Arduino można ‚tak samo’. Czyli podłączamy zasilanie i masę, oraz RX na Arduino (D0) z TX na czytniku i korzystając z Serial.read() można odczytywać dane.

Cały układ podłączony via FTDI Friend wygląda tak:

Cały układ