Skip to content →

Die Welt wird bunt für den EXPLOR3R

Im Mindstorms Baukasten 31313 ist ebenfalls ein Farbsensor enthalten. Damit kann der Roboter zum Beispiel farbiges Papier erkennen, einer Linie folgen oder auf Lichtsignale reagieren. Wir demontieren den Berührungssensor mit den Flügeln und schliessen gemäss einer kleinen Anleitung im Buch den Farbsensor an unserem EXPLOR3R an.

Farbsensor im Farbmodus

Der Sensor kann im Farbmodus Farben von Oberflächen erkennen, die circa 1 cm entfernt sind. Um das zu testen stellen wir den Roboter auf eine ausgedruckte Farbtafel und wechseln zur Anschlussansicht auf dem EV3.

Mindstorms Farbsensor
Mindstorms Farbsensor

In der Einstellung COL-COLOR kann der Farbsensor erkennen:

  • 1 schwarz
  • 2 blau
  • 3 grün
  • 4 gelb
  • 5 rot
  • 6 weiss
  • 7 braun

Die Anzeige 0 bedeutet, dass die Farbe nicht erkannt wird. Die Oberfläche kann zu weit entfernt oder zu nah sein.

Programm «Bleib im Quadrat»

Im neu erstellten Projekt «EXPLOR3R-FARBE» erstellen wir das Programm «Bleib im Quadrat». Damit soll der EXPLOR3R innerhalb einer Teststrecke herum und nicht über die Linie hinaus fahren. Zuerst aber ran an die Teststrecke. Hnz schnippelt die Papiere zurecht und Mrtz klebt alle Blätter zusammen.

Der Programmablauf

Programmablauf «Bleib im Quadrat»
Programmablauf «Bleib im Quadrat»

Die Programmierung gleicht dem Programm «Berührung vermeiden». Nur wartet das Programm, bis es schwarz sieht, statt auf einen Tastendruck. Dazu verwenden wir den Warteblock im Modus Farbsensor > Vergleichen > Farbe.

Selbst konstruieren: Bulldozer

Mit dem Programm «Bleib im Quadrat» fährt der Roboter innerhalb der Teststrecke herum. Wenn du einige Lego-Teile in den Kreis hineinlegst, kann dein Roboter diese heraus schieben. Zuerst muss der EXPLOR3R jedoch eine Schaufel bekommen. Kannst du eine solche Schaufel aus Lego-Teilen bauen?

Natürlich können wir das. Hier der Beweis.


 

Einer Linie folgen

Wir wollen den Roboter einer Linie folgen lassen. Die Idee hinter diesem Programm: Wenn der Roboter einer schwarzen Linie auf einem weissen Papier folgt, erkennt der Sensor immer eine von zwei Farben: Weiss oder Schwarz.

Dafür können wir mit einem Schalterblock die Farbe Schwarz erkennen lassen. In diesem Fall lösen wir einen Bewegungsblock aus. Wenn eine andere Farbe erkannt wird (Weiss) lösen wir eine andere Bewegung aus.

Erkennt der Roboter Weiss, hat er keine Ahnung, wo die schwarze Linie ist und wo er hin fahren muss. Deshalb muss der Roboter immer auf einer Seite der Linie bleiben. Sonst kann es sein, dass er sich immer weiter von der Linie entfernt.

Wie kann der Roboter einer Linie folgen?
Wie kann der Roboter einer Linie folgen?

 

 

Programm «Linie folgen»
Programm «Linie folgen»

Schalterblock im Messmodus

In diesem Programm «ZeigeFarbe» nutzen wir die Statusleuchte. Je nachdem welche Farbe der Sensor erkennt leuchtet die Statusleuchte in der gleichen Farbe.

  • Sensor erkennt grün, Statusleuchte leuchtet grün
  • Sensor erkennt rot, Statusleuchte leuchtet rot
  • Sensor erkennt gelb, Statusleuchte leuchtet orange
  • Sensor erkennt keine Farbe, Statusleuchte wird ausgeschaltet

Dazu nutzen wir einen Schalterblock im Modus Farbsensor > Messen > Farbe.

Programm «Zeige Farbe»
Programm «Zeige Farbe»

Zuoberst ist der Standardfall. Standardfall bedeutet: Im Normalfall. Normalerweise wird keine Farbe erkannt und die Statusleuchte ausgeschaltet. Wir fügen für alle Farben, die wir erkennen können, einen weiteren Fall zu.

Jeden Fall wird dann entsprechend eingestellt. Wird die Farbe grün erkannt, stellen wir den Fall auf grün und lassen die Statusleuchte entsprechend auch grün leuchten.

Modus Stärke des reflektierten Lichts

In diesem Modus kann der Sensor die Stärke des Lichts messen, das von einer Fläche gespiegelt wird. Doch wie funktioniert das? Der Sensor schickt einen Lichtstrahl auf die Oberfläche. Das funktioniert gleich, wie wenn eine Taschenlampe auf das Papier leuchtet. Auf der Oberfläche, dem Papier in unserem Fall, spiegelt das Licht wieder zurück. Weisses Papier spiegelt (reflektiert) viel Licht. Schwarzes Papier schluckt das meiste Licht und reflektiert deshalb wenig.

Deshalb kann der Sensor weisses, graues oder schwarzes Papier erkennen. Der Sensor gibt einen Wert in Prozent (%) des ausgesendeten Lichts an.

Wir testen das direkt auf dem EV3 in der Anschlussansicht und wählen dort COL-REFLECT. Wir fahren auf dem Papier mit dem aufgedruckten Balken in verschiedenen Grautönen hin und her.

So finden wir heraus:

  • schwarze Fläche zeigt einen Wert unter 10%
  • weisse Fläche zeigt einen Wert über 60%

Selbst entdecken: Erstelle deine eigene Teststrecke

Die bisher verwendete Teststrecke ist für den Anfang ganz nett, der EXPLOR3R kann aber wesentlich anspruchsvollere Strecken meistern. Auf einem zum Buch gehörenden PDF sind 30 Arten von Blättern, zum Beispiel mit geraden Linien, Ecken und Kreuzungen. Drucke die gewünschten Blätter aus, schneide sie entlang der gestrichelten Linien aus und verbinde sie mit Klebband. Führe das Programm «LinieFolgen» aus, mit dem du den EXPLOR3R schon getestet hast.

Mit der bewährten Arbeitsteilung, Hnz schnippelt, Mrtz klebt, ist die neue Teststrecke schnell gebaut und der EXPLOR3R auf die Reise geschickt. Auf der neuen Teststrecke ist eine blaue Linie quer zur schwarzen Linie aufgemalt. Und damit hat der EXPLOR3R in einem etwas dunkleren Raum grosse Probleme und folgt der blauen Linie. Nur an hellem Sonnenlicht funktioniert das Programm wie erwartet.

Selbst entdecken: Am blauen Schild anhalten

Bearbeite das Programm «Bleib im Quadrat» so, dass der Roboter der schwarzen Linie auf der neu gebauten Teststrecke folgt, bis es zur blauen Linie kommt. Wenn Blau erkannt wird, soll der Roboter anhalten und einen Klang abspielen.
Hinweis: Ändere den Modus des Schleifenblocks, so dass er auf Blau reagiert.

Wir nennen das Programm «Anhalten an der blauen Linie» und kopieren alle Blöcke von «Bleib im Quadrat» in dieses neue Programm. Statt die Schleife endlos laufen zu lassen, ändern wir den Block. Der angepasste Modus ist nun Farbsensor > Vergleichen > Farbe > Blau. Sobald dieser Vergleich zutrifft und der Sensor blau erkennt, verlässt das Programm die Schleife und spielt einen Klang ab.

Selbst entdecken: Nenne die Farbe

Erstelle ein Programm, mit dem der Roboter sagt, welche Farbe er sieht. Lass ihn «Blue» sagen, wenn der Sensor Blau erkennt, und so weiter. Erkennt er keine Farbe, soll der Roboter «No Object Detected» sagen.
Hinweis: Dein Programm wird dem Programm «ZeigeFarbe» recht ähnlich.

Wir kopieren die Blöcke von «ZeigeFarbe» in das neue Programm «Sag die Farbe». Nun folgt nur noch ein wenig Fleissarbeit und schon plappert der EXPLOR3R verschiedene Farben vor sich hin, wenn wir über die Farbtafeln hin und her fahren.

Selbst entdecken: Superreflektor

Du solltest mindestens ein Material finden, das für reflektiertes Licht einen Wert von 100% ergibt. Um welches Material handelt es sich und warum ist der Wert so gross?

Zum Schluss müssen wir unser Gehirn nochmals richtig anstrengen. Welches Material reflektiert sehr stark? Was spiegelt? Klimper, klimper und der Fünfer ist gefallen: Ein Spiegel reflektiert so stark. Und als Material finden wir Aluminium-Folie in der Küche.

Heute haben wir viel über Farben, Licht und Reflexion (Spiegelung) gelernt. Ein Farbsensor sieht nach wenig aus, ist aber sehr vielseitig einsetzbar. Und wir sind einem Roboter, welcher bei Mrtz selbständig das Zimmer aufräumt, einen grossen Schritt näher gekommen.

Published in Mindstorms Allgemein