Circuito Leitor RFID usando Arduino

Relacionados

Neste artigo vamos fazer um tour pela tecnologia de circuitos RFID. Exploraremos como as etiquetas e leitores RFID funcionam, como fazer a interface do módulo RFID (RC522) com o Arduino e extrair algumas informações úteis das etiquetas RFID.

Usando etiquetas RFID

Tenho certeza de que todos vocês usaram RFID para obter acesso de segurança pelo menos uma vez no escritório, escola, faculdade, biblioteca etc.

A etiqueta/cartão que você carrega tem chip eletrônico embutido nele, o chip armazena sua identidade eletronicamente. Ao contrário dos códigos de barras, onde o cartão deve estar na linha de visão do leitor, os RFIDs podem ser colocados perto do leitor para ler as informações.

A maioria dos nossos cartões inteligentes usa tecnologia RFID passiva, o que significa que não é necessária energia para ler as informações do cartão. O leitor alimenta o chip RFID e extrai informações ao mesmo tempo.

Esses tipos de tags podem ler informações de milímetros a alguns pés, dependendo da tag e da aplicação.

As etiquetas RFID ativas são alimentadas externamente, esses tipos de etiquetas transmitem as informações até 100 pés. O consumo de energia da bateria é otimizado para durar alguns anos.

Neste projeto, vamos olhar para a tecnologia RFID passiva. Estamos usando o módulo leitor RC522 junto com o arduino para extrair e exibir informações. O módulo RC522 está comumente disponível em sites de comércio eletrônico e lojas locais de kits eletrônicos.

Ilustração do módulo leitor/gravador RC522:

MÓDULO LEITOR/GRAVADOR RC522
CIRCUITO LEITOR RFID USANDO ARDUINO 9

Tags do tipo cartão e chaveiro:

TAGS TIPO CARTÃO E CHAVEIRO
CIRCUITO LEITOR RFID USANDO ARDUINO 10

Como podemos ver, uma parte da PCB é circundada por um caminho condutor em formato quadrado no leitor; isso gerará campo eletromagnético para a etiqueta na frequência de 13,56 MHz.

O EMF gerado é selecionado pela etiqueta e convertido em tensão suficiente para a etiqueta operar, a etiqueta enviará as informações necessárias em forma de pulso de volta ao leitor. O microcontrolador a bordo decodifica as informações.

Como funciona

CIRCUITO RFID USANDO ARDUINO
CIRCUITO LEITOR RFID USANDO ARDUINO 11

O esquema é muito fácil e autoexplicativo, poucos fios de jumper são suficientes para realizar este projeto. Vamos alimentar o arduino e o RFID via porta USB do computador. A tensão de operação do RC522 é de 3,3V, não conecte a alimentação de 5V ao módulo e danificará os componentes on-board.

Protótipo do circuito Arduino RFID:

IMG 62457AF30B896
CIRCUITO LEITOR RFID USANDO ARDUINO 12

Essas são todas as conexões de hardware, agora vamos pular para a codificação.

Antes de fazer o upload do programa, baixe o arquivo da biblioteca no link a seguir e vá para a pasta da biblioteca do arduino IDE.

github.com/miguelbalboa/rfid.git

Código do programa:

//-------------------------Program developed by R.Girish------------------//
#include
#include
#define SS_PIN 10
#define RST_PIN 9
MFRC522 rfid(SS_PIN, RST_PIN);
MFRC522::MIFARE_Key key;
void setup()
{
Serial.begin(9600);
SPI.begin();
rfid.PCD_Init();
}
void loop() {
if ( ! rfid.PICC_IsNewCardPresent())
return;
if ( ! rfid.PICC_ReadCardSerial())
return;
MFRC522::PICC_Type piccType = rfid.PICC_GetType(rfid.uid.sak);
if(piccType != MFRC522::PICC_TYPE_MIFARE_MINI &&
piccType != MFRC522::PICC_TYPE_MIFARE_1K &&
piccType != MFRC522::PICC_TYPE_MIFARE_4K)
{
Serial.println(F("Your tag is not of type MIFARE Classic, your card/tag can't be read :("));
return;
}
String StrID = "" ;
for (byte i = 0; i <4; i ++)
{
StrID +=
(rfid.uid.uidByte[i]<0x10? "0" : "")+
String(rfid.uid.uidByte[i],HEX)+
(i!=3?":" : "" );
}
StrID.toUpperCase();
Serial.print("Your card's UID:");
Serial.println(StrID);
rfid.PICC_HaltA ();
rfid.PCD_StopCrypto1 ();
}
//-------------------------Program developed by R.Girish------------------//

OK! O que o programa acima projetado para funcionar?

O programa acima exibirá o UID da tag no monitor serial do IDE, quando você digitalizar no leitor. UID é o número de identificação único da etiqueta, não pode ser alterado e é definido pelo fabricante.

SAÍDA:

UID do seu cartão: FA:4E:B2 // este é um exemplo.

Nota 1: Os dois valores são separados por dois pontos, o que é feito pelo programa; os valores reais não podem ser separados por dois pontos, mas sim por espaço.

Nota 2: Somente as etiquetas RFID fabricadas pela NXP são legíveis/graváveis ​​com a configuração proposta, elas são comumente e comercialmente usadas.

O UID é usado para reconhecer a tag; a tag que acompanha o kit pode armazenar até 1KB de informações. Existem outros cartões que podem armazenar até 4KB de informações ou até mais.

O processo de armazenamento e extração das informações da tag é assunto de outro artigo.
Se você tiver alguma dúvida sobre este projeto, sinta-se à vontade para perguntar na seção de comentários.

Hashtags: #Circuito #Leitor #RFID #usando #Arduino
 

FONTE


Nota: Este conteúdo foi traduzido do Inglês para português (auto)
Pode conter erros de tradução

Olá, se tiver algum erro de tradução (AUTO), falta de link para download etc…
Veja na FONTE até ser revisado o conteúdo.
Status (Ok Até agora)


Se tiver algum erro coloque nos comentários

Mas se gostou compartilhe!!!

Relacionados

Relacionados