lehrkraefte:blc:informatik:glf22:robotik-mit-vscode:pruegli-challenge

Prügeli-Challenge

Material:

  • 1 weisses Flip-Chart-Papier
  • 2 Karton-Stützen
  • 1 Prügeli

Der Roboter startet wie angegeben, muss das Prügeli aufladen und beim Ziel abladen.

  • Legen Sie das Prügeli so auf die Stützen, dass es nur an den Rändern gestützt wird.
  • Positionieren Sie die Kartonstützen so, dass der Robotergreifarm dazwischen passt, wenn der Helligkeitssensor genau über Kante des Papiers steht.

Entweder, Sie führen den Heber von Hand vor dem Start des Programms in die Startposition, die Ihnen sinnvoll erscheint.

Oder Sie benutzen die Funktion heber.run_until_stalled(20, duty_limit=20) link, um den Motor bis an den Anschlag zu fahren, und setzen dann den Winkel mit heber.reset_angle(0) link auf Null zurück.

Finden Sie durch Testen heraus, welche Winkel bei Ihrer Startposition zum Aufladen und zum Transportieren geeignet sind. Sie können dazu die Funktion heber.run_target(20, target_angle) link verwenden.

Testen Sie den Ultraschallsensor direkt auf dem Roboter. Finden Sie heraus, bei welchem Messwert die korrekte Distanz (zum Aufladen vom Prügeli) von der Wand erreicht ist. Notieren Sie sich den Wert.

ultraschall.distance() liefert die gemessene Distanz in mm.

Legen Sie ein neues EV3-Micropython Projekt an und initialisieren Sie alle Motoren und Sensoren. Siehe https://fginfo.ksbg.ch/dokuwiki/doku.php?id=lehrkraefte:blc:informatik:glf22:robotik-mit-svcode:programm-struktur

Schreiben Sie erst einen Pseudocode für die vollständige Challenge als Kommentare, z.B. so:

# um 90 Grad drehen
# vorwärts, bis die gemessene Distanz kleiner als 30 ist.
# drehen, bis der Helligkeitssensor einen Wert misst, der höher als 80 ist.

«Führen» Sie dann den Pseudocode «aus», d.h. stellen Sie sich Schritt für Schritt vor, was der Roboter genau macht, und vor allem, was alles schief gehen könnte.

Passen Sie dann Ihren Pseudocode an, bzw. vervollständigen Sie diesen.

Der Pseudocode solle am Schluss so detailliert sein, dass jede Zeile mit 1-5 Zeilen Python realisiert werden kann.

Übersetzen Sie nun den Anfang Ihres Pseudocodes in Python und testen Sie.

Wenn das funktioniert, übersetzen Sie eine weitere Zeile und testen Sie wieder.

Wer es noch ein bisschen herausfordernder möchte, hier ist noch eine zweite Challenge, wo das Papier ca. 30cm von der Wand entfernt ist.

  • lehrkraefte/blc/informatik/glf22/robotik-mit-vscode/pruegli-challenge.txt
  • Last modified: 2023/03/21 10:23
  • by Ivo Blöchliger