Как работает считыватель RFID RC522 с Arduino. Какие компоненты входят в систему RFID. Как подключить модуль RC522 к Arduino. Какие проекты можно реализовать с помощью RFID и Arduino.
Принцип работы системы радиочастотной идентификации RFID
RFID (Radio Frequency Identification) — это технология радиочастотной идентификации объектов с помощью специальных меток. Система RFID состоит из двух основных компонентов:
- RFID-метка (транспондер) — содержит микрочип для хранения информации и антенну для приема и передачи радиосигнала
- RFID-считыватель — генерирует электромагнитное поле для активации меток и считывания данных
Принцип работы RFID следующий:
- Считыватель генерирует электромагнитное поле определенной частоты
- Когда RFID-метка попадает в зону действия поля, в ее антенне индуцируется ток
- Микрочип метки активируется и передает хранящиеся в нем данные
- Считыватель принимает и декодирует информацию от метки
Таким образом происходит бесконтактная идентификация объектов, на которые прикреплены 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 |
---|---|
SDA | 10 |
SCK | 13 |
MOSI | 11 |
MISO | 12 |
IRQ | Не используется |
GND | GND |
RST | 9 |
3.3V | 3.3V |
Важно подключать питание модуля именно к выводу 3.3В Arduino, так как RC522 не рассчитан на напряжение 5В.
Установка и использование библиотеки MFRC522
Для работы с модулем RC522 в Arduino IDE используется библиотека MFRC522. Установить ее можно двумя способами:

Метод 1: Через менеджер библиотек Arduino IDE
- Выберите Sketch -> Include Library -> Manage Libraries
- В поиске введите «MFRC522»
- Найдите библиотеку «MFRC522 by GithubCommunity» и нажмите Install
Метод 2: Установка вручную
- Скачайте ZIP-архив библиотеки с GitHub: https://github.com/miguelbalboa/rfid
- В Arduino IDE выберите Sketch -> Include Library -> Add .ZIP Library
- Укажите путь к скачанному архиву
После установки библиотеки вы сможете использовать ее функции для работы с RC522 в своих скетчах.
Базовый пример считывания RFID-меток
Рассмотрим простой пример, который позволяет считывать уникальный идентификатор (UID) RFID-меток:
«`cpp #include
Проекты с использованием 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
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
|
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
|
Карта бесконтактная 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
|
Гигрометр Arduino Product id: 109727 |
Manufacturer: Arduino
Описание: Датчик влажности на основе LM393, потенциометром регулируется порог срабатывания.

Тип: Датчик
8 pcs — stock Kyiv
10 pcs — RADIOMAG-Kyiv
3 pcs — RADIOMAG-Lviv
3 pcs — RADIOMAG-Dnipro
|
Метка бесконтактная EM4305 RFID 125кГц черная (rewritable) Product id: 126742 |
Tools and Equipment > RFID lables
Описание: Метка бесконтактная RFID 125кГц черная (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
|
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, а также встроенный зуммер и светодиоды для визуальной и звуковой индикации.