Ардуино считыватель карт. Считыватель RFID RC522 для Arduino: принцип работы и подключение

Как работает считыватель RFID RC522 с Arduino. Какие компоненты входят в систему RFID. Как подключить модуль RC522 к Arduino. Какие проекты можно реализовать с помощью RFID и Arduino.

Принцип работы системы радиочастотной идентификации RFID

RFID (Radio Frequency Identification) — это технология радиочастотной идентификации объектов с помощью специальных меток. Система RFID состоит из двух основных компонентов:

  • RFID-метка (транспондер) — содержит микрочип для хранения информации и антенну для приема и передачи радиосигнала
  • RFID-считыватель — генерирует электромагнитное поле для активации меток и считывания данных

Принцип работы RFID следующий:

  1. Считыватель генерирует электромагнитное поле определенной частоты
  2. Когда RFID-метка попадает в зону действия поля, в ее антенне индуцируется ток
  3. Микрочип метки активируется и передает хранящиеся в нем данные
  4. Считыватель принимает и декодирует информацию от метки

Таким образом происходит бесконтактная идентификация объектов, на которые прикреплены RFID-метки. Дальность считывания зависит от типа меток и мощности считывателя и может составлять от нескольких сантиметров до нескольких метров.


Особенности RFID-считывателя RC522

RC522 — это популярный модуль RFID-считывателя для работы с Arduino и другими микроконтроллерами. Основные характеристики RC522:

  • Рабочая частота: 13.56 МГц
  • Поддержка стандартов ISO/IEC 14443 A/MIFARE
  • Дальность считывания: до 50 мм
  • Интерфейс подключения: SPI (до 10 Мбит/с)
  • Напряжение питания: 3.3В
  • Ток потребления: 13-26 мА
  • Размеры модуля: 40×60 мм

RC522 позволяет не только считывать данные с RFID-меток, но и записывать на них информацию. Модуль имеет встроенную антенну и все необходимые компоненты для работы с RFID на частоте 13.56 МГц.

Подключение RC522 к Arduino

Для подключения модуля RC522 к Arduino используется интерфейс SPI. Схема подключения выглядит следующим образом:

Контакт RC522Пин Arduino UNO
SDA10
SCK13
MOSI11
MISO12
IRQНе используется
GNDGND
RST9
3.3V3.3V

Важно подключать питание модуля именно к выводу 3.3В Arduino, так как RC522 не рассчитан на напряжение 5В.

Установка и использование библиотеки MFRC522

Для работы с модулем RC522 в Arduino IDE используется библиотека MFRC522. Установить ее можно двумя способами:


Метод 1: Через менеджер библиотек Arduino IDE

  1. Выберите Sketch -> Include Library -> Manage Libraries
  2. В поиске введите «MFRC522»
  3. Найдите библиотеку «MFRC522 by GithubCommunity» и нажмите Install

Метод 2: Установка вручную

  1. Скачайте ZIP-архив библиотеки с GitHub: https://github.com/miguelbalboa/rfid
  2. В Arduino IDE выберите Sketch -> Include Library -> Add .ZIP Library
  3. Укажите путь к скачанному архиву

После установки библиотеки вы сможете использовать ее функции для работы с RC522 в своих скетчах.

Базовый пример считывания RFID-меток

Рассмотрим простой пример, который позволяет считывать уникальный идентификатор (UID) RFID-меток:

«`cpp #include #include #define SS_PIN 10 #define RST_PIN 9 MFRC522 rfid(SS_PIN, RST_PIN); void setup() { Serial.begin(9600); SPI.begin(); rfid.PCD_Init(); } void loop() { if (!rfid.PICC_IsNewCardPresent() || !rfid.PICC_ReadCardSerial()) return; Serial.print(«UID метки: «); for (byte i = 0; i < rfid.uid.size; i++) { Serial.print(rfid.uid.uidByte[i] < 0x10 ? " 0" : " "); Serial.print(rfid.uid.uidByte[i], HEX); } Serial.println(); rfid.PICC_HaltA(); rfid.PCD_StopCrypto1(); } ```

Этот код инициализирует модуль RC522, а затем в бесконечном цикле проверяет наличие новых меток. При обнаружении метки считывается и выводится ее UID в шестнадцатеричном формате.


Проекты с использованием RFID и Arduino

RFID-технология в сочетании с Arduino открывает широкие возможности для создания различных интерактивных проектов. Вот несколько идей:

1. Система контроля доступа

Создайте электронный дверной замок, который открывается при поднесении авторизованной RFID-карты. Можно добавить ЖК-дисплей для вывода информации о доступе и хранить список разрешенных карт в EEPROM Arduino.

2. Автоматизация гаражных ворот

Разработайте систему открывания гаражных ворот с помощью RFID-меток. Arduino может управлять реле для активации привода ворот при считывании разрешенной метки.

3. Музыкальная шкатулка

Сделайте музыкальную шкатулку, которая воспроизводит разные мелодии в зависимости от поднесенной RFID-метки. Для этого понадобится модуль MP3-плеера и динамик.

4. Система учета посещаемости

Создайте автоматизированную систему для отслеживания посещаемости занятий или рабочего времени. Arduino может записывать время прихода и ухода сотрудников, идентифицируя их по RFID-картам.


5. Умный гардероб

Разработайте систему, которая отслеживает наличие одежды в шкафу с помощью RFID-меток на вещах. Это поможет быстро находить нужные предметы и следить за их состоянием.

Эти проекты демонстрируют разнообразие возможностей, которые открывает сочетание RFID-технологии и платформы Arduino. От систем безопасности до развлекательных устройств — область применения ограничена лишь вашей фантазией.

Безопасность и этические аспекты использования RFID

При работе с RFID-технологией важно учитывать вопросы безопасности и конфиденциальности:

  • Защита данных: Информация на RFID-метках должна быть зашифрована, особенно если она содержит личные или конфиденциальные данные.
  • Предотвращение клонирования: Используйте метки с защитой от копирования для критически важных приложений.
  • Ограничение дальности считывания: Для некоторых применений может потребоваться намеренное уменьшение дальности считывания для предотвращения несанкционированного доступа.
  • Информированное согласие: При использовании RFID для отслеживания людей необходимо получить их согласие и обеспечить прозрачность процесса.

Соблюдение этих принципов поможет создавать безопасные и этичные RFID-системы на базе Arduino.



Считыватель RFID карт для Arduino From 144.3 UAH

Product id: 103997

Manufacturer: Arduino
Описание: Считыватель RFID 125 кГц карт для Arduino
Тип: Шилд

on stock: 30 pcs

22 pcs

— stock Kyiv
2 pcs — RADIOMAG-Kyiv
2 pcs — RADIOMAG-Lviv
2 pcs — RADIOMAG-Odesa
2 pcs — RADIOMAG-Dnipro

1+ 155 UAH
10+ 144.3 UAH

Technical description Считыватель RFID карт для Arduino Arduino

With this product buy

RFID датчик + брелок arduino
Product id: 113176

Constructors and kits > Arduino
Описание: RFID датчик MFRC-522 с брелком. Напряжение питания: 3,3V, потребляемый ток: 13…26mA, в ждущем режиме: 10…13ma, рабочая частота: 13. 56MHz (S20/S50/S70), дальность считывания: 0…60 мм, интерфейс: SPI, максимальная скорость передачи 10МБит/с. Размер: 40х60мм.
Тип: Датчик

56 pcs — stock Kyiv
10 pcs — RADIOMAG-Kyiv
2 pcs — RADIOMAG-Lviv
5 pcs — RADIOMAG-Kharkiv
1 pcs — RADIOMAG-Odesa
1 pcs

— RADIOMAG-Dnipro

1+ 82.5 UAH
Related products
Метка бесконтактная RFID 13.56 МГц синяя (rewritable)
Product id: 129505
Карта бесконтактная TK4100 RFID 125кГц (read-only)
Product id: 121429

Tools and Equipment > RFID lables
Описание: Карта бесконтактная TK4100 RFID 125кГц (read-only)
Тип: Read-only
Частота: 125 kHz

550 pcs — stock Kyiv
83 pcs — RADIOMAG-Kyiv
100 pcs — RADIOMAG-Lviv
1 pcs — RADIOMAG-Kharkiv
100 pcs — RADIOMAG-Odesa
11 pcs — RADIOMAG-Dnipro

2+ 11 UAH
10+ 9.
9 UAH
100+ 7.7 UAH
Карта бесконтактная T5577 5200 RFID 125кГц
Product id: 121430

Tools and Equipment > RFID lables
Описание: Карта бесконтактная T5577 RFID 125кГц (rewritable)
Тип: Rewritable
Частота: 125 kHz

238 pcs — stock Kyiv
31 pcs — RADIOMAG-Kyiv
20 pcs — RADIOMAG-Lviv
22 pcs — RADIOMAG-Kharkiv
4 pcs — RADIOMAG-Odesa
8 pcs — RADIOMAG-Dnipro

1+ 27.5 UAH
Гигрометр Arduino
Product id: 109727

Manufacturer: Arduino

Constructors and kits > Arduino
Описание: Датчик влажности на основе LM393, потенциометром регулируется порог срабатывания. Цифровой и аналоговый выходы, напряжение питания датчика: 3,3…5В, габариты модуля: 38х15,6х8мм, габариты датчика: 63,8х20х8мм
Тип: Датчик

8 pcs — stock Kyiv
10 pcs — RADIOMAG-Kyiv
3 pcs — RADIOMAG-Lviv
3 pcs — RADIOMAG-Dnipro

1+ 39 UAH
Метка бесконтактная EM4305 RFID 125кГц черная (rewritable)
Product id: 126742

Tools and Equipment > RFID lables
Описание: Метка бесконтактная RFID 125кГц черная (rewritable)

Тип: Rewritable
Частота: 125 kHz

49 pcs — stock Kyiv
30 pcs — RADIOMAG-Lviv
30 pcs — RADIOMAG-Odesa
30 pcs — RADIOMAG-Dnipro
200 pcs — waiting 16.06.2023

1+ 22. 5 UAH
10+ 17.7 UAH
100+ 14.2 UAH
Analogue
Метка бесконтактная EM4305 RFID 125кГц синяя (rewritable)
Product id: 126741
Analogue
Метка бесконтактная EM4305 RFID 125кГц красная (rewritable)
Product id: 115039
Analogue
Метка бесконтактная EM4305 RFID 125кГц оранжевая (rewritable)
Product id: 115040
Analogue
Метка бесконтактная EM4305 RFID 125кГц желтая (rewritable)
Product id: 130116
Analogue
Метка бесконтактная EM4305 RFID 125кГц серая (rewritable)
Product id: 130117

Копирование RFID карт

Четвёртый урок из цикла «Всё про RFID».
Сегодня мы продолжим изучать RFID считыватель на базе микросхемы RC522.

  • В первой части была теория,
  • Во второй мы сделали электронный rfid замок с доступом по карте или брелоку.
  • В третьей мы научились записывать разную информацию на карту. Например, Фамилию и имя.
  • Теперь настала очередь рассмотреть копирование RFID карт. 

Допустим вы хотите сделать дубликат карты, что бы у вас одна карта была в офисе, другая в машине, а третья в кармане.

Копирование карт не сложнее, а то даже и проще чем запись. Надо просто поднести карту и на клавиатуре нажать 1 и ENTER.
Подождать пока карта считается. 
Нажать 2 и снова ENTER.
Подождать и вуаля. У вас полная копия карты.
Ну, почти полная, так как UID всё же остался старым. Как это побороть, я рассказал в видео.

Объяснять схему подключение не буду. Я это делал уже на протяжении трёх уроков. Если что не понятно пишите в комментариях или посмотрите предыдущие уроки.

 

Теперь давайте посмотрим весь процесс в целом.
Сначала мы загрузим dumpinfo и посмотрим на содержимое карт.
Будем рассматривать сектора от 0 до 3.

Чистая карта

Карта с информацией


 

Теперь загрузим скетч, который я назвал Reader.
Проверяем карты. Смотрим вдруг там есть какая-то информация и мы можем её затереть.
Сначала смотрим брелок.
Он оказался чистым и готовым к записи.
Если там была какая-то информация и вам её не жалко, то при следующей записи она сотрётся и поверх неё запишется новая.
То же смотрим с картой 1.
А вот на карте 2 находится нужная для нас информация. Вот её то мы и будем копировать.

Теперь скопируем нашу карту на брелок и на ещё одну карту.
Загружаем скетч COPIER.
Ждём пока в мониторе порта не покажется меню с выбором действия.
Если нажать на кнопку 1 то мы скопируем карту в буфер обмена, а цифра 3 запишет информацию на новую карту.
Главное, чтобы во время работы карта была в зоне действия считывателя, а то данные не считаются или не сохранятся.

Считываем данные с карты.
Ждём пока не снова не появится меню.
Нажимаем 3, и ждём пока информация не скопируется на брелок.
То же самое делаем со следующей картой.

Снова загрузим Reader и проверим как всё прошло.

 

По очереди подносим брелок и карты к считывателю и смотрим на вывод сохранённых данных.
Как можно увидеть вся информация скопировалась.
Теперь у вас есть целых 3 метки и можно их терять или ломать. Всегда есть запасная, и можно ещё их наделать целую кучу.


Ну вот и всё. Всё, как всегда, работает. 
Готовые скетчи можно будет скачать по ссылкам в описании, а текстовую информацию можно прочитать в блоге. Там есть много интересного. Так что переходите.
И, как всегда, в конце урока я прошу вас поставить лайк этому видео, если оно вам понравилось. И жду ваших комментариев.
Следующее видео будет про вывод информации в программу Excel для отображения данных. Это будет очень интересный пример.
И чем больше ваших положительных отзывов, тем быстрее оно выйдет.
До встречи в следующих уроках.

Взаимодействие RFID-RC522 с Arduino UNO

RFID означает радиочастотную идентификацию и в основном использует радиоволны для считывания информации с метки. Метки RFID содержат встроенный передатчик и приемник, прикрепленные к объекту. RFID работает быстро и не требует контакта между считывателем и меткой, и их можно считывать с расстояния в несколько метров.

 

Система RFID состоит из двух частей: метки и считывателя

 

метки RFID

 

Метка RFID содержит чип для хранения информации о физическом объекте и антенну для приема и передачи сигнала. Метка RFID обычно может хранить 1 КБ данных, но этого достаточно для хранения имени, номера кредитной карты, уникального идентификационного номера, даты рождения и другой информации.

 

Считыватель RFID

 

Считыватель RFID выполняет две функции: передача и прием. Так что вы также можете сказать, что это трансивер. Считыватель RFID содержит антенну, радиочастотный модуль и блок управления.

 

 

  • Высокоинтегрированная аналоговая схема для демодуляции и декодирования ответов.
  • Поддерживает ISO/IEC 14443 A/MIFARE.
  • Типичное рабочее расстояние в режиме чтения/записи до 50 мм.
  • Поддерживает ISO/IEC 14443 Более высокая скорость передачи данных до 848 кбод.
  • SPI до 10 Мбит/с.
  • Буфер FIFO обрабатывает 64 байта для отправки и получения.
  • Гибкие режимы прерывания.
  • Отключение в программном режиме.

 

 

  • Диапазон частот — ISM-диапазон 13,56 МГц
  • Хост-интерфейс — SPI/I2C/UART
  • Рабочее напряжение питания — от 2,5 В до 3,3 В
  • Макс. Рабочий ток — 13–26 мА        
  • Мин. Ток (отключение питания) — 10 мкА     
  • Логические входы — допустимое напряжение 5 В           
  • Диапазон считывания — 5 см

 

 

Считыватель RFID генерирует высокочастотное электромагнитное поле, и когда метка приближается к нему, в антенной катушке метки индуцируется напряжение из-за индукции. Это индуцированное напряжение действует как питание для метки. Метка в свою очередь преобразует сигнал в мощность и отвечает считывателю.

PIN-код RFID-RC522 КОНТАКТ ARDUINO UNO
ПДД 10
СКК 13
МОСИ 11
МИСО 12
IRQ НЕИСПОЛЬЗУЕМЫЙ
Земля ЗЕМЛЯ
РСТ 9
3,3 В 3,3 В

 

 

 

Чтобы упростить управление точечной матрицей, вам необходимо загрузить и установить в Arduino IDE библиотеку LedControl. Чтобы установить библиотеку, выполните следующие действия:

 

МЕТОД 1

 

  • Перейдите в меню «Эскиз».
  • Выберите «Включить библиотеки».
  • Перейти к управлению библиотеками.
  • Найдите MFRC522 и установите его.

 

МЕТОД 2

 

  • Вы можете установить его извне, используя следующую ссылку: https://github.com/miguelbalboa/rfid
  • После загрузки zip-файлов,
  • Перейдите в Sketch →   Включить библиотеку → Добавить библиотеку .ZIP
  • Затем добавьте загруженные zip-файлы.
  • Теперь библиотеки включены в вашу Arduino IDE.

 

ШАГ 1

 

После установки библиотеки откройте «Dumpinfo» из примеров и загрузите его в Arduino IDE.

 

 

ШАГ 2

 

Откройте два окна Arduino IDE, выберите Arduino UNO в качестве платы и выберите соответствующий COM-порт.


Плата: Инструменты > Плата > Arduino/Geniuno UNO.

 

 

ШАГ 3

 

Выберите последовательное устройство платы в меню Tools / Serial Port. Скорее всего, это COM3 или выше (COM1 и COM2 обычно зарезервированы для аппаратных последовательных портов). Чтобы узнать это, вы можете отключить плату и снова открыть меню; запись, которая исчезнет, ​​должна быть платой Arduino. Снова подключите плату и выберите этот последовательный порт.

 

 

ШАГ 4

 

ВЫВОД

 

Загрузите скетч и откройте Serial Monitor. Как только вы приблизите метку к модулю, вы, вероятно, получите что-то вроде рисунка, приведенного ниже. Не перемещайте тег, пока не будет отображена вся информация.

 

В этом примере проекта отображается вся полезная информация о теге, включая уникальный идентификатор (UID) тега, размер памяти и весь объем памяти 1 КБ. Память 1 КБ тега организована в 16 секторов (от 0 до 15) Каждый сектор далее делится на 4 блока (блоки от 0 до 3). Каждый блок может хранить 16 байтов данных (от 0 до 15). Блок 3 каждого сектора называется трейлером сектора и содержит информацию, называемую битами доступа к предоставить доступ для чтения и записи к оставшимся блокам в секторе. Это означает, что только нижние 3 блока (блок 0, 1 и 2) каждого сектора фактически доступны для хранения данных, то есть у нас есть 48 байтов на 64-байтовый сектор, доступных для нашего собственного использования. Также блок 0 сектора 0 известен как Блок производителя/данные производителя содержат данные производителя микросхемы и уникальный идентификатор (UID) 9.0003

 

 

ПРИМЕР КОДА:

 

Пример кода доступен по ссылке git здесь

 

10 лучших RFID-проектов Arduino

Arduino — это линейка макетных плат, разработанных для образовательных целей. С тех пор он использовался любителями, а иногда даже в коммерческих целях. Некоторые платы являются 8-битными, а другие — 32-битными микроконтроллерами.

Тем не менее, все платы подходят для самых разных приложений, от светодиодов, робототехники, носимых устройств и IoT до проектов RFID. В этой статье мы рассмотрим 10 впечатляющих проектов RFID, созданных сообществом производителей.

Это самодельный дверной замок, сделанный с помощью Arduino Nano, ЖК-модуля и модуля RFID, специально основанного на чипе RC522. Производитель предоставил код в файле .RAR, который можно найти в разделе загрузки Thingiverse. В качестве альтернативы другой производитель создал для своей сборки еще один корпус, который также основан на RC522. На ЖК-дисплее могут отображаться имена, номер дома, температура, разрешение на доступ или сообщения об отказе в доступе.

Используя возможности технологии радиочастотной идентификации, вы можете создать свой собственный механизм открывания гаражных ворот с помощью Arduino. Этот проект домашней автоматизации включает в себя использование плат RobotGeek, включая Geekduino, совместимую с Arduino плату разработки, предназначенную для робототехники. Также в этом проекте используется Arduino Uno. По сути, производитель соединил переключатель открывания двери гаража и плату реле RobotGeek.

Говорят, что считыватели или сканеры RFID можно взломать. Почему бы не сделать свой собственный вместо этого. Настольные RFID-считыватели питаются и управляются с помощью USB-кабеля, поэтому это быстрый способ чтения/записи RFID-меток. Расстояние считывания обычно находится в пределах 10 см для ВЧ-устройств или до полутора метров для УВЧ-устройств.

Как следует из названия, это считыватель RFID, который поместится на вашем рабочем столе. В основе лежит Arduino Nano, который сделал его максимально компактным. Хотя код не предоставлен, другой производитель сделал это в этой RFID с Arduino Nano Instructable.

Amiibo — это интерактивные фигурки и карточки, которые подключаются к играм Nintendo через Wi-Fi. Он основан на Arduino Uno с подключенным модулем считывания RFID. Он способен читать и писать материал Amiibo. Корпус модифицирован из двух файлов Thingiverse, Customizable Arduino Tray и модели RFID-RC522 OpenSCAD. Помимо Arduino Uno, программа amiibomb-uino включает в себя считыватель RFID, горячий клей, двухсторонний скотч, провода, USB-кабель и винты. Производитель рекомендует печатать нитью ABS с 40-процентным заполнением.

Основанная на популярной музыкальной системе Tonie, это TonUINO, музыкальная шкатулка для детей, сделанная своими руками на базе Arduino. Внутри есть модуль RFID, а в корпусе есть крепление, чтобы его можно было легко вставить. Существуют также альтернативные корпуса, такие как чехол TonUINO с быстрой зарядкой и коробкой для карт и динамик Tonuino 18650 Hörspiel.

Выберите песни на основе RFID в этом самодельном MP3-плеере, сделанном с помощью Arduino. Корпус был напечатан на 3D-принтере, а аркадные кнопки имеют диаметр 24 мм. Производитель отмечает, что можно добавить больше кнопок, изменив дизайн или просверлив отверстия в корпусе. Во время 3D-печати рекомендуется использовать опоры и заполнение от 20 до 100 процентов.

Этот сейф был разработан после того, как его создатель был вдохновлен комнатами-головоломками в своем городе. На нем крошечная бутылка Jack Daniels и логотип Coca Cola. Внутри можно найти модуль RFID, Arduino Nano, два сервопривода SG90 и батарею на 9 В.

Код работает путем тестирования двух задействованных чипов RFID. Один из чипов находится на RFID-карте, которая является мастер-картой, которая всегда открывает коробку. Другой чип используется для отпирания ящика. Он записывается в EEPROM, где данные сохраняются даже при случайном отключении питания.

Торговый автомат на Arduino. Просто проведите RFID-картой по считывателю, и через пять секунд жидкость испарится. Производители могут выбрать, сколько жидкости будет выбрасываться из машины, изменив код. В его основе лежит Arduino Uno, аналоговый датчик расхода воды, считыватель RFID, жидкокристаллический дисплей и соленоид.

Автоматическая идентификация и сбор данных (AIDC) — это методы, используемые для автоматической идентификации и сбора данных об объектах. RFID является частью ADIC. Используя радиоволны, данные можно собирать и вводить в систему без вмешательства человека.

Каждая метка RFID содержит интегральную схему и антенну, используемые для передачи данных на считыватель RFID. Затем данные преобразуются в более удобную форму. Эта информация передается на хост-компьютер, где данные хранятся в базе данных.

Эта система посещаемости использует считыватель RFID, метки RFID, Arduino Uno и локальную базу данных. В частности, он следит за посещаемостью занятий. Он может записывать каждого ученика, который входит в класс, и подсчитывает время, которое они проводят в классе. Однако это также можно использовать в других местах, таких как рабочие места, уход за престарелыми и торговые центры.

Сделайте сейф своими руками для хранения ценных вещей с помощью этого запирающегося ящика, управляемого Arduino. Только карты-ключи, которые были запрограммированы в системе, смогут получить доступ к этому сейфу. В этой сборке производитель включил Geekduino, RFIDuino Shield, реле, соленоид, разъем постоянного тока и источник питания.

Экран просто помещается на Arduino, после чего он добавляет возможности RFID, а также встроенный зуммер и светодиоды для визуальной и звуковой индикации.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *