Créer un dé à l'aide d'arduino : Différence entre versions

 
(4 révisions intermédiaires par un autre utilisateur non affichées)
Ligne 2 : Ligne 2 :
 
|Licences=Attribution (CC-BY)
 
|Licences=Attribution (CC-BY)
 
|Description=L'objectif est de créer une simulation d'un lancé de dé avec 5 LEDs et le logiciel arduino [en cours d'écriture]
 
|Description=L'objectif est de créer une simulation d'un lancé de dé avec 5 LEDs et le logiciel arduino [en cours d'écriture]
|Disciplines scientifiques=Arduino
+
|Disciplines scientifiques=Arduino, Computing
 
|Difficulty=Technical
 
|Difficulty=Technical
 
|Duration=20
 
|Duration=20
Ligne 23 : Ligne 23 :
 
|Item=Bouton poussoir
 
|Item=Bouton poussoir
 
}}{{ItemList
 
}}{{ItemList
|Item=Carte arduino micro-controleur
+
|Item=Arduino Uno
 
}}
 
}}
 
}}
 
}}
Ligne 29 : Ligne 29 :
 
|Step_Title=Le montage du circuit
 
|Step_Title=Le montage du circuit
 
|Step_Content=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.
 
|Step_Content=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.
 +
|Step_Picture_00=Cr_er_un_d_l_aide_d_arduino_700px-Montage_de_numerique_modifi_.png
 
}}
 
}}
 
{{Tuto Step
 
{{Tuto Step
 
|Step_Title=Insérer le programme dans l'arduino
 
|Step_Title=Insérer le programme dans l'arduino
|Step_Content=Pour insérer le programme dans la carte, il faut relier la carte par l'ordinateur à l'aide du câble USB associé à la carte. Il permettra aussi d'alimenter la carte en électricité pour pouvoir fonctionner.  
+
|Step_Content=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
+
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
 +
}
 +
}}
 +
{{Tuto Step
 +
|Step_Title=Mise en route du programme
 +
|Step_Content=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é.
 +
|Step_Picture_00=Cr_er_un_d_l_aide_d_arduino_t_l_versement.PNG
 +
}}
 +
{{Notes
 +
|Observations=Lorsque le bouton est enclenché, le programme se relance et une nouvelle valeur est affichée.
 +
|Avertissement=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.
 +
|Explanations=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.
 +
|Related=Pour initier les jeunes à la programmation: [[Initier des jeunes à Arduino: la boite noire|https://www.wikidebrouillard.org/wiki/Initier_des_jeunes_%C3%A0_Arduino:_la_boite_noire]]
 +
 
 +
Pour créer un jeu des bâtonnets sur arduino: [[Fort Boyard Jeu des bâtonnets avec Arduino|https://www.wikidebrouillard.org/wiki/Fort_Boyard_Jeu_des_b%C3%A2tonnets_avec_Arduino]]
 +
 
 +
Pour réaliser un piano invisible: [[Piano invisible avec arduino|https://www.wikidebrouillard.org/wiki/Piano_invisible_avec_arduino]]
 +
|Objectives=L'objectif de cette activité est d'initier à la programmation
 +
|Animation=Donner le schéma du montage ainsi que le programme, afin de laisser faire le montage et le téléversement du programme.
 +
|Notes=Site d'Arduino: https://www.arduino.cc/
 +
 
 +
<br />
 
}}
 
}}
{{Notes}}
 
 
{{Tuto Status
 
{{Tuto Status
 
|Complete=Draft
 
|Complete=Draft
 
}}
 
}}

Version actuelle datée du 12 décembre 2020 à 10:31

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