ultra sons HC-SR04 présentation rapide du capteur
Remarque : usage
Conseil d'usage
Ce capteur peut s'utiliser avec une librairie dédiée, mais il est plus pédagogique de ne pas utiliser cette librairie.
Dans ce cas, le capteur donne le temps pour l'aller -retour , en multipliant par la vitesse des ultrasons dans le milieu, on obtient la distance pour 'aller retour. Il suffit ensuite de diviser par deux .
Branchements
Exemple : Pour une arduino uno
1
2
//on définit les constantes utiles 3
const int USTrig = 7; // Déclencheur sur la broche 7
4
const int USEcho = 8; // Réception sur la broche 8
5
const int VITESSE = 331;
6
7
//on dprepare les variables utilisees plus tard8
float temps; //Nombre décimal dans lequel on stockera la durée
9
float distance ; // Nombre décimal que l'on utilisera pour calculer la distance de l'obstacle
10
11
12
//fonction d'initialisation, executee une seule fois 13
void setup()
14
{15
//borne en sortie pour l'envoi du message16
pinMode(USTrig, OUTPUT);
17
//borne en entree pour la reception18
pinMode(USEcho, INPUT);
19
//en n'evoie pas de signal20
digitalWrite(USTrig, LOW);
21
//on ouvre le port serie pour communiquer22
Serial.begin(9600);
23
}
24
25
// The loop function is called in an endless loop26
void loop()
27
{28
29
// 1. Un état haut de 20 microsecondes est mis sur la broche "Trig"30
digitalWrite(USTrig, HIGH);
31
delayMicroseconds(20); //on attend 20 µs
32
// 2. On remet à l'état bas la broche Trig33
digitalWrite(USTrig, LOW);
34
35
// 3. On lit la durée d'état haut sur la broche "Echo"36
unsigned long duree = pulseIn(USEcho, HIGH);
37
38
if(duree > 30000)
39
{40
// si la durée est supérieure à 30ms, l'onde est perdue41
Serial.println("Onde perdue, mesure échouée !");
42
}
43
else44
{45
46
47
48
49
distance = VITESSE*duree/2/1000;
50
Serial.print("Duree = ");
51
Serial.println(duree); //affiche le temps de vol d'un trajet en secondes
52
Serial.print("Distance = ");
53
Serial.println(distance); //affiche la distance mesurée (en mètres)
54
}
55
56
// petite pause57
delay(2000);
58
}
59
60
