Как да използвате RC522 RFID четец модул с Arduino за контрол на достъпа

  • Модулът RC522 позволява четене и запис на RFID карти на 13.56 MHz.
  • Той е съвместим с микроконтролери като Arduino чрез SPI комуникация.
  • Диапазонът му на четене е от 5 до 7 см, идеален за системи за контрол на достъп.
  • За да приложите сигурност, можете да интегрирате ключове или системи за удостоверяване в паметта на таговете.

RFID етикет или чип

Модулът RC522 RFID е едно от най-универсалните и популярни устройства за електронни проекти и системи за контрол на достъп. Заедно с платка Arduino позволява четене и запис на информация върху RFID карти и ключодържатели чрез безжична комуникация. Този тип технология е много полезна при проекти за автоматизация, сигурност и мониторинг, като автоматично отваряне на врати или използване на персонализирани системи за идентификация.

В тази статия ще разгледаме подробно как работи модулът RC522, как да го свържете към микроконтролер като Arduino и някои практически примери, които ще ви позволят да извлечете максимума от него. Ако започвате с проекти за RFID, тази статия ще бъде от голяма полза за разбиране на принципите и как да осъществите просто и ефективно внедряване.

Какво е RFID?

RFID (радиочестотна идентификация) е технология, която позволява на четене на етикети или етикети безжично, без необходимост от физически контакт. Тези етикети се предлагат в множество формати, като напр картички, ключодържатели и дори стикери. В зависимост от вида на RFID, те се използват в голямо разнообразие от приложения: от контрол на достъпа до сгради до управление на инвентара.

RFID четецът действа като a изпращач-получател на радиочестотни сигнали. Когато RFID таг е близо до четеца, той реагира, като изпраща информацията, съхранена в паметта му. Когато работите с модул като RC522, можете да използвате тази информация, за да извършвате различни действия във вашия проект, като разрешаване на достъп до врата или регистриране на влизане на хора.

Модулът RC522

rfid четец за Arduino

RC522 модул Той е един от най-популярните RFID четци поради своята простота и гъвкавост. Работи в 13.56 MHz честота и позволява четене и писане на информация в етикети, съвместими с този стандарт.

RC522 комуникира с микроконтролера чрез протокола SPI, което означава, че е съвместим не само с Arduino, но и с други системи като PIC и Raspberry Pi. Освен това има a диапазон на четене около 5 до 7 см, което е повече от достатъчно за повечето проекти за контрол на достъпа.

Свързване на RC522 RFID модул с Arduino

Едно от големите предимства на RC522 е колко лесно е да го свържете към Arduino. Първото нещо, което трябва да направим, е да се уверим, че всички щифтове на модула са правилно свързани към съответните щифтове на Arduino. Ето таблица с връзките:

RC522 модул Arduino Uno/По-големият брат Мега Ардуино
SDA (SS) 10 53
SCK 13 52
МОСИ 11 51
Мишо 12 50
IRQ Не е свързан Не е свързан
GND GND GND
RST 9 9
3.3V 3.3V 3.3V

Не забравяйте, че модулът RC522 работи с напрежение 3.3V, затова препоръчваме да използвате преобразувател на ниво на напрежение, ако планирате да използвате разширено системата, въпреки че при бързи тестове тя може да работи правилно, свързана директно към Arduino.

Програмиране на RC522 с Arduino

За да работи правилно RC522 с Arduino, трябва да изтеглим и инсталираме съответния RFID книжарница. Един от най-използваните е този, разработен от Мигел Балбоа, който можете да намерите в мениджъра на библиотеката Arduino IDE.

След като библиотеката е инсталирана, ето прост пример за код за четене на UID (уникален идентификатор) ​​на RFID карта:

#включи #включи #define RST_PIN 522 #define SS_PIN 9 MFRC10 mfrc522(SS_PIN, RST_PIN); void setup() { Serial.begin(522); SPI.begin(); mfrc9600.PCD_Init(); Serial.println("Прочетете UID"); } void loop() { if ( mfrc522.PICC_IsNewCardPresent()) { if ( mfrc522.PICC_ReadCardSerial()) { Serial.print("UID на картата:"); за (байт i = 522; i < mfrc0.uid.size; i++) { Serial.print(mfrc522.uid.uidByte[i] < 522x0 ? " 10" : " "); Serial.print(mfrc0.uid.uidByte[i], HEX); } Serial.println(); mfrc522.PICC_HaltA(); }} }

Този код чете UID на всяка карта, която носите на четеца, и го отпечатва на серийния монитор.

Използване на RC522 в система за контрол на достъпа

Едно от най-полезните приложения на RFID модула RC522 е в контрол на достъпа. Можете да използвате RFID карти или ключодържатели, за да дадете разрешение за влизане на лице или да активирате/деактивирате системи като аларми или електрически ключалки.

По-долу ви показваме примерен код, модифициращ предишната програма, за да позволи достъп само до предварително оторизирани карти:

байт Потребител1[4] = {0x4B, 0x6D, 0xC8, 0x3A}; байт Потребител2[4] = {0xF2, 0x8A, 0x9D, 0x17}; void loop() { if (mfrc522.PICC_IsNewCardPresent() && mfrc522.PICC_ReadCardSerial()) { if (compareArray(mfrc522.uid.uidByte, User1, 4) || compareArray(mfrc522.uid.uidByte, User2, 4)) { Serial.println("Достъпът е разрешен"); } else { Serial.println("Достъпът е отказан"); } mfrc522.PICC_HaltA(); }}

В този код, ако бъде открита карта с UID, който съвпада с един от съхранените, достъпът се разрешава чрез отпечатване на съобщение. В противен случай достъпът се отказва. Можете да замените тези съобщения, като отпечатате код, който активира цифров изход за отваряне на врата, наред с други функции.


Бъдете първите, които коментират

Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорен за данните: Мигел Анхел Гатон
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.