ESP8266 - RFID

Este tutorial ensina como usar RFID/NFC com o ESP8266. O sistema RFID/NFC é composto por dois componentes: um leitor e uma tag. Dois dos leitores RFID/NFC mais populares são o RC522 e o PN532. Este tutorial usará o leitor RFID/NFC RC522, que é barato e fácil de usar.

O leitor RFID/NFC RC522 pode:

Este tutorial foca em:

Hardware Necessário

1×ESP8266 NodeMCU ESP-12F
1×Alternatively, ESP8266 D1 Mini NodeMCU ESP-12F
1×Alternatively, ESP8266 NodeMCU ESP-12E (Uno-form)
1×Micro USB Cable
1×Alternatively, ESP8266 NodeMCU ESP-12F (SMD-form)
1×Cabo USB Tipo-A para Tipo-C (para PC com USB-A)
1×Cabo USB Tipo-C para Tipo-C (para PC com USB-C)
1×RFID/NFC RC522 Kit (reader + tags)
1×Fios Jumper
1×(Recomendado) Placa de Expansão com Bornes de Parafuso para ESP8266

Or you can buy the following kits:

1×DIYables Sensor Kit (18 sensors/displays)
Divulgação: Alguns dos links desta seção são links de afiliado da Amazon. Podemos receber uma comissão pelas compras feitas por meio desses links, sem custo adicional para você. Agradecemos o seu apoio.

Sobre o Módulo RFID-RC522

Pinagem do Módulo RFID-RC522

O RFID-RC522 tem oito pinos, alguns deles comuns e os outros compartilhados entre três modos de comunicação: SPI, I2C e UART. Apenas um modo de comunicação pode ser usado por vez. Os pinos são:

  • GND: deve ser conectado ao GND (0V)
  • VCC: deve ser conectado ao VCC (3.3)
  • RST: é um pino para reset e desligamento. Quando este pino vai para nível baixo, o desligamento total é ativado. Na borda de subida, o módulo é reiniciado.
  • IRQ: é um pino de interrupção que pode alertar o microcontrolador quando uma tag RFID está nas proximidades.
  • MISO/SCL/TX: atua como MISO quando a interface SPI está ativada, como SCL quando a interface I2C está ativada e como TX quando a interface UART está ativada.
  • MOSI: atua como MOSI quando a interface SPI está ativada.
  • SCK: atua como SCK quando a interface SPI está ativada.
  • SS/SDA/RX: atua como SS quando a interface SPI está ativada, como SDA quando a interface I2C está ativada e como RX quando a interface UART está ativada.
pinagem do RFID-RC522

※ Nota:

  • A disposição dos pinos pode variar dependendo do fabricante. SEMPRE siga os rótulos impressos no módulo. A ilustração acima é a pinagem do módulo do fabricante DIYables.
  • Não conecte o pino VCC ao pino 5V. Isso pode danificar o seu módulo.
  • A biblioteca MFRC522 suporta apenas o modo SPI, então este guia usará apenas a comunicação SPI.

Como o RFID/NFC Funciona

O RFID/NFC é composto por duas partes: leitor e tag:

  • O leitor é formado por um módulo de radiofrequência e uma antena que produz um campo eletromagnético de alta frequência.
  • A tag geralmente é um dispositivo passivo, que não precisa de fonte de alimentação. Ela tem um microchip para armazenar e processar dados, além de uma antena para receber e transmitir sinais. A tag é usada para guardar informações como um UID (Unique ID) e outros dados.
sistema arduino rfid nfc

A tag deve estar perto do leitor para que as informações que ela contém possam ser acessadas. O processo de leitura é o seguinte:

  • O leitor produz um campo eletromagnético, que faz os elétrons fluírem pela antena da tag e alimentarem o chip.
  • O chip dentro da tag então responde enviando de volta ao leitor as informações solicitadas na forma de um sinal de rádio.
  • O leitor detecta o sinal e o converte em dados.
  • O ESP8266 lê os dados do leitor.

Diagrama de Ligação entre o Módulo RFID-RC522 e o ESP8266

diagrama de ligação do ESP8266 NodeMCU com RFID RC522

This image is created using Fritzing. Click to enlarge image

Para mais informações, veja Pinagem do ESP8266 e como alimentar o ESP8266 e outros componentes.

Se você usar fios jumper macho-fêmea, poderá conectar o ESP8266 diretamente ao módulo RFID-RC522. No entanto, se usar fios jumper macho-macho, você deve conectar o ESP8266 ao módulo RFID-RC522 por meio de uma protoboard.

Tabela de ligação do Módulo RFID/NFC RC522 e do ESP8266

RFID/NFC RC522 ESP8266
SS → D8 (SPI CS/SS)
SCK → D5 (SPI CLK)
MOSI → D7 (SPI MOSI)
MISO → D6 (SPI MISO)
IRQ não conectado
GND → GND
RST → D2
VCC → 3.3V

Código ESP8266 para RFID/NFC

/* * Este código de ESP8266 NodeMCU foi desenvolvido por pt.newbiely.com * Este código de ESP8266 NodeMCU é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/esp8266/esp8266-rfid */ #include <SPI.h> #include <MFRC522.h> #define SS_PIN D8 // The ESP8266 pin D8 #define RST_PIN D2 // The ESP8266 pin D2 MFRC522 rfid(SS_PIN, RST_PIN); void setup() { Serial.begin(9600); SPI.begin(); // init SPI bus rfid.PCD_Init(); // init MFRC522 Serial.println("Tap an RFID/NFC tag on the RFID-RC522 reader"); } void loop() { if (rfid.PICC_IsNewCardPresent()) { // new tag is available if (rfid.PICC_ReadCardSerial()) { // NUID has been readed MFRC522::PICC_Type piccType = rfid.PICC_GetType(rfid.uid.sak); Serial.print("RFID/NFC Tag Type: "); Serial.println(rfid.PICC_GetTypeName(piccType)); // print UID in Serial Monitor in the hex format Serial.print("UID:"); for (int i = 0; i < rfid.uid.size; i++) { Serial.print(rfid.uid.uidByte[i] < 0x10 ? " 0" : " "); Serial.print(rfid.uid.uidByte[i], HEX); } Serial.println(); rfid.PICC_HaltA(); // halt PICC rfid.PCD_StopCrypto1(); // stop encryption on PCD } } }

Passos Rápidos

Para começar com o ESP8266 na Arduino IDE, siga estes passos:

  • Confira o tutorial como configurar o ambiente para ESP8266 na Arduino IDE se esta for a sua primeira vez usando o ESP8266.
  • Ligue os componentes como mostrado no diagrama.
  • Conecte a placa ESP8266 ao seu computador usando um cabo USB.
  • Abra a Arduino IDE no seu computador.
  • Escolha a placa ESP8266 correta, como (por exemplo, NodeMCU 1.0 (ESP-12E Module)), e a respectiva porta COM.
  • Clique no ícone Libraries na barra esquerda da Arduino IDE.
  • Pesquise por “MFRC522” e localize a biblioteca fornecida por GithubCommunity.
  • Pressione o botão Install para instalar a biblioteca MFRC522.
biblioteca MFRC522 para ESP8266 NodeMCU
  • Copie o código e abra-o com a Arduino IDE.
  • Clique no botão Upload da Arduino IDE para compilar e fazer upload do código para o ESP8266.
  • Abra o Serial Monitor.
  • Aproxime algumas tags RFID/NFC do módulo RFID-RC522.
  • Verifique o UID no Serial Monitor.
∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
Nodemcu 1.0 (ESP-12E Module)
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'Nodemcu 1.0 (ESP-12E Module)' on 'COM15')
New Line
9600 baud
Tap RFID/NFC tag on reader RFID/NFC tag Type: MIFARE 1KB UID: 3A C9 6A CB RFID/NFC tag Type: MIFARE Ultralight or Ultralight C UID: 04 64 34 5A 1E 4E 80
Ln 11, Col 1
Nodemcu 1.0 (ESP-12E Module) on COM15
2

Vídeo

※ NOSSAS MENSAGENS

  • Fique à vontade para compartilhar o link deste tutorial. Porém, por favor, não use nosso conteúdo em outros sites. Investimos muito esforço e tempo para criar este conteúdo, por favor respeite nosso trabalho!