Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Last revision Both sides next revision | ||
lehrkraefte:blc:informatik:glf20:robotik:pruegeli-challenge [2021/05/26 20:36] Ivo Blöchliger [Heber-Motor] |
lehrkraefte:blc:informatik:glf20:robotik:pruegeli-challenge [2021/05/28 10:41] Ivo Blöchliger |
||
---|---|---|---|
Line 8: | Line 8: | ||
<code python> | <code python> | ||
# Ultraschall Distanzsensor hinzufuegen | # Ultraschall Distanzsensor hinzufuegen | ||
- | us = UltrasonicSensor(SensorPort.S4) | + | us = UltrasonicSensor(SensorPort.S2) # Kontrollieren, |
robot.addPart(us) | robot.addPart(us) | ||
+ | |||
</ | </ | ||
Line 60: | Line 61: | ||
==== Bis auf eine Distanz geradeaus fahren ==== | ==== Bis auf eine Distanz geradeaus fahren ==== | ||
- | Messen Sie die geigenete Distanz von Sensor zur Wand, damit das Prügeli gut aufgeladen werden kann. Tragen Sie dann diese Distanz im Code unten ein und testen Sie | ||
<WRAP todo> | <WRAP todo> | ||
+ | Messen Sie die geeignete Distanz von Sensor zur Wand, damit das Prügeli gut aufgeladen werden kann. Tragen Sie dann diese Distanz im Code unten ein und testen Sie | ||
<code python> | <code python> | ||
def fahrenBisWand(): | def fahrenBisWand(): | ||
Line 77: | Line 78: | ||
Erweitern Sie das Programm so, dass der Heber erst runter geht, dann der Roboter fährt und am Schluss der Heber das Prügeli hoch hebt. | Erweitern Sie das Programm so, dass der Heber erst runter geht, dann der Roboter fährt und am Schluss der Heber das Prügeli hoch hebt. | ||
</ | </ | ||
+ | |||
+ | |||
+ | |||
+ | ==== Dem Rand folgen, bis zu einer Distanz ==== | ||
+ | <WRAP todo> | ||
+ | Schreiben Sie eine Funktion, damit der Roboter dem Rand folgt, bis zu einen bestimmten Distanz. | ||
+ | <code python> | ||
+ | def folgenBisWand(): | ||
+ | while True: | ||
+ | # Folgen | ||
+ | # Distanz überprüfen | ||
+ | </ | ||
+ | Zusätzlich können Sie die Geschwindigkeit in Abhängigkeit der Distanz anpassen: | ||
+ | * zuerst maximale Geschwindigkeit, | ||
+ | * Dann die Geschwindigkeit bis etwa 5 reduzieren, je näher man der gewünschten Distanz kommt (verwenden Sie dazu unsere Funktion linear für die Umrechnung) | ||
+ | |||
+ | <code python> | ||
+ | def linear(a, | ||
+ | return (x-a)/ | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | |||
+ | ===== Challenges ===== | ||
+ | Jetzt sollten Sie die Challenge 1 lösen können. | ||
+ | |||
+ | ==== Challenge 2 ==== | ||
+ | {{lehrkraefte: | ||
+ | |||
+ | Der Roboter startet beim grünen Pfeil, folgt der Linie bis vor die Mauer, fährt dann schräg daran vorbei bis zum Rand, dann wie Challange 1 | ||
+ | |||
+ | ==== Challenge 3 ==== | ||
+ | Wie Challenge 2, das Prügeli soll aber im rechten unteren Ecken (beim Startpunkt) abgelegt werden. | ||
+ | |||