В този урок ние проектираме система за четене на RFID картите, използвайки MSP430 и RFID Reader. RFID означава Радиочестотна идентификация. Всяка карта има уникален идентификационен номер и това я прави идеален избор за много приложения за удостоверяване, като в офиси, търговски центрове и на много други места, където само човекът с карта за оторизация има право да влиза вътре. RFID се използва в търговски центрове, за да се предотврати кражба, където продуктът ще бъде маркиран с RFID чип и ако някой напусне сградата с RFID чип, алармата се вдига автоматично и така кражбата се спира. RFID етикетът е проектиран толкова малък, колкото песъчинки. RFID системите за удостоверяване са лесни за проектиране и са евтини на цена. В днешно време някои училища и колежи използват RFID като регистър за посещаемост.
Необходими материали
1. MSP430 Launchpad
2. EM-18 (RFID модул за четене)
3. 16 * 2 LCD
4. Потенциометър
5. Макет
6. Джъмперни проводници
Софтуер: Energia IDE
EM-18 RFID четец
Всяка RFID карта има вграден уникален идентификатор и RFID четец се използва за четене на номер на RFID карта. EM-18 RFID четец работи на 125 KHz и се предлага с вградена антена и може да се захранва с 5V захранване. Той осигурява сериен изход заедно с изхода на weigand. Обхватът е около 8-12 см. параметрите на серийната комуникация са 9600bps, 8 бита за данни, 1 стоп бит. Тази безжична RF идентификация се използва в много системи като
RFID базирана система за присъствие,
Системи за сигурност,
Гласуващи машини, Ценообразуване на пътни такси по електронен път
Проверете всички RFID проекти тук.
Изходът, предоставен от EM-18 RFID четец, е в 12-цифрен ASCII формат. От 12 цифри първите 10 цифри са номер на картата, а последните две цифри са XOR резултатът от номера на картата. Последните две цифри се използват за проверка на грешки.
Например номерът на картата е 0200107D0D62, прочетен от четеца, след което номерът на картата на картата ще бъде както по-долу.
02 - преамбюл
00107D0D = 1080589 в десетична запетая.
62 е XOR стойност за (02 XOR 00 XOR 10 XOR 7D XOR 0D).
Следователно номерът на картата е 0001080589.
MSP430 RFID четец схема и работи
Ще използваме Hardware UART на MSP430, така че се уверете, че RXD и TXD джъмперите на платката са в режим HW UART. След това свържете Tx на EM-18 към RXD (P1.1) на MSP430.
Преди да продължим по-нататък, трябва да разберем за серийната комуникация. Модулът RFID тук изпраща данни към контролера последователно. Той има друг режим на комуникация, но за лесна комуникация избираме RS232. RS232 щифтът на модула е свързан с RXD щифт на MSP430.
Данните, изпратени от модула RFID, са както следва:
Сега за настройка на връзка между RFID четец и MSP430, трябва да активираме серийната комуникация в MSP430. Активирането на серийната комуникация в MSP430 може да се осъществи с помощта на една команда.
Serial.begin (9600); данни = Serial.read ();
Както е показано на фигурата по-горе, комуникацията на RFID се осъществява чрез BAUD скорост от 9600 бита в секунда. Така че за MSP430 за установяване на такава скорост на предаване и за стартиране на серийна комуникация използваме командата "Serial.begin (9600);". Тук 9600 е скоростта на предаване и е променлива.
След като скоростта на предаване е зададена, MSP е готов да получи серийните данни. Тези данни се събират чрез команда „data = Serial.read ();“. С тази команда серийните данни се вземат в „ данни “, наречени цяло число.
След като картата се доближи до четеца, четецът чете серийните данни и ги изпраща на MSP, MSP ще бъде програмиран да показва тази стойност в LCD, така че ще имаме идентификационен номер на картата на LCD.
Код и обяснение
Ще напишем кода си в Energia IDE. Той е същият като Arduino IDE и е лесен за използване. Пълният код е даден в края на този проект, тук обясняваме няколко части от него.
Първо, включете библиотека за LCD дисплей и декларирайте масив char за съхраняване на RFID номер.
#include
В функцията за настройка активирайте LCD и серийната комуникация, като дефинирате скоростта на предаване от 9600.
void setup () { lcd.begin (16, 2); Serial.begin (9600); ... ..
В функция цикъл ще проверим дали серийните данни са налични или не. Ако са налични, съхранявайте данните във входния масив от Serial.read () и ги показвайте на LCD едно по едно, като използвате цикъл while .
while (Serial.available () && count <12) // Чете 12 символа и ги съхранява във входния масив { input = Serial.read (); // съхраняване на 12 знака един по един Serial.print (вход); lcd.print (вход); забавяне (300); преброяване ++; if (count == 12) { lcd .print (""); брой = 0; // веднъж 12 знака се прочетат Как да започнете и да чака второ ID ... ...
Ето как можем да четем и показваме RFID номера на LCD, използвайки MSP430 Launchpad. Сега можете допълнително да разширите този проект и да изградите система за присъствие, система за гласуване, система за сигурност и т.н.