⭐⭐⭐ Herausforderung ⏱️ 30 Minuten

Parksensor deluxe

Die Deluxe-Version vom Parksensor! Er piept schneller, wenn du näher kommst. Und das OLED zeigt den Abstand in Zentimetern. Mit einem kleinen Balken. Der wird länger, wenn du näher kommst.

Du meldest dich kurz an. Danach ist dein Projekt sofort bereit.

🧰 Was brauchst du?

🗺️ Schaltplan

Folge den Drähten vom Arduino zu jedem Teil. Die Farben der Drähte darfst du selbst wählen.

Von Nach
Arduino UNO · D9 Abstandssensor HC-SR04 · Trig
Arduino UNO · D10 Abstandssensor HC-SR04 · Echo
Arduino UNO · 5V Abstandssensor HC-SR04 · Vcc
Arduino UNO · GND Abstandssensor HC-SR04 · Gnd
Arduino UNO · D8 Aktiver Summer · S
Arduino UNO · 5V Aktiver Summer · +
Arduino UNO · GND Aktiver Summer · -
Arduino UNO · A4 OLED-Display 0,91" · SDA
Arduino UNO · A5 OLED-Display 0,91" · SCL
Arduino UNO · 5V OLED-Display 0,91" · VCC
Arduino UNO · GND OLED-Display 0,91" · GND

🛠️ So baust du es

  1. Schließe den HC-SR04 an: Trig an Pin 9, Echo an Pin 10, VCC an 5V und GND an GND.
  2. Schließe den Summer an: S an Pin 8, + an 5V und − an GND.
  3. Schließe das OLED an: SDA an A4, SCL an A5, VCC an 5V und GND an GND.
  4. Drei Teile brauchen 5V und GND. Benutze die + und − Leisten von deinem breadboard.

💻 Der Code

// Parksensor deluxe
// Wie der normale Parksensor. Aber jetzt siehst du den Abstand auch auf dem OLED.

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

const int TRIG_PIN = 9;     // Trig vom HC-SR04 an Pin 9
const int ECHO_PIN = 10;    // Echo vom HC-SR04 an Pin 10
const int SUMMER_PIN = 8;   // S vom Summer an Pin 8

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

// Misst den Abstand in Zentimetern
long missAbstand() {
  digitalWrite(TRIG_PIN, LOW);
  delayMicroseconds(2);
  digitalWrite(TRIG_PIN, HIGH);
  delayMicroseconds(10);
  digitalWrite(TRIG_PIN, LOW);
  long zeit = pulseIn(ECHO_PIN, HIGH, 30000);
  if (zeit == 0) return 999;   // Kein Echo: nichts in der Naehe
  return zeit / 58;
}

// Zeigt den Abstand gross auf dem Bildschirm, mit einem Balken darunter
void zeigeAbstand(long abstand) {
  bildschirm.clearDisplay();
  bildschirm.setTextSize(2);
  bildschirm.setCursor(0, 0);
  if (abstand >= 999) {
    bildschirm.print(F("---"));
  } else {
    bildschirm.print(abstand);
    bildschirm.print(F(" cm"));
  }
  // Balken: je naeher, desto laenger
  int laenge = map(constrain(abstand, 0, 100), 0, 100, 128, 0);
  bildschirm.fillRect(0, 24, laenge, 8, SSD1306_WHITE);
  bildschirm.display();
}

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

void loop() {
  long abstand = missAbstand();
  zeigeAbstand(abstand);

  if (abstand < 5) {
    digitalWrite(SUMMER_PIN, HIGH);   // Ganz nah: ein langer Ton
    delay(100);
  } else if (abstand < 50) {
    digitalWrite(SUMMER_PIN, HIGH);   // Kurzer Piep
    delay(50);
    digitalWrite(SUMMER_PIN, LOW);
    delay(abstand * 10);              // Naeher = schneller piepen
  } else {
    digitalWrite(SUMMER_PIN, LOW);
    delay(100);
  }
}

🧠 Was macht der Code?

  • missAbstand() misst den Abstand in Zentimetern mit dem HC-SR04.
  • zeigeAbstand() schreibt die Zahl groß auf den Bildschirm und zeichnet einen kleinen Balken mit fillRect().
  • Der Summer piept schneller, wenn der Abstand kleiner wird.

🎯 Probier mal …

  • Zeige "STOP!" auf dem Bildschirm, wenn du näher als 5 cm bist
  • Zeige den Abstand in Metern, wenn etwas weiter als 1 Meter weg ist
  • Füge den LED-Ring hinzu. Er soll von grün nach rot wechseln

🚀 Baue dieses Projekt mit Codey: Öffne codey.online/de/starter-kits/uno/projects/parking-sensor-deluxe und klicke auf BAU DAS. Dann sind der Code und der Schaltplan sofort bereit.

Du meldest dich kurz an. Danach ist dein Projekt sofort bereit.
⬇️ Diese Seite als PDF herunterladen 📚 Das komplette Tutorial herunterladen (PDF)

Codey Online ist ein Produkt von OTRONIC

Bau dein Arduino- oder ESP32-Projekt mit AI

Beschreib einfach, was du bauen willst. Codey Online schreibt den Code, zeichnet den Schaltplan, kompiliert alles und flasht dein Board direkt aus dem Browser.

Kostenlos starten