Ligne 1 : |
Ligne 1 : |
| {{MCH-Aider}} | | {{MCH-Aider}} |
− |
| |
− | {{traduction}}
| |
| | | |
| == Introduction == | | == Introduction == |
Ligne 24 : |
Ligne 22 : |
| Voici un programme d'exemple dont nous avons traduit les commentaire pour le rendre plus facile à comprendre. | | Voici un programme d'exemple dont nous avons traduit les commentaire pour le rendre plus facile à comprendre. |
| | | |
− | <nowiki>/* | + | <nowiki>/* Senseur de distance Ultrason HC-SR04: |
− | HC-SR04 Ping distance sensor:
| + | VCC sur Arduino 5v |
− | VCC to arduino 5v | + | GND sur Arduino GND |
− | GND to arduino GND | + | Echo sur Arduino broche 7 |
− | Echo to Arduino pin 7 | + | Trig sur Arduino broche 8 |
− | Trig to Arduino pin 8 | |
| | | |
− | This sketch originates from Virtualmix: http://goo.gl/kJ8Gl | + | Ce sketch/croquis est originaire de Virtualmix: http://goo.gl/kJ8Gl |
− | Has been modified by Winkle ink here: | + | Il a été modifié par Winkle ink ici: |
− | http://winkleink.blogspot.com.au/2012/05/arduino-hc-sr04-ultrasonic-distance.html
| + | http://winkleink.blogspot.com.au/2012/05/arduino-hc-sr04-ultrasonic-distance.html |
− | And modified further by ScottC here: http://arduinobasics.blogspot.com/ | + | Puis modifié par ScottC le 10 Nov 2012: |
− | on 10 Nov 2012. | + | http://arduinobasics.blogspot.com/ |
| + | Finalement traduit par MCHobby.be pour le tutoriel: |
| + | http://wiki.mchobby.be/index.php?title=HC-SR04 |
| */ | | */ |
| | | |
| | | |
− | #define echoPin 7 // Echo Pin | + | #define echoPin 7 // broche Echo |
− | #define trigPin 8 // Trigger Pin | + | #define trigPin 8 // broche Trigger (declenchement) |
− | #define LEDPin 13 // Onboard LED | + | #define LEDPin 13 // LED de la carte Ardiono (branché sur la broche 13) |
| | | |
− | int maximumRange = 200; // Maximum range needed | + | int maximumRange = 200; // distance Maximale acceptée (en cm) |
− | int minimumRange = 0; // Minimum range needed | + | int minimumRange = 0; // distance Minimale acceptée (en cm) |
− | long duration, distance; // Duration used to calculate distance | + | long duration, distance; // Durée utilisé pour calculer la distance |
| | | |
| void setup() { | | void setup() { |
| + | // Activer la communication série |
| Serial.begin (9600); | | Serial.begin (9600); |
| + | // Activer les broches |
| pinMode(trigPin, OUTPUT); | | pinMode(trigPin, OUTPUT); |
| pinMode(echoPin, INPUT); | | pinMode(echoPin, INPUT); |
− | pinMode(LEDPin, OUTPUT); // Use LED indicator (if required) | + | pinMode(LEDPin, OUTPUT); // activer la LED sur la carte (si nécessaire) |
| } | | } |
| | | |
| + | // Partie du code continuellement exécuté |
| + | // Son but est d'effectuer un cycle de détection pour déterminer |
| + | // la distance de l'objet le plus proche (par réverbération de |
| + | // l'onde sur ce dernier) |
| + | // |
| void loop() { | | void loop() { |
− | /* The following trigPin/echoPin cycle is used to determine the | + | // Envoi une impulsion de 10 micro seconde sur la broche "trigger" |
− | distance of the nearest object by bouncing soundwaves off of it. */
| |
| digitalWrite(trigPin, LOW); | | digitalWrite(trigPin, LOW); |
| delayMicroseconds(2); | | delayMicroseconds(2); |
Ligne 64 : |
Ligne 69 : |
| | | |
| digitalWrite(trigPin, LOW); | | digitalWrite(trigPin, LOW); |
| + | |
| + | // Attend que la broche Echo passe au niveau HAUT |
| + | // retourne la durée |
| duration = pulseIn(echoPin, HIGH); | | duration = pulseIn(echoPin, HIGH); |
| | | |
− | //Calculate the distance (in cm) based on the speed of sound. | + | //Calculer la distance (en cm, basé sur la vitesse du son). |
| distance = duration/58.2; | | distance = duration/58.2; |
| | | |
| + | // Si la distance mesurée est HORS des valeurs acceptables |
| if (distance >= maximumRange || distance <= minimumRange){ | | if (distance >= maximumRange || distance <= minimumRange){ |
− | /* Send a negative number to computer and Turn LED ON
| + | /* Envoyer une valeur négative sur la liaison série. |
− | to indicate "out of range" */
| + | Activer la LED pour indiquer que l'erreur */ |
− | Serial.println("-1");
| + | Serial.println("-1"); |
− | digitalWrite(LEDPin, HIGH);
| + | digitalWrite(LEDPin, HIGH); |
| } | | } |
| else { | | else { |
− | /* Send the distance to the computer using Serial protocol, and
| + | /* Envoyer la distance vers l'ordinateur via liaison série. |
− | turn LED OFF to indicate successful reading. */
| + | Eteindre la LED pour indiquer une lecture correcte. */ |
− | Serial.println(distance);
| + | Serial.println(distance); |
− | digitalWrite(LEDPin, LOW);
| + | digitalWrite(LEDPin, LOW); |
| } | | } |
| | | |
− | //Delay 50ms before next reading. | + | //Attendre 50ms avant d'effectuer la lecture suivante. |
| delay(50); | | delay(50); |
| }</nowiki> | | }</nowiki> |
| + | |
| + | == Comment tester == |
| + | Ouvrez le moniteur série dans Arduino IDE (régler le débit sur 9600 Baud)... vous devriez voir défiler le résultat des différentes mesures (en Centimètre). |
| + | |
| + | <!-- [[Fichier:HC-SR04-20.jpg|480px]] --> |
| | | |
| == Où Acheter == | | == Où Acheter == |
Ligne 91 : |
Ligne 105 : |
| * {{pl|53|Breadboard}} | | * {{pl|53|Breadboard}} |
| * {{pl|34|Fils pour Breadboard}} | | * {{pl|34|Fils pour Breadboard}} |
| + | * {{pl|82|Assortiment de fils multi-fonctionnel}} (bien pratique pour effectuer rapidement un montage de test) |
| | | |
| <hr /> | | <hr /> |
| {{MCH-Accord}} | | {{MCH-Accord}} |