Calliope mini - Spaß durch Programmieren

Eck′ bloß nicht an!

Ziel: Der Calli:bot bewegt sich in einem beliebigen Raum, ohne irgendwo anzustoßen. Erkennt er ein Hindernis, läuft die folgende Programmfolge ab:

Anhalten

Der Calli:bot fährt, solange der Ultraschallsensor eine Entfernung meldet, die größer als 30 cm ist.

Aufgabe: An der Unterseite des Calli:bot befinden sich 4 RGB-LEDs. Wenn der Calli:bot fährt, sollen sie in Grün leuchten. Hält er an, leuchten sie in Rot.

Calliope mini Calli:bot

Der Calli:bot muss nach dem Bremsen eine sehr kurze Zeit warten, ansonsten geht das Programm nicht weiter. Das ist so! 30 ms sind ausreichend. Wenn es nicht funktioniert, kann die Zeit etwas größer gemacht werden.

Nach dem Stoppen fährt der Calli:bot ein Stück rückwärts. Dazu wird die Geschwindigkeit als negativer Wert eingegeben. Die eigentliche Fahrzeit wird über den Wartebefehl realisiert.

Aufgabe:Ändere das Programm so, dass der Calli:bot bis auf 10 cm an das Hindernis heranfährt, dann stoppt und nur noch halb so weit wie bisher zurückfährt.

Calliope mini Calli:bot

Damit beim Stoppbefehl die notwendige Wartezeit nicht vergessen wird, schreibt man dafür eine Funktion. Die enthält das Bremsen und das Warten.

Calliope mini Calli:bot

Nach dem R├╝ckwärtsfahren dreht sich der Calli:bot nach rechts. Dazu fährt das linke Rad vorwärts und das rechte Rad rückwärts. Insgesamt wird as eine Drehung nach rechts.
Die Wartezeit von 500 ms bis zum Stoppen des Motors legt fest, wie weit sich der Calli:bot dreht.

Aufgabe: Verdopple die Zeit auf 1000 ms und beobachte, was passiert.

Aufgabe: Lass den Calli:bot in die andere Richtung drehen.

Aufgabe: Damit sich der Calli:bot nicht immer um den gleichen Winkel dreht, wird die Wartezeit bis zum Stoppen des Motor durch eine Zufallszahl bestimmt. Probiere aus, zwischen welchen zufälligen Wartezeiten ein sinnvolles Drehen zu Stande kommt.

Calliope mini Calli:bot

Wenn alles gut programmiert wurde, erkennt der Calli:bot Hindernisse und stößt nicht dagegen. Perfekt funktioniert das aber nicht. Dazu müssten vorn weitere Sensoren angebracht werden.

zurück