top of page
Rechercher

9.2 - Évaluer une distance avec 3 leds

  • L C
  • 18 oct. 2024
  • 1 min de lecture

Dernière mise à jour : 6 déc. 2024

Principe


Si la distance est supérieure à 40 cm, la Led verte s'allume.

Si elle est comprise entre 30 et 40 cm, la Led orange s'allume.

si elle est inférieur à 20 cm, la Led rouge s'allume.


Matériel


  • 1 carte Arduino Uno

  • 1 breadboard

  • 1 capteur à ultrasons HC-SR04

  • 3 Led : rouge, jaune, verte

  • 3 résistances 220 Ω

  • Fils de connexion


Matériel




Sketch


#define PIN_TRIG 12

#define PIN_ECHO 11

#define PIN_LED_ROUGE 5

#define PIN_LED_ORANGE 4

#define PIN_LED_VERTE 3


long duration_hc, distance_hc;


void setup() {

Serial.begin (9600);

pinMode(PIN_TRIG, OUTPUT);

pinMode(PIN_ECHO, INPUT);


pinMode(PIN_LED_ROUGE, OUTPUT);

pinMode(PIN_LED_ORANGE, OUTPUT);

pinMode(PIN_LED_VERTE, OUTPUT);

}


void loop() {


mesureDistance();

Serial.print("Distance ");

Serial.print(distance_hc);

Serial.println(" Cm ");


if(distance_hc > 50){

// aucune led allumé

digitalWrite(PIN_LED_ROUGE,LOW);

digitalWrite(PIN_LED_ORANGE,LOW);

digitalWrite(PIN_LED_VERTE,LOW);

}

else if(distance_hc>40){

digitalWrite(PIN_LED_ROUGE,LOW);

digitalWrite(PIN_LED_ORANGE,LOW);

digitalWrite(PIN_LED_VERTE,HIGH);

}

else if(distance_hc>30){

digitalWrite(PIN_LED_ROUGE,LOW);

digitalWrite(PIN_LED_ORANGE,HIGH);

digitalWrite(PIN_LED_VERTE,LOW);

}

else if(distance_hc>0){

digitalWrite(PIN_LED_ROUGE,HIGH);

digitalWrite(PIN_LED_ORANGE,LOW);

digitalWrite(PIN_LED_VERTE,LOW);

}

else{

digitalWrite(PIN_LED_ROUGE,LOW);

digitalWrite(PIN_LED_ORANGE,LOW);

digitalWrite(PIN_LED_VERTE,LOW);

}


}


void mesureDistance(){

digitalWrite(PIN_TRIG, LOW);

delayMicroseconds(2);

digitalWrite(PIN_TRIG, HIGH);

delayMicroseconds(10);

digitalWrite(PIN_TRIG, LOW);

duration_hc = pulseIn(PIN_ECHO, HIGH);

Serial.println(duration_hc);

distance_hc = duration_hc / 58;

}


Réalisation


Cas 1


Cas 2


Cas 3


bottom of page