Подключение модуля чтения радиочастотных меток EM-18 к MSP430G2


В данной статье мы рассмотрим процесс чтения радиочастотных меток/карт (RFID cards) с помощью платы MSP430G2 и модуля EM-18. Каждая такая метка/карта содержит уникальный идентификатор, что делает данные карты отличным выбором для осуществления процессов аутентификации в офисах, торговых центрах, предприятиях и т.д. Системы радиочастотной идентификации (Radio Frequency Identification, RFID) очень дешевы и просты в использовании, благодаря чему они находят широкое применение в современном мире.

Внешний вид подключения модуля чтения радиочастотных меток EM-18 к MSP430G2

Ранее на нашем сайте мы уже рассматривали подключение модуля чтения радиочастотных меток EM-18 к другим микроконтроллерам (платам):

Необходимые компоненты

  1. Плата MSP430G2 LaunchPad (купить на AliExpress).
  2. Модуль чтения радиочастотных меток EM-18 (купить на AliExpress).
  3. ЖК дисплей 16х2 (купить на AliExpress).
  4. Потенциометр (купить на AliExpress).
  5. Макетная плата.
  6. Соединительные провода.

Модуль считывания RFID меток EM-18

Внешний вид модуля считывания RFID меток EM-18 показан на следующем рисунке.

Внешний вид модуля считывания RFID меток EM18 и карт к нему

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

Модуль чтения RFID меток EM-18 позволяет считывать информацию об идентификаторах (ID information), размещенных в RFID метках. Идентификатор RFID метки содержит уникальный 12-значный номер, который может быть считан модулем EM18 когда радиочастотная метка попадает в поле его действия (8-12 см). Модуль работает на частоте 125 кГц, содержит встроенную антенну и запитывается от напряжения 5 В постоянного тока. Считанные данные модуль передает другим устройствам с помощью последовательной связи со скоростью 9600 бод (8 бит данных и 1 стоповый бит).

Модуль EM-18 широко применяется во встраиваемой электронике и имеет ряд интересных особенностей. К примеру, его можно запитывать напряжением в диапазоне от +4.5V до 5.5V DC. Модуль во время своей работы потребляет всего 50mA тока, поэтому его можно использовать в устройствах, получающих питание от батарей и аккумуляторов. Используемая им частота 125 кГц позволяет ему работать со множеством типов RFID карт. Встроенная в него антенна позволяет ему производить считывание RFID меток на расстояниях от 8 до 12 см. Модуль работоспособен в диапазоне температур 0-80 °C, что позволяет его использовать в "жестких" условиях окружающей среды.

Назначение контактов (распиновка) модуля EM-18 показано на следующем рисунке.

Назначение контактов (распиновка) модуля EM18

Выходные данные модуля EM-18 представлены 12-значным форматом ASCII. Первые 10 цифр – это номер карты (метки), а последние 2 цифры – результат операции XOR (исключающее "или") от номера карты, они используются для проверки ошибок.

К примеру, модуль чтения считал число 0200107D0D62 с карты. В этом случае:
02 – преамбула,
00107D0D = 1080589 в десятичном формате.
62 – результат операции XOR (02 XOR 00 XOR 10 XOR 7D XOR 0D).
Следовательно, номер карты – 0001080589.

Схема проекта

Схема подключения модуля чтения радиочастотных меток EM-18 к плате MSP430G2 представлена на следующем рисунке.

Схема подключения модуля чтения радиочастотных меток EM-18 к плате MSP430G2Для обмена данными с модулем EM-18 мы будем использовать последовательный порт (UART) MSP430, поэтому убедитесь в том, что джамперы RXD и TXD на плате переключены на режим HW UART. После этого подключите контакт Tx модуля EM-18 к контакту RXD (P1.1) платы MSP430G2.

Прежде чем идти дальше, немного разберемся с принципами последовательной связи по протоколу RS232. Контакт RS232 модуля EM-18 у нас подключен к контакту RXD платы MSP430G2.

Данные, передаваемые RFID модулем EM-18, выглядят следующим образом:

Данные, передаваемые модулем чтения радиочастотных меток EM-18

То есть нам для того, чтобы установить связь между модулем EM-18 и MSP430, необходимо инициализировать последовательную связь в MSP430 с помощью команды:

Последовательная связь с RFID модулем EM-18 будет осуществляться на скорости 9600 бод – в MSP430 мы эту скорость устанавливаем с помощью команды Serial.begin(9600), где 9600 – значение устанавливаемой скорости.

Когда бодовая скорость установлена, MSP будет готов принимать последовательные данные. С помощью команды “data = Serial.read();” мы будем осуществлять прием этих данных и сохранять их в переменной data целого типа.

Как только рядом с модулем чтения EM-18 будет появляться RFID карта, он будет считывать данные с нее и передавать их в MSP430, который будет отображать их на экране ЖК дисплея.

Внешний вид собранной конструкции проекта показан на следующем рисунке.

Внешний вид собранной конструкции проекта

Объяснение кода программы

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

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

В функции setup мы инициализируем ЖК дисплей и последовательную связь со скоростью 9600.

В функции loop мы будем проверять доступны ли данные в последовательном порту или нет. Если доступны, мы будем сохранять их в массиве input[count] с помощью функции Serial.read() и отображать их по одному на экране ЖК дисплея один за одним используя цикл.

Исходный код программы

Видео, демонстрирующее работу проекта

(Проголосуй первым!)
Загрузка...
29 просмотров

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

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