Die Grundlagen sind nun abgeschlossen und du kannst nun deine eigenen Programmabläufe mit MakeCode zusammenstellen. Doch um dein Joy-Car kontrollieren zu können, benötigst du die Anweisungsblöcke aus der Joy-Car Erweiterung. Auf dieser und den nächsten Seiten zeigen wir dir jede einzelne Funktion aus unserer Erweiterung und erklären dir, wie diese funktioniert. Wir starten dabei nun mit den Motoren. Die Motoren sind der Antrieb des Joy-Cars. Mit ihnen kannst du das Joy-Car vor und zurück bewegen, verschiedene Geschwindigkeiten fahren, abbiegen und bremsen. Auch die zwei Servo-Motoren können in dieser Kategorie angesteuert werden.

Fahren

Fahre vorwärts oder rückwärts. Die Geschwindigkeit kannst du zusätzlich in Prozent zwischen 0 (kein Antrieb) und 100 (maximaler Antrieb) wählen.

Bremsen

Bremse das Joy-Car bis zum Stillstand. Du kannst hier zusätzlich wählen zwischen einer harten Vollbremsung oder einem sanften Bremsen, bei dem das Joy-Car langsam ausrollt.

Kurven

Fahre eine Links- oder Rechtskurve. Auch hier kannst du die Geschwindigkeit in Prozent einstellen. Zusätzlich kannst du das Radius-Level der Kurve von 0 - 5 angeben (0 = Enge Kurve, 5 = Weite Kurve).

PWM-Signal

Die Motoren können auch direkt über PWMSignale angesteuert werden. Dazu kann an jeden Kanal ein PWM-Wert zwischen 0 und 255 gesendet werden.

Servomotoren

Die beiden optionalen Servomotoren können hiermit angesteuert und in einem Winkel zwischen 0 und 180 Grad eingestellt werden.

Motorverzögerung

Durch Fertigungstoleranzen kann es vorkommen, dass sich die beiden Motoren nicht mit der exakt gleichen Geschwindigkeit drehen. Hiermit kannst du eine dauerhafte Verlangsamung eines Motors in Prozent einstellen.

Motoren - Beispiel 1

Dieser Beispielcode dient nur dazu, dir die Funktion der verschieden Blöcke aus dem Bereich Motoren vorzuführen.

In diesem Beispiel wird die Variable counter dauerhaft bis zu einem Wert von 100 hochgezählt. Wird ein Wert der größer als 100 ist erreicht, wird der Wert für die Variable counter auf 0 zurückgesetzt, die Motoren angehalten und die Variable mode um 1 erhöht. Wenn mode größer als 4 wird, wird diese Variable auf 0 zurückgesetzt und die Demo beginnt von vorn.

counter wird für die Geschwindigkeit in den Motorfunktionen eingesetzt. Mit mode werden die verschiedenen Motorfunktionen vorgeführt (0 = vorwärts fahren; 1 = rückwärts fahren; 2 = Rechtskurve vorwärts; 3 = PWM-Block vorwärts fahren; 4 = PWM-Block um die eigene Achse drehen). Damit nachvollzogen werden kann, welcher Teil des Codes gerade läuft, wird auf der LED Matrix des micro:bits der aktuelle mode angezeigt.

Da 100 die maximale Einstellung für die Geschwindigkeit ist, beenden wir einen Durchlauf der Variable counter wenn sie größer als 100 ist. In dem Fall wird dann die Variable counter auf 0 zurück gesetzt und die Variable mode um 1 erhöht um in den nächsten Modus zu wechseln.

Motorverzögerung - Beispiel 1

Da aus produktionstechnischen Gründen nicht jeder Motor genau gleich schnell läuft, kann es passieren, dass das Joy-Car nicht geradeaus fährt, sondern immer eine weite Kurve. Um dieses kompensieren zu können haben wir den Block Motorverzögerung gemacht. Mit Hilfe dieses Blocks kannst du, wenn dein Joy-Car zum Beispiel eine langgezogene Linkskurve fährt (also das linke Rad etw. langsamer dreht), dass rechte Rad für alle Fahrbefehle etw. verzögern. Dazu fügst du den Block am besten in "beim Start" ein.

Dieses Beispiel demonstriert die Funktionalität der Motorverzögerung. In "beim Start" wird der linke Motor dauerhaft um 20% verzögert. Danach werden beide Motoren mit einer Geschwindigkeit von 80% angesteuert. Du solltest jetzt feststellen können, dass der linke Motor deutlich langsamer läuft als der rechte Motor.

Motorverzögerung - Beispiel 2

Dieser Code soll dir helfen, falls dein Joy-Car nicht geradeaus fährt. In diesem Beispiel kann die Motorverzögerung manuell durch die beiden Knöpfe A und B für die jeweilige Seite eingestellt werden. Dabei wird in 1% Schritten vorgegangen. Die aktuelle Einstellung kann zusätzlich angezeigt werden, indem die beiden Knöpfe gleichzeitig gedrückt werden.

Lade diesen Code auf dein Joy-Car und lass es fahren. Fährt es beispielsweise ein langgezogene Linkskurve, drücke so oft auf den Knopf A bis dein Joy-Car gerade ausfährt. Solltest du zu oft gedrückt haben, dass dein Joy-Car jetzt eine Rechtskurve fährt, ist das kein Problem. Jetzt kannst du mit dem Knopf B die Motorverzögerung wieder verkleinern. Hast du den Punkt gefunden, an dem dein Joy-Car geradeaus fährt, kannst du die Knöpfe A und B gleichzeitig drücken und dir so den aktuell eingestellten Wert der Motorverzögerung anzeigen lassen. Diesen Wert kannst du dann für zukünftige Projekte nutzen.

Sollte dein Joy-Car eine Rechtskurve fahren ist der Ablauf genauso. Du musst lediglich Knopf B drücken um den linken Motor zu verlangsamen.