Développeur>Tutoriels>Utiliser un capteur ultrason HC-SR04
Ce tutoriel présente l’utilisation du capteur HC-SR04 avec la carte Esus.
Carte Esus + HC-SR04
Le câblage
Les caractéristiques techniques du capteur HC-SR04 sont les suivantes :
- Alimentation +5V
- Consommation : 15 mA
- Gamme de distance : 2 cm à 4 m.
- Sortie : TTL
Pins du capteur:
- VCC => sur + 5V de la carte Esus
- Trig => sur IO2
- Echo => sur IO3
- GND => GND
Voici le schéma de câblage :
Le capteur ultrason HC-SR04 fonctionne par l’envoi d’une impulsion sur la pin ‘Trig‘, puis un signal impulsionnelle est retourné sur la pin ‘Echo’ en fonction de la distance d’un obstacle. La durée de cette impulsion représente la distance de l’obstacle.
Distance en cm = ( durée de l’impulsion ‘Echo’ en µs ) / 58
Le programme en Arduino
#include <esusBoard.h> // pins #define trig_pin 2 #define echo_pin 3 void setup() { // init de la carte Esus initEsusBoard(); // init liaison serie Serial.begin (9600); // init pin trig en sortie pinMode(trig_pin, OUTPUT); // init pin echo en entrer pinMode(echo_pin, INPUT); // init pin trig à l'état bas digitalWrite(trig_pin, LOW); } void loop() { long durer; long distanceCm; // mise à l'état haut de la pin trig digitalWrite(trig_pin, HIGH); // pause de 10µs delayMicroseconds(10); // mise à l'état bas de la pin trig digitalWrite(trig_pin, LOW); // mesure de la durée du niveau haut du signal echo durer = pulseIn(echo_pin, HIGH); // conversion de la durer en cm distanceCm = (durer/58); // envoi sur le port série de la distance Serial.print("distance= "); Serial.print(distanceCm); Serial.println("cm"); // pause 1 seconde delay(1000); }
Le résultat
Attention, pendant le téléchargement la pin IO3 doit être débrancher du capteur, car le téléchargement à besoin de cette pin (RX/IO3).
Fin du tuto !