O uso de RFID (Radio Frequency Identification) com Arduino é uma das aplicações mais populares em projetos de automação e segurança. Com poucos componentes e baixo custo, é possível criar um sistema completo de controle de acesso, ideal para portas, portões, armários, laboratórios e projetos educacionais.
Neste post, você vai entender como funciona o RFID, quais componentes utilizar, como montar o protótipo e como o sistema realiza o controle de acesso de forma segura.
🎯 Objetivo do Projeto
Desenvolver um sistema capaz de:
- Identificar usuários por cartão ou tag RFID
- Validar permissões de acesso
- Liberar ou negar a abertura de uma porta
- Indicar status visual e sonoro
- Registrar tentativas de acesso (opcional)
🧠 Como Funciona o RFID
O RFID funciona por radiofrequência, permitindo a leitura de dados sem contato físico. O sistema é composto por:
- Tag ou Cartão RFID (contém um UID único)
- Leitor RFID (ex: MFRC522)
- Controlador (Arduino)
Quando o cartão se aproxima do leitor, o UID é capturado e comparado com uma lista de UIDs autorizados.
🧰 Componentes Utilizados
- 1x Arduino Uno ou Nano
- 1x Módulo RFID MFRC522 (13,56 MHz)
- 1x Cartão ou Tag RFID
- 1x Módulo Relé ou Fechadura Solenoide
- 1x LED Verde (Acesso liberado)
- 1x LED Vermelho (Acesso negado)
- 1x Buzzer
- Jumpers
- Fonte externa (para fechadura)
🔌 Ligações Principais (MFRC522)
| MFRC522 | Arduino |
|---|---|
| SDA | D10 |
| SCK | D13 |
| MOSI | D11 |
| MISO | D12 |
| RST | D9 |
| GND | GND |
| 3.3V | 3.3V |
⚠️ Atenção: o módulo RFID MFRC522 opera somente em 3.3V.
🔐 Lógica do Controle de Acesso
- O sistema aguarda um cartão RFID
- O UID é lido pelo Arduino
- O UID é comparado com os autorizados
- Se autorizado:
- LED verde acende
- Buzzer emite sinal curto
- Relé é acionado (porta destravada)
- Se negado:
- LED vermelho acende
- Buzzer emite alerta sonoro
💻 Código de Exemplo (Arduino + RFID)
#include <SPI.h>
#include <MFRC522.h>
#define SS_PIN 10
#define RST_PIN 9
#define RELE 7
MFRC522 mfrc522(SS_PIN, RST_PIN);
// UID autorizado (exemplo)
byte autorizado[4] = {0xDE, 0xAD, 0xBE, 0xEF};
void setup() {
Serial.begin(9600);
SPI.begin();
mfrc522.PCD_Init();
pinMode(RELE, OUTPUT);
digitalWrite(RELE, HIGH); // Relé desligado
}
void loop() {
if (!mfrc522.PICC_IsNewCardPresent()) return;
if (!mfrc522.PICC_ReadCardSerial()) return;
bool acesso = true;
for (byte i = 0; i < 4; i++) {
if (mfrc522.uid.uidByte[i] != autorizado[i]) {
acesso = false;
break;
}
}
if (acesso) {
Serial.println("Acesso Liberado");
digitalWrite(RELE, LOW);
delay(3000);
digitalWrite(RELE, HIGH);
} else {
Serial.println("Acesso Negado");
}
mfrc522.PICC_HaltA();
}
⚙️ Melhorias Possíveis
- Cadastro de múltiplos usuários
- Teclado matricial (RFID + senha)
- Display LCD/OLED
- Registro de acessos em SD Card
- Integração com ESP32 + Wi-Fi
- Envio de logs via MQTT ou HTTP
🏠 Aplicações Práticas
- Portas residenciais
- Laboratórios e escritórios
- Armários inteligentes
- Controle de presença
- Projetos acadêmicos
📌 Conclusão
O controle de acesso com Arduino e RFID é um projeto completo que une eletrônica, programação e segurança. Além de ser didático, ele serve como base para sistemas profissionais mais avançados.
Com pequenas melhorias, este protótipo pode evoluir para uma solução robusta de segurança inteligente.
🔐 Em breve: Controle de acesso com RFID + Wi-Fi + Dashboard Web