Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Sicheres RFID-Türschloss mit Arduino & RC522 (MIFARE 13,56 MHz)

Komponenten und Materialien

Projektbeschreibung

Ein einfaches, aber sicheres RFID-Türschloss: Nur autorisierte Tags (UID im Code hinterlegt) öffnen die Tür per Servo. Eine einzelne NeoPixel-LED zeigt Status: Weiß=Start, Grün=Zugang gewährt, Rot=Zugang verweigert. Der Code ist kompakt und gut kommentiert.

Schaltplan

Sicheres RFID-Türschloss mit Arduino & RC522 (MIFARE 13,56 MHz)

Code

/* Arduino RFID Lock mit RC522, Servo & NeoPixel
 * https://geek.adachsoft.com
 */

#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("Arduino RFID Lock");
  myservo.attach(SERVO_PIN);
  myservo.write(0); // zu
  pixels.begin();
  pixels.setPixelColor(0, 32, 32, 32); // Weiß
  pixels.show();
  delay(500);
  pixels.setPixelColor(0, 0, 0, 0);
  pixels.show();
}

void loop() {
  // Neue Karte suchen
  if (!mfrc522.PICC_IsNewCardPresent()) return;
  if (!mfrc522.PICC_ReadCardSerial()) return;

  // UID als Hex-String mit Bindestrichen
  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("UID tag: '" + content + "'");

  // Autorisierte UID hier eintragen!
  if (content == "77-39-50-39") {
    Serial.println("Authorized access");
    myservo.write(90); // auf
    pixels.setPixelColor(0, 0, 32, 0); // Grün
    pixels.show();
    delay(1000);
    myservo.write(0); // zu
    pixels.setPixelColor(0, 0, 0, 0);
    pixels.show();
  } else {
    Serial.println("Access denied");
    pixels.setPixelColor(0, 32, 0, 0); // Rot
    pixels.show();
    delay(500);
    pixels.setPixelColor(0, 0, 0, 0);
    pixels.show();
  }
  delay(1000);
}

Erweiterungsideen

Herstellungsprozess

  1. Sicheres Arduino RFID-Schloss bauen – Schritt-für-Schritt-Anleitung
  2. RFID-Anwesenheitssystem mit Arduino & Python – Daten direkt in phpMyAdmin (XAMPP) speichern
  3. K30 CO₂-Sensor: Echtzeit-Luftqualitätsmessung mit Arduino
  4. Kommunikationshilfe für Taubblinde: 1Sheeld + Arduino + Sprachausgabe & Anzeige
  5. Smartes Sparschwein: Münzprüfer mit Arduino Nano steuern
  6. LED per Bluetooth mit Arduino steuern – Einfache DIY-Anleitung
  7. DFRobot Kapazitiver Fingerabdrucksensor mit Arduino oder ESP8266 einbinden
  8. Interaktives Nextion HMI Projekt mit Arduino Mega und Sensoren
  9. Arduino-basierter 6-DoF Roboterarm mit Nunchuk-Steuerung
  10. Smartes Check-In-System für Hackerspaces – Arduino Mega, RFID (RC522) & Node.js