9.7.4 Weg folgen


Roboter folgt einem Weg

Im folgenden Programm soll der Roboter mit Hilfe eines Farbsensors einem farbigen Weg folgen. Mit Hilfe eines elektronischen Gehirns

  • fährt der Roboter geradeaus, wenn er über "blau" fährt,

  • macht er eine Linkskurve, wenn er über "grün" fährt und

  • macht er eine Rechtskurve, wenn er über "rot" fährt.


Vorbereitung des Programms


Falls der gerade gegebene Link nicht funktioniert, kann das Programm manuell geladen werden:

  • Klicke auf folgenden Download-Link für den Quellcode: weg_folgen.xml

  • Klicke in Open-Roberta oben links auf "Bearbeiten", dann auf "importiere Programm ..." und lade das gerade heruntergeladene Programm "weg_folgen.xml", das sich im Donwload-Ordner befinden sollte.

  • Falls die Oberfläche des Open-Roberta-Editors nicht auf deutsch ist, klicke in Open Roberta oben auf das Symbol für die Erdkugel und wähle "Deutsch" als Sprache.

  • Klicke in Open Roberta oben auf den Tab "ROBOTERKONFIGURATION", damit sich das Roboter-Konfigurations-Fenster öffnet. Du solltest folgende Roboter-Konfiguration sehen - falls nicht, ändere den Roboter entsprechend:

  • Klicke auf den Tab "PROGRAMM NEPOprog" und dann ganz rechts auf die Schaltfläche "SIM", damit sich das Simulator-Fenster öffnet.

  • Klicke im Simulationsfenster oben links solange auf das Bild-Symbol, bis der Simulationshintergrund weiß ist. Lösche das blaue Hindernis.

  • Klicke auf folgenden Link um das Hintergrundbild für die Simulation herunterzuladen: parcours.png

  • Klicke im Simulationsfenster in der Symbolleiste auf "Lade dein eigenes Hintergrundbild hoch,...", wechsle in den "Downloads-Ordner", wähle die heruntergeladene Datei "parcours.png" und bestätige die Wahl.

  • Bestätige die Frage zum lokalen Speichern der Hintergrunddatei mit "Ja".

  • Klicke im Simulationsfenster unten auf "Öffne/schließe die Ansicht deines Systems", damit die Anzeige des simulierten Roboters geöffnet wird.

  • Verschiebe die Anzeige des simulierten Roboters an eine geignete Stelle.

  • Verschiebe den Roboter auf das blaue Wegstück unten links. Du solltest folgendes sehen:

  • Klicke in der Simulationsumgebung unten auf "Starte dein Programm in der Simulation". Sollte der Roboter auf einer Farbgrenze stehen beleiben, dann gib ihm einen kleinen Schubs.

Programmablauf:

  • Der Roboter folgt dem Weg

  • Der Lichtsensor erkennt die unter ihm liegende Farbe.

  • Aus der Farbe berechnen die Neuronen die gewünschte Geschwindigkeit des Roboters:

    • auf der Farbe grün: der rechte Motor ist schneller als der linke - Linkskurve
    • auf der Farbe blau: beide Motoren drehen sich gleich schnell - Geradeausfahrt
    • auf der Farbe rot: der linke Motor ist schneller als der rechte - Rechtskurve
  • Sobald der Berührungssensor eine Wand registriert bleibt der Roboter stehen und das Programm wird beendet.


Erläuterungen zum Programm

  • Klicke auf den Tab "NEURONALES NETZ NEPOnn":

Im neuralen Netz dieser Simulation sind fünf Neuronen festgelegt worden:

  • "LR": dieses Neuron hat den Wert 100, wenn der Roboter über die Farbe rot fährt, sonst 0.

  • "LG": dieses Neuron hat den Wert 100, wenn der Roboter über die Farbe grün fährt, sonst 0.

  • "LB": dieses Neuron hat den Wert 100, wenn der Roboter über die Farbe blau fährt, sonst 0.

  • "mot1": Der Wert dieses Neurons wird an den Motor A gesendet.

  • "mot2": Der Wert dieses Neurons wird an den Motor B gesendet.

Im "elektronischen Gehirn" sind die Neuronen "LR", "LG" und "LB" mit den Neuronen "mot1" und "mot2" verbunden:

  • Die Verbindung zwischen den Neuronen "LR" und den Motorneuronen hat verschiedene "Gewichte". Der Roboter fährt eine Kurve.

  • Die Verbindung zwischen den Neuronen "LG" und den Motorneuronen hat verschiedene "Gewichte". Der Roboter fährt eine Kurve.

  • Die Verbindung zwischen den Neuronen "LB" und den Motorneuronen hat gleiche "Gewichte". Der Roboter fährt geradeaus.

  • Zeichne mit einem Grafikprogramm einen anderen Parcours und lade diesen als Hintergrundbild in das Programm.

  • Die Farbwerte für Blau, Rot und Grün die der Robotorsensor sicher erkennt sind:

    • blau = rgb(0, 86, 166)
    • rot = rgb(179, 0, 6)
    • grün = rgb(0, 100, 47)
  • Ändere die neuronalen Gewichte so, dass der Roboter deinem Parcours folgen kann.