Bonsoir,
Aujourd’hui un petit tuto pour vous montrer comment mesurer une distance grâce au capteur ultrason HC-SR04. Voilà ce qui se cache derrière ce nom pas très explicite :
Vous en trouverez à la pelle pour quelques euros sur ebay.
Il est alimenté en 5V et permet de mesurer des distance entre 2cm et 4m. On y trouve 4 pins, 2 comme d’habitude pour l’alimentation et la masse, les 2 autres servent à mesurer la distance.
Sommaire
Fonctionnement
On envoie une impulsion de 10µs sur la patte « trig », cela a pour conséquence de lancer le cycle de mesure, le module envoi alors 8 cycles d’ultrasons à 40Khz, il attends ensuite la réponse (echo) et en déduit la distance. Pour avoir la distance en cm il faut diviser le résultat obtenu par 58. Je n’ai rien inventé, j’ai tout trouvé dans la datasheet dont voici un petit schéma qui sera surement plus parlant :
Configuration
Les branchements sont très simple :
et voici le sketch à téléverser :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
// définition des pins int trig = 7; int echo = 6; long mesure_echo; long mesure_cm; void setup() { pinMode(trig, OUTPUT); // On définit le pin trigger comme une sortie digitalWrite(trig, LOW); // Et on le mets à l'état bas pinMode(echo, INPUT); // On définit le pin echo comme une entrée Serial.begin(9600); } void loop() { digitalWrite(trig, HIGH); // On passe le trigger à l'état haut pendant une durée de 10µs delayMicroseconds(10); digitalWrite(trig, LOW); mesure_echo = pulseIn(echo, HIGH); // On récupère la mesure mesure_cm = mesure_echo / 58; // On la convertis en cm Serial.print(mesure_cm); // On l'affiche Serial.println("cm"); delay(1000); // On attends 1 seconde avant de lancer la prochaine mesure } |
Si vous allez ensuite dans votre moniteur série vous devriez voir un truc dans le genre :
Une mesure est effectuée chaque seconde. La précision est relative et ce module servira surtout pour une détection globale (une personne ou un niveau d’eau par exemple), mais si vous voulez mesurer quelque chose au millimètre près vous vous doutez bien que ce n’est pas ce genre de capteur qu’il vous faut.
Et voilà c’est tout… En espérant que vous vous coucherez moins bête ce soir 🙂