Angeregt vom Programm "Haus vom Nikolaus" kam ich auf die Idee, dass auch der Roboter diese Aufgabe bewältigen kann.

Dabei müssen ein Quadrat mit zwei Diagonalen und ein aufgesetztes rechtwinkliges Dreieck gefahren werden.

Es sind also nur drei verschiedene Winkel (45°, 90° und 135°) sowie drei verschieden lange Strecken zu berücksichtigen. Wenn die Seitenlänge des Quadrats feststeht (20 cm) lassen sich über den Satz des Pythagoras leicht die Länge der Diagonalen (28,28 cm) und des Daches (14,14 cm) errechnen.

Das war relativ leicht zu programmieren. Makeblock stellt in der Werbung heraus, dass die neuen Motoren des mBot 2 wesentlich genauer zu steuern sind. Das stimmt, aber nicht zu 100%.

Der Roboter fährt zwar die einprogrammierten Strecken sauber ab, aber es ist schwierig zu erkennen, ob er das auch genau macht.

Daher habe ich das Programm erweitert und lasse auf dem Bildschirm anzeigen, welche Strecke er gerade fährt und zusätzlich erden dann auch noch die Silben des dazugehören Spruches (Das ist das Haus vom Ni-ko-laus) angezeigt.

Ganz zufrieden war ich aber mit dem Ergebnis noch nicht.

Ich kam daher auf die Idee, die gefahrene Strecke auf der Unterlage festzuhalten/aufzuzeichnen. Hierzu habe ich einen dünnen Edding 400 - Stift mit einer Tesaband-Manschette versehen und an den mBot eine Führung aus einem gekürzten Insulin-Pen angebracht. Das Anheben und Absenken des Stiftes funktioniert sehr gut. Dies ist erforderlich, damit die Drehungen nicht gezeichnet werden.

Das Ergebnis war aber zuerst sehr unbefriedigend: An den Ecken klafften ca 6 cm lange Lücken. Hervorgerufen werden diese dadurch, dass der Stift gut 5 cm hinter dem Drehpunkt des mBot angebracht ist. Die Lösung war ziemlich einfach: Der mBot fährt mit abgesenktem Stift 5 cm weiter, dann wird der Stift angehoben und der mBot fährt diese 5 cm wieder zurück. Dann wird der Stift wieder abgesenkt.

Das Ergebnis ist zwar nicht perfekt aber angemessen.

Übrigens: Damit der Stift bequem eingesteckt und wieder herausgenommen werden kann, kann der Servo-Motor über den Joystick in die jeweils passende Position gebracht werden. (Siehe Video)

 

Inzwischen denke ich über mögliche Erweiterungen nach: Bisher fährt der mBot völlig autonom. Es wäre aber leicht möglich,  das Fernbedienungsprogramm (Fernsteuerung) so zu erweitern, dass über zwei zusätzliche Tasten auf der IR-Fernbedienung der Stift angehoben und gesenkt werden kann. Hiermit wäre dann ein etwas eigenwilliger Plotter erstellt. Dieser könnte mit einiger Mühe beliebige Zeichnungen erstellen.

 Und das führt mich zu einer weiteren Erweiterungsmöglichkeit: Zurück zum Haus des Nikolaus!

Das Steuerungsprogramm könnte auch so gestaltet werden, dass für die drei Drehungen und die drei Fahrtlängen jeweils ein eigener Block erstellt wird, außerdem je ein Block, der das Anheben und das Absenken des Stiftes übernimmt. Diese 8 Befehle könnten bestimmten Tasten der Fernbedienung zugeordnet sein. Ein Druck auf die Taste löst dann die entsprechende Bewegung aus. Der Einfachheit halber wird die Vor- und Rückwärtsfahrt um 5 cm bei den geraden Strecken gleich mit ausgeführt.

So könnte das Haus des Nikolaus auch manuell über die Fernbedienung gezeichnet werden.

Und dies könnte noch getoppt werden:

  1. Die einzelnen Tastendrücke könnten in einer Liste gespeichert werden. Nach Abschluss der Sequenz könnte diese über einen Tastendruck oder den Joystick abgerufen werden. Der mBot hat dann etwas gelernt.
  2. Es wäre auch denkbar, eine oder mehrere solcher Listen im mBot zu speichern, vielleicht sogar über eine Erweiterung aus Dateien einlesbar zu machen. Auch denkbar wäre, dass gespeicherte Tastendrücke in eine entsprechende Datei ausgegeben und später wieder eingelesen werden könnten.
  3. Die hohe Schule wäre folgende: Der mBot bekommt ein vorgezeichnetes fertiges Haus. Über den Linienfolgesensor fährt er das systematisch ab. Wobei er bei jedem neuen Versuch sich einen anderen Weg sucht. Laut Wikipedia (https://de.wikipedia.org/wiki/Haus_vom_Nikolaus) gibt es vom Startpunkt 1 aus 44 gültige und 10 ungültige Lösungen.
    In umfangreichen Tabellen merkt sich der mBot insbesondere die ungültigen und wenigstens eine gültige Lösung. Diese besteht aus 8 Ziffern (= Eckpunkten) in der richtigen Reihenfolge. Dies wäre dann ein weiterer, etwas fortgeschrittener Lernerfolg.

Programm-Download: mBot2_zeichnet_Nikolaus_Haus

YouTube-Video: https://youtu.be/8pYnir1flAY