⭐⭐⭐ Défi ⏱️ 30 minutes

Capteur de parking luxe

La version luxe du capteur de parking ! Il bipe plus vite quand tu t’approches. Et l’écran OLED montre la distance en centimètres. Avec une petite barre qui devient plus longue quand tu t’approches.

Tu te connectes d’abord. Ensuite, ton projet est tout de suite prêt.

🧰 De quoi as-tu besoin ?

🗺️ Schéma de branchement

Suis les fils de l’Arduino vers chaque pièce. Tu peux choisir toi-même les couleurs des fils.

De Vers
Arduino UNO · D9 Capteur de distance HC-SR04 · Trig
Arduino UNO · D10 Capteur de distance HC-SR04 · Echo
Arduino UNO · 5V Capteur de distance HC-SR04 · Vcc
Arduino UNO · GND Capteur de distance HC-SR04 · Gnd
Arduino UNO · D8 Buzzer actif · S
Arduino UNO · 5V Buzzer actif · +
Arduino UNO · GND Buzzer actif · -
Arduino UNO · A4 Petit écran OLED 0,91" · SDA
Arduino UNO · A5 Petit écran OLED 0,91" · SCL
Arduino UNO · 5V Petit écran OLED 0,91" · VCC
Arduino UNO · GND Petit écran OLED 0,91" · GND

🛠️ Voici comment le construire

  1. Branche le HC-SR04 : Trig vers la broche 9, Echo vers la broche 10, Vcc vers 5V et Gnd vers GND.
  2. Branche le buzzer : S vers la broche 8, + vers 5V et − vers GND.
  3. Branche l’écran OLED : SDA vers A4, SCL vers A5, VCC vers 5V et GND vers GND.
  4. Trois pièces ont besoin de 5V et de GND. Utilise les bandes + et − de ta breadboard.

💻 Le code

// Capteur de parking luxe
// Comme le capteur de parking normal, mais maintenant tu vois aussi la distance sur l’écran OLED.

#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

const int TRIG_PIN = 9;     // Trig du HC-SR04 sur la broche 9
const int ECHO_PIN = 10;    // Echo du HC-SR04 sur la broche 10
const int BUZZER_PIN = 8;   // S du buzzer sur la broche 8

Adafruit_SSD1306 ecran(128, 32, &Wire, -1);  // OLED: SDA = A4, SCL = A5

// Mesure la distance en centimètres
long mesurerDistance() {
  digitalWrite(TRIG_PIN, LOW);
  delayMicroseconds(2);
  digitalWrite(TRIG_PIN, HIGH);
  delayMicroseconds(10);
  digitalWrite(TRIG_PIN, LOW);
  long temps = pulseIn(ECHO_PIN, HIGH, 30000);
  if (temps == 0) return 999;   // Pas d’écho : rien tout près
  return temps / 58;
}

// Met la distance en grand sur l’écran, avec une petite barre dessous
void afficherDistance(long distance) {
  ecran.clearDisplay();
  ecran.setTextSize(2);
  ecran.setCursor(0, 0);
  if (distance >= 999) {
    ecran.print(F("---"));
  } else {
    ecran.print(distance);
    ecran.print(F(" cm"));
  }
  // Petite barre : plus c’est près, plus elle est longue
  int longueur = map(constrain(distance, 0, 100), 0, 100, 128, 0);
  ecran.fillRect(0, 24, longueur, 8, SSD1306_WHITE);
  ecran.display();
}

void setup() {
  pinMode(TRIG_PIN, OUTPUT);
  pinMode(ECHO_PIN, INPUT);
  pinMode(BUZZER_PIN, OUTPUT);
  ecran.begin(SSD1306_SWITCHCAPVCC, 0x3C);
  ecran.setTextColor(SSD1306_WHITE);
}

void loop() {
  long distance = mesurerDistance();
  afficherDistance(distance);

  if (distance < 5) {
    digitalWrite(BUZZER_PIN, HIGH);   // Très près : un long son
    delay(100);
  } else if (distance < 50) {
    digitalWrite(BUZZER_PIN, HIGH);   // Petit bip court
    delay(50);
    digitalWrite(BUZZER_PIN, LOW);
    delay(distance * 10);              // Plus près = bips plus vite
  } else {
    digitalWrite(BUZZER_PIN, LOW);
    delay(100);
  }
}

🧠 Que fait le code ?

  • mesurerDistance() mesure la distance en centimètres avec le HC-SR04.
  • afficherDistance() met le nombre en grand sur l’écran et dessine une petite barre avec fillRect().
  • Le buzzer bipe plus vite quand la distance devient plus petite.

🎯 Essaie un peu…

  • Affiche "STOP!" sur l’écran si tu es à moins de 5 cm
  • Affiche la distance en mètres si quelque chose est à plus de 1 mètre
  • Ajoute l’anneau LED qui passe du vert au rouge

🚀 Construis ce projet avec Codey : ouvre codey.online/fr/starter-kits/uno/projects/parking-sensor-deluxe et clique sur FAIS ÇA. Alors le code et le schéma de branchement sont tout de suite prêts.

Tu te connectes d’abord. Ensuite, ton projet est tout de suite prêt.
⬇️ Télécharger cette page en PDF 📚 Télécharger le tutoriel complet (PDF)

Codey Online est un produit de OTRONIC

Construisez votre projet Arduino ou ESP32 avec l'IA

Décrivez ce que vous voulez créer. Codey Online écrit le code, dessine le schéma de câblage, le compile et flashe votre carte directement depuis le navigateur.

Commencez gratuitement