Mesure de la célérité du son
La manipulation consiste à relever la durée de l’écho sonore à l’aide du microcontrôleur pour différentes distances et déduire la célérité du son.
\[c = \dfrac{2 \times d}{\Delta t}\]
Algorithme :
TRIG <- 0
REPETER :
TRIG <- Vcc # Début impulsion sur Trig
Attendre 10 µs
TRIG <- 0 # Fin impulsion sur Trig
Dt <- Durée impulsion sur Echo # Mesure
Afficher Dt
Attendre 1 s
Pour plus de précision, il est possible de modifier le programme afin de réaliser plusieurs mesures de la durée de l’écho et d’en déduire sa moyenne.

Montage célérité son
// Mesure de la durée de l'écho sonore
#define pinTrig 8 // Trig sur broche 8
#define pinEcho 9 // Echo sur broche 9
long dureeEcho; // Durée de l'Echo
void setup() {
pinMode(pinTrig,OUTPUT); // Broche Trig en sortie
digitalWrite(pinEcho,LOW); // Sortie Trig à l état bas
pinMode(pinEcho,INPUT); // Broche Echo en entrée
Serial.begin(9600); // Paramétrage du port série
}
void loop() {
digitalWrite(pinTrig,HIGH); // Début impulsion de declenchement
delayMicroseconds(10); // Attendre 10 microseconde
digitalWrite(pinTrig,LOW); // Fin impulsion (Etat bas)
dureeEcho = pulseIn(pinEcho,HIGH); // Mesure de la durée de l'impulsion sur Echo
Serial.print("Durée (µs) = "); // Affichage sur port série
Serial.println(dureeEcho);
delay(1000); // Attendre 1s
}