RFID
Мы будем использовать RFID-считыватель RC522, чтобы читать данные с RFID-меток и брелоков.
RFID широко используется в системах вроде ключей от подъезда, пропусков в офис, умных парковок, ключ-карт в отелях, проездных на платные дороги и бесконтактных банковских карт. Все эти системы работают похожим образом. Вы подносите карту или метку к считывателю, и тот беспроводным способом её распознаёт.
Мы сделаем нечто похожее с помощью Raspberry Pi Pico, но помимо чтения данных научимся также записывать данные на RFID-метки и разберёмся, как устроена система.
Что такое RFID?
RFID расшифровывается как Radio Frequency Identification (радиочастотная идентификация). Это беспроводная технология, которая используется для идентификации объектов с помощью радиоволн.
Система RFID состоит из двух основных частей. Одна — считыватель (reader), другая — метка (tag). Считыватель создаёт радиополе. Когда метка оказывается рядом с этим полем, она получает питание от него и отправляет данные обратно считывателю. У большинства простых RFID-меток нет батареи.
Данные на метке могут быть простым уникальным идентификатором или включать небольшие блоки памяти, из которых можно читать и в которые можно писать. Всю радиосвязь берёт на себя считыватель, а микроконтроллер общается со считывателем по стандартному интерфейсу, например SPI.
В этой книге мы сосредоточимся на RFID малого радиуса действия, когда метка должна находиться очень близко к считывателю. Именно такой тип обычно используется в пропусках, брелоках и подобных системах.
Категории по дальности
Системы RFID можно классифицировать по рабочей частоте, которая напрямую влияет на дальность связи, скорость передачи данных и типичные сценарии использования. Три основные категории — низкочастотная (LF, Low Frequency), высокочастотная (HF, High Frequency) и сверхвысокочастотная (UHF, Ultra High Frequency).
-
Низкая частота (LF) LF RFID работает на частоте около 125 кГц. Такие системы имеют очень малую дальность считывания — обычно до 10 см. Передача данных медленная, но LF RFID относительно устойчив к помехам от металла и жидкостей. Поэтому его часто применяют в простых системах контроля доступа и для учёта животных.
-
Высокая частота (HF) HF RFID работает на частоте 13,56 МГц и обычно обеспечивает дальность считывания от 10 см до 1 м в зависимости от размера антенны и мощности. Системы HF обеспечивают умеренную скорость передачи данных и поддерживают более сложные протоколы, позволяя выполнять как чтение, так и запись. Эта категория широко используется в системах контроля доступа в офисах, квартирах и отелях, а также в билетных системах, бесконтактных платежах и передаче данных на небольшие расстояния.
В этой книге мы будем использовать именно эту категорию, а конкретно модуль RC522, который работает на частоте 13,56 МГц.
-
Сверхвысокая частота (UHF) UHF RFID работает в диапазоне 860–960 МГц и поддерживает гораздо большие расстояния считывания — часто до 12 м и более. Такие системы обеспечивают более высокую скорость передачи данных и могут одновременно считывать несколько меток. UHF RFID широко применяется в управлении складскими запасами в розничной торговле, логистике, отслеживании цепочек поставок и борьбе с контрафактом.
Категории по источнику питания
RFID-метки можно классифицировать по способу питания. Два основных типа — активные и пассивные метки.
-
Активные RFID-метки Активные метки содержат встроенную батарею, которая позволяет им самостоятельно передавать сигналы. Это обеспечивает гораздо большую дальность связи по сравнению с пассивными метками. Активные RFID-метки обычно используются для отслеживания крупных активов, например железнодорожных вагонов, морских контейнеров и оборудования, которое нужно контролировать на больших расстояниях.
-
Пассивные RFID-метки У пассивных меток нет батареи. Вместо этого они получают питание от электромагнитного поля, которое создаёт RFID-считыватель. Получив питание, метка отправляет свои данные обратно считывателю с помощью радиоволн. Пассивные RFID-метки — самый распространённый тип, их можно найти в пропусках, брелоках и системах бесконтактной оплаты. Модуль RC522, который используется в этой книге, работает с пассивными RFID-метками.
Компоненты RFID-системы
RFID-считыватель технически называется PCD (Proximity Coupling Device, устройство близкого связывания). В пассивных RFID-системах считыватель создаёт электромагнитное поле, которое питает метку и обеспечивает связь.
Сама метка называется RFID-меткой, или, в технических терминах, PICC (Proximity Integrated Circuit Card, карта с интегральной схемой близкого действия). Полезно знать и эти технические термины: они пригодятся, если вы будете обращаться к даташитам и другим документам.
RFID-считыватели обычно включают внутренние компоненты, такие как буферы FIFO и энергонезависимую память, например EEPROM. Многие считыватели также содержат криптографические функции для защищённой связи с метками, позволяя взаимодействовать с защищёнными данными только аутентифицированным считывателям. Например, RFID-считыватели от NXP Semiconductors используют шифр Crypto-1 для аутентификации.
У каждой RFID-метки есть жёстко заданный UID (Unique Identifier, уникальный идентификатор). В зависимости от типа метки этот UID может иметь размер 4, 7 или 10 байтов и используется для однозначной идентификации метки.