RFID RC522 на ESP8266

Опубликовано bondrogeen

Как-то давно заказал RFID модули RC522, модули пришли и были отложены в ящик, а на днях попались на глаза, решил «поиграться» и написать плагин. Изначально планировал использовать только как считыватель карт и передавать ее ID на сервер УД, но в процессе написания плагина решил сделать более полноценное устройство с возможностью работы в автономном режиме.

Данный модуль может быть использован для автоматической идентификации, контроля доступа, робототехники, платежных систем и т.д. Он построен на специализированной микросхеме MFRC522 от NXP Semiconductors. В комплекте с данным модулем идут две метки, одна в виде брелка, другая в виде карты. Несмотря на то, что у данной микросхеме есть несколько интерфейсов для работы с ней i2c, spi и uart. Именно заказанный мной модуль работает в режиме spi, без возможности выбора других интерфейсов. Это обусловлено разводкой платы, хотя «киты» могли бы предусмотреть такую возможность. Также на али можно встретить в продаже модули и с i2c интерфейсом.

Характеристики:

  • Напряжение питания: 3.3V;
  • Потребляемый ток :13-26mA
  • В ждущем режиме: 10-13mА
  • В спящем режиме: менее 80 мкА
  • Рабочая частота: 13.56MHz
  • Дальность считывания: 0 ~ 60 мм (в реале 0 до 30мм)
  • Интерфейс: SPI, максимальная скорость передачи 10Мbit/с
  • Размер: 40мм х 60мм

Схема

Так как собирал данное устройство в целях ознакомления, со схемой не стал усложнять и тем более проектировать отдельную плату, поэтому использовал готовые модули и собрал все на соплях проводах.

 

ПО

Программная часть сделана на основе DoT в виде плагина, об этом читаем тут.

Настройка модуля, а также добавление или удаление меток, осуществляется через веб-интерфейс. В настройках плагина можно задать частоту опроса RC522, длительность срабатывания реле и переназначить некоторые порты.

Добавление и удаление ключей (меток) происходит в автоматическом режиме. Чтобы добавить метку, нужно в веб интерфейсе перевести переключатель Mode в положения add, модуль перейдет в режим чтения меток. Далее подносим метку к RC522, в случае успешной записи ее ID подаст звуковой сигнал и через некоторое время в окне keys появится ID добавленной метки. По такому же принципу происходит и удаления меток, только для этого нужно перевести переключатель Mode в положение del или нажать на крестик в углу ID метки в окне keys, если знаете ID метки. Для перевода в нормальный режим работы, нужно вернуть переключатель в положение auth или перезагрузить устройство.

Обновление блока keys с ID метками, происходит автоматически раз 10 сек или можно обновить вручную нажав на кнопку Refresh. Для того чтобы управлять состоянием реле достаточно кликнуть по кнопке OPEN, что приведет к  его срабатыванию на заданное в настройках времени.

MQTT

Устройство работает автономно, но и имеет возможность интеграции с сервером по средствам  протокола MQTT, для этого необходимо установить плагин MQTT.

При появлении метки, в топик DOT-XXXXXX/info/RC522/card будет отправлен ее ID, а в топик DOT-XXXXXX/info/RC522/access состояние. Если метка была добавлена в память устройства придет значение true, а если нет, то соответственно false. Для управлением реле необходимо на топик DoT-XXXXXX/comm/RC522_dev/relay отправить true, что приведет к  его срабатыванию.

Единственное нужно иметь ввиду, что при одновременном использовании web-интерфейса и работающем плагином MQTT могут возникнуть проблемы с нехваткой памяти, в результате возникнет ошибка и ESP будет перезагружена.

Рубрики: DoTУмный дом

2
Отправить ответ

avatar
1 Comment threads
1 Thread replies
1 Followers
 
Most reacted comment
Hottest comment thread
2 Comment authors
bondrogeenАлексей Recent comment authors

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

  Subscribe  
newest oldest most voted
Notify of
Алексей
Гость
Алексей

где скачать плагин RC522?