
Composants utilisés
- 1 capteur de distance à ultra sons HC SR-04
- 1 carte Arduino Uno
- 1 breadboard de montage
- quelques câbles de branchement Dupont Mâle-Mâle
- 2 LED (rouge et verte) en série avec une résistance de 470 Ohm

Principe de fonctionnement
Le capteur émet une salve d'ultra-sons, le récepteur chronomètre leur temps d'aller/ retour.
On en déduit la distance précise entre le capteur et l'obstacle qui réfléchit le son.

Le module HC SR-04 est monté, prêt à l'emploi.

Caractéristiques
Le module à ultra-sons permet de détecter automatiquement un obstacle dans un angle de visée étroit de 15°, et de mesurer une distance sans contacts, sur une portée de 2 cm à 450 cm.
- On peut mesurer une distance jusqu'à 0.3 cm près.
- Courant de repos moins de 2 mA
- Signal de sortie : signal électrique 5V haut niveau, 0V niveau bas.
- Un quartz produit une onde inaudible de fréquence 40 kHz de forme carrée.
- Taille 45 x 20 x 15 mm

Calcul de la distance
La vitesse du son est de 340 m/s (Il faut 29,4 microsecondes pour parcourir 1 cm).
En 1 ms, l'onde ultrasonore se déplace de 340 mm = 34 cm.
Le capteur fournit une sortie de durée proportionnelle à la distance.
Exemples d'utilisations :
- Télémétrie
- Capteur de présence
- Robotique, détection d'obstacles
Sur un robot, monter de préférence deux capteurs orientés à gauche et à droite. - Sonar à balayage, en montant le capteur sur un servomoteur qui tourne.
Câblage
Capteur --> Arduino
- pin 1 Alimentation Vcc --> +5V Arduino
- pin 2 Emission d'ultrasons (Trig) --> pin de sortie p13
- pin 3 Réception du signal Echo (signal de sortie TTL en largeur d'impulsion modulée)--> pin d'entrée p12
- pin 4 Gnd --> Masse Arduino
On rajoute dans ce montage deux Leds (rouge et verte) sur les pin 10 et 11 (en série avec 470 ohm).
Elles servent de témoins de distance trop près / trop loin.

Programmation Arduino
Il n'y a pas besoin d'installer de librairie spécialisée.
On peut éventuellement se servir de #include <Ultrasonic.h>
Charger le code suivant
- Code: Tout sélectionner
//**********************************************************
// Capteur de distance à ultrasons HC-SR04 avec Arduino Uno
// TipTopBoards.com 06 01 2014 Rolland
// Càabler +5V et GND du détecteur sur l'arduino
//
// Trig -> pin 13
// Echo -> pin 12
// Led verte + 470R -> pin 10
// Led rouge + 470R -> pin 11
// Les leds s'allument selon la distance trop près / trop loin
//**********************************************************
#define trigPin 13 //Trig Ultrasons (sortie)
#define echoPin 12 //Echo Ultrasons (entrée)
#define ledVerte 11 //Led verte
#define ledRouge 10 //Led rouge
void setup() {
Serial.begin (9600);
pinMode(trigPin, OUTPUT); //Trig est une sortie
pinMode(echoPin, INPUT); //Echo est le retour, en entrée
pinMode(ledVerte, OUTPUT);
pinMode(ledRouge, OUTPUT);
}
void loop() {
long duration, distance;
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10); //Trig déclenché 10ms sur HIGH
digitalWrite(trigPin, LOW);
// Calcul de l'écho
duration = pulseIn(echoPin, HIGH);
// Distance proportionnelle à la durée de sortie
distance = duration*340/(2*10000); //Vitesse du son théorique
if (distance < 4) { // Distance trop près
digitalWrite(ledVerte,HIGH); //Vert éclairé seulement
digitalWrite(ledRouge,LOW);
}
else { //Trop loin
digitalWrite(ledVerte,LOW);
digitalWrite(ledRouge,HIGH);
}
//Hors de portée (duration)
if ( distance <= 0){
//Serial.print(duration);
Serial.println("Hors de portee");
}
else {
Serial.print(distance);
Serial.print(" cm ");
Serial.print(duration);
Serial.println(" ms");
}
delay(100); //0.1 sec entre deux mesures
}
Le code envoie une impulsion de 10us sur Trig pour déclencher la mesure (séquence de 8 pulses carrés sur la fréquence 40 kHz).
En réponse, la durée d'impulsion en sortie est proportionnelle à la distance (aller/retour), avec
Distance = Durée de l’impulsion * Vitesse du son / 2
Vidéo de démo
Références
En anglais http://www.instructables.com/id/Simple- ... he-sketch/
Le capteur HCSR04 http://www.micropik.com/PDF/HCSR04.pdf
http://wiki.tetrasys-design.net/HCSR04Ultrasonic