Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Tutorial de bloqueo RFID de Arduino

Componentes y suministros

Arduino UNO
× 1
Lector RFID (genérico)
× 1

Aplicaciones y servicios en línea

Arduino IDE

Acerca de este proyecto

Queridos amigos, bienvenidos a otro tutorial. Este es Nick de educ8s.tv y hoy vamos a aprender cómo usar este lector RFID con Arduino para construir un sistema de bloqueo simple.

Por primera vez, usaremos etiquetas RFID con Arduino. He creado un proyecto simple que lee el ID único (UID) de cada etiqueta RFID que colocamos cerca del lector y lo muestra en esta pantalla OLED. Si el UID de la etiqueta es igual a un valor predefinido que está almacenado en la memoria de Arduino, entonces en la pantalla veremos el mensaje "Desbloqueado". Si el ID único de la tarjeta no es igual al valor predefinido, no aparecerá el mensaje Desbloquear. Genial, ¿no?

Hay mucho que cubrir, ¡así que comencemos!

Paso 1:obtenga todas las piezas

Las piezas necesarias para construir este proyecto son las siguientes:

  • Un Arduino Uno ▶ https://store.arduino.cc/arduino-uno-rev3
  • Un lector RFID ▶ http://educ8s.tv/part/RFID
  • Pantalla OLED ▶ http://educ8s.tv/part/OLED096
  • Una pequeña placa de pruebas ▶ http://educ8s.tv/part/SmallBreadboard
  • Algunos cables ▶ http://educ8s.tv/part/Wires

Piezas opcionales:

  • Banco de energía ▶ http://educ8s.tv/part/Powerbank

El costo total del proyecto es de alrededor de $ 15.

Paso 2:el lector RFID RC522

Cada etiqueta RFID tiene un pequeño chip en su interior. Si coloco una linterna debajo de esta tarjeta RFID se puede ver el pequeño chip y la bobina que lo rodea. Este chip no tiene batería para recibir energía. Recibe energía del lector, este dispositivo, de forma inalámbrica utilizando esta gran bobina. ¡El lector puede leer una tarjeta RFID como esta desde una distancia de hasta 20 mm!

El mismo chip también existe en las etiquetas RFID de llavero.

Cada etiqueta RFID tiene un número único que la identifica. Ese es el UID que mostramos en la pantalla OLED. Excepto por este UID, cada etiqueta puede almacenar datos. ¡En este tipo de tarjetas podemos almacenar hasta 1K de datos! Impresionante, ¿no? No usaremos esta funcionalidad hoy, pero lo haremos en un tutorial futuro. Hoy, lo único que nos interesa es identificar una tarjeta específica por su UID. El costo del lector RFID y estas dos tarjetas RFID es de alrededor de $ 4.

Paso 3:pantalla OLED

Esta es una pantalla muy agradable para usar con Arduino. Es una pantalla OLED y eso significa que tiene un bajo consumo de energía. El consumo de energía de esta pantalla es de alrededor de 10-20 mA y depende de cuántos píxeles estén encendidos.

La pantalla tiene una resolución de 128 × 64 píxeles y es de tamaño pequeño. Hay dos variaciones de la pantalla. Uno de ellos es monocromático, y el otro como el que yo uso puede mostrar dos colores, amarillo y azul. La parte superior de la pantalla solo puede mostrarse en amarillo, la parte inferior solo en azul.

Esta pantalla OLED es muy brillante y tiene una gran compatibilidad con la biblioteca. Adafruit ha desarrollado una biblioteca muy agradable para esta pantalla. Además de eso, la pantalla usa la interfaz I2C, por lo que la conexión con Arduino es increíblemente fácil. Solo necesita conectar dos cables excepto Vcc y GND. Si es nuevo en Arduino y desea una pantalla económica y fácil de usar para usar con su proyecto, comience con la pantalla. Es la forma más fácil de agregar una pantalla a su proyecto Arduino. He preparado un tutorial detallado sobre cómo usar esta pantalla que he adjuntado a este tutorial.

Paso 4:conecte todas las piezas

La conexión con la placa Arduino Uno es muy sencilla. Al principio, conectemos la alimentación tanto del lector como de la pantalla.

Cuidado, el lector RFID debe estar conectado a la salida de 3.3V del Arduino Uno o se destruirá. Dado que la pantalla también puede funcionar a 3.3V, conectamos el Vcc de ambos módulos al riel positivo de la placa de pruebas. Este riel luego se conecta a la salida de 3.3V del Arduino Uno. A continuación, conectamos ambos GND al riel GND de la placa de pruebas. Luego conectamos el riel GND de la placa de pruebas a Arduino GND.

Pantalla OLED - Arduino

Vcc ▶ 3,3 V

TIERRA ▶ TIERRA

SCL ▶ Pin analógico 5

SDA ▶ Pin analógico

Lector RFID - Arduino

RST ▶ Pin digital 9

IRQ ▶ Desconectado

MISO ▶ Pin digital 12

MOSI ▶ Pin digital 11

SCK ▶ Pin digital 13

SDA ▶ Pin digital 10

El módulo lector de RFID utiliza la interfaz SPI para comunicarse con Arduino. Entonces vamos a usar los pines SPI de hardware del Arduino UNO. El pin RST va al pin digital 9. El pin IRQ permanece desconectado. El pin MISO va al pin digital 12. El pin MOSI va al pin digital 11. El pin SCK va al pin digital 13 y, por último, el pin SDA va al pin digital 10. Eso es todo. El lector RFID está conectado. Ahora tenemos que conectar la pantalla OLED con Arduino usando la interfaz I2C. Entonces, el pin SCL de la pantalla va al Pin analógico 5 y el pin SDA de la pantalla al Pin analógico 4. Si ahora encendemos el proyecto y colocamos una tarjeta RFID cerca del lector, podemos ver que el proyecto está funcionando bien. Ahora es el momento de echar un vistazo al código del proyecto.

Paso 5:el código del proyecto

Para compilar el código del proyecto, necesitamos incluir algunas bibliotecas. En primer lugar, necesitamos la biblioteca Rfid MFRC522. Para instalarlo, vaya a Sketch -> Incluir bibliotecas -> Administrar bibliotecas. Busque MFRC522 e instálelo. También necesitamos la biblioteca Adafruit SSD1306 y la biblioteca Adafruit GFX para la pantalla. Instale ambas bibliotecas con el mismo procedimiento. La biblioteca Adafruit SSD1306 necesita una pequeña modificación. Vaya a la carpeta Arduino -> Bibliotecas, abra la carpeta Adafruit SSD1306 y edite la biblioteca Adafruit_SSD1306.h. Comente la línea 70 y elimine el comentario de la línea 69. Nuestra pantalla tiene una resolución de 128x64, eso es lo que estamos definiendo aquí. Ahora estamos listos para echar un vistazo rápido al código.

Al principio, declaramos el valor de la etiqueta RFID que queremos que Arduino reconozca. Es una matriz de números enteros.

  int code [] ={69,141,8,136}; // Este es el UID almacenado  

A continuación, inicializamos el lector RFID y la pantalla.

  rfid.PCD_Init (); display.begin (SSD1306_SWITCHCAPVCC, 0x3C);  

Después de esto, en la función de bucle, verificamos una etiqueta en el lector cada 100 ms.

Si hay una etiqueta en el lector leemos su UID y la imprimimos en la pantalla. A continuación, comparamos el UID de la etiqueta que acabamos de leer con el valor que está almacenado en la variable de código. Si los valores son los mismos, mostramos el mensaje UNLOCK; de lo contrario, no mostramos este mensaje.

  if (match) {Serial.println ("\ n¡Conozco esta tarjeta!"); printUnlockMessage (); } else {Serial.println ("\ nTarjeta desconocida"); }  

Por supuesto, puede modificar este código para almacenar más de 1 valores UID para que el proyecto reconozca más etiquetas RFID.

Este es solo un ejemplo. Como siempre, puede encontrar el código del proyecto adjunto a este tutorial.

RFID.ino

Paso 6:Reflexiones finales y mejoras

Como puede ver con un costo muy bajo podemos agregar un lector RFID a nuestros proyectos. Podemos construir fácilmente un sistema de seguridad con un lector como este o construir proyectos más divertidos.

Mi principal intención es crear algunos juegos interactivos para niños usando este lector RFID y muchas etiquetas RFID. En un video futuro, también intentaremos escribir y leer datos de una etiqueta RFID. Llegados a este punto, me encantaría conocer tu opinión sobre este lector de tarjetas RFID. ¿Planeas usarlo en alguno de tus proyectos? Publique cualquier comentario o idea en la sección de comentarios a continuación, ¡gracias!

Código

  • RFID.ino
  • Fragmento de código n. ° 3
RFID.ino Arduino
 Sin vista previa (solo descarga). 
Fragmento de código n. ° 3 Texto sin formato
 if (match) {Serial.println ("\ n¡Conozco esta tarjeta!"); printUnlockMessage (); } else {Serial.println ("\ nTarjeta desconocida"); } 

Proceso de manufactura

  1. Arduino RFID Lock con RC522 - Protocolo MIFARE 13.56 Mhz
  2. Tutorial del sensor de huellas dactilares Arduino
  3. Tutorial de Arduino:Mini piano
  4. Idea de bricolaje con RFID
  5. RFID + Relé + Código de bloqueo de puerta RFID =¡Interruptor de PC RFID!
  6. HID Prox RFID a Arduino
  7. Lector de tarjetas Arduino Ethernet Rfid
  8. Bloqueo / desbloqueo de PC con Windows mediante RFID
  9. Cómo realizar múltiples subprocesos en un Arduino (Tutorial de protothreading)
  10. Tutorial de acelerómetro y giroscopio Arduino y MPU6050
  11. Tutorial de Arduino 01:Primeros pasos