Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Надёжный RFID-замок на Arduino с RC522 (MIFARE 13.56 МГц) и сервоприводом

Компоненты и материалы

О проекте

Простой RFID-замок: при приложении авторизованной метки сервопривод поворачивается на 90° (открывает), зелёный светодиод горит 1 сек, затем запирается. Неавторизованная метка — красная вспышка 0.5 сек. Логи в Serial Monitor (115200 бод).

Схема подключения

Надёжный RFID-замок на Arduino с RC522 (MIFARE 13.56 МГц) и сервоприводом

Код (полный)

#include <SPI.h>
#include <MFRC522.h>
#include <Servo.h>
#include <Adafruit_NeoPixel.h>

#define LED_PIN A0
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(1, LED_PIN, NEO_GRB + NEO_KHZ800);

#define SERVO_PIN 3
Servo myservo;

#define SS_PIN 10
#define RST_PIN 9
MFRC522 mfrc522(SS_PIN, RST_PIN);

void setup() {
  Serial.begin(115200);
  SPI.begin();
  mfrc522.PCD_Init();
  Serial.println("For more: https://geek.adachsoft.com");
  Serial.println("Arduino RFID lock");
  Serial.println("");

  myservo.attach(SERVO_PIN);
  myservo.write(0);

  pixels.begin();
  pixels.setPixelColor(0, 32, 32, 32); pixels.show(); delay(500);
  pixels.setPixelColor(0, 0, 0, 0);    pixels.show();
}

void loop() {
  if (!mfrc522.PICC_IsNewCardPresent()) return;
  if (!mfrc522.PICC_ReadCardSerial()) return;

  String content = "";
  for (byte i = 0; i < mfrc522.uid.size; i++) {
    content.concat(String(mfrc522.uid.uidByte[i], HEX));
    if (i < mfrc522.uid.size - 1) content += "-";
  }
  content.toUpperCase();

  Serial.println();
  Serial.println("UID tag: '" + content + "'");

  // ЗДЕСЬ ПОДСТАВЬТЕ UID ВАШЕЙ АВТОРИЗОВАННОЙ МЕТКИ
  if (content == "77-39-50-39") {
    Serial.println("Authorized access");
    myservo.write(90);
    pixels.setPixelColor(0, 0, 32, 0); pixels.show();
    delay(1000);
    myservo.write(0);
    pixels.setPixelColor(0, 0, 0, 0); pixels.show();
  } else {
    Serial.println("Access denied");
    pixels.setPixelColor(0, 32, 0, 0); pixels.show();
    delay(500);
    pixels.setPixelColor(0, 0, 0, 0); pixels.show();
  }
  delay(1000);
}

Настройка

  1. Установите библиотеки: MFRC522, Adafruit_NeoPixel (через менеджер библиотек).
  2. Загрузите скетч, откройте Serial Monitor (115200).
  3. Приложите свою метку — в мониторе появится её UID (например, 77-39-50-39).
  4. Замените в коде строку if (content == "77-39-50-39") на свой UID.
  5. Перезагрузите Arduino.

Расширения

Производственный процесс

  1. Создание надежного RFID-замка на Arduino — пошаговое руководство
  2. Надежная система учета рабочего времени на Arduino с RFID и Python
  3. Датчик CO2 K30: мониторинг качества воздуха в реальном времени на Arduino
  4. Устройство для общения глухосліпых людей с помощью 1Sheeld и Arduino
  5. Умная копилка: управление монетоприёмником на Arduino Nano
  6. Управление светодиодом по Bluetooth с Arduino: простой DIY-гид
  7. Интеграция ёмкостного сканера отпечатков DFRobot с Arduino или ESP8266
  8. Интерактивный HMI-проект на Nextion с Arduino Mega и датчиками
  9. Роботизированная рука 6 степеней свободы на Arduino Mega с управлением через Nunchuk
  10. Умная электронная система регистрации посещений для хакерспейсов