Crie uma Fechadura RFID Segura com Arduino – Guia Passo a Passo
Componentes e Materiais
- 1x Arduino UNO
- 1x Leitor RFID (genérico, modelo RC522)
- 1x Display OLED 0.96" I2C (128x64)
- 1x Protoboard pequena
- Fios jumpers
- Opcional: Power bank para alimentação portátil
Custo total aproximado: US$ 15.
Aplicativos e Serviços Online
- Arduino IDE
Sobre o Projeto
Neste tutorial, vamos aprender a utilizar um leitor RFID RC522 com Arduino para construir um sistema de fechadura simples. O projeto lê o ID único (UID) de cada tag RFID aproximada do leitor e exibe no display OLED. Se o UID corresponder a um valor pré-definido na memória do Arduino, a mensagem "Destrancado" aparece; caso contrário, nada acontece.
Passo 1: Obtenha Todos os Componentes
Além do Arduino UNO e do leitor RFID, você precisará do display OLED, protoboard e fios. O leitor RFID e duas tags custam cerca de US$ 4.
Passo 2: O Leitor RFID RC522
Cada tag RFID possui um chip interno que não precisa de bateria – recebe energia do leitor via indução eletromagnética (bobina). O leitor detecta tags a até 20 mm de distância. Cada tag tem um UID único (4 bytes) e pode armazenar até 1 KB de dados, embora não usemos essa função aqui.
Passo 3: Display OLED
O display OLED de 128x64 pixels consome apenas 10-20 mA e usa interface I2C (apenas 2 fios além de VCC/GND). A biblioteca Adafruit SSD1306 facilita seu uso. Existem versões monocromáticas e de duas cores (amarelo/azul).
Passo 4: Conecte Todos os Componentes
Atenção: O leitor RFID deve ser alimentado pelo pino 3.3V do Arduino – 5V o danificará permanentemente.
Conexões do Display OLED (I2C):
- VCC → 3.3V
- GND → GND
- SCL → Pino Analógico A5
- SDA → Pino Analógico A4
Conexões do Leitor RFID (SPI):
- RST → Pino Digital 9
- IRQ → Não conectado
- MISO → Pino Digital 12
- MOSI → Pino Digital 11
- SCK → Pino Digital 13
- SDA (SS) → Pino Digital 10
Ambos os módulos compartilham o barramento de 3.3V e GND na protoboard.
Passo 5: O Código do Projeto
Bibliotecas necessárias:
- MFRC522 (instalar via Gerenciador de Bibliotecas)
- Adafruit SSD1306 e Adafruit GFX (instalar via Gerenciador)
Importante: Na biblioteca Adafruit_SSD1306, edite o arquivo Adafruit_SSD1306.h: comente a linha 70 e descomente a linha 69 para definir a resolução 128x64.
Lógica Principal:
int codigo[] = {69, 141, 8, 136}; // UID autorizado (exemplo)
void setup() {
rfid.PCD_Init();
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
}
void loop() {
// Verifica tag a cada 100 ms
if (rfid.PICC_IsNewCardPresent() && rfid.PICC_ReadCardSerial()) {
// Exibe UID no display
// Compara com 'codigo'
if (match) {
Serial.println("Conheço este cartão!");
printUnlockMessage(); // Mostra "Destrancado"
} else {
Serial.println("Cartão Desconhecido");
}
}
delay(100);
}
O código completo está disponível no arquivo RFID.ino anexo ao projeto. Você pode expandir para reconhecer múltiplas tags armazenando vários UIDs em um array.
Passo 6: Considerações Finais e Melhorias
Com custo muito baixo, adicionamos leitura RFID a projetos. Possíveis expansões: sistemas de segurança, controle de acesso, jogos interativos para crianças usando múltiplas tags. Em tutoriais futuros, exploraremos leitura/escrita de dados nas tags.
Processo de manufatura
- Fecheadura RFID Segura com Arduino e RC522 (MIFARE 13,56 MHz)
- Projeto Sensor de Impressão Digital com Arduino Nano – Tutorial Completo
- Construa um Mini Piano com Arduino UNO – Tutorial Passo a Passo
- Construa uma Fechadura de Porta RFID Portátil com Arduino – Guia Passo a Passo
- Proteja Seu PC com Trava de Porta RFID e Relé – Projeto Arduino
- Integrar Leitor RFID HID Prox com Arduino UNO – Configuração Passo a Passo
- Leitor RFID de Cartão Habilitado para Rede com Arduino, Ethernet ENC28J60 e MFRC522
- Segurança para PC Windows sem Esforço: Sistema de Bloqueio/Desbloqueio por RFID
- Dominando Multitarefa no Arduino com Protothreading: Tutorial Passo a Passo
- Tutorial Arduino Iniciante 01: Comece seu Primeiro Projeto