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. .. math:: c = \dfrac{2 \times d}{\Delta t} Algorithme : .. code:: 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**. .. figure:: images/Ultrason_HC-SR04-Montage.png :width: 720 :height: 429 :scale: 50 % :alt: Montage ultrason - Arduino :align: center Montage célérité son .. code-block:: arduino // 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 }