[Tuto] Mesurer une distance avec le capteur à ultrasons HC-SR04
[Tuto] Mesurer une distance avec le capteur à ultrasons HC-SR04

Le HC-SR04 envoie une impulsion ultrasonore et mesure le temps que l'écho met à revenir. Il sert à détecter des obstacles ou à mesurer un niveau, par exemple sur un robot.

Câblage

  • VCC vers 5 V
  • GND vers GND
  • Trig vers la broche 9
  • Echo vers la broche 10

Principe de calcul

Le son parcourt environ 343 m/s dans l'air, soit 0,0343 cm par microseconde. Comme l'onde fait un aller-retour : distance (cm) = durée (µs) × 0,0343 / 2.

Le code

const int TRIG = 9;
const int ECHO = 10;

void setup() {
  Serial.begin(9600);
  pinMode(TRIG, OUTPUT);
  pinMode(ECHO, INPUT);
}

void loop() {
  digitalWrite(TRIG, LOW);
  delayMicroseconds(2);
  digitalWrite(TRIG, HIGH);
  delayMicroseconds(10);
  digitalWrite(TRIG, LOW);

  long duree = pulseIn(ECHO, HIGH, 30000);
  float distance = duree * 0.0343 / 2;

  Serial.print("Distance : ");
  Serial.print(distance);
  Serial.println(" cm");
  delay(200);
}

Si le résultat affiche 0, aucun écho n'a été reçu dans le délai : l'objet est trop loin ou mal orienté.

Bon à savoir

  • La plage utile va d'environ 2 cm à 4 m.
  • Les surfaces molles ou inclinées renvoient mal les ultrasons.
  • Avec une carte en 3,3 V (ESP32), la sortie Echo à 5 V demande un pont diviseur de tension.

Voir nos capteurs de proximité et nos kits robotique.

[Guide] Bien souder ses composants électroniques
Arduino ou Raspberry Pi : lequel choisir pour votre projet ?
Translation missing: fr.blogs.related Actualités
Translation missing: fr.blogs.comments.title
Translation missing: fr.layout.cart.title_cart 0 Translation missing: fr.layout.cart.items
Translation missing: fr.layout.header_canvas.customer_account
Translation missing: fr.layout.header_canvas.currency
Tunisie (TND د.ت)
Tunisie | (TND د.ت)
Translation missing: fr.layout.header_canvas.language
Français
Français