Construya un sistema de control de acceso inteligente con M5StickV y RFID
En este proyecto, crearemos un sistema de control de acceso inteligente utilizando ESP32, unidades RFID y M5StickV . El sistema admite la lectura de tarjetas RFID, el reconocimiento de códigos QR y la interacción con la "plataforma en la nube sin conexión" a través de MQTT. Las características clave incluyen capacidades de lectura y escritura de RFID, comunicación de datos basada en MQTT e interacción con la interfaz de usuario a través de M5GO Lite .
Objetivos del Proyecto
-
Sistema de perforación de tarjetas : implementa la lógica básica de un sistema de perforación de tarjetas utilizando ESP32 como chip de control principal.
-
Reconocimiento de información RFID: utilice la unidad RFID para leer y reconocer la información de la tarjeta IC.
-
Interacción en la nube sin conexión: habilite la interacción con la plataforma en la nube sin conexión para obtener información sobre ejercicios mediante MQTT.
-
Reconocimiento de códigos QR: utilice M5StickV para el reconocimiento de códigos QR.
Implementar Procedimientos
Configuración del servidor MQTT
1. Configuración del servidor:- ID del servidor, nombre de usuario y contraseña: configure estos elementos principales para el servidor MQTT.
- Número de puerto: normalmente se establece en 1883.
- URL del servidor: proporcione la URL de la plataforma.
- Formato de datos y temas: asegúrese de que el formato del tema coincida con los parámetros API de la plataforma. Los datos suelen estar formateados en JSON.
- Detalles de la suscripción: establezca el tema y los datos para la suscripción. Asegúrese de que los temas para publicar y suscribirse sean diferentes. La seguridad debe ser gestionada por el corredor. Los datos de suscripción devolverán valores Medio y Resultado, que se pueden utilizar para verificar la integridad de los datos y el éxito de la carga.
Configuración del Módulo
M5StickV para el reconocimiento de códigos QR
-
Bibliotecas: utilice las bibliotecas de imágenes y sensores de MicroPython.
-
Formato de imagen: establezca en RGB565.
-
Resolución: establezca en QQVGA (160x120).
-
Capturar imagen: utilice la biblioteca
img
para capturar la imagen de la cámara.
-
Detección: utilice
find_qrcode
para detectar códigos QR en la imagen. Devuelve parámetros como datos analizados y especificaciones. -
Decodificación: extraiga y utilice los datos decodificados para su posterior procesamiento.
Configuración de RFID
Estructura de la tarjeta RFID:-
UID y BLOQUES: UID es un identificador único de solo lectura. Los BLOQUES son legibles y escribibles, donde se almacenan los datos de los estudiantes.
-
Retraso: implemente un retraso para evitar reconocimientos múltiples debido a la alta frecuencia de procesamiento de RF.
Comunicación UART
Descripción general:- Protocolo: UART es un protocolo de transceptor asíncrono en serie que transmite bits de datos binarios.
- Niveles de señal: Alto para '1' y bajo para '0'.
- TX (Transmitir datos): Conéctese al RX del otro dispositivo.
- RX (Recibir datos): Conéctese al TX del otro dispositivo.
- GND: Asegura una conexión a tierra común entre dispositivos.
- M5Go Lite: TX (GPIO17) y RX (GPIO16).
- M5StickV: RX (GPIO35) y TX (GPIO34).
-
Biblioteca: use la biblioteca
uart
de MicroPython para configurar la plataforma.
Funciones
Funciones principales
- M5GO Lite UI: Interfaz interactiva con conexión WiFi.
- Lectura/Escritura RFID: lee y escribe información de la tarjeta IC.
- Comunicación MQTT: interactúa entre la plataforma en la nube y la placa de desarrollo.
- Reconocimiento de códigos QR: utilice M5StickV para reconocer y leer códigos QR.
- Sistema de Tarjetas Perforadas: Consulta y muestra información de tarjetas perforadas.
Funciones Secundarias
- No repetir los golpes: Evite que se repitan los golpes el mismo día.
- Validación del código QR: asegúrese de que solo se cargue la información del estudiante.