Veilige Arduino RFID-deurslot bouwen met RC522 (MIFARE 13,56 MHz)
Onderdelen en benodigdheden
| Arduino UNO | × | 1 |
| RFID RC522 | × | 1 |
| TG9e servo | × | 1 |
| Adafruit NeoPixel Ring: WS2812 5050 RGB LED | × | 1 |
| RFID-tag | × | 2 |
Over dit project
In deze handleiding laat ik zien hoe je eenvoudig een RFID-slot maakt met een Arduino UNO en de RFID RC522 (MIFARE-protocol). Dit project is ook te vinden op: Arduino RFID lock.
Stap 1: Onderdelen

- Arduino UNO
- RFID RC522
- TG9e servo
- LED RGB - WS2812
- 2 × RFID-tag
Stap 2: Schema

Stap 3: Software
We beginnen met het importeren van de benodigde bibliotheken:
#include <SPI.h>
#include <MFRC522.h>
#include <Servo.h>
#include <Adafruit_NeoPixel.h>
//----------------------------------------------------------
Vervolgens configureren en initialiseren we de UART-snelheid, starten de RC522 en zetten de servo op nul:
void setup() {
Serial.begin(115200);
SPI.begin();
mfrc522.PCD_Init();
Serial.println("Meer info: https://geek.adachsoft.com");
Serial.println("Arduino RFID slot");
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();
}
//----------------------------------------------------------
Na het lezen van de UID van de tag vergelijken we deze met de geautoriseerde UID. Bij overeenkomst draait de servo open:
if (content == "77-39-50-39") {
Serial.println("Toegang geautoriseerd");
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("Toegang geweigerd");
pixels.setPixelColor(0, 32, 0, 0);
pixels.show();
delay(500);
pixels.setPixelColor(0, 0, 0, 0);
pixels.show();
}
//----------------------------------------------------------
Broncode downloaden: RFID_with_servo.ino
Stap 4: Afronden en testen
Test het systeem door de tags voor de reader te houden. De servo moet draaien bij een geldige tag en de NeoPixel ring geeft visuele feedback (groen = toegang, rood = geweigerd).
Code
RFID_with_servo.ino Arduino
/*
* 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("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 + "'");
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);
}
Schema's

Productieproces
- Maak een Veilige Arduino RFID Slot – Stapsgewijze Handleiding
- Betrouwbaar Arduino RFID Aanwezigheidssysteem Aangedreven door Python
- K30 CO2-sensor: Real-time binnenluchtkwaliteitmonitoring met Arduino
- Communicatie voor doofblinden vergemakkelijken met 1Sheeld en Arduino
- Slimme spaarpot bouwen: Muntenacceptor besturen met Arduino Nano
- Een LED bedienen via Bluetooth met Arduino – Eenvoudige DIY Handleiding
- Een DFRobot Capacitieve Vingerafdruksensor integreren met Arduino of ESP8266
- Interactief Nextion HMI-weerstation met Arduino Mega en sensoren
- Arduino-gebaseerde 6-DoF Robotarm Gestoeerd met Wii Nunchuk
- Slim Elektronisch Check-in Systeem voor Hackerspaces
- Accurate zonnestralingsmeting met Arduino UNO en Ethernet Shield