En bref :
- HC-SR04 : un module ultrasonique à 5V, simple et peu coûteux, idéal pour la mesure distance dans les projets makers.
- Fonctionnement basé sur une impulsion Trig de 10 µs, émission à 40 kHz et lecture de la durée sur la broche Echo.
- Précision pratique autour de ±3 mm, portée utile de 2 cm à 4 m, angle de détection ~15°.
- Conseils concrets pour intégration avec projet Arduino, filtrage logiciel et astuces anti-parasites.
- Alternatives modernes (ToF, laser, infrarouge) et cas d’usage illustrés pour la domotique, robotique et mesure de niveau.
Pourquoi le capteur ultrasons HC-SR04 reste incontournable en 2025 pour la détection distance
Le HC-SR04 continue d’être un favori dans la communauté DIY et l’éducation technologique, grâce à un équilibre rare entre prix, simplicité et fiabilité. Même avec l’arrivée de capteurs ToF plus compacts et de modules laser, le HC-SR04 garde une place privilégiée pour les prototypes rapides et les ateliers d’apprentissage.
Un personnage guide le fil conducteur : « NovaLab », un petit atelier de prototypage urbain. Les équipes de NovaLab l’utilisent pour enseigner la notion de fonctionnement capteur aux débutants, et pour construire des prototypes de robots d’évitement en quelques heures.
Avantages pragmatiques pour un atelier maker
Le premier atout est la simplicité électrique : le module tourne à 5 V et ne nécessite que quatre connexions (VCC, GND, Trig, Echo). Ensuite, la logique du protocole—une impulsion de 10 µs sur Trig, émission d’un signal à 40 kHz, et lecture du temps sur Echo—est simple à expliquer et à mesurer avec un microcontrôleur.
Cela rend le HC-SR04 parfait pour apprendre les concepts de base : gestion de broches digitales, interruption/lecture de durée, et conversion temps→distance.
- Rapport qualité/prix attractif pour des lots pédagogiques.
- Large compatibilité avec Arduino, Raspberry Pi, ESP32 et microcontrôleurs courants.
- Documentation abondante et bibliothèques testées par la communauté.
Cas d’usage concrets en 2025
Exemples pratiques testés par NovaLab : un robot éviteur de 3 roues, un capteur de niveau d’eau pour une jardinière intelligente, et un dispositif de mesure pour parking connecté. Chaque projet met en avant la rapidité d’intégration et la robustesse face à des surfaces variées (murs peints, métal, PVC).
La polyvalence du module le rend adapté à des prototypes nécessitant une portée jusqu’à 4 mètres et une précision autour de ±3 mm pour des mesures rapprochées.
| Spécification | Valeur |
|---|---|
| Tension d’alimentation | 5 V DC |
| Courant de fonctionnement | ~15 mA |
| Fréquence ultrasonore | 40 kHz |
| Portée | 2 cm – 400 cm |
| Précision | ±3 mm |
| Angle de détection | ~15° |
- Astuce pédagogique : commencer par des exercices de visualisation de l’écho pour faire comprendre l’aller-retour du son.
- Astuce pratique : privilégier des câbles courts et une alimentation stabilisée pour réduire le bruit sur la broche Echo.
Insight : le HC-SR04 reste pertinent lorsqu’un compromis entre coût, simplicité et portée est requis ; il structure l’apprentissage des capteurs avant d’évoluer vers des technologies plus coûteuses.

Fonctionnement capteur : de l’impulsion Trig au calcul de la mesure distance
Comprendre le cycle de mesure est essentiel pour maîtriser la mesure distance avec le HC-SR04. Le processus est mécanique dans son principe et numérique dans sa lecture : il combine une impulsion électrique, une onde ultrasonore, un retour d’écho et une conversion temporelle en distance.
Étapes techniques clairement décomposées
Étape 1 : envoyer une impulsion haute sur la broche Trig d’au moins 10 µs. Cela déclenche l’émetteur interne qui pulse une rafale à 40 kHz.
Étape 2 : l’onde ultrasonore se propage à la vitesse du son (≈ 343 m/s) jusqu’à rencontrer un obstacle. L’onde se réfléchit et revient vers le capteur.
Étape 3 : la broche Echo passe à l’état haut pendant la durée correspondant à l’aller-retour. C’est le microcontrôleur qui mesure cette durée en microsecondes.
Étape 4 : conversion du temps en distance avec la formule standard :
- Distance (cm) = Temps (µs) × 0.0343 / 2
Le coefficient 0.0343 est la vitesse du son en cm/µs, et la division par 2 tient compte du trajet aller-retour.
Exemples chiffrés
Si le microcontrôleur mesure 1500 µs sur Echo, la distance est :
- 1500 × 0.0343 / 2 ≈ 25.725 cm.
Ce calcul simple permet d’implémenter facilement une conversion dans un sketch Arduino ou un script Python pour Raspberry Pi.
| Durée Echo (µs) | Distance estimée (cm) | Usage typique |
|---|---|---|
| 200 | ≈ 3.43 cm | Détection très proche |
| 1500 | ≈ 25.7 cm | Mesure proche |
| 20000 | ≈ 343 cm | Longue portée (proche du maximum) |
- Point d’attention : la précision dépend de la stabilité de la mesure temporelle ; éviter les interruptions trop fréquentes sur le microcontrôleur.
- Filtrage recommandé : moyenne glissante ou médiane sur plusieurs mesures pour éliminer les valeurs aberrantes.
- Cas particulier : surfaces absorbantes ou en angle peuvent renvoyer peu d’énergie, produisant des lectures instables.
Insight : maîtriser la relation temps→distance et appliquer un filtrage logiciel simple suffit souvent à transformer des mesures brutes en données exploitables pour un projet Arduino ou une application domotique.
Branchement, code et intégration pratique dans un projet Arduino
Le branchement du HC-SR04 est une des premières manipulations enseignées à NovaLab. Simple et robuste, ce câblage nécessite néanmoins quelques précautions pour des mesures fiables en condition réelle.
Schéma de câblage basique
Connexions essentielles :
- VCC → 5 V : alimentation du module.
- GND → GND : masse commune avec le microcontrôleur.
- Trig → broche digitale (ex. D9 sur Arduino).
- Echo → broche digitale (ex. D10 sur Arduino) ; sur certaines cartes 5V, prévoir un diviseur si la broche ne supporte pas 5V.
| Broche HC-SR04 | Rôle | Exemple Arduino |
|---|---|---|
| VCC | Alimentation 5V | 5V |
| Trig | Générer l’impulsion de démarrage | D9 |
| Echo | Recevoir la durée de l’écho | D10 |
| GND | Masse | GND |
Exemple de code et bonnes pratiques
Un sketch Arduino classique envoie l’impulsion Trig de 10 µs, attend la durée sur Echo via pulseIn() et calcule la distance. Pour stabiliser les mesures, appliquer une moyenne sur 5 à 10 lectures et ignorer les valeurs hors plage.
- Limiter les cycles de mesure respectant le temps de cycle minimum ~60 ms recommandé pour éviter la superposition d’échos.
- Utiliser un condensateur de découplage sur l’alimentation pour réduire les pics et le bruit.
- Si la broche Echo dépasse la tension tolérée du microcontrôleur, ajouter un diviseur de tension.
En pratique, NovaLab a testé le HC-SR04 sur Arduino Uno et ESP32. Le comportement est stable sur Uno avec pulseIn(), tandis que sur ESP32 il est préférable d’utiliser des interruptions ou la lecture haute-résolution pour maintenir la précision.
| Plateforme | Méthode recommandée | Remarque |
|---|---|---|
| Arduino Uno | pulseIn() | Simple et efficace |
| Raspberry Pi | GPIO + time.monotonic() | Attention aux latences du système |
| ESP32 | interrupts / RMT | Meilleure résolution |
Insight : un câblage soigné et quelques lignes de code de filtrage transforment le HC-SR04 en capteur fiable pour une large gamme de projet Arduino.
Erreurs classiques, limitations et alternatives technologiques
Connaître les limites du HC-SR04 évite de perdre du temps sur des erreurs facilement évitables. NovaLab compile ici les pièges les plus fréquents rencontrés en atelier, avec des solutions testées.
Pièges fréquents et solutions
Piège 1 : mesurer trop près de 2 cm. Le capteur ne fournit pas de données fiables sous cette distance minimale. Solution : ajouter une butée mécanique ou un algorithme qui filtre les valeurs inférieures à 2 cm.
Piège 2 : surfaces absorbantes (tissus, mousse) renvoyant peu d’écho. Solution : compléter avec une technique alternative (infra, ToF) pour les cas exigeants.
- Erreur électrique : alimentation instable → ajouter un régulateur et condensateurs.
- Interférences acoustiques : plusieurs capteurs proches peuvent se perturber → temporaliser les mesures.
- Mauvaise orientation : angle d’incidence >15° → recentrer le capteur ou multiplier les capteurs pour couverture.
| Problème | Cause | Solution |
|---|---|---|
| Lecture erratique | Bruit électrique | Condensateur, câbles courts |
| Faux négatifs | Surface absorbante | Alternative sensorielle |
| Mesure incohérente | Multiples capteurs | Synchroniser les mesures |
Alternatives et quand les préférer
Le paysage des capteurs a évolué. Voici des alternatives et des recommandations d’usage :
- VL53L0X (ToF) : meilleur pour les courtes distances et la précision, mais plus cher.
- Capteurs laser (Time-of-Flight évolués) : précision et répétabilité élevées pour l’industrie.
- Capteurs infrarouges (Sharp) : bon marché et adaptés aux distances courtes sans réflexion complexe.
| Technologie | Portée | Avantage |
|---|---|---|
| HC-SR04 (ultrason) | 2–400 cm | Prix / simplicité |
| VL53L0X (ToF) | 2–200 cm | Précision et linéarité |
| Laser ToF pro | longue distance | Haute précision |
Insight : choisir le bon capteur, c’est d’abord identifier les contraintes du projet (distance, surface, budget) et adapter la solution. Le HC-SR04 reste le meilleur choix pour un prototype rapide et économique.
Comment convertir le temps mesuré sur Echo en centimètres ?
Utiliser la formule Distance (cm) = Temps (µs) × 0.0343 / 2. Le facteur 0.0343 correspond à la vitesse du son en cm/µs et la division par 2 tient compte de l’aller-retour de l’onde.
Quelle est la portée pratique du HC-SR04 et sa précision ?
Portée de détection utile entre 2 cm et 400 cm, avec une précision typique proche de ±3 mm. Les valeurs réelles dépendent de la surface cible et des conditions acoustiques.
Peut-on utiliser HC-SR04 avec un Raspberry Pi ?
Oui, en surveillant la latence du système. Sur Raspberry Pi, il est préférable d’utiliser des bibliothèques qui gèrent précisément le timing ou d’employer un microcontrôleur dédié pour la lecture et transmettre la valeur au Pi via série/I2C.
Quelles sont les erreurs à éviter lors du câblage ?
Éviter des câbles longs, s’assurer d’une masse commune, ajouter un diviseur si la broche Echo dépasse la tension acceptée par le microcontrôleur, et ajouter un condensateur de découplage pour stabiliser l’alimentation.