Tableau d’affichage sportif

P 20171106 150943 vhdr auto

Difficulté:

Pour un concours robotique, il fallait que j’affiche le score de la partie et le temps restant, avec bien entendu le budget le plus petit possible. Le tableau devait être posé sur la table de marque. Un arbitre s’occupait du chronométrage et un autre du score. Cet arbitre pouvait se déplacer autour de l’aire de jeu. J’ai donc choisi d’afficher le temps et le score sur deux modules à matrice de leds (c’est plus grand que de simples afficheurs 7 segments et donc plus lisible) piloté chacun par un Arduino Uno. Pour la gestion du temps, trois boutons poussoirs permettent : - de déclencher le chronomètre - de le mettre en pause - de le réinitialiser Une matrice à led adressable type WS2812 (Néopixel) permet d’afficher une séquence lumineuse à la fin de la partie. Pour la gestion du score, une application Android permet : - d’augmenter le score de chaque équipe grâce à deux boutons par équipe - remettre le score à zéro en fin de partie grâce à un bouton Cette application communique avec l’Arduino Uno grâce à un shield Bluetooth. Dans notre société de surconsommation, tout est prétexte pour changer le matériel que nous possédons déjà et qui fonctionne parfaitement. J’ai pris le parti inverse, c’est-à-dire de réutiliser du matériel voué à la casse pour mes projets DIY. Pour ce projet, j’ai donc récupérer une tour d’un vieil ordinateur qui servira de base au tableau d’affichage et fournira les tensions + 5V et +12V nécessaires au fonctionnement du tableau d’affichage. Une vidéo du projet est consultable ici : http://pecquery.wixsite.com/arduino-passion/concours-robotique. Nous pouvons voir sur la photo ci-dessous le tableau d'affichage en situation réelle avec l'arbitre à droite qui tient la tablette dans les mains.

Matériel

Pr%c3%a9sentation

Budget:

100 €
  • Carte Arduino Uno X2
  • Boutons poussoirs rouge, vert et jaune
  • Module à 4 matrices à led MAX7219 x2
  • Matrice à led Neopixel
  • Résistance de 470 Ohm
  • Condensateur de 1000 uF
  • Shield Bluetooth Seeedstudio http://wiki.seeedstudio.com/wiki/Bluetooth_Shield_V2.0
  • Shield Bornier à vis X2
  • Visserie, entretoises et fils de câblage de différentes couleurs

Etape 1 : La préparation de la tour

Après avoir trouvé une tour d’ordinateur, il faut désosser tout l’intérieur sauf le bloc d’alimentation. Ensuite, sur la face supérieure, nous percerons trois trous d’un diamètre adapté aux boutons poussoirs et un trou de diamètre 10 mm au centre d’une des faces latérales pour faire passer les câbles qui iront aux deux modules matrice à led MAX7219 et au module à led Neopixel.

Ensuite, il faut placer les boutons poussoirs puis souder des fils de 30 cm environ comme indiqué sur la photo.

Etape 2 : La partie chronométrage

Le programme Arduino de cette partie attend l'appui sur le bouton poussoir vert relié à la broche numérique N°2. 

Dès que le compte à rebours est lancé, il y a un décompte du temps seconde par seconde avec affichage sur le module à matrice de leds. Le temps initial (3 minutes dans notre cas) peut être modifié. Il faut juste changer la variable minute au début du programme.

Un appui sur le bouton jaune relié à la broche numérique N°3 déclenche l'arrêt du compte à rebours.

Lorsque le temps s'est totalement écoulé, une animation lumineuse se déclenche sur la matrice à leds au centre du tableau d'affichage. Nous aurons successivement un carré rouge, puis bleu, puis orange, etc.

Un appui sur le bouton rouge relié à la broche Reset arrête l'animation lumineuse et remet l'affichage à 03:00.

La réalisation de cette partie est relativement simple. Nous fixerons sur une plaque en ABS, en contre-plaqué de 3 mm, ou ce que vous avez sous la main les matrices sur lesquelles nous aurons au préalable souder les fils de 30 cm environ (voir photo du schéma). Les matrices à leds sont fixées sur la plaque avec des entretoises.

Fichiers techniques de cette étape :

Compte_rebours_Matrice.ino

Etape 3 : La partie score

Le programme Arduino de cette partie attend la réception d'un octet via le shield Bluetooth.

Si l'octet reçu est 0, on fait une remise à zéro du score.

Si l'octet reçu est 1, on ajoute un point à l'équipe blanche.

Si l'octet reçu est 2, on ajoute deux points à l'équipe blanche.

Si l'octet reçu est 3, on ajoute un point à l'équipe noire.

Si l'octet reçu est 4, on ajoute deux points à l'équipe noire.

Comme pour la partie chronométrage, nous fixerons la matrice à leds sur la plaque avec 4 entretoises.

Fichiers techniques de cette étape :

Score.ino

Etape 4 : L'application Android

L'application Android développée sous App Inventor comporte 5 boutons envoyant respectivement les 5 octets décrits dans l'étape précédente.

En haut de l'application, il y a également un bouton qui permet de connecter la tablette à la carte Arduino via le shield Bluetooth. Attention de câbler correctement les cavaliers de ce shield sur les positions 2 et 3.

Je joins deux fichiers :

- le premier au format apk est en fait l'executable. Il suffit de le coller dans un répertoire de la tablette, puis de cliquer dessus. L'installation se lance toute seule.

- le second au format aia est le code source. Cela vous permettra de modifier l'application pour l'adapter à vos besoins.

Nous distinguons sur la 3ème photo, les différents blocs de programmation avec :

- à gauche, la partie traitant l'initialisation du programme et la connexion Bluetooth.

- à droite, la partie traitant la gestion du score.

Vous pouvez reprendre cette application pour par exemple commander un robot en Bluetooth. Il suffit de modifier la forme et l'emplacement des boutons, vous pouvez également en ajouter. Un "clic" sur un des boutons envoie un octet qui sera traité par le programme Arduino qui le recevra.

Fichiers techniques de cette étape :

Challenge_Robotique.aia Challenge_Robotique.apk

Etape 5 : L'installation des cartes Arduino dans la tour

Tout d'abord, nous fixerons la plaque en ABS sur la tour avec 4 entretoises. Tous les fils des matrices à leds passeront par le trou que nous avons fait dans la tour à l'étape 1.

Pour éviter que les fils de câblage ne sortent des connecteurs des cartes Arduino, j'ai utilisé un shield à bornier à vis. Cela est très pratique et utile. On peut ainsi préparer son câblage sur ces deux shields et les insérer ensuite sur les deux cartes Arduino et surtout, si on a besoin d'utiliser les cartes Arduino pour un autre projet, on retire ces shields SANS AVOIR A RETIRER TOUT LE CABLAGE.  

Nous allons d'abord câbler les alimentations. 

- Il faut prendre le câble jaune (+12 V) en provenance du connecteur ATX (voir photo) du bloc d'alimentation de la tour et le brancher sur les broches VIN des deux cartes Arduino.

- Ensuite, il faut prendre le câble rouge (+5 V) et le relier à la borne + du condensateur (ce dernier pouvant être directement fixé avec la résistance sur le shield à bornier à vis)

- Finalement, on relie le câble noir (masse) au GND des cartes Arduino et la borne - du condensateur.

J'ai installé les deux cartes Arduino dans des boitiers plastiques afin les isoler du châssis métallique de la tour. Ensuite on branche tous les fils des boutons poussoirs et des matrices à leds sur les broches correspondantes des deux cartes Arduino. (voir les deux schémas de câblage). 

Etape 6 : Conclusion

Les deux parties (chronométrage et gestion du score) sont totalement indépendantes. Il est possible de réaliser qu'une seule de ces deux parties ou si vous souhaitez faire des économies de retirer la matrice à led au centre du tableau d'affichage.

Une question ,un doute !!! N'hésitez pas à me contacter. Je vous répondrai avec plaisir.

Vous aimez ce tutoriel ?


michel83500

07 nov. 2017 à 17:39

T'es plus fort que le cador des toréadors. MICHEL.


Recevez une fois par mois les meilleurs tutoriels Technologie dans votre boîte mail




Champion

Gagnant du Concours Concours DIY électronique


S'inscrire:



En cliquant sur s'inscire, vous acceptez de respecter les conditions générales d'utilisation de Oui Are Makers.

  • Vues: 649
  • J'aime: 15