Ausweichroboter ohne Mikrocontroller

Ein Roboter, der Hindernissen ausweicht -- aber ohne Arduino, ohne ESP32, ohne eine einzige Zeile Code. Die komplette Steuerung wird aus diskreten Logik-ICs aufgebaut: 555-Timer, Gatter, Flip-Flops. Das ist die Art, wie Roboter vor der Mikrocontroller-Ära gebaut wurden -- und es zeigt, was digitale Logik wirklich kann.

Dieses Projekt ist das Gegenstück zum Ausweichroboter mit Arduino. Gleiche Mechanik (Karton-Chassis, TT-Motoren, HC-SR04), aber komplett andere Steuerung.

Idee

Der HC-SR04 Ultraschallsensor braucht eigentlich keinen Mikrocontroller. Er will nur:

  1. Einen Trigger-Puls (10 µs HIGH)
  2. Er gibt ein Echo-Puls zurück, dessen Breite proportional zur Entfernung ist

Die Frage ist: Wie erkennen wir ohne Software, ob das Echo "kurz" (Hindernis nah) oder "lang" (alles frei) war?

Schaltungskonzept

Block 1: Trigger-Generator

Ein NE555 im astabilen Modus erzeugt periodisch einen kurzen Puls. Die Wiederholrate muss mindestens 60 ms betragen (HC-SR04 braucht Zeit für das Echo). Der Trigger-Puls selbst muss ≥ 10 µs breit sein.

Dimensionierung: - Periode: ~100 ms (10 Hz Messrate) - Puls: ~15 µs (etwas mehr als die minimalen 10 µs) - \(R_1\), \(R_2\), \(C\) nach 555-Formeln

Block 2: Referenz-Puls (Schwelldistanz)

Ein zweiter NE555 im monostabilen Modus, getriggert durch die steigende Flanke des Echo-Signals. Er erzeugt einen Referenz-Puls mit fester Breite \(t_{ref}\), die der gewünschten Schwelldistanz entspricht.

Umrechnung Entfernung → Pulsbreite:

\[t_{echo} = \frac{2 \cdot d}{v_{Schall}} = \frac{2 \cdot d}{343 \text{ m/s}}\]

Für 25 cm Schwelldistanz:

\[t_{ref} = \frac{2 \times 0.25}{343} \approx 1.46 \text{ ms}\]

Der Referenz-555 wird auf ~1.5 ms Pulsbreite dimensioniert.

Block 3: Vergleich (nah oder fern?)

Jetzt der Kern: Ist das Echo vor oder nach dem Ende des Referenz-Pulses zurückgekommen?

Umsetzung: Die fallende Flanke des Echo-Pulses wird mit dem Zustand des Referenz-Pulses verglichen. Wenn der Referenz-Puls noch HIGH ist, wenn das Echo endet → Hindernis nah. Das kann ein D-Flip-Flop (74HCT74): Referenz-Puls an D, fallende Flanke des (invertierten) Echos als Clock.

Echo kürzer als Ref Ref bei Echo-Ende D-FF Ausgang Q
Ja (nah) HIGH HIGH = Hindernis
Nein (fern) LOW LOW = Frei

Block 4: Motorsteuerung

Der Q-Ausgang des Flip-Flops steuert die Motoren:

Für die Drehrichtung (immer gleich oder alternierend) kann ein zweiter Flip-Flop als Toggle dienen: Bei jedem Hindernis-Event toggelt er, und bestimmt ob links oder rechts gedreht wird.

Die Motoren werden über eine H-Brücke (L298N oder DRV8833) angesteuert. Die Logik-Ausgänge (5V, wenige mA) steuern die Enable- und Richtungspins der H-Brücke direkt.

Blockdiagramm

                                    ┌──────────┐
  ┌─────────┐    Trigger    ┌──────┤ HC-SR04  ├──────┐
  │ 555 #1  ├──────────────►│ Trig │          │ Echo │
  │ astabil │               └──────┤          ├──────┤
  └─────────┘                      └──────────┘      │
                                                      │
                              ┌────────────────────────┘
                              │
                    ┌─────────▼──────────┐
                    │   555 #2 mono      │
                    │   (Referenz-Puls)  │
                    └─────────┬──────────┘
                              │ Ref
                              │
               Echo ──────────┤
                              │
                    ┌─────────▼──────────┐
                    │   74HCT74 D-FF     │
                    │   (nah/fern)       │
                    └─────────┬──────────┘
                              │ Q
                    ┌─────────▼──────────┐
                    │   74HCT74 D-FF #2  │
                    │   (links/rechts)   │
                    └─────────┬──────────┘
                              │
                    ┌─────────▼──────────┐
                    │   H-Brücke         │
                    │   (L298N/DRV8833)  │
                    └─────────┬──────────┘
                              │
                         ┌────┴────┐
                         │ Motoren │
                         └─────────┘

Stückliste (zusätzlich zum Chassis)

Teil Funktion Anzahl
NE555 Trigger-Generator + Referenz-Puls 2
74HCT74 D-Flip-Flop (nah/fern + links/rechts) 1
74HCT04 Inverter (Flankenlogik) 1
HC-SR04 Ultraschallsensor 1
L298N oder DRV8833 H-Brücke für Motoren 1
TT-Motoren mit Rädern Antrieb 2
Kugelrad Drittes Rad 1
Widerstände, Kondensatoren Timing-Netzwerke, Pull-Ups diverse
Breadboard oder Lochraster Aufbau 1
4× AA Batteriehalter Stromversorgung 1

Gesamtkosten (ohne Chassis): unter 10 €. Alle ICs aus der Digitale-Logik-Stückliste.

Warum?

Klar, ein Arduino macht das in 50 Zeilen Code. Aber:

Weiterführendes


Erstellt: 13.04.2026