Netlogo Rescue Übung 2 - Netlogo Einführung
Die Netlogo Simulationsumgebung kennen lernen
Schritt 1 - Simulationsumgebung öffnen
Netlogo installiert mehrere Programme. Öffne "Netlogo 6.1.1".Schritt 2 - Rescue-Modell öffnen
Das Rescue-Modell "RescueLineEntryLinks.nlogo" kannst du hier herunterladen (Download sollte automatisch starten):https://www.dropbox.com/s/b4bac2vzri3dncm/RescueLineEntryLinks.nlogo?dl=1
Im Menü "File" wähle "Open" und suche die heruntergeladene Datei "RescueLineEntryLinks.nlogo". Bestätige durch Klick auf die "Öffnen"-Schaltfläche.
![]() |
Abbildung 1 - Rescue-Modell öffnen |
Du wirst direkt im Modell den Roboter programmieren, d.h. deine Änderungen werden darin gespeichert. Falls etwas kaputt gehen sollte und du nicht weißt wie du es wieder reparierst, kannst du das Modell noch mal von dem Link oben herunterladen. Oder du kopierst die Datei und arbeitest mit der Kopie.
Schritt 3 - Simulation initialisieren und starten
Der schwarze Bereich auf der rechten Seite ist die Welt, in der der Rescue-Roboter lebt. Drücke auf die Schaltfläche "setup" auf der linken Seite, um die Rescue-Arena zu erstellen und den Roboter zu spawnen. Der Roboter ist stilisiert dargestellt als ein türkiser Pfeil, der in Fahrtrichtung zeigt. Die 2 weißen Punkte repräsentieren die 2 Farbsensoren.Drücke auf die Schaltfläcke "go", um die Simulation zu starten. Der Roboter ist bereits mit einem einfachen Beispielprogramm programmiert und fährt los. Da die Arena allerdings noch keine Linie zum Linienfolgen enthält, fährt er immer geradeaus. Der Roboter zeichnet hinter sich eine Fahrspur.
Drücke auf die Schaltfläcke "go", um die Simulation zu pausieren. Drücke auf die Schaltfläche "Roboter zurücksetzen", um den Roboter wieder zur die Startposition zu bewegen. Mit "Spur löschen" kann die aufgezeichnete Fahrspur wieder entfernt werden.
Das Zeichnen der Spur kannst du deaktivieren, indem du bei der Schaltfläche "spur_zeichnen" auf "Off" drückst. Starte die Simulation erneut, um das zu testen.
![]() |
Abbildung 2 - Simulation steuern |
Schritt 4 - Parcours zeichnen
- 0 .. löschen (weiß)
- 1 .. schwarz
- 2 .. grün
eingestellt werden kann. Aktiviere den Bearbeitungsmodus mit der Schaltfläche "Stecke bearbeiten", stelle den "Zeichenfarbe"-Regler auf "1 schwarz" und klicke in die Arena, um eine geschlossene Linie zu zeichnen, der der Roboter folgen soll. Zur Korrektur stelle den "Zeichenfarbe"-Regler auf "0 löschen" und klicke auf die gerade gezeichnete Linie.
Es ist auch möglich grüne Kreuzungs-Markierungen zu setzen, indem der "Zeichenfarbe"-Regler auf "2 grün" umgestellt wird. Probiere dies aus.
Die "setup"-Schaltfläche löscht deinen Parcours auch vollständig wieder, also Vorsicht damit!
![]() |
Abbildung 3 - Parcours zeichnen |
Starte die Simulation und beobachte wie sich der Roboter auf dem gerade von dir erstellten Parcours schlägt.
![]() |
Abbildung 4 - einfacher Parcours |
Der Roboter korrigiert nach nach rechts, sobald der rechte Sensor eine schwarze Unterlage detektiert und links, sobald der linke Sensor schwarz "sieht". Bei Verlust der Linie sucht der Roboter links und rechts durch Rotation auf der Stelle.
Du kannst in die Simulation hineinzoomen mit Hilfe des "Zoom"-Menüs.
Schritt 5 - Parcours speichern und wieder öffnen
Der von dir gezeichnete Parcours wird nicht mit in der *.nlogo-Datei gespeichert. Dort landen nur die Änderungen am Modell, also der Roboter-Code. Der gezeichnete Parcours muss als eigene Datei exportiert werden.Wähle im Menü "File" > "Export" > "Export World..." und speichere die CSV-Datei ab.
Schließe Netlogo und öffne erneut "roboSim.nlogo". Der Parcours ist verschwunden. Öffne deinen gespeicherten Parcours wieder mit dem Menü "File" > "Import" > "Import Word..." und wähle die gerade exportierte *.csv-Datei aus. Voilá! Der Parcours ist wieder da und der Roboter kann direkt losfahren!
Es steht dir auch ein vorgefertigter Parcours zur Verfügung. Lade folgende Datei herunter (Download sollte automatisch starten. Oben rechts ist bei Dropbox die Download-Schaltfläche. Es kann ein bisschen dauern bis sie erscheint, weil Dropbox erstmal versucht die Datei darzustellen. Einfach warten bis sie erscheint.):
https://www.dropbox.com/s/u3kywjw548xe3dv/RescueArena.csv?dl=1
Importiere die Beispiel-Areana.
![]() |
Abbildung 5 - Arena exportieren und importieren |
Schritt 6 - Sensoranordnung verändern
Diese Simulation eignet sich besonders gut, um mit unterschiedlichen Sensor-Anordnungen zu experimentieren, also ob es besser ist die Sensoren sehr weit vorn am Roboter zu montieren oder eher in der Mitte und welchen Einfluss der Abstand der Sensoren voneinander hat (Spurweite). In der Realität müsste man hierfür umständlich den Roboter umbauen. In der Simulation reicht es die Regler "sensor_position" oder "sensor_breite" zu verstellen und mit der Schaltfläche "Ansicht aktualisieren" zu bestätigen. Zuvor muss allerdings die Simulation angehalten werden, indem die Schaltfläche "program_running" auf "Off" gestellt wird. Probiere mal ein paar unterschiedliche Sensor-Anordnungen aus und wie sie sich auf das Fahrverhalten des Roboters auswirken.; Das eigentliche Linienfolgenprogramm
geht das Roboter-Programm los. Alles darüber ist das Programm, dass die Regeln der Welt, also u.A. die gerade von uns benutzten Schaltflächen und Regler und das Zeichnen des Parcours implementiert.
Der Roboter liest die Sensoren aus und wandelt die Information in Motor-Steuerbefehle um. Die Geschwindigkeit der Motoren kann man mit
set-power geschwindigkeit_links geschwindigkeit_rechts
verstellen. Ändere die letzte Verzweigung so ab, dass der Roboter doppelt so schnell fährt, wenn keiner der beiden Sensoren schwarz "sieht":
if not lblack and not rblack [
set-power 100 100
]
Teste, dass dein Programm keine Syntax-Fehler enthält, indem du oben auf die "Check"-Schaltfläche drückst.
![]() |
Abbildung 7 - Modell ändern |
Starte sie Simulation und beobachte wie sich der Roboter verhält. Es kann sein, dass er an manchen Stellen jetzt die Linie verliert, weil er zu schnell fährt:
![]() |
Abbildung 8 - Roboter fährt zu schnell und verliert die Linie |
Kommentare
Kommentar veröffentlichen