#define TRIG_PIN 5 // Broche TRIG du capteur HC-SR04
#define ECHO_PIN 18 // Broche ECHO du capteur HC-SR04
#define LED_GREEN_PIN 25 // Broche connectée à la LED verte
#define LED_RED_PIN 26 // Broche connectée à la LED rouge
void setup() {
// Initialisation des broches
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
pinMode(LED_GREEN_PIN, OUTPUT);
pinMode(LED_RED_PIN, OUTPUT);
// Éteindre les LEDs au démarrage
digitalWrite(LED_GREEN_PIN, LOW);
digitalWrite(LED_RED_PIN, LOW);
Serial.begin(115200); // Initialiser la communication série pour le débogage
}
void loop() {
// Envoyer une impulsion de 10 microsecondes sur TRIG_PIN pour déclencher la mesure
digitalWrite(TRIG_PIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);
// Lire la durée de l'impulsion renvoyée par ECHO_PIN
long duration = pulseIn(ECHO_PIN, HIGH);
// Convertir la durée en distance
float distance = (duration / 2.0) * 0.0343;
Serial.print("Distance: ");
Serial.print(distance);
Serial.println(" cm");
// Seuil de détection (ajuster selon vos besoins)
float threshold = 10.0;
if (distance < threshold) {
// Détection de métal (distance inférieure au seuil)
digitalWrite(LED_GREEN_PIN, HIGH);
digitalWrite(LED_RED_PIN, LOW);
} else {
// Non-métal (distance supérieure au seuil)
digitalWrite(LED_GREEN_PIN, LOW);
digitalWrite(LED_RED_PIN, HIGH);
}
delay(100); // Petite pause pour éviter une lecture excessive
}