|
|
||
|---|---|---|
| src | ||
| LICENSE | ||
| README.md | ||
README.md
ROB
Für RoboCup 2025
// ---- Ereignisse zuerst prüfen ----
wenn links == grün UND rechts == grün:
// Sackgasse → 180°
drehe 180°
wenn links == grün ODER rechts == grün:
// Kreuzung → 90° Turn
wenn links == grün:
drehe 90° nach links
sonst:
drehe 90° nach rechts
// ---- Fahrbahn: Linie folgen ----
wenn links == schwarz UND rechts == weiß:
// Linie ist links → nach links korrigieren
drehe nach links
wenn rechts == schwarz UND links == weiß:
// Linie ist rechts → nach rechts korrigieren
drehe nach rechts
// ---- Geradeaus ----
wir haben im Moment wenn beide weiß und die Sensoren weiter auseinander vlt funktioniert das so smoother?
wenn links == schwarz UND rechts == schwarz:
beide Motoren gleich schnell
// ---- Weiß auf beiden Seiten = Linie verloren ----
wenn links == weiß UND rechts == weiß:
langsam drehen bis schwarz gefunden
// ---- Terrain ----
// 5 weil ich nicht mehr den Wert wusste
wenn winkel > +5:
Motorleistung += 20%
// Bergab
wenn winkel < -5:
Motorleistung -= 20%
Wippe Notizen
Logik implementiert in Rampen Logik. Bleibe stehen, wenn der Rollwinkel sich um mehr als 10 (?) ändert.
RS-Flipflop-Logik:
Set (= tue nichts), wenn der Winkel sich ändert;
Reset (= bleibe stehen), solange sich der Rollwinkel ändert, danach fahre normal weiter
def flipflop(state, r, s): return False if r else (True if s else state)
Obstacle Notizen
- Sensor ~12cm über dem Boden einbauen; insg. 3 Abstandssensoren benötigt (oder 2 mit aufwändigerer Logik und drehendem Sensor)
- Wenn vorderer Sensor bestimmten Abstand feststellt, stoppen, zurückfahren bis ein Abstand d feststeht
- Drehen, bis ein Seitensensor Abstand d oder kleiner feststellt. Kleinsten Abstand bestimmen:
- Bei Drehung niedrigsten Wert des Sensors merken
- Wenn Abstand größer wird, zurückdrehen, bis kleinster Wert wieder erreicht ist
- Losfahren und in entsprechende Richtung drehen, wenn Abstand kleiner/größer wird
- Abbrechen, wenn Farbsensoren Schwarz erkennen
Bumper Notizen
Änderungen von Gier- und Neigungswinkeln, sowie das Verhalten des Roboters zu beobachten Vermutlich Protokoll einbauen, was passiert, wenn für eine bestimmte Zeit die Linie nicht mehr zu finden ist.
Ziellinie Notizen
Wenn beide Sensoren Farbe rot feststellen, stoppe die Motoren, beende das Programm