Arduino MFRC522 RFID

O dispositivo de RFID mais comum usado para aplicações em Arduino é o RFID-RC522, com as seguintes características:

Corrente de funcionamento: 3.3V 13-26mA
Modo de repouso: <80uA
Pico: <30mA
Frequência: 13,56 MHz
Tipos de cartão suportados: Mifare1 S50, S70 Mifare1 MIFARE ultraleves, Mifare Pro, MIFARE DESFire
Temperatura de funcionamento: -20-80º
Humidade relativa: 5% -95%
Distância de leitura ≥50mm / 1,95 ” (mifare 1)
Tamanho do módulo: 40mm × 60 milímetros / 1,57 * 2,34 ”
Módulo de interface SPI
Taxa de transferência de dados: máximo de 10Mbit / s

Vamos exemplificar como colocar o RC522 a ler cartões RFID:

As ligações ao Arduino são de seguinte forma:

ligacoesRFID Arduino-RFID

Antes de mais vamos precisar da biblioteca principal para trabalhar com este dispositivo.

  • Faça download da biblioteca de Miguel Balboa.
  • Descompacte para dentro da pasta C:Program FilesArduinolibraries.
  • Abra o Ide do Arduino e passe o seguinte codigo:

/*
*Created by FILIPEFLOP
*Modified by Norlinux
*http://www.microelectronic.pt
*https://www.facebook.com/MundoDosMicrocontroladores/
*http://maquina.96.lt
*Released under GPLv3.
*Please refer to LICENSE file for licensing information.
*which can be found at http://www.gnu.org/licenses/gpl.txt
*/
#include
#include
#define SS_PIN 10
#define RST_PIN 9
MFRC522 mfrc522(SS_PIN, RST_PIN); // Create MFRC522 instance.
void setup()
{
Serial.begin(9600); // Initiate a serial communication
SPI.begin(); // Initiate SPI bus
mfrc522.PCD_Init(); // Initiate MFRC522
Serial.println("Aproxime o cartão para ler...");
Serial.println();
}
void loop()
{
// Look for new cards
if ( ! mfrc522.PICC_IsNewCardPresent())
{
return;
}
// Select one of the cards
if ( ! mfrc522.PICC_ReadCardSerial())
{
return;
}
//Show UID on serial monitor
Serial.print("UID tag :");
String content= "";
byte letter;
for (byte i = 0; i < mfrc522.uid.size; i++)
{
Serial.print(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " ");
Serial.print(mfrc522.uid.uidByte[i], HEX);
content.concat(String(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " "));
content.concat(String(mfrc522.uid.uidByte[i], HEX));
}
Serial.println();
Serial.print("Message : ");
content.toUpperCase();
if (content.substring(1) == "B0 EA FD 79") //change here the UID of the card/cards that you want to give access
{
Serial.println("Acesso Autorizado");
Serial.println();
delay(3000);
}
else {
Serial.println("Acesso Negado");
delay(3000);
}
}

Por fim abra o “Monitor Serie” do Arduino e passe o cartão para verificar se tudo funciona bem.

pode ajudar este video que demonstra como tudo se faz, divirtam-se!

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google

Você está comentando utilizando sua conta Google. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s