Tabla de contenido:

Cómo utilizar el módulo RFID-RC522 con Arduino: 5 pasos
Cómo utilizar el módulo RFID-RC522 con Arduino: 5 pasos

Video: Cómo utilizar el módulo RFID-RC522 con Arduino: 5 pasos

Video: Cómo utilizar el módulo RFID-RC522 con Arduino: 5 pasos
Video: 34 Curso Arduino - RFID RC522 - 1/2 - Introducción y Verificación 2024, Noviembre
Anonim
Cómo utilizar el módulo RFID-RC522 con Arduino
Cómo utilizar el módulo RFID-RC522 con Arduino

En este Instructable, daré un tutorial sobre el principio de funcionamiento fundamental del módulo RFID junto con sus etiquetas y chips. También proporcionaré un breve ejemplo de un proyecto que hice usando este módulo RFID con un LED RGB. Como de costumbre con mis Instructables, daré una breve descripción dentro de los primeros pasos y dejaré una explicación completa y detallada en el último paso para aquellos que estén interesados.

Suministros:

Módulo RFID RC522 + etiqueta y tarjeta de identificación -

LED RGB + tres resistencias de 220 ohmios

Paso 1: Conexiones de hardware

Conexiones de hardware
Conexiones de hardware

En este proyecto usé el Arduino Mega, pero podrías usar cualquier microcontrolador que quisieras ya que este es un proyecto de recursos relativamente bajos, lo único que sería diferente son las conexiones de pines para SCK, SDA, MOSI, MISO y RST ya que son diferentes en cada placa. Si no está utilizando Mega, consulte la parte superior de este script que usaremos en breve:

RFID:

SDA (blanco) - 53

SCK (naranja) - 52

MOSI (amarillo) - 51

MISO (verde) - 50

RST (azul) - 5

3,3 v - 3,3 v

GND - GND

(Nota: Aunque el lector requiere estrictamente 3.3V, los pines son tolerantes a 5V, lo que nos permite poder usar este módulo con Arduinos y otros microcontroladores DIO de 5V)

LED RGB:

Cátodo rojo (violeta) - 8

GND - GND

Cátodo verde (verde) - 9

Cátodo azul (azul) - 10

Paso 2: software

Software
Software

Ahora en el software.

Primero, necesitamos instalar la biblioteca MFRC522 para poder obtener, escribir y procesar datos RFID. El enlace de github es: https://github.com/miguelbalboa/rfid, pero también puede instalarlo a través del administrador de la biblioteca en Arduino IDE o en PlatformIO. Antes de que podamos crear nuestro propio programa personalizado para tratar y procesar datos RFID, primero necesitamos obtener los UID reales para nuestra tarjeta y etiqueta. Para eso, necesitamos subir este boceto:

(IDE de Arduino: ejemplos> MFRC522> DumpInfo)

(PlatformIO: PIO Home> bibliotecas> instalado> MFRC522> ejemplos> DumpInfo)

Lo que hace este boceto es esencialmente extraer toda la información presente en una tarjeta, incluido el UID en forma hexadecimal. Por ejemplo, el UID de mi tarjeta es 0x72 0x7D 0xF5 0x1D (ver imagen). El resto de la estructura de datos impresa es la información presente en la tarjeta que podemos leer o escribir. Voy a profundizar más en la última sección.

Paso 3: Software (2)

Software (2)
Software (2)

Como es habitual con mis Instructables, explicaré el software en comentarios línea por línea para que cada parte del código pueda explicarse en relación con su función en el resto del script, pero lo que esencialmente hace es identificar la tarjeta que se está leer y concede o deniega el acceso. También revela un mensaje secreto si la tarjeta correcta se escanea dos veces.

github.com/belsh/RFID_MEGA/blob/master/mfr….

Paso 4: RFID; Explicado

RFID; Explicado
RFID; Explicado

En el lector hay un módulo de radiofrecuencia y una antena que genera un campo electromagnético. La tarjeta, por otro lado, contiene un chip que puede almacenar información y nos permite alterarla escribiendo en uno de sus muchos bloques, que entraré en más detalle en la siguiente sección, ya que pertenece a la estructura de datos de RFID.

El principio de funcionamiento de la comunicación RFID es bastante sencillo. La antena del lector (en nuestro caso, la antena del RC522 es la estructura en forma de bobina incrustada en la cara) que enviará ondas de radio, que a su vez energizarán una bobina en la tarjeta / etiqueta (muy cerca) y eso La electricidad convertida será utilizada por el transpondedor (dispositivo que recibe y emite señales de radiofrecuencia) dentro de la tarjeta para devolver la información almacenada en ella en forma de más ondas de radio. Esto se conoce como retrodispersión. En la siguiente sección, discutiré la estructura de datos específica utilizada por la tarjeta / etiqueta para almacenar información que podemos leer o escribir.

Paso 5: RFID; Explicado (2)

RFID; Explicado (2)
RFID; Explicado (2)

Si observa la parte superior de la salida de nuestro script cargado anteriormente, notará que el tipo de la tarjeta es PICC 1 KB, lo que significa que tiene 1 KB de memoria. Esta memoria se asigna a una estructura de datos compuesta por 16 sectores que transportan 4 bloques, cada uno de los cuales transporta 16 bytes de datos (16 x 4 x 16 = 1024 = 1 KB). El último bloque de cada sector (AKA Sector Trailer) se reservará para otorgar acceso de lectura / escritura al resto del sector, lo que significa que solo tenemos los primeros 3 bloques para trabajar en términos de almacenamiento y lectura de datos.

(Nota: el primer bloque del sector 0 se conoce como el Bloque del fabricante y contiene información vital como los datos del fabricante; cambiar este bloque podría bloquear completamente su tarjeta, así que tenga cuidado al intentar escribir datos en él)

Feliz retoques.

Recomendado: