Warning: putenv() has been disabled for security reasons in /home/users4/d/debrouilloweb/www/wikidebrouillard/LocalSettings.php on line 193

Warning: putenv() has been disabled for security reasons in /home/users4/d/debrouilloweb/www/wikidebrouillard/LocalSettings.php on line 197

Warning: putenv() has been disabled for security reasons in /home/users4/d/debrouilloweb/www/wikidebrouillard/includes/parser/Parser.php on line 2338

Warning: putenv() has been disabled for security reasons in /home/users4/d/debrouilloweb/www/wikidebrouillard/includes/parser/Parser.php on line 2338

Warning: putenv() has been disabled for security reasons in /home/users4/d/debrouilloweb/www/wikidebrouillard/includes/parser/Parser.php on line 2338

Warning: putenv() has been disabled for security reasons in /home/users4/d/debrouilloweb/www/wikidebrouillard/includes/parser/Parser.php on line 2338

Warning: putenv() has been disabled for security reasons in /home/users4/d/debrouilloweb/www/wikidebrouillard/includes/parser/Parser.php on line 2338

Warning: putenv() has been disabled for security reasons in /home/users4/d/debrouilloweb/www/wikidebrouillard/includes/parser/Parser.php on line 2338
[ Wikidébrouillard ] Capteur de distance

Capteur de distance

De Wikidebrouillard.

(Page créée avec « =='''Présentation de l'expérience'''== L’expérience consiste à mesurer la longueur de quelque chose, comme un mur, ou bien la distance qui sépare quelqu'un de l'[[Ardu… »)
Ligne 1 : Ligne 1 :
 +
{{avertissement}}
 +
{{vidéo|numérovidéo = <videoflash type="mediaspip" num = 1>http://mediaspip.ptitdeb.infini.fr/IMG/mp4/deber.mp4|400|300</videoflash>}}
 +
 +
=='''Présentation de l'expérience'''==
=='''Présentation de l'expérience'''==
L’expérience consiste à mesurer la longueur de quelque chose, comme un mur, ou bien la distance qui sépare quelqu'un de l'[[Arduino]].
L’expérience consiste à mesurer la longueur de quelque chose, comme un mur, ou bien la distance qui sépare quelqu'un de l'[[Arduino]].
Ligne 5 : Ligne 9 :
La distance est affichée sur un [[moniteur]].
La distance est affichée sur un [[moniteur]].
Une [[led]] clignote de plus en plus rapidement au fur et à mesure que la l'objet se rapproche.
Une [[led]] clignote de plus en plus rapidement au fur et à mesure que la l'objet se rapproche.
 +
 +
== '''Matériel''' ==
 +
* [[Image:Afficheur_7_segments.jpg|50px]] Un [[afficheur 7 segments]]
 +
* [[Image:Arduino_Diecimila.jpg|50px]] La carte [[Arduino]] Uno
 +
* [[Image:Arduino_Uno_logo.png|50px]] Le logiciel Arduino
 +
* [[Image:Fils1.jpg|50px]] Du [[fil électrique]] (noir, rouge…)
 +
* [[Image:Plaque2.jpg|50px]] Une plaque labdec ou [[Breadboard]]
 +
* [[Image:Résistance.jpg|50px]] Une [[résistance]] de 150 Ohm
 +
* [[Image:Ordi.jpg|50px]] Un [[ordinateur]] pour programmer
 +
 +
== '''L'expérience''' ==
 +
 +
==='''La manipulation'''===
 +
 +
<u>La manipulation</u>
 +
 +
* Télécharger et installer le logiciel Arduino.
 +
* Placer l'afficheur 7 segments sur la plaque.
 +
* Brancher les deux fils noirs dans la masse GND.
 +
* Brancher les 8 fils dans  les pins (de 2 à 8) de l'Arduino et les lier avec la plaque Adec.
 +
* Brancher la résistance dans la plaque.
 +
* Préparer le code du fonctionnement  de la carte Arduino.
 +
* Compiler le code et le charger vers la carte.
 +
 +
[[Fichier:Conception.png]]
 +
 +
<u>Que voit-on ?</u>
 +
 +
À l’exécution du programme, l'afficheur 7 segments affiche les chiffres de 0 à 9 successivement.
 +
 +
<u>Code</u>
 +
 +
<pre>
 +
 +
 +
 +
 +
 +
void setup() {               
 +
  // initialiser le digital pin comme une sortie
 +
 
 +
  pinMode(led1, OUTPUT);
 +
  pinMode(led2, OUTPUT);
 +
  pinMode(led3, OUTPUT);
 +
  pinMode(led4, OUTPUT);
 +
  pinMode(led5, OUTPUT);
 +
  pinMode(led6, OUTPUT);
 +
  pinMode(led7, OUTPUT);
 +
  pinMode(led8, OUTPUT); 
 +
}
 +
 +
void loop() {
 +
 +
 +
 +
//Compteur de 0 à 9
 +
 +
 +
//************ 0 *************
 +
  digitalWrite(led1, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led2, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led3, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led4, LOW);  // fixe la led comme éteinte
 +
  digitalWrite(led5, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led6, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led7, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led8, HIGH);  // fixe la led comme allumée
 +
 
 +
  delay(1000);              // attendre 1 sec
 +
 
 +
  //************ 1 *************
 +
    digitalWrite(led1, HIGH);  // fixe la led comme  éteinte
 +
  digitalWrite(led2, LOW);  // fixe la led comme  éteinte
 +
  digitalWrite(led3, LOW);  // fixe la led comme éteinte
 +
  digitalWrite(led4, LOW);  // fixe la led comme éteinte
 +
  digitalWrite(led5, LOW);  // fixe la led comme éteinte
 +
  digitalWrite(led6, LOW);  // fixe la led comme éteinte
 +
  digitalWrite(led7, HIGH);  // fixe la led comme allumé
 +
  digitalWrite(led8, LOW);  // fixe la led comme éteinte 
 +
 
 +
  delay(1000);              // attendre 1 sec
 +
  //************ 2 *************
 +
    digitalWrite(led1, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led2, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led3, LOW);  // fixe la led comme éteinte
 +
  digitalWrite(led4, HIGH);  // fixe la led comme allumé
 +
  digitalWrite(led5, HIGH);  // fixe la led comme allumé
 +
  digitalWrite(led6, HIGH);  // fixe la led comme allumé
 +
  digitalWrite(led7, LOW);  // fixe la led comme éteinte
 +
  digitalWrite(led8, LOW);  // fixe la led comme éteinte 
 +
 
 +
  delay(1000);              // attendre 1 sec
 +
  //************ 3 *************
 +
      digitalWrite(led1, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led2, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led3, LOW);  // fixe la led comme éteinte
 +
  digitalWrite(led4, HIGH);  // fixe la led comme allumé
 +
  digitalWrite(led5, LOW);  // fixe la led comme éteinte
 +
  digitalWrite(led6, HIGH);  // fixe la led comme allumé
 +
  digitalWrite(led7, HIGH);  // fixe la led comme allumé
 +
  digitalWrite(led8, LOW);  // fixe la led comme éteinte 
 +
 
 +
  delay(1000);              // attendre 1 sec
 +
  //***** 4 *************
 +
          digitalWrite(led1, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led2, LOW);  // fixe la led comme éteinte
 +
  digitalWrite(led3, HIGH);  // fixe la led comme allumé
 +
  digitalWrite(led4, HIGH);  // fixe la led comme allumé
 +
  digitalWrite(led5, LOW);  // fixe la led comme éteinte
 +
  digitalWrite(led6, LOW);  // fixe la led comme éteinte
 +
  digitalWrite(led7, HIGH);  // fixe la led comme allumé
 +
  digitalWrite(led8, LOW);  // fixe la led comme éteinte 
 +
 
 +
  delay(1000);
 +
  //************ 5 *************
 +
        digitalWrite(led1, LOW);  // fixe la led comme éteinte 
 +
 +
  digitalWrite(led2, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led3, HIGH);  // fixe la led comme éteinte
 +
  digitalWrite(led4, HIGH);  // fixe la led comme éteinte
 +
  digitalWrite(led5, LOW);  // fixe la led comme éteinte
 +
  digitalWrite(led6, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led7, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led8, LOW);  // fixe la led comme éteinte 
 +
 
 +
  delay(1000);              // attendre 1 sec
 +
  //************ 6 *************
 +
    digitalWrite(led1, LOW);  // fixe la led comme éteinte
 +
  digitalWrite(led2, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led3, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led4, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led5, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led6, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led7, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led8, LOW);  // fixe la led comme éteinte 
 +
 
 +
  delay(1000);              // attendre 1 sec
 +
  //************ 7 *************
 +
    digitalWrite(led1, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led2, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led3, LOW);  // fixe la led comme éteinte
 +
  digitalWrite(led4,LOW);  // fixe la led comme éteinte
 +
  digitalWrite(led5,LOW);  // fixe la led comme éteinte
 +
  digitalWrite(led6, LOW);  // fixe la led comme éteinte
 +
  digitalWrite(led7, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led8, LOW);  // fixe la led comme éteinte 
 +
 
 +
  delay(1000);              // attendre 1 sec
 +
  //************ 8 *************
 +
      digitalWrite(led1, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led2, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led3, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led4, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led5, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led6, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led7, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led8, LOW);  // fixe la led comme éteinte 
 +
 
 +
  delay(1000);              // attendre 1 sec
 +
  //************ 9 *************
 +
      digitalWrite(led1, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led2, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led3, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led4, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led5,  LOW);  // fixe la led comme éteinte
 +
  digitalWrite(led6, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led7, HIGH);  // fixe la led comme allumée
 +
  digitalWrite(led8,  LOW);  // fixe la led comme éteinte 
 +
 
 +
  delay(1000);              // attendre 1 sec
 +
     
 +
}
 +
 +
 +
 +
</pre>
 +
 +
== '''Explications''' ==
 +
 +
==='''De manière simple'''===
 +
 +
On a demandé à l'ordinateur de réaliser un compteur via la carte Arduino.
 +
Pour cela, on a écrit un code qui gère la carte Arduino afin d'afficher les nombres de 0 à 9 successivement.
 +
 +
=== '''Questions sans réponses''' ===
 +
 +
Peut-on afficher des chiffres en tapant sur le clavier, sans l'exécution pas à pas de l'afficheur 7 segments ?
 +
 +
=== '''Allons plus loin dans l'explication''' ===
 +
 +
On a codé l'Arduino à l'aide du langage C afin qu'il puisse afficher les chiffres de 0 à 9. Le code source contient des fonctions « digitalWrite » qui permettent d'allumer des Leds précises selon des paramètres en entrée. 
 +
La fonction ' digitalWrite ' envoie  à chaque exécution le code approprié à chaque led précise pour l'allumer.
 +
 +
== '''Liens avec d'autres expériences''' ==
 +
 +
==='''Expériences sur Wikidébrouillard'''===
 +
D'autres expériences utilisant l'Arduino sont disponible dans ce wiki. Vous pouvez les retrouver ici :
 +
[http://www.wikidebrouillard.org/index.php/Cat%C3%A9gorie:Arduino| Catégorie : Arduino].
 +
 +
==='''Autres expériences'''===
 +
 +
Vous pouvez retrouver une multitude d'expériences sur l'arduino sur [http://arduino.cc/forum/index.php/topic,67634.0.html| Arduino forum].
 +
 +
== '''Applications : liens avec le quotidien''' ==
 +
 +
L’intérêt de ce projet est de savoir comment les compteurs, les horloges et les chronomètres sont réalisés.
 +
 +
[[Catégorie:Arduino]]
 +
[[Catégorie:Contenus à développer]]
 +
[[Catégorie:Fiche à Valider]]
 +
[[Catégorie:expérience]]
 +
[[Catégorie:électrokids]]

Version du 9 janvier 2014 à 15:14

Article incomplet en cours de rédaction
Modèle:Vidéo


Sommaire

Présentation de l'expérience

L’expérience consiste à mesurer la longueur de quelque chose, comme un mur, ou bien la distance qui sépare quelqu'un de l'Arduino.

La plage à mesurer doit être comprise entre 2 centimètres et 3 mètres au maximum. La distance est affichée sur un moniteur. Une led clignote de plus en plus rapidement au fur et à mesure que la l'objet se rapproche.

Matériel

L'expérience

La manipulation

La manipulation

  • Télécharger et installer le logiciel Arduino.
  • Placer l'afficheur 7 segments sur la plaque.
  • Brancher les deux fils noirs dans la masse GND.
  • Brancher les 8 fils dans les pins (de 2 à 8) de l'Arduino et les lier avec la plaque Adec.
  • Brancher la résistance dans la plaque.
  • Préparer le code du fonctionnement de la carte Arduino.
  • Compiler le code et le charger vers la carte.

Fichier:Conception.png

Que voit-on ?

À l’exécution du programme, l'afficheur 7 segments affiche les chiffres de 0 à 9 successivement.

Code






void setup() {                
  // initialiser le digital pin comme une sortie
  
  pinMode(led1, OUTPUT);
  pinMode(led2, OUTPUT);
  pinMode(led3, OUTPUT);
  pinMode(led4, OUTPUT);
  pinMode(led5, OUTPUT);
  pinMode(led6, OUTPUT);
  pinMode(led7, OUTPUT);
  pinMode(led8, OUTPUT);  
}

void loop() {

 
 
 //Compteur de 0 à 9 
 
 
 //************ 0 *************
  digitalWrite(led1, HIGH);   // fixe la led comme allumée
  digitalWrite(led2, HIGH);   // fixe la led comme allumée
  digitalWrite(led3, HIGH);   // fixe la led comme allumée
  digitalWrite(led4, LOW);   // fixe la led comme éteinte
  digitalWrite(led5, HIGH);   // fixe la led comme allumée
  digitalWrite(led6, HIGH);   // fixe la led comme allumée
  digitalWrite(led7, HIGH);   // fixe la led comme allumée
  digitalWrite(led8, HIGH);   // fixe la led comme allumée 
  
  delay(1000);              // attendre 1 sec
  
   //************ 1 *************
    digitalWrite(led1, HIGH);   // fixe la led comme  éteinte
  digitalWrite(led2, LOW);   // fixe la led comme  éteinte
  digitalWrite(led3, LOW);   // fixe la led comme éteinte
  digitalWrite(led4, LOW);   // fixe la led comme éteinte
  digitalWrite(led5, LOW);   // fixe la led comme éteinte
  digitalWrite(led6, LOW);   // fixe la led comme éteinte
  digitalWrite(led7, HIGH);   // fixe la led comme allumé
  digitalWrite(led8, LOW);   // fixe la led comme éteinte  
  
  delay(1000);              // attendre 1 sec
   //************ 2 *************
     digitalWrite(led1, HIGH);   // fixe la led comme allumée
  digitalWrite(led2, HIGH);   // fixe la led comme allumée
  digitalWrite(led3, LOW);   // fixe la led comme éteinte
  digitalWrite(led4, HIGH);   // fixe la led comme allumé
  digitalWrite(led5, HIGH);   // fixe la led comme allumé
  digitalWrite(led6, HIGH);   // fixe la led comme allumé
  digitalWrite(led7, LOW);   // fixe la led comme éteinte
  digitalWrite(led8, LOW);   // fixe la led comme éteinte  
  
  delay(1000);              // attendre 1 sec
  //************ 3 *************
      digitalWrite(led1, HIGH);   // fixe la led comme allumée
  digitalWrite(led2, HIGH);   // fixe la led comme allumée
  digitalWrite(led3, LOW);   // fixe la led comme éteinte
  digitalWrite(led4, HIGH);   // fixe la led comme allumé
  digitalWrite(led5, LOW);   // fixe la led comme éteinte
  digitalWrite(led6, HIGH);   // fixe la led comme allumé
  digitalWrite(led7, HIGH);   // fixe la led comme allumé
  digitalWrite(led8, LOW);   // fixe la led comme éteinte  
  
  delay(1000);              // attendre 1 sec
  //***** 4 *************
           digitalWrite(led1, HIGH);   // fixe la led comme allumée
  digitalWrite(led2, LOW);   // fixe la led comme éteinte
  digitalWrite(led3, HIGH);   // fixe la led comme allumé
  digitalWrite(led4, HIGH);   // fixe la led comme allumé
  digitalWrite(led5, LOW);   // fixe la led comme éteinte
  digitalWrite(led6, LOW);   // fixe la led comme éteinte
  digitalWrite(led7, HIGH);   // fixe la led comme allumé
  digitalWrite(led8, LOW);   // fixe la led comme éteinte  
  
  delay(1000);
  //************ 5 *************
        digitalWrite(led1, LOW);   // fixe la led comme éteinte  
 
  digitalWrite(led2, HIGH);   // fixe la led comme allumée
  digitalWrite(led3, HIGH);   // fixe la led comme éteinte
  digitalWrite(led4, HIGH);   // fixe la led comme éteinte
  digitalWrite(led5, LOW);   // fixe la led comme éteinte
  digitalWrite(led6, HIGH);   // fixe la led comme allumée
  digitalWrite(led7, HIGH);   // fixe la led comme allumée
  digitalWrite(led8, LOW);   // fixe la led comme éteinte  
  
  delay(1000);              // attendre 1 sec
   //************ 6 *************
    digitalWrite(led1, LOW);   // fixe la led comme éteinte
  digitalWrite(led2, HIGH);   // fixe la led comme allumée
  digitalWrite(led3, HIGH);   // fixe la led comme allumée
  digitalWrite(led4, HIGH);   // fixe la led comme allumée
  digitalWrite(led5, HIGH);   // fixe la led comme allumée
  digitalWrite(led6, HIGH);   // fixe la led comme allumée
  digitalWrite(led7, HIGH);   // fixe la led comme allumée
  digitalWrite(led8, LOW);   // fixe la led comme éteinte  
  
  delay(1000);              // attendre 1 sec
   //************ 7 *************
     digitalWrite(led1, HIGH);   // fixe la led comme allumée
  digitalWrite(led2, HIGH);   // fixe la led comme allumée
  digitalWrite(led3, LOW);   // fixe la led comme éteinte
  digitalWrite(led4,LOW);   // fixe la led comme éteinte
  digitalWrite(led5,LOW);   // fixe la led comme éteinte
  digitalWrite(led6, LOW);   // fixe la led comme éteinte
  digitalWrite(led7, HIGH);   // fixe la led comme allumée
  digitalWrite(led8, LOW);   // fixe la led comme éteinte  
  
  delay(1000);              // attendre 1 sec
  //************ 8 *************
      digitalWrite(led1, HIGH);   // fixe la led comme allumée
  digitalWrite(led2, HIGH);   // fixe la led comme allumée
  digitalWrite(led3, HIGH);   // fixe la led comme allumée
  digitalWrite(led4, HIGH);   // fixe la led comme allumée
  digitalWrite(led5, HIGH);   // fixe la led comme allumée
  digitalWrite(led6, HIGH);   // fixe la led comme allumée
  digitalWrite(led7, HIGH);   // fixe la led comme allumée
  digitalWrite(led8, LOW);   // fixe la led comme éteinte  
  
  delay(1000);              // attendre 1 sec
  //************ 9 *************
      digitalWrite(led1, HIGH);   // fixe la led comme allumée
  digitalWrite(led2, HIGH);   // fixe la led comme allumée
  digitalWrite(led3, HIGH);   // fixe la led comme allumée
  digitalWrite(led4, HIGH);   // fixe la led comme allumée
  digitalWrite(led5,  LOW);   // fixe la led comme éteinte
  digitalWrite(led6, HIGH);   // fixe la led comme allumée
  digitalWrite(led7, HIGH);   // fixe la led comme allumée
  digitalWrite(led8,  LOW);   // fixe la led comme éteinte  
  
  delay(1000);              // attendre 1 sec
      
}



Explications

De manière simple

On a demandé à l'ordinateur de réaliser un compteur via la carte Arduino. Pour cela, on a écrit un code qui gère la carte Arduino afin d'afficher les nombres de 0 à 9 successivement.

Questions sans réponses

Peut-on afficher des chiffres en tapant sur le clavier, sans l'exécution pas à pas de l'afficheur 7 segments ?

Allons plus loin dans l'explication

On a codé l'Arduino à l'aide du langage C afin qu'il puisse afficher les chiffres de 0 à 9. Le code source contient des fonctions « digitalWrite » qui permettent d'allumer des Leds précises selon des paramètres en entrée.  La fonction ' digitalWrite ' envoie à chaque exécution le code approprié à chaque led précise pour l'allumer.

Liens avec d'autres expériences

Expériences sur Wikidébrouillard

D'autres expériences utilisant l'Arduino sont disponible dans ce wiki. Vous pouvez les retrouver ici : Catégorie : Arduino.

Autres expériences

Vous pouvez retrouver une multitude d'expériences sur l'arduino sur Arduino forum.

Applications : liens avec le quotidien

L’intérêt de ce projet est de savoir comment les compteurs, les horloges et les chronomètres sont réalisés.

AR
CO

Capteur de distance

Rechercher

Page Discussion Historique
Powered by MediaWiki
Creative Commons - Paternite Partage a l

© Graphisme : Les Petits Débrouillards Grand Ouest (Patrice Guinche - Jessica Romero) | Développement web : Libre Informatique