Leitor RFID com Arduino

471 views

Olá pessoal! Hoje vamos tirar do nosso baú como funciona o leitor RFID com Arduino.

O RFID (Radio Frequency Identification ou Identificação por Radiofrequência) é um sistema de identificação que captura dados via radiofrequência.

As tags (etiquetas) contêm informações que são lidas via radiofrequência pelo leitor Kit RFID RC – 522. Essas tags podem ter formatos de cartão e até chaveiro.

 

 

Kit Leitor RFID RC - 522
Figura 1 – Kit Leitor RFID RC – 522

 

Quando aproximamos a tag do leitor RFID, o campo de radiofrequências deste leitor alimenta o circuito da tag, assim enviando informações para o leitor e o leitor enviando informações para a tag.

 

Sistema RFID
Figura 2 – Sistema RFID

 

O sistema RFID pode ser aplicado em:

  • Identificação pessoal por meio de crachá;
  • Pagamento de transporte (Bilhete Único),
  • Pagamento de pedágios (Sem Parar);
  • Rastreamento de produtos.

Conectando o RFID com Arduino

Veja abaixo a conexão do RFID com Arduino:

Pino do RFIDPino do Arduino
3.33.3 V
GNDGND
RST9
SDA10
MOSI11
MISO12
SCK13

 

Circuito RFID com Arduino

Lista de materiais:

1 Unidade – Arduino Uno;

1 Unidade – Kit RFID RC522;

1 Unidade – Jumper Macho Fêmea.

Circuito RFID com o Arduino
Figura 3 – Circuito RFID com Arduino

Programa do RFID com Arduino

O programa abaixo consiste em mostrar no monitor serial a UID (User Identification ou Identificação do Usuário) do cartão e do chaveiro. A tag, tanto do cartão quanto do chaveiro não será reconhecida de forma consecutiva.

Explicando o Programa

No trecho acima, incluímos as bibliotecas do RFID e SPI para iniciarmos a comunicação entre o RFID RC522 e o Arduino. Após a inclusão das bibliotecas, criamos um objeto rfid  RFID rfid(10, 9).

Também será necessário criar 5 variáveis: num0, num1, num2, num3 e num4.

O código acima nos mostra a configuração da taxa de comunicação do monitor serial, a inicialização da comunicação SPI e do objeto rfid.

Após a configuração, inicia-se o programa principal onde, se a tag for detectada (aproximação da mesma com o módulo RFID) if (rfid.isCard()) , a informação da tag é lida e se os 5 números da UID forem diferentes das variáveis criadas (e inicialmente será) o programa prosseguirá conforme veremos abaixo:

Neste trecho podemos ver que serão enviadas para o monitor serial as informações lidas na tag em decimal e em hexadecimal Serial.print(rfid.serNum[0],DEC), Serial.print(rfid.serNum[0],HEX).

Após enviar a UID da tag para o monitor serial são enviadas para as variáveis o número das tags num0 = rfid.serNum[0] e a seguir o RFID entre em modo de espera

rfid.halt(). Se caso aproximarmos a mesma tag no RFID, o UID desta não será enviada para o monitor serial, pois a condição aceita para que o programa continue é que o número lido da RFID seja diferente das variáveis criadas. Para que isso ocorra, é necessário que o RFID leia outra tag, assim a UID lida será diferente das variáveis criadas e assim o programa prosseguirá.

Monitor Serial mostra a UID das tags - RFID com arduino uno
Figura 4 – Monitor Serial mostra a UID das tags

 

Esperamos que tenham gostado deste tutorial. Para dúvidas e sugestões, deixe um comentário abaixo! Aproveite e confira outros produtos em nossa loja!

(Visited 411 times, 2 visits today)