ESP32 - Sistema de Fechadura de Porta com RFID/NFC
Este tutorial ensina como usar o ESP32 para fazer um sistema de fechadura de porta com RFID/NFC.
※ Nota:
Você pode combinar esta fechadura com o sistema de fechadura de porta usando teclado.
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables ESP32 Starter Kit (ESP32 included) | |
| 1 | × | DIYables ESP32 S3 Starter Kit (ESP32 S3 included) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Sobre o Módulo RFID/NFC RC522 e a Fechadura Eletromagnética
Temos tutoriais específicos sobre o módulo RFID/NFC RC522 e a fechadura eletromagnética. Cada tutorial contém informações detalhadas e instruções passo a passo sobre a pinagem do hardware, o princípio de funcionamento, a ligação com o ESP32, o código ESP32... Saiba mais sobre eles nos links a seguir:
Componentes do Sistema
Um sistema de fechadura de porta inclui duas partes principais:
- Fechadura da porta: ESP32, leitor RFID/NFC, fechadura solenoide ou fechadura eletromagnética
- Chave da porta: tags RFID/NFC

Como a Fechadura de Porta com RFID/NFC Funciona
- Os UIDs das tags autorizadas (chaves) são predefinidos no código do ESP32
- Quando uma tag RFID/NFC é aproximada do leitor RFID/NFC
- O ESP32 lê o UID do leitor
- O ESP32 compara o UID com os UIDs predefinidos
- Se um UID corresponder, o ESP32 desativa a fechadura eletromagnética para destrancar a porta.
Diagrama de Ligação

This image is created using Fritzing. Click to enlarge image
Se você não sabe como alimentar o ESP32 e outros componentes, veja as instruções no tutorial a seguir: Como alimentar o ESP32.
※ Nota:
A ordem dos pinos pode variar de acordo com o fabricante. SEMPRE use os rótulos impressos no módulo. A imagem acima mostra a pinagem dos módulos do fabricante DIYables.
Código ESP32 - Uma Única Chave
Passos Rápidos
- Se esta é a primeira vez que você usa o ESP32, veja como configurar o ambiente para o ESP32 na Arduino IDE.
- Clique no ícone Libraries na barra esquerda da Arduino IDE.
- Digite “MFRC522” na caixa de pesquisa e procure a biblioteca da GithubCommunity
- Instale a biblioteca clicando no botão Install.

- Descubra o UID da tag seguindo os passos abaixo:
- Copie o código acima e cole na Arduino IDE.
- Compile e faça o upload do código para a placa ESP32 clicando no botão Upload na Arduino IDE
- Abra o Serial Monitor na Arduino IDE
- Aproxime do leitor RFID-RC522 a tag RFID/NFC que você quer autorizar
- Anote o UID impresso no Serial Monitor
- Atualize o UID na linha 18 do código acima. Por exemplo, mude byte keytagUID[4] = {0xFF, 0xFF, 0xFF, 0xFF}; PARA byte keytagUID[4] = {0x2B, 0xB8, 0x59, 0xB1};
- Faça o upload do código para o ESP32 novamente
- Aproxime uma tag RFID/NFC do módulo RFID-RC522
- Veja o resultado no Serial Monitor
- Verifique a fechadura eletromagnética, ela deve estar desativada
- Aproxime outra tag RFID/NFC do módulo RFID-RC522
- Veja o resultado no Serial Monitor

Código ESP32 - Várias Chaves
Vamos fazer uma fechadura que aceita duas chaves: a chave do gerente e a chave da secretária para destrancar a porta.
Passos Rápidos
- Atualize no código os UUIDs das duas tags RFID/NFC autorizadas
- Faça o upload do código para o ESP32
- Aproxime as tags autorizadas, uma por uma, do módulo RFID-RC522.
- O resultado no Serial Monitor:
Você pode modificar o código para adicionar três, quatro ou mais tags.