Créer un dé à l'aide d'arduino

Auteur avatarLewis | Dernière modification 12/12/2020 par Antonydbzh

Pas encore d'image

L'objectif est de créer une simulation d'un lancé de dé avec 5 LEDs et le logiciel arduino [en cours d'écriture]
Licence : Attribution (CC-BY)

Étape 1 - Le montage du circuit

Pour réaliser le dé, il faut monter le circuit. Le schéma du circuit est à reproduire, en faisant attention au sens des LEDs et des bonnes sorties de l'arduino.




Étape 2 - Insérer le programme dans l'arduino

Pour insérer le programme dans la carte, il faut relier la carte par l'ordinateur à l'aide du câble USB associé. Il permettra aussi d'alimenter la carte en électricité pour pouvoir fonctionner. L'arduino est bien branché si la led ON est allumée.

Il faut ensuite installer le logiciel Arduino, et copier les programme suivant:

const int LEDhautgauche= 2; // la LED branchée à la broche 2 se nomme LEDhautgauche const int LEDhautdroite= 3; // la LED branchée à la broche 3 se nomme LEDhautdroite const int LEDcentre= 4; // la LED branchée à la broche 3 se nomme LEDcentre const int LEDbasgauche= 5; // la LED branchée à la broche 3 se nomme LEDbasgauche const int LEDbasdroite= 6; // la LED branchée à la broche 3 se nomme LEDbasdroite int nbalea; // variable du nombre aléatoire


void setup() { // indication des paramètres

pinMode(LEDhautgauche, OUTPUT); // le courant passera dans la LEDhautgauche pinMode(LEDhautdroite, OUTPUT); // le courant passera dans la LEDhautdroite pinMode(LEDcentre, OUTPUT); // le courant passera dans la LEDcentre pinMode(LEDbasgauche, OUTPUT); // le courant passera dans la LEDbasgauche pinMode(LEDbasdroite, OUTPUT); // le courant passera dans la LEDbasdroite randomSeed(analogRead(0)); // création de l'aléatoire }

void loop() {

 nbalea = random (1,6); //choix du nombre aléatoire
 if (nbalea == 1){ //si le nombre aléatoire est égal à 1
   digitalWrite (LEDhautgauche,LOW); // La LEDhautgauche est éteinte
   digitalWrite (LEDhautdroite,LOW); // La LEDhautdroite est éteinte
   digitalWrite (LEDcentre,HIGH); // La LEDcentre est allumée
   digitalWrite (LEDbasgauche,LOW); // La LEDbasgauche est éteinte
   digitalWrite (LEDbasdroite,LOW); // La LEDbasdroite est éteinte
 }
 else{
 if (nbalea == 2){//si le nombre aléatoire est égal à 2
   digitalWrite (LEDhautgauche,LOW);
   digitalWrite (LEDhautdroite,HIGH);
   digitalWrite (LEDcentre,LOW);
   digitalWrite (LEDbasgauche,HIGH);
   digitalWrite (LEDbasdroite,LOW);
 }
 else {

if (nbalea == 3){ //si le nombre aléatoire est égal à 3

   digitalWrite (LEDhautgauche,LOW);
   digitalWrite (LEDhautdroite,HIGH);
   digitalWrite (LEDcentre,HIGH);
   digitalWrite (LEDbasgauche,HIGH);
   digitalWrite (LEDbasdroite,LOW);
 }
 else{

if (nbalea == 4){ //si le nombre aléatoire est égal à 4

   digitalWrite (LEDhautgauche,HIGH);
   digitalWrite (LEDhautdroite,HIGH);
   digitalWrite (LEDcentre,LOW);
   digitalWrite (LEDbasgauche,HIGH);
   digitalWrite (LEDbasdroite,HIGH);
 }
 else{
 if (nbalea == 5){ //si le nombre aléatoire est égal à 5
   digitalWrite (LEDhautgauche,HIGH);
   digitalWrite (LEDhautdroite,HIGH);
   digitalWrite (LEDcentre,HIGH);
   digitalWrite (LEDbasgauche,HIGH);
   digitalWrite (LEDbasdroite,HIGH);
 }
 else {
 if (nbalea == 6){ //si le nombre aléatoire est égal à 6
   digitalWrite (LEDhautgauche,HIGH);
   digitalWrite (LEDhautdroite,HIGH);
   digitalWrite (LEDcentre,LOW);
   digitalWrite (LEDbasgauche,HIGH);
   digitalWrite (LEDbasdroite,HIGH);
 }
 }
 }
 }
 }
 }

delay(100000);//cela vous laisse du temps pour regarder le résultat de votre dé et de réappuyer sur le bouton pour un autre résultat }

Étape 3 - Mise en route du programme

Le programme est ajouté dans le logiciel, il faut maintenant le téléverser dans la carte. Lorsque le téléversement est terminé, le programme se lancera et une valeur entre 1 et 5 sera affiché. Il faut appuyer sur le bouton pour refaire un "lancer" du dé.




Comment ça marche ?

Observations : que voit-on ?

Lorsque le bouton est enclenché, le programme se relance et une nouvelle valeur est affichée.

Mise en garde : qu'est-ce qui pourrait faire rater l'expérience ?

Attention aux branchements, un seul fil ou un élément pas bien branché fera mal fonctionner le programme.

Ne pas modifier le programme, sinon les résultats obtenus seront erronés.

Explications

Le programme, lorsqu'il est lancé, trouve une valeur aléatoire entre 1 et 5. Par la suite, en fonction de la valeur, la carte arduino enverra de l'électricité dans les LEDs. Par exemple, si le programme trouve la valeur 2, la carte enverra de l'électricité dans les LEDs haut droite et bas gauche, ce qui fera que ces deux LEDs s'allumeront.

Le bouton, lorsqu'il est enclenché, ouvre le circuit, l'électricité ne passe plus et éteint la carte. Le relâchement du bouton fait que le circuit se referme et relance le programme.


Vous aimerez aussi

Pour initier les jeunes à la programmation: https://www.wikidebrouillard.org/wiki/Initier_des_jeunes_%C3%A0_Arduino:_la_boite_noire

Pour créer un jeu des bâtonnets sur arduino: https://www.wikidebrouillard.org/wiki/Fort_Boyard_Jeu_des_b%C3%A2tonnets_avec_Arduino

Pour réaliser un piano invisible: https://www.wikidebrouillard.org/wiki/Piano_invisible_avec_arduino

Éléments pédagogiques

Objectifs pédagogiques

L'objectif de cette activité est d'initier à la programmation

Pistes pour animer l'expérience

Donner le schéma du montage ainsi que le programme, afin de laisser faire le montage et le téléversement du programme.

Sources et ressources

Site d'Arduino: https://www.arduino.cc/


Dernière modification 12/12/2020 par user:Antonydbzh.

Commentaires

Draft