
Tutorial RFID & NFC
En este tutorial aprenderemos sobre el uso de NFC para leer tags RFID.
Requisitos:
- Computadora (mac)
- Arduino MEGA (u otra variante Arduino). Este tutorial en particular usa una Arduino MEGA.
- NFC Shield
- RFID modulo (tags, cards o capsules)
- Breadboard
- Arduino IDE (https://www.arduino.cc/en/Main/Software)

Las comunicaciones siempre se han caracterizado por ser tele, ósea de lejos. Entre ciudades, entre países, entre continentes. Ahora las comunicaciones de corta distancia han tomado relevancia, WiFi, BT y ahora NFC para lectura de tags RFID. Aquí veremos como leer tags RFID con una shield NFC para Arduino
Los tags pueden ser de tipo llavero, que son comúnmente utilizados para controlar acceso:

También pueden ser de tipo tarjeta, también usados para acceso pero también como formas de pago:

Finalmente también se puede registrar tags de tipo micro-capulas:

La idea es muy similar a los otros tipos de comunicaciones con dispositivos inteligentes como BT o WiFi. Primero es necesario “reconocer” el dispositivo (en este caso el tag) y luego usar esa información para comunicarnos con el dispositivo.
El monitor serial lee los tags asi:
[code]
NFC shield Start!
PN532
Firmware version. 1.6
Found an ISO14443A card
ID Length: 4 bytes
<strong><span style=”color: #ff0000;”>ID: 0x11 0x96 0x40 0x32</span></strong>
Seems to be a Mifare Classic card (4 byte UID)
Found an ISO14443A card
ID Length: 4 bytes
ID: 0x11 0x96 0x40 0x32
Seems to be a Mifare Classic card (4 byte UID)
Found an ISO14443A card
ID Length: 4 bytes
<strong><span style=”color: #0000ff;”>ID: 0x01 0x47 0x28 0x32</span></strong>
Seems to be a Mifare Classic card (4 byte UID)
Found an ISO14443A card
ID Length: 4 bytes
ID: 0x01 0x47 0x28 0x32
Seems to be a Mifare Classic card (4 byte UID)
[/code]
Aquí estamos viendo la lectura de 2 distintas RFID tags según sus IDs. Son leídas en esta linea del sketch:
Serial.print(“ID: “);
PrintHex(uid, uidLength);
el cual es asignado un valor con este llamado anterior:
success = readPassiveTargetID(PN532_MIFARE_ISO14443A, uid, &uidLength);
Con esta data podemos probar si el valor de uid es igual a, por ejemplo:0x01 0x47 0x28 0x32 y dar acceso versus no dar acceso a alguien mas como: 0x11 0x96 0x40 0x32.
Ese proyecto se puede ver aquí:

Aquí puedes descargar la sketch para leer las RFID tags/cards:
Esto es ideal para controlar acceso o registrar ingresos y egresos.
Muy interesante
A la orden!