Taula de continguts:

Patrocina amb C # i Arduino + RC-522: 5 passos
Patrocina amb C # i Arduino + RC-522: 5 passos

Vídeo: Patrocina amb C # i Arduino + RC-522: 5 passos

Vídeo: Patrocina amb C # i Arduino + RC-522: 5 passos
Vídeo: Урок 20 — Модуль датчика звука KY-038 2024, De novembre
Anonim
Patrocina amb C # i Arduino + RC-522
Patrocina amb C # i Arduino + RC-522

Les publicacions de patrocinadors són força habituals. Tot i això, gestionar-los no sempre és una tasca fàcil, sinó que consisteix a registrar quantes voltes fa cada equip de manera eficient. Vaig decidir utilitzar RFID com a testimoni per identificar cada equip. Combinat amb el fet que podeu agafar una targeta lectora RFID RC-522 i un arduino bastant econòmic, permet construir aquest sistema amb força facilitat.

Pas 1: Llista de materials necessaris

  • Taula Arduino: qualsevol placa ho farà. Utilitzo Arduino Nano per la seva mida
  • Entorn de desenvolupament Arduino
  • RC-522: es pot comprar / demanar localment o a l'estranger
  • Etiquetes MiFare a 13,56 MHz. Normalment, algunes mostres poden venir amb la vostra placa RC-522. El tipus d’etiqueta no té importància. Només cal que comproveu que són la freqüència adequada.
  • Un PC que executi Windows i que tingui instal·lat Visual Studio, si voleu modificar el codi.

Pas 2: Preparació de l'Arduino + RC-522

Preparació de l’Arduino + RC-522
Preparació de l’Arduino + RC-522

La imatge superior mostra el cablejat del mòdul RC-522 a l'Arduino. Qualsevol Arduino farà. Per tant, si teniu disponible un Arduino Nano, us recomanem utilitzar-lo. A thingiverse podeu trobar alguns casos per boxar-ho tot junt. N’he provat un, però els seus marges per imprimir-lo eren massa reduïts, acabant amb una impressió 3D inutilitzable.

Encara estic treballant en un bon cas per a això.

Per fer ús de la vostra placa RC-522, haureu d'afegir una biblioteca a l'editor Arduino. Malauradament, no és una biblioteca gestionada per l'editor Arduino, de manera que l'haureu d'afegir amb el mètode "old school" per descarregar-lo i copiar-lo a la carpeta de biblioteques. No oblideu reiniciar l'editor Arduino per fer-lo accessible.

La biblioteca es pot trobar a

A hores d’ara ja teniu l’editor preparat. És hora de penjar el script al vostre Arduino. Si analitzeu el codi, trobareu que hi ha un interval de 5.000 mil·lisegons en què s’evita imprimir la mateixa clau diverses vegades. Podeu variar aquest interval, però si el definiu massa petit, es mostrarà la mateixa tecla diverses vegades una després de l’altra.

Per tant, ara toca comprovar si aquesta peça funciona. Els RFID que faig servir són fobs estàndard MiFare 1Kb a 13,56 MHz, que també estan disponibles a un preu molt baix.

Obriu el monitor de sèrie de l'editor Arduino i observeu com apareixen les tecles mentre les porteu al mòdul RC-522.

Pas 3: la interfície de Windows escrita en C #

La interfície de Windows escrita en C #
La interfície de Windows escrita en C #

Trobareu inclosa una carpeta comprimida que conté el projecte C #. Descarregueu-lo i descomprimiu-lo. El codi es va escriure a Visual Studio 2017 segmentació. Net framework 4.6.1. Qualsevol equip actualitzat hauria de tenir-lo i poder-lo executar. No necessàriament heu d’instal·lar Visual Studio. El codi es proporciona per a aquells que vulguin modificar-lo o examinar-lo. Sense modificacions del programa, la durada de l’execució s’estableix en 1 hora i 30 minuts. El temps normal de volta és de 50 segons, que és per a una pista de 400 metres.

L'executable es pot trobar a la carpeta Debug que es troba a la carpeta SponsorRun / SponsorRun / bin.

En aquesta carpeta també hi ha els fitxers de text que s’utilitzen en aquest projecte per emmagatzemar les dades.

Els fitxers de text són:

  • rfidKeys.txt: conté les claus dels diferents equips. La primera clau és per al primer equip, etc. Podeu eliminar aquest fitxer i afegir les vostres pròpies claus (consulteu a continuació com funciona el programa)
  • teams.txt: conté els noms dels diferents equips. El primer nom correspon al primer equip, etc. Editeu aquest fitxer amb un editor de text pla comú (pot ser que el bloc de notes ho faci).
  • results.txt: un fitxer formatat en CSV que conté els resultats de les diverses voltes dels equips (pot estar absent quan no s’han registrat voltes fins ara)
  • fraude.txt: un fitxer en format CSV que conté equips que intenten enganyar (pot estar absent quan encara no s'ha detectat cap engany)

El funcionament del programa és el següent:

  • A la inicialització, el programa detecta els diversos ports COM de l’ordinador. Heu de seleccionar el port COM assignat al vostre Arduino per tal de fer possible la comunicació. Per defecte, la velocitat COM ha de ser de 9600 bps, que correspon a la velocitat establerta al codi Arduino.
  • Feu clic al botó "Comença a escoltar" per activar la comunicació
  • A partir d’aquest moment, podeu triar entre dues funcions:

    • Llegiu les claus RFID: afegeix noves claus al fitxer rfidKeys.txt
    • Registra volta (opció predeterminada): registra una nova volta al fitxer results.txt. Cada vegada que es llegeix una tecla vàlida, apareixerà un missatge i es farà sonar un so per confirmar el registre. S'afegirà una línia a results.txt. En cas d’intentar enganyar, el missatge apareixerà en un quadre de text separat, sonarà un altre so i el resultat s’escriurà a fraude.txt. En aquest cas, el temps de la volta s’establirà en el moment en què es va detectar l’engany.

Pas 4: possibles millores

Vaig crear aquest projecte per a una situació específica de la meva escola. És obvi que alguns dels paràmetres utilitzats poden no ser adequats per al vostre projecte. De moment, haureu d’ajustar els paràmetres del codi C # i recompilar el programa, cosa que requereix la instal·lació de Visual Studio (una forta instal·lació de 3,5 GB). Si hi ha una resposta raonable, és possible que consideri la possibilitat de llegir aquests paràmetres des d’un fitxer extern.

Els casos 3D que he trobat per allotjar el projecte Arduino no són utilitzables. Vaig començar per un, però tenia alguns contratemps, que és el motiu, encara no els he afegit. Qualsevol persona que vulgui compartir-ne un pot posar-se en contacte amb mi, de manera que puc referir-me al vostre treball en aquest manual.

Pas 5: Dona els polzes amunt !

Espero que pugueu utilitzar aquest projecte i estic desitjant rebre notícies vostres.