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:

Roboterkonfiguration

Bevor mit dem Calli:bot gearbeitet werden kann, muss er in der Roboterkonfiguration eingebunden werden. Wird der Block aus Aktion herausgezogen, ist er automatisch mit dem Anschluss A0 verbunden.

Die Bezeichnungen wie C, M, M3 ... können geändert werden. Im Folgenden werden aber die Voreinstellungen benutzt.

Calliope mini Calli:bot

Anhalten

Der Calli:bot fährt, solange der Ultraschallsensor eine Entfernung meldet, die größer als 10 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 richtig 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 5 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