
Интернет-магазин «Неглупый Дом»
RDM6300 считывает 125кГц-метки через UART — при поднесении карты Arduino подаёт короткий сигнал и открывает замок через модуль реле.
RDM6300 работает не по SPI или I2C, а по простому последовательному протоколу UART — при поднесении метки стандарта EM4100 (125 кГц) он сам, без участия Arduino, декодирует радиосигнал и выдаёт через UART готовый пакет байт с идентификатором метки. Именно поэтому базовый код в этом проекте настолько короткий: вся сложность чтения радиометки уже решена внутри самого модуля, а Arduino достаточно заметить, что по UART что-то пришло.
В базовой версии контроля доступа код не проверяет, какая именно метка поднесена, а реагирует на сам факт прихода данных — это превращает устройство в "открывает любому, у кого есть такая метка", а не в полноценный контроль доступа по списку разрешённых людей. Для настоящего турникета с проверкой конкретных карт нужно накопить байты UID в массив и сравнить его целиком с заранее сохранённым списком разрешённых идентификаторов.
Так как реализации данного модуля бывают разные, если у вас на плате нет тех контактов, что указаны ниже — сориентируйтесь по названиям контактов на своей плате.
// ВНИМАНИЕ: рекомендую отладить код через монитор порта, я языковая
// модель, а не специализированный кодер, могу что-то упустить.
#include <SoftwareSerial.h>
SoftwareSerial rdm(10, 11); // RX, TX (TX модуля не используется)
const int relayPin = 7;
const int buzzerPin = 8;
void setup() {
Serial.begin(9600);
rdm.begin(9600);
pinMode(relayPin, OUTPUT);
pinMode(buzzerPin, OUTPUT);
}
void loop() {
if (rdm.available() > 0) {
Serial.println("Метка обнаружена, открываю");
while (rdm.available()) rdm.read(); // считываем и сбрасываем буфер метки
tone(buzzerPin, 2000, 200);
digitalWrite(relayPin, HIGH);
delay(3000);
digitalWrite(relayPin, LOW);
delay(500);
}
}
Для проверки конкретного UID метки данные из `rdm.read()` нужно накопить в массив и сравнить с разрешённым списком — в базовом варианте замок реагирует на любую поднесённую метку этого стандарта.
Ещё модули для Arduino: Электронные модули.
🎁 Купить весь комплект со скидкой 10%
Все 2 товара сразу в корзину: 360 ₽ 324 ₽ (экономия 36 ₽)
Скидка применяется автоматически при оформлении заказа, если в корзине именно этот комплект.
Остались вопросы? Проконсультируйтесь с ИИ-инженером — он уже в курсе темы статьи и сразу ответит, ничего вводить не нужно.