Il permet de déterminer la distance d'un obstacle grâce à une technologie à ultra-son.
Lorsqu'il est déclenché, un émetteur ultra-son envoi une impulsion. Si celle-ci rencontre un obstacle, elle est réfléchi et “rebondi”. Un compteur démarré lors de l'émission compte le temps jusqu'au retour de l'impulsion. Il reste ensuite à convertir le temps en distance en tenant compte de l'aller/retour du son (distance = temps / 2 * vitesse du son).
Pour son fonctionnement, ce composant ne nécessite pas de bibliothèque spécifique (voir code ci-dessous).
Il existe un bloc dédié dans la catégorie “Capteur”, “Lire les broches TRIG (x) et ECHO (y) du capteur ultrasonique”.
#define echoPin 7 // broche Echo #define trigPin 8 // broche Trigger long duration, distance; // Durée utilisé pour calculer la distance void setup() { pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); digitalWrite(trigPin, LOW); delayMicroseconds(100); } void loop() { // Envoi une impulsion de 10 micro seconde sur la broche "trigger" digitalWrite(trigPin, HIGH); delayMicroseconds(10); digitalWrite(trigPin, LOW); // retourne la distance en mm duration = pulseIn(echoPin, HIGH, 60000); distance = duration*0.17; }