wiki:UnterrichtLegoNxt
close Warning: Can't synchronize with repository "keplertools" (/srv/svn/keplertools does not appear to be a Subversion repository.). Look in the Trac log for more information.

Verwendung der Lego-NXT-Roboter im Informatikunterricht

Seit dem Schuljahr 2010/11 finden am Kepler-Gymnasium für alle 10ten Klassen eine Einführung in Robotik und Programmierung mit ​Lego-NXT-Robotern statt. Der Unterricht wird unter Verwendung einer Poolstunde halbjährig vierzehntägig erteilt.

Im Anschluss können die Schüler die inhaltlich anschließende Informatik-AG belegen.

Ziel

Ziele des Einführungsunterrichts sind u.a.:

  • Profilgebung des Kepler-Gymnasiums
  • Abbau von Hemmschwellen durch interessanten spielerischen Umgang mit Technik
  • Für die meisten Schüler Erstkontakt mit Grundideen der algorithmischen Programmierung
  • Werbung für die inhaltlich anschließende Informatik-AG

In Kombination mit der Informatik-AG ermöglicht die Teilnahme an der Poolstunde die Abiturprüfung im Fach Informatik.

Ausrüstung

[Todo] (Hier kurz eine Übersicht über die vorhandenen Kästen und Sensoren...)

Programmierung

Zur Programmierung der NXT-Bausteine kommt zunächst die mitgelieferte Software zum Einsatz. Sie erlaubt das visuelle Programmieren durch Anordnen und "Verkabeln" von Icons auf einem zweidimensionalen Bildschirm. Damit lassen sich von einfachen zeitlichen Abläufen über Schleifen und Verzweigungen bis hin zu sensorisch gesteuerten komplexen Programmen alle wesentlichen Programmstrukturen verwirklichen.

Für den Einsatz in der Informatik-AG ist die Verwendung einer textbasierten Programmiersprache vorgesehen. Hier gibt es neben der vom Hersteller gelieferten C-ähnlichen Sprache ​NXT-G auch ​Open-Source-Anbindungen an weitere wichtige Progammiersprachen.

Python

Es existieren zwei verschiedene Anbindung an Python (​NXT_Python und dessen Weiterentwicklung ​nxt-python). Alles zur Verwendung des Python-Interfaces für unseren Unterricht findet sich unter UnterrichtLegoNxt/Python.

​TuxMinds

​TuxMinds ist eine Open-Source-Alternative zur mitgelieferten grafischen Programmierumgebung, die unter Linux läuft. Sie stammt aus der Schulumgebung (​http://www.it-projekt-muenster.de/).

Einleitung

Zur Einleitung orientieren sich die Schüler darüber, welche Arten von Robotern es (real oder fiktiv) gibt, die sind nämlich sehr unterschiedlich. Unser Lego-Roboter ist nur eine davon.

Die Schüler erstellen gruppenweise kleine Vorträge zu den verschiedenen Robotertypen. Jeder Vortrag soll auch eine kurze Definition enthalten, was (auf dem jeweiligen Einsatzfeld) einen Roboter ausmacht.

Weiterführende Literatur

Science-Fiction-Klassiker

Buch "I, Robot" von Isaac Asimov

Besprechen der drei Roboterregeln. Besprechen der visionären Leistung Asimovs. Einfluss seiner Visionen auf unsere heutige Realität.

Alle Kurzgeschichten von Philip K. Dick

Besprechen der visionären Leistung Dicks. Einfluss seiner Visionen auf unsere heutige Realität.

Wissenschaftliche Literatur (historisch)

Valentino Braitenberg

  • Valentine Braitenberg, Vehicles: Experiments in Synthetic Psychology, MIT Press Cambridge 1984 ISBN 978-0-262-52112-3
    (Englisch, Auszüge auf Google Books erhältlich)
    • Übersetzung: Vehikel. Experimente mit künstlichen Wesen, LIT Verlag Münster 2004 ISBN 3-8258-7160-6
  • ​http://de.wikipedia.org/wiki/Valentino_Braitenberg

Populärwissenschaftliche Literatur

Hofstädter/Dennett

Aufgaben

Die Schüler werden der Reihe nach die folgenden Aufgaben mit ihren Robotern lösen:

Vorbereitung

  1. Roboter nach Bauplan aufbauen
  2. mit der Software vertraut machen

Motoren ansteuern

  1. Roboter vorwärts geradeaus fahren lassen
  2. genau einen Meter fahren lassen

  3. auf der Stelle drehen lassen (links-/rechtsherum)
  4. genau 90° auf der Stelle drehen lassen

  5. ein Quadrat fahren lassen

  6. freiwillig: Kurven fahren lassen (verschiedene Radien)
  7. freiwillig: einen Kreis fahren lassen (verschiedene Radien)

Programmiertechnik: Schleife

  1. ein Quadrat fahren -- mit Programmschleife!

Sensoren abfragen

  1. auf Druck losfahren
  2. auf Zuruf losfahren, anhalten und zurückkommen

Sensomotorische Interaktion

(ein lineares Programm sensorgesteuert abarbeiten)

  1. Fühler

  2. Wer nicht "sören" will muss fühlen
  3. Der schüchterne Roboter
  4. Roboterduell!
  5. Ich bin ein Roboter, holt mich hier raus!

  6. Roboterkaravane
    • Vorarbeit: Vor einem Hindernis anhalten und warten, dann weiterfahren
    • Erweiterung: Geschwindigkeit abhängig vom Abstand regeln
      • Vorarbeit: Auf die Wand zufahren, je näher der Roboter dran ist immer langsamer werden

  7. einer schwarzen Linie entlangfahren Was passiert, wenn der Roboter die Linie verliert? Kann er selbstständig eine Linie (wieder-) finden?
  8. Interaktiver Roboter I: Roboter durch klatschen lenken

Komplexe Programmsteuerung

(ein Programm mit vorgegebenen Verzweigungen sensorgesteuert abarbeiten, Entscheidungsbaum)

  1. Interaktiver Roboter II: Roboter durch Farbkarten lenken
  • [wird fortgesetzt]

Komplexe Sensomotorische Interaktion

  • [eine laufende Programmschleife sensorgesteuert unterbrechen]
  • [aus einer laufenden Programmschleife sensorgesteuert in Unterprogramme springen]

Creative-Commons-Lizenz

Die Inhalte dieser Wiki-Seite erscheinen, (wo anwendbar und nicht anderweitig angegeben), unter einer Creative-Commons-Lizenz CC BY NC SA 3.0 Germany. Urheber: Dr. Rüdiger Kupper und Jens Baumgärtner, Kepler-Gymnasium Freudenstadt.

Last modified 14 years ago Last modified on Dec 7, 2012, 1:46:04 PM
Note: See TracWiki for help on using the wiki.