Tabla de contenido:

Patrocinador Ejecutar con C # y Arduino + RC-522: 5 pasos
Patrocinador Ejecutar con C # y Arduino + RC-522: 5 pasos

Video: Patrocinador Ejecutar con C # y Arduino + RC-522: 5 pasos

Video: Patrocinador Ejecutar con C # y Arduino + RC-522: 5 pasos
Video: Leer y escribir con RFID y Arduino - EXPLICITO 2024, Mes de julio
Anonim
Patrocinador Ejecutar con C # y Arduino + RC-522
Patrocinador Ejecutar con C # y Arduino + RC-522

Las carreras de patrocinadores son bastante comunes. Sin embargo, gestionarlos no siempre es una tarea fácil, implica registrar cuántas vueltas corre cada equipo de forma eficiente. Decidí usar RFID como símbolo para identificar a cada equipo. Combinado con el hecho de que puede comprar una tarjeta lectora RFID RC-522 y un arduino bastante barato, hace posible construir este sistema con bastante facilidad.

Paso 1: Lista de materiales necesarios

  • Placa Arduino: cualquier placa servirá. Yo uso Arduino Nano por su tamaño
  • Entorno de desarrollo Arduino
  • RC-522: se puede comprar / pedir localmente o en el extranjero
  • Etiquetas MiFare 13,56 MHz. Normalmente, algunas muestras pueden venir con su placa RC-522. No importa el tipo de etiqueta. Solo verifique que tengan la frecuencia correcta.
  • Una PC con Windows y con Visual Studio instalado, si desea modificar el código.

Paso 2: preparación del Arduino + RC-522

Preparando el Arduino + RC-522
Preparando el Arduino + RC-522

La imagen de arriba muestra el cableado del módulo RC-522 al Arduino. Cualquier Arduino servirá. Entonces, si tiene un Arduino Nano disponible, podría considerar usarlo. En Thingiverse puedes encontrar algunos casos para empaquetarlo todo junto. Probé uno, pero sus márgenes para imprimirlo eran demasiado pequeños, lo que terminó con una impresión 3D inutilizable.

Todavía estoy trabajando en un buen caso para eso.

Para hacer uso de su placa RC-522, deberá agregar una biblioteca al editor Arduino. Desafortunadamente, no es una biblioteca administrada por el editor de Arduino, por lo que tendrá que agregarla con el método de la "vieja escuela" para descargarla y copiarla en la carpeta de bibliotecas. No olvide reiniciar el editor Arduino para que sea accesible.

La biblioteca se puede encontrar en

A estas alturas, tienes el editor listo. Es hora de cargar el script en tu Arduino. Si analiza el código, encontrará que hay un intervalo de 5000 milisegundos en el que se evita imprimir la misma clave varias veces. Puede variar ese intervalo, pero si lo establece demasiado pequeño, la misma clave se mostrará varias veces una tras otra.

Entonces, ahora es el momento de verificar si esta parte funciona. Los RFID que utilizo son fobs MiFare 1Kb estándar a 13,56 MHz, que también están disponibles a muy bajo precio.

Abra el monitor serial del editor Arduino y observe cómo aparecen las teclas a medida que las lleva al módulo RC-522.

Paso 3: la interfaz de Windows escrita en C #

La interfaz de Windows escrita en C #
La interfaz de Windows escrita en C #

Encontrará incluida una carpeta comprimida que contiene el proyecto C #. Descárgalo y descomprímelo. El código se escribió en Visual Studio 2017 con el objetivo de. Net framework 4.6.1. Cualquier computadora actualizada debería tener esto y poder ejecutarlo. No es necesario que instales Visual Studio. El código está destinado a quienes deseen modificarlo o examinarlo. Sin modificaciones en el programa, la duración de la ejecución se establece en 1 hora y 30 minutos. El tiempo de vuelta normal se establece en 50 segundos, que es para una pista de 400 metros.

El ejecutable se puede encontrar en la carpeta Debug que se encuentra en la carpeta SponsorRun / SponsorRun / bin.

En esa carpeta también se encuentran los archivos de texto que se utilizan en este proyecto para almacenar los datos.

Los archivos de texto son:

  • rfidKeys.txt: contiene las claves de los diferentes equipos. La primera clave es para el primer equipo y así sucesivamente. Puede eliminar este archivo y agregar sus propias claves (consulte a continuación cómo funciona el programa)
  • teams.txt: contiene los nombres de los diferentes equipos. El primer nombre es para el primer equipo y así sucesivamente. Edite este archivo con un editor de texto sin formato común (el bloc de notas puede servir).
  • results.txt: un archivo en formato CSV que contiene los resultados de las distintas vueltas de los equipos (puede estar ausente, cuando no se han registrado vueltas hasta el momento)
  • fraude.txt: un archivo en formato CSV que contiene equipos que intentan hacer trampa (puede estar ausente, cuando aún no se ha detectado ninguna trampa)

La forma en que funciona el programa es la siguiente:

  • En la inicialización, el programa detecta los distintos puertos COM en su computadora. Debe seleccionar el puerto COM asignado a su Arduino para que la comunicación sea posible. Por defecto, la velocidad COM debe ser 9600 bps, que corresponde a la velocidad establecida en el código Arduino.
  • Haga clic en el botón "Comenzar a escuchar" para activar la comunicación
  • A partir de ese momento, puede elegir entre dos funciones:

    • Leer claves RFID: esto agrega nuevas claves al archivo rfidKeys.txt
    • Registrar vuelta (opción predeterminada): registra una nueva vuelta en el archivo results.txt. Cada vez que se lea una clave válida, aparecerá un mensaje y se escuchará un pitido para confirmar el registro. Se agregará una línea a results.txt. En caso de un intento de hacer trampa, el mensaje aparecerá en un cuadro de texto separado, sonará otro pitido y el resultado se escribirá en fraude.txt. En ese caso, el tiempo de la vuelta se establecerá en el momento en que se detectó la trampa.

Paso 4: posibles mejoras

Creé este proyecto para una situación específica en mi escuela. Es obvio que algunos de los parámetros utilizados pueden no ser adecuados para su proyecto. Por ahora, tendrá que ajustar los parámetros en el código C # y volver a compilar el programa, lo que requiere la instalación de Visual Studio (una instalación considerable de 3,5 GB). Si hay una cantidad razonable de respuesta, puedo considerar leer estos parámetros desde un archivo externo.

Las carcasas 3D que encontré para albergar el proyecto Arduino no se pueden utilizar. Empecé con uno, pero tuve algunos contratiempos, por eso todavía no los he agregado. Cualquiera que desee compartir uno puede contactarme, para que pueda referirme a su trabajo en este Instructable.

Paso 5: ¡¡¡Dale el visto bueno !

Espero que pueda utilizar este proyecto y espero tener noticias suyas.