- Wymagane materiały
- Czytnik RFID EM-18
- Schemat obwodu czytnika RFID MSP430 i jego działanie
- Kod i wyjaśnienie
W tym samouczku projektujemy system do odczytu kart RFID za pomocą MSP430 i czytnika RFID. RFID to skrót od Radio Frequency Identification. Każda karta posiada unikalny identyfikator, dzięki czemu doskonale sprawdza się w wielu zastosowaniach uwierzytelniających, np. W biurach, galeriach handlowych i wielu innych miejscach, do których może wejść tylko osoba posiadająca kartę autoryzacyjną. RFID jest używany w centrach handlowych, aby zapobiec kradzieży, gdzie produkt zostanie oznaczony chipem RFID, a jeśli ktoś opuści budynek z chipem RFID, automatycznie włącza się alarm, a kradzież zostaje zatrzymana. Znacznik RFID jest tak mały, jak ziarnko piasku. Systemy uwierzytelniania RFID są łatwe w projektowaniu i tanie. Niektóre szkoły i uczelnie używają obecnie RFID jako rejestru obecności.
Wymagane materiały
1. MSP430 Launchpad
2. EM-18 (moduł czytnika RFID)
3. Wyświetlacz LCD 16 * 2
4. Potencjometr
5. Płytka prototypowa
6. Przewody połączeniowe
Oprogramowanie: Energia IDE
Czytnik RFID EM-18
Każda karta RFID ma wbudowany unikalny identyfikator, a czytnik RFID służy do odczytu karty RFID nr. Czytnik RFID EM-18 pracuje z częstotliwością 125 KHz i posiada wbudowaną antenę i może być zasilany napięciem 5V. Zapewnia wyjście szeregowe wraz z wyjściem wagi. Zasięg to około 8-12cm. parametry komunikacji szeregowej to 9600bps, 8 bitów danych, 1 bit stopu. Ta bezprzewodowa identyfikacja RF jest używana w wielu systemach, takich jak
System obecności oparty na RFID,
Systemy bezpieczeństwa,
Maszyny do głosowania, Opłaty drogowe
Sprawdź wszystkie projekty RFID tutaj.
Wyjście dostarczane przez czytnik RFID EM-18 jest w 12-cyfrowym formacie ASCII. Z 12 cyfr pierwszych 10 cyfr to numer karty, a dwie ostatnie to wynik XOR numeru karty. Ostatnie dwie cyfry służą do sprawdzania błędów.
Np. Numer karty to 0200107D0D62 odczytany z czytnika to numer karty na karcie będzie taki jak poniżej.
02 - preambuła
00107D0D = 1080589 dziesiętnie.
62 to wartość XOR dla (02 XOR 00 XOR 10 XOR 7D XOR 0D).
Stąd numer na karcie to 0001080589.
Schemat obwodu czytnika RFID MSP430 i jego działanie
Będziemy używać sprzętowego UART MSP430, więc upewnij się, że zworki RXD i TXD na płycie są w trybie HW UART. Następnie podłącz Tx EM-18 do RXD (P1.1) MSP430.
Zanim przejdziemy dalej, musimy zapoznać się z komunikacją szeregową. Moduł RFID wysyła tutaj dane do sterownika szeregowo. Ma inny tryb komunikacji, ale dla łatwej komunikacji wybieramy RS232. Pin RS232 modułu jest połączony z pinem RXD MSP430.
Dane przesyłane przez moduł RFID są następujące:
Teraz, aby skonfigurować połączenie między czytnikiem RFID a MSP430, musimy włączyć komunikację szeregową w MSP430. Komunikację szeregową włączoną w MSP430 można przeprowadzić za pomocą jednego polecenia.
Serial.begin (9600); data = Serial.read ();
Jak pokazano na powyższym rysunku, komunikacja RFID odbywa się z szybkością BAUD 9600 bitów na sekundę. Aby więc MSP430 ustalić taką prędkość transmisji i rozpocząć komunikację szeregową, używamy polecenia "Serial.begin (9600);". Tutaj 9600 jest szybkością transmisji i jest zmienne.
Teraz, gdy prędkość transmisji jest ustawiona, MSP jest gotowy do odbioru danych szeregowych. Te dane są pobierane za pomocą polecenia „data = Serial.read ();”. Za pomocą tego polecenia dane szeregowe są pobierane w ' danych ' o nazwie integer.
Gdy karta zbliży się do czytnika, czytnik odczyta dane szeregowe i wyśle je do MSP, MSP zostanie zaprogramowany tak, aby pokazywał tę wartość na LCD, więc będziemy mieli ID karty na LCD.
Kod i wyjaśnienie
Nasz kod napiszemy w Energia IDE. Działa tak samo jak Arduino IDE i jest łatwy w użyciu. Kompletny kod znajduje się na końcu tego projektu, tutaj wyjaśniamy kilka jego części.
Najpierw dołącz bibliotekę wyświetlacza LCD i zadeklaruj tablicę znaków do przechowywania numeru RFID.
#zawierać
W funkcji konfiguracji włącz wyświetlacz LCD i komunikację szeregową, określając szybkość transmisji 9600.
void setup () { lcd.begin (16, 2); Serial.begin (9600); … ..
W funkcji pętli sprawdzimy, czy dane szeregowe są dostępne, czy nie. Jeśli to możliwe, przechowywać dane w wejściowym tablicy z Serial.read () i wyświetlić go na jednym LCD jednym użyciu podczas pętli.
while (Serial.available () && count <12) // Odczytaj 12 znaków i zapisz je w tablicy wejściowej { input = Serial.read (); // przechowywanie 12 znaków jeden po drugim Serial.print (wejście); lcd.print (wejście); opóźnienie (300); liczyć ++; if (liczba == 12) { lcd .print (""); count = 0; // po 12 znaków są odczytywane dostać się do rozpoczęcia i czekać na drugi ID ... ...
W ten sposób możemy odczytać i wyświetlić numer RFID na wyświetlaczu LCD za pomocą MSP430 Launchpad. Teraz możesz dalej rozbudowywać ten projekt i budować system obecności, system głosowania, system bezpieczeństwa itp.