Lernen mit Robotern LEGO Mindstorms NXT Programmiersprachen im Überblick
LEGO Mindstorms NXT Programmiersprachen im Überblick Impressum Ausgabe September 2010 Copyright Autoren 2004-2009 by Fraunhofer-Institut Intelligente Analyse- und Informationssysteme (IAIS) Thorsten Leimbach, Sebastian Trella Ansgar Bredenfeld, Thorsten Leimbach (Leitung), Sebastian Trella, Beate Jost Adresse Initiative Roberta Fraunhofer-Institut Intelligente Analyse- und Informationssysteme Schloss Birlinghoven, 53754 Sankt Augustin Internet: www.roberta-home.de www.roberta-home.eu E-Mail: roberta-zentrale@iais.fraunhofer.de Projektgruppe Warenzeichen LEGO und Mindstorms sind eingetragene Warenzeichen der Firma The LEGO Group. Microsoft, Windows und Internet Explorer sind eingetragene Warenzeichen der Firma Microsoft Corporation. fischertechnik ist ein eingetragenes Warenzeichen der Firma fischertechnik GmbH. Java ist eingetragenes Warenzeichen der Firma SUN Microsystems Inc. LabVIEW ist ein Produkt der Firma National Instruments. Roberta ist eingetragenes Warenzeichen der Fraunhofer-Gesellschaft. Förderung Das Projekt Roberta Mädchen erobern Roboter wurde von 2002 2007 gefördert vom Bundesministerium für Bildung und Forschung. Das Projekt Roberta Goes EU wurde von 2005 2008 von der EU gefördert.
Die Roberta-Reihe Die Roberta-Reihe Roberta Die»Roberta Reihe«dokumentiert das Roberta-Konzept. Beides wurde vom Fraunhofer IAIS (ehemals AIS) zusammen mit Partner- Innen entwickelt und vom Bundesministerium für Bildung und Forschung gefördert. Zum Roberta-Konzept gehören: Ein Konzept für Roboterkurse, die gleichermaßen für Mädchen und Jungen interessant sind. Roberta-Kurse werden von geschulten Roberta-Teacher durchgeführt. Die Schulung von Lehrkräften (und anderen), die Roberta-geben dürfen, ist integraler Bestandteil des Roberta-Konzeptes.. Lehr- und Lernmaterialien, die in der Roberta-Reihe zusammengefasst sind, mit deren Hilfe geschulte Roberta-Teacher Roberta-Kurse durchführen können. Die Materialien enthalten insbesondere didaktische Hinweise zur gendergerechten Gestaltung von Roboter-Kursen. Ein Netzwerk regionaler Roberta-Zentren, das den Roberta- KursleiterInnen einerseits im RobertaRegioZentrum»vor Ort«Unterstützung bietet, zum Beispiel durch den Verleih von Roboterbaukästen, und andererseits den auch überregionalen Erfahrungsaustausch ermöglicht. Die grundlegenden Entwicklungsarbeiten wurden im Projekt»Roberta Mädchen erobern Roboter«durchgeführt. Da die Erfahrungen gezeigt haben, dass sich auch Jungen in gendergerechtem Unterricht positiv wieder finden, hat Fraunhofer IAIS beschlossen,»roberta Mädchen erobern Roboter«unter dem Titel»Roberta Lernen mit Robotern«weiterzuentwickeln. Fortsetzung nächste Seite
LEGO Mindstorms NXT Programmiersprachen im Überblick Die Roberta-Reihe, Fortsetzung Roberta Reihe Wegen neuerer Entwicklungen auf dem (Roboter-) Baukastenmarkt wurde Band 1 der Roberta-Reihe aufgeteilt in einen Grundlagenteil und mehrere baukastenbezogene Teile. Viele Details, Beispiele, Experimente und die ausführlichen Bauanleitungen wurden auf CD- ROM ausgelagert. Zusätzlich zu Band 1 - Grundlagen gibt es Band 1 - RCX für Lego Mindstorms RCX und Band 1 - NXT für Lego Mindstorms NXT. 1: Roberta Grundlagen Dieser Band enthält Grundlagen zur Planung und Durchführung von Roberta-Kursen. Dazu gehören insbesondere didaktische Hinweise zur gendergerechten Kurs-Gestaltung. Das Buch führt in die Robotik ein, stellt unterschiedliche Baukästen vor und zeigt Möglichkeiten der Programmierung für die Steuerung der Roboter auf. 1 RCX: Roberta Grundlagen und Experimente für Lego Mindstorms RCX (mit CD-ROM) Dieser Band bietet eine Fülle von Experimenten, detaillierte Bauanleitungen, Tipps und Tricks zur Vermeidung bzw. Lösung technischer Probleme mit den Roboter-Baukästen (LEGO Mindstorms Robotics Invention System). Zu allen Experimenten finden sich auf der CD-ROM Programmierbeispiele in RIS und NQC (NotQuiteC) 1 NXT: Roberta Grundlagen und Experimente für Lego Mindstorms NXT (mit CD-ROM) Dieser Band bietet eine Fülle von Experimenten, detaillierte Bauanleitungen, Tipps und Tricks zur Vermeidung bzw. Lösung technischer Probleme mit den Roboter-Baukästen (LEGO Mindstorms NXT). Zu allen Experimenten finden sich auf der CD-ROM Programmierbeispiele in der Education Software und NXC (Not exactly C) Fortsetzung nächste Seite
Die Roberta-Reihe Die Roberta-Reihe, Fortsetzung Roberta Reihe 2: Roberta Der Simulator RobertaSim (mit CD-ROM) Die Software simuliert LEGO Mindstorms Roboter (der Serie Robotics Invention System 2.0). Sie ermöglicht einen virtuellen Roboter in den gewohnten Programmiersprachen (RIS/RCX Code und NQC) zu programmieren. Das zu erwartende Verhalten des realen Roboters kann auf dem Bildschirm in Echtzeit verfolgt werden, wobei die Bedienung des virtuellen Roboters der des realen nachempfunden ist. In Vorbereitung ist die Erweiterung für Mindstorms NXT. Nur noch online für zertifizierte Roberta-Teacher erhältlich! 3 RCX: Roberta Programmieren mit Java und C Band 3 RCX ergänzt die in Band 1 - RCX vorgestellten Programmiermöglichkeiten (mit RIS und NQC) um Java und C. Dabei werden insbesondere die Installation der entsprechenden Programmierumgebung erklärt, der Umgang mit ihr erläutert sowie Besonderheiten beschrieben. 3 NXT: Roberta Programmieren mit Java Band 3 - NXT ergänzt die in Band 1 - NXT vorgestellten Programmiermöglichkeiten (mit NXT-G und NXC) um Java. Dabei werden neben den Grundlagen der objektorientierten Programmierung insbesondere auch auf die Umsetzung von Java auf das LEGO Mindstorms NXT System mit lejos behandelt. Die Beschreibung reicht von der Installation von le- JOS bis zur Umsetzung größerer Experimente unter lejos. Fortsetzung nächste Seite
LEGO Mindstorms NXT Programmiersprachen im Überblick Die Roberta-Reihe, Fortsetzung Roberta Reihe 5: Roberta Anleitung zur Schulung von Roberta-Coaches (mit CD-ROM) Dieser Band richtet sich speziell an Roberta-Coaches und unterstützt sie bei der Vorbereitung von Schulungen für Lehrkräfte, Erzieherinnen und andere, die Roberta-Kurse durchführen wollen. Ziel und Inhalt einer Schulung für Roberta- Teacher werden erklärt, Grundsätze von Roberta-Kursen erläutert und der Zertifizierungsprozess für regionale Roberta- Zentren, Roberta-Coaches und Roberta-KursleiterInnen beschrieben. Dieser Band ist nicht öffentlich erhältlich. 6:»Roberta im Rettungsdienst«Dieser Band gibt Tipps, Hinweise und Anregungen für die Konstruktion und die Programmierung von Robotern, die beim RoboCupJunior Wettbewerb in der Disziplin RoboRescue eingesetzt werden können. Die Aufbaubeschreibung einer Rescue-Arena ist ebenso enthalten wie die Regeln des RoboRescue-Wettbewerbes. Mit Hilfe der in dem Band genannten Adressen kann jederzeit auf den aktuellen Stand der Regeln und die Bedingungen für eine Anmeldung zum Wettbewerb zugegriffen werden. 7:»Roberta you can dance!«dieser Band vermittelt eine strukturierte Vorbereitung für Schülerinnen und Schüler, die in der Disziplin RoboDance eines RoboCupJunior Wettbewerbes teilnehmen möchten. Er beinhaltet auch vorbereitende Aufgaben sowie Erfahrungsberichte von Roberta-Dance Teams.
Das Projekt Roberta Das Projekt Roberta Das Projekt Roberta Das Projekt wurde entwickelt zur Steigerung des Anteils von Frauen in technischen Fächern und Berufen und zum Abbau des Mangels an technischen Fachkräften. Damit diese Ziele erreicht werden können, muss das Interesse von Mädchen für Informatik und Technik frühzeitig geweckt und ihr Verständnis für technische Systeme gefördert werden. Roberta gehört zum Bereich Ausbildungsrobotik des Fraunhofer IAIS, in dem mobile Roboter und Roboterbaukästen für die Ausund Weiterbildung sowie zielgruppenspezifische Lehr- und Lernmaterialien entwickelt werden. Das Projekt wurde vom Bundesministerium für Bildung und Forschung von November 2002 bis Februar 2007 gefördert. Während in den ersten drei Jahren das Roberta-Konzept im Mittelpunkt stand, konzentrierten sich die Arbeiten im Jahr 2006 auf eine besondere Aktivität zur Stärkung des Mädchenanteils bei Robotik- Wettbewerben. Seit 2007 wurde Roberta thematisch erweitert, an neue Baukästen angepasst und über eine wachsende Anzahl von RobertaRegioZentren auch europaweit verbreitet. Zunächst wurden Lehr-Materialien für kurze Schnupperkurse erarbeitet und Schulungen für Roberta-Teacher durchgeführt. Anschließend wurden schrittweise umfangreichere Kurse entwickelt, das Material sukzessive ergänzt und zur Verfügung gestellt. Die durchgeführten Kurse wurden von einer unabhängigen Begleitforschung evaluiert. Die Evaluierungsergebnisse flossen in die Weiterentwicklung der Materialien ein. Parallel dazu wurde aufgrund einer entsprechenden Nachfrage das Netzwerk, das zu Beginn aus vier RobertaRegioZentren bestand, ausgebaut (zurzeit 22 in Deutschland, Stand September 2010). Hinweis Roberta ist ein eingetragenes Markenzeichen. Der Roberta Schriftzug und das Roberta Logo dürfen nicht ohne Zustimmung des Fraunhofer IAIS verwendet werden. Institutionen, die ein RobertaRegioZentrum gründen möchten, sowie Lehrkräfte und ErzieherInnen, die Roberta-Kurse durchführen möchten, dürfen den Namen verwenden, sofern sie vom Fraunhofer IAIS dazu autorisiert sind und eine entsprechende Lizenz erworben haben.
LEGO Mindstorms NXT Programmiersprachen im Überblick Überblick Programmiersprachen für Lego Mindstorms NXT
Name NXT-G 2.0 LabVIEW Education Edition Robolab 2.9 NXC lejos RobotC GNAT GPL for NXT 1 PBLua Sprache Preis Betriebssystem Graphisch Graphisch Graphisch C ähnlich Java Derivat C ähnlich Basic Lua Windows, MAC OS Windows, Mac OS Firmware NXT Firmware NXT Firmware Geeignte für Einsteiger Fortgeschrittene Einsteiger LEGO Mindstorms Eudcation Programmierumgebung / Retail NXT LabVIEW Robolab Sprachumfang Siehe nächste Seite Windows, Windows, Windows, Windows, Mac Windows, Mac Mac OS, Mac OS, Mac OS OS, Linux, BSD OS, Linux Windows Linux Linux NXT Firmware NXT Firmware Java JVM NXT Firmware nxtosek NXT lua Geübte Einsteiger u.a. Bricx Command Center Fortgeschrittene u.a. Netbeans, Eclipse, Javaeditor Geübte Einsteiger Fortgeschrittene Fortgeschrittene RobotC u.a. Netbeans, Eclipse Felder (Array) X X Schleifen If Anweisung Switch Case Anweisung X Trigonometrische Funktionen X Fließkomma Arithmetik X X Bluetooth Verbindung Verbindung mit anderen Geräten Nein Ja Nein Ja Ja Ja Ja Ja Verbindung von NXT zu NXT Ja Ja Nein Ja Ja Ja Ja Ja Protokolle BT BT + I2C BT + I2C BT + I2C + USB BT + I2C BT BT + I2C NXT Filesystem Zugriff Ja, eingeschränkt Ja Ja Ja Ja Ja Ja Ja Integriertes Data Logging Ja Ja Ja Ja, rudimentär Ja, rudimentär Ja Nein, nur manuell Nein, nur manuell Vorgänger: Ja, ältere Ja, ältere RCX kompatibel Nein Nein Ja NBC Versionen Versionen Nein Nein Eclipse 1 Angaben basierend auf Ada 2005 & SPARK
Weiterführende Informationen NXT-G LEGO Mindstorms 8547-2. Generation LEGO Mindstorms 9797 (Schulversion) Preis Sofware inklusive Einzelplatzlizenz: 75,80 - Spielzeugladen Schullizenz: 356,88 www.shop.lego-in-der-schule.de http://www.vs-moebel.de/56.0.html?&l=0&fl=10 Community s LEGO Education http://mindstorms.lego.com/ http://www.debacher.de/wiki/nxt-g Literatur The Lego Mindstorms NXT 2.0 Discovery Book, Laurens Valk, No Starch Press, 2010 Roberta Grundlagen und Experimente: Mit CD-ROM. Roberta-Reihe Band 1 NXT, Fraunhofer IRB Verlag, 2008 Programmierung mit LEGO Mindstorms NXT, Kasten Bernds, Springer Verlag, 2010 LabVIEW LabVIEW Education Edition Preis Einzeplatz: 99, 25 Plätze: 1450 Community Literatur National Instruments http://forums.ni.com/t5/labview/bd-p/170 http://zone.ni.com/devzone/cda/tut/p/id/10243 Programmierung von LEGO MINDSTORMS NXT mit NI LabVIEW, Martin Engels, Hanser Fachbuch, 2010 Robolab 2.9 Tuffts University Preis Einzelplatz: 98 Community Literatur http://www.ceeo.tufts.edu/robolabatceeo/ ROBOLAB Lehrerhandbuch Teil 1 +2, Mindstorms for Schools, Lego# 40305.230.007 http://www.cipce.rpi.edu/programs/robotics/robolab/lesson2/lesso n2.html Fortsetzung nächste Seite
Weiterführende Informationen Weiterführende Informationen, Fortsetzung NXC Preis Community DE DE EN In der Entwicklungsumgebung bricxcc enthalten. kostenlos Open Source Community / Johen Hansen http://bricxcc.sourceforge.net/ http://sourceforge.net/tracker/?group_id=68600 http://www.roberta-home.de/de/was-bietet-roberta/robertareihe/nxc-tutorial http://lukas.internet-freaks.net/robotic/nxttutorial.html http://bricxcc.sourceforge.net/nbc/nxcdoc/nxc_tutorial.pdf Literatur Roboter programmieren mit NXC für LEGO MINDSTORMS NXT, Daniel Braun, Mitp-Verlag, 2010 Roberta Grundlagen und Experimente: Mit CD-ROM. Roberta-Reihe Band 1 NXT, Fraunhofer IRB Verlag, 2008 lejos Preis Community Installation Eclipse Netbeans JavaEditor kostenlos http://lejos.sourceforge.net/ http://lejos.sourceforge.net/forum/ http://lejos.sourceforge.net/nxt/nxj/tutorial/index.htm http://www.roberta-home.de/de/was-bietet-roberta/robertareihe/installationsanleitung-lejos-unter-eclipse http://lejos.sourceforge.net/nxt/nxj/tutorial/preliminaries/usingnet beans.htm http://javaeditor.org/wiki/index.php/configuration/de Literatur Roberta - Programmieren mit Java: mit CD-ROM. Roberta- Reihe Band 3 NXT, Fraunhofer IRB Verlag, 2009 Programmierung mit LEGO Mindstorms NXT, Kasten Bernds, Springer Verlag, 2010 Fortsetzung nächste Seite
LEGO Mindstorms NXT Programmiersprachen im Überblick Weiterführende Informationen, Fortsetzung GNAT GPL for NXT (ADA) Preis kostenlos http://libre.adacore.com/libre/tools/mindstorms/ http://www.slideshare.net/adacore/gnat-gpl-formindstorms?type=powerpoint Robot C In Deutschland zu beziehen bei Technik-LPE www.shop.lego-in-der-schule.de Preis: Einzelplatz: 75, Download: 25 Schullizenz: 330 Community Literatur Carnegie Mellon Robotics Academy http://www.robotc.net/ http://www.robotc.net/teachingmindstorms/index.html http://carrot.whitman.edu/past/spring-2009-204/ PBlua Preis Community kostenlos http://www.hempeldesigngroup.com/lego/pblua/ http://www.lua.org/ http://mynxt.matthiaspaulscholz.eu/tools/installing_pblua.pdf Hinweis NXT Toolbox for MatLAB Preis Toolkit der RWTH Aachen kostenlos http://www.mindstorms.rwth-aachen.de/ http://www.mindstorms.rwth-aachen.de/trac/wiki/documentation
Weitere Programmiermöglichkeiten Weitere Programmiermöglichkeiten BrickOS (ehemals LegOS) Programmierung in C bzw. C++ http://brickos.sourceforge.net/ DialogOS Steuerung des Roboters per Sprache http://www.clt-st.de/produkte-losungen/dialogos/ Interactive C Ursprünglich entwickelt für den MIT LEGO Robot Design Contest http://www.botball.org/ic http://www.newtonlabs.com/ic/ LegoKara http://www.swisseduc.ch/informatik/karatojava/legokara/ Microsoft Robotics Studio http://msdn.microsoft.com/de-de/library/bb483065.aspx MindSqualls dient zur Erstellung von C#-Programmen, zur Fernsteuerung des NXT über eine Bluetooth-Verbindung http://www.mindsqualls.net nxtosek http://lejos-osek.sourceforge.net/whatislejososek.htm ROS http://www.ros.org/wiki/nxt
LEGO Mindstorms NXT Programmiersprachen im Überblick Quellen http://www.teamhassenplug.org/nxt/nxtsoftware.html http://wiki.mindstormsforum.de/doku.php?id=robolab http://www.ceeo.tufts.edu/robolabatceeo/ http://www.botmag.com/articles/10-31-07_nxt.shtml http://www.robotc.net/forums/ https://www.ni.com/academic/education_edition/ http://en.wikipedia.org/wiki/lego_mindstorms#programming_lang uages_2 http://www.hempeldesigngroup.com/lego/pblua/ http://www.mindstorms.rwth-aachen.de/ http://lejos.sourceforge.net/ http://en.wikipedia.org/wiki/lego_mindstorms