MODE 3 — DIST HOLD
Medium · 1h · Fast kostenlos
Ziel & Anwendung
Dein Karton-Fahrzeug hält automatisch Abstand! Ein Ultraschall-Sensor misst die Entfernung zum vorausfahrenden Objekt, die beiden Antriebsräder bremsen oder beschleunigen automatisch dagegen. Eine Berührungsfläche oder die Steuerknüppel-Taste lösen jederzeit einen sofortigen Notfall-Stopp aus.
- PD-Regelkreis für Distanzregelung implementieren
- Differentialantrieb als geregelte Ausgabe nutzen
- Notfall-Stopp-Logik mit höchster Priorität realisieren
Anschluss & Funktion
Motoren am Board
| Anschluss | Motor | Aufgabe |
|---|---|---|
| S1 | 180°-Servo | Fahrgeschwindigkeits-Zeiger |
| S2 | 180°-Servo | Soll-Abstand-Markierung |
| S3 | 180°-Servo | Ist-Abstand-Anzeige |
| S4 | 360°-Servo | Antrieb links |
| S5 | 360°-Servo | Antrieb rechts |
| S6 | 180°-Servo | Not-Stopp-Fähnchen |
| STEPPER | Schrittmotor | Zielabstands-Skala |
| DC | DC-Motor | Kurze Vibration beim Auslösen des Not-Stopps |
Materialliste
- Fahrzeug-Chassis aus vorherigen Projekten oder neuer Schuhkarton-Bau
- Karton als Vorderstoßstange (Ultraschall-Halterung)
- Strohhalme als Radachsen-Lager
- Gummibänder für griffige Räder
- Heißkleber
Step-by-Step Tutorial
Fahrzeug-Chassis und Antrieb aufbauen
Baue ein Schuhkarton-Chassis oder nutze ein vorhandenes. Montiere S4 (360°-Servo) links und S5 rechts. Plastik-Servo-Hörner aufschrauben, Kartonräder flächig aufkleben. Gummibänder für Grip. Test: beide auf gleichen Puls → fährt geradeaus ohne Drift.
Check: Fahrzeug fährt geradeaus wenn beide 360°-Servos gleiche Geschwindigkeit haben
Tipp: S4/S5-Servo-Hörner als Radnaben: Horn aufschrauben, Kartonrad flächig aufkleben
Ultraschall-Sensor für Distanzmessung montieren
Befestige den Ultraschall-Sensor vorne, ca. 5 cm über dem Boden. Zieldistanz per Dreh-Regler einstellbar zwischen 10 cm und 80 cm. S2 zeigt die Soll-Distanz als Markierung, S3 die aktuelle Ist-Distanz.
Check: Sensor misst konsistent die Distanz zum Objekt vor dem Fahrzeug
Tipp: Sensor leicht nach oben neigen (ca. 5°) damit kein Boden-Echo als Hindernis erkannt wird
PD-Regler für Distanz implementieren
Ist das Fahrzeug weiter als die Zieldistanz entfernt, fährt es vorwärts. Ist es zu nah, fährt es zurück — die Geschwindigkeit richtet sich nach der Größe des Abstandsfehlers und wie schnell er sich ändert. S1 zeigt die aktuelle Fahrgeschwindigkeit als Zeiger.
Check: Fahrzeug nähert sich dem Zielabstand, ohne stark zu überschwingen
Tipp: P-Gefühl zu groß = Fahrzeug pendelt vor und zurück, D-Gefühl reduziert dieses Pendeln
Notfall-Stopp mit höchster Priorität einbauen
Touch-Fläche antippen oder Steuerknüppel-Taste drücken → beide Antriebsservos stoppen sofort, das Not-Stopp-Fähnchen (S6) klappt aus und eine kurze Vibration am Rüttel-Motor bestätigt den Stopp. Erst Loslassen startet die Regelung neu.
Check: Touch-Fläche oder Steuerknüppel-Taste → sofortiger Stopp beider Antriebsservos, Fähnchen S6 klappt aus
Tipp: Der Not-Stopp wird vor allen anderen Berechnungen geprüft und überschreibt sie
Leichtgängigkeitstest und Parameter-Tuning
Fahrzeug vor ein Objekt stellen (ca. 30 cm). Alle Räder manuell drehen — kein Widerstand. Erst dann Strom einschalten. Objekt langsam wegbewegen: Fahrzeug folgt. Näher heranführen: Fahrzeug bremst. Dreh-Regler verstellen: Zieldistanz ändert sich, Fahrzeug passt sich an.
Check: Fahrzeug folgt dem Zielobjekt gleichmäßig mit konstantem Abstand
Tipp: Erst P-Gefühl erhöhen bis leichtes Schwingen, dann D-Gefühl erhöhen bis es stabil bleibt
Troubleshooting
- Fahrzeug pendelt vor und zurück — Zieldistanz etwas größer wählen und Objekt gleichmäßiger bewegen — starkes Pendeln tritt vor allem bei ruckartigen Abstandsänderungen auf
- Fahrzeug reagiert zu langsam auf Abstandsänderungen — Ultraschall-Sensor exakt nach vorne ausrichten — schräger Einbau verfälscht die Distanzmessung und verzögert die Reaktion
- Notfall-Stopp reagiert nicht sofort — Touch-Fläche und Steuerknüppel-Taste sauber freilegen — Kartonreste oder Kleberreste können den Kontakt blockieren
Modifikationen & Sicherheit
- Pro-Tipp: Zweiten Ultraschall-Sensor hinten montieren für bidirektionalen Abstandstempomat
- Pro-Tipp: Encoder wählt zwischen Fahrmodi: folgen/halten/flüchten
- Sicherheit: Nur auf ebenem Untergrund testen — Stufen und Steigungen führen zu unkontrollierten Fahrten
Wichtige Code-Teile
// Zieldistanz per Dreh-Regler (10–80 cm)
targetD = constrain(targetD + EncoderPos * 1.0f, 10.0f, 80.0f);
EncoderPos = 0;
// PD-Regler
float err2 = distanceCM - targetD; // positiv: zu weit weg -> vorwärts
float dErr2 = (err2 - lastErrD) / dt;
lastErrD = err2;
float ctrl2 = constrain(err2 * 4.0f + dErr2 * 0.8f, -300.0f, 300.0f);
// Not-Stopp: höchste Priorität
bool estop2 = touch1 || RemoteJoystickBtn;
if (estop2) ctrl2 = 0;
// Differentialantrieb
servocontroller.setServoPulse(4, constrain(1500 + (int)ctrl2, 1000, 2000));
servocontroller.setServoPulse(5, constrain(1500 - (int)ctrl2, 1000, 2000));
// Anzeigen
servocontroller.setServoPulse(1, constrain(1500 + (int)ctrl2 / 2, 1000, 2000));
servocontroller.setServoPulse(2, map(constrain((int)targetD, 10, 80), 10, 80, 1000, 2000));
servocontroller.setServoPulse(3, mapDistanceCMshort);
// Not-Stopp-Fähnchen + kurze Vibration
servocontroller.setServoPulse(6, estop2 ? 2000 : 1000);
setMotorspeed(estop2 ? 60 : 0);Ähnliche Projekte
- MODE 8 — SEGWAY — Der heilige Gral der Robotik aus Karton! Ein Neigungsregler liest den Kippwinkel und steuert die beiden Antriebsräder genau entgegen — so bleibt der Roboter aufrecht, ganz wie ein echter Segway. Der Dreh-Knopf gleicht kleine Bauungenauigkeiten aus, bei zu starker Neigung schaltet der Roboter zum Schutz automatisch ab.
- MODE 4 — YAW HOLD — Dein Fahrzeug hält automatisch seinen Kurs! Ein Fingertipp auf die Touch-Fläche speichert die aktuelle Ausrichtung als Soll-Kurs, der Kompass-Sensor erkennt jede Abweichung und der Antrieb lenkt sanft gegen. Drei Zeiger zeigen live Lenkausschlag, Soll-Kurs und Ist-Kurs.