Table des matières:
- Étape 1: Liste des matériaux nécessaires
- Étape 2: Préparation de l'Arduino + RC-522
- Étape 3: L'interface Windows écrite en C#
- Étape 4: Améliorations possibles
- Étape 5: Lâchez le pouce !
Vidéo: Sponsor Run With C# et Arduino + RC-522 : 5 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:07
Les courses de sponsors sont assez courantes. Cependant, les gérer n'est pas toujours une tâche facile. Il s'agit d'enregistrer le nombre de tours que chaque équipe effectue de manière efficace. J'ai décidé d'utiliser les RFID comme jeton pour identifier chaque équipe. Combiné au fait que vous pouvez vous procurer une carte lecteur RFID RC-522 et un arduino assez bon marché, cela permet de construire ce système assez facilement.
Étape 1: Liste des matériaux nécessaires
- Carte Arduino: n'importe quelle carte fera l'affaire. J'utilise Arduino Nano pour sa taille
- Environnement de développement Arduino
- RC-522: peut être acheté/commandé localement ou à l'étranger
- Balises MiFare 13,56 MHz. Normalement, certains échantillons peuvent être fournis avec votre carte RC-522. Le type de balise n'a pas d'importance. Vérifiez simplement qu'ils sont à la bonne fréquence.
- Un PC sous Windows et sur lequel Visual Studio est installé, si vous souhaitez modifier le code.
Étape 2: Préparation de l'Arduino + RC-522
L'image ci-dessus montre le câblage du module RC-522 à l'Arduino. N'importe quel Arduino fera l'affaire. Donc, si vous avez un Arduino Nano disponible, vous pouvez envisager de l'utiliser. Sur thingiverse, vous pouvez trouver des étuis pour tout boxer ensemble. J'en ai essayé un, mais ses marges pour l'imprimer étaient trop petites, aboutissant à une impression 3D inutilisable.
Je travaille toujours sur une bonne affaire pour ça.
Afin d'utiliser votre carte RC-522, vous devrez ajouter une bibliothèque à l'éditeur Arduino. Malheureusement, ce n'est pas une bibliothèque gérée par l'éditeur Arduino, vous devrez donc l'ajouter à la méthode "old school" pour la télécharger et la copier dans le dossier des bibliothèques. N'oubliez pas de redémarrer l'éditeur Arduino pour le rendre accessible.
La bibliothèque peut être trouvée à
A présent, vous avez l'éditeur prêt. Il est temps de télécharger le script sur votre Arduino. Si vous analysez le code, vous constaterez qu'il y a un intervalle de 5000 millisecondes dans lequel il est évité d'imprimer plusieurs fois la même clé. Vous pouvez faire varier cet intervalle, mais si vous le définissez trop petit, la même touche s'affichera plusieurs fois l'une après l'autre.
Alors, maintenant il est temps de vérifier si cette partie fonctionne. Les RFID que j'utilise sont des porte-clés MiFare 1Kb standard à 13,56 MHz, qui sont également disponibles à très bas prix.
Ouvrez le moniteur série de l'éditeur Arduino et regardez les clés apparaître lorsque vous les apportez au module RC-522.
Étape 3: L'interface Windows écrite en C#
Vous trouvez inclus un dossier compressé contenant le projet C#. Téléchargez-le et décompressez-le. Le code a été écrit dans Visual Studio 2017 ciblant le framework. Net 4.6.1. Tout ordinateur mis à jour devrait l'avoir et être capable de l'exécuter. Vous n'avez pas nécessairement besoin d'installer Visual Studio. Le code est fourni pour ceux qui veulent le modifier ou l'examiner. Sans modification du programme, la durée de la course est fixée à 1 heure et 30 minutes. Le temps au tour normal est fixé à 50 secondes, ce qui correspond à une piste de 400 mètres.
L'exécutable se trouve dans le dossier Debug qui se trouve sous le dossier SponsorRun\SponsorRun\bin.
Dans ce dossier se trouvent également les fichiers texte qui sont utilisés dans ce projet pour stocker les données.
Les fichiers texte sont:
- rfidKeys.txt: contenant les clés des différentes équipes. La première clé est pour la première équipe, et ainsi de suite. Vous pouvez supprimer ce fichier et ajouter vos propres clés (regardez ci-dessous le fonctionnement du programme)
- teams.txt: contenant les noms des différentes équipes. Le prénom est pour la première équipe, et ainsi de suite. Modifiez ce fichier avec un éditeur de texte brut courant (le bloc-notes peut faire l'affaire).
- results.txt: un fichier au format CSV contenant les résultats des différents tours des équipes (peut être absent, lorsqu'aucun tour n'a été enregistré à ce jour)
- fraude.txt: un fichier au format CSV contenant des équipes essayant de tricher (peut être absent, lorsqu'aucune tricherie n'a encore été détectée)
Le fonctionnement du programme est le suivant:
- Lors de l'initialisation, le programme détecte les différents ports COM de votre ordinateur. Vous devez sélectionner le port COM attribué à votre Arduino afin de rendre la communication possible. Par défaut, le débit COM doit être de 9600 bps, ce qui correspond à la vitesse définie dans le code Arduino.
- Cliquez sur le bouton "Démarrer l'écoute" pour activer la communication
-
A partir de là, vous pouvez choisir entre deux fonctions:
- Lire les clés RFID: cela ajoute de nouvelles clés au fichier rfidKeys.txt
- Enregistrer le tour (option par défaut): enregistre un nouveau tour dans le fichier results.txt. Chaque fois qu'une clé valide est lue, un message apparaît et un bip sonore retentit pour confirmer l'enregistrement. Une ligne sera ajoutée au fichier results.txt. En cas de tentative de tricherie, le message apparaîtra dans une zone de texte séparée, un autre bip retentira et le résultat sera écrit dans fraude.txt. Dans ce cas, le temps du tour sera réglé au moment où la tricherie a été détectée.
Étape 4: Améliorations possibles
J'ai créé ce projet pour une situation spécifique dans mon école. Il est évident que certains des paramètres utilisés peuvent ne pas convenir à votre projet. Pour l'instant, vous devrez ajuster les paramètres dans le code C# et recompiler le programme, ce qui nécessite l'installation de Visual Studio (une installation lourde de 3,5 Go). S'il y a une quantité raisonnable de réponse, je peux envisager de lire ces paramètres à partir d'un fichier externe.
Les boîtiers 3D que j'ai trouvés pour héberger le projet Arduino ne sont pas utilisables. J'ai commencé sur un, mais j'ai eu quelques contretemps, c'est pourquoi je ne les ai pas encore ajoutés. Toute personne souhaitant partager un peut me contacter, donc je peux me référer à votre travail dans ce Instructable.
Étape 5: Lâchez le pouce !
J'espère que vous pourrez utiliser ce projet et je suis impatient de vous entendre.