LEGO Mindstorms NXT Programmiersprachen im Überblick

Transcription

LEGO Mindstorms NXT Programmiersprachen im Überblick
Lernen mit Robotern
LEGO Mindstorms NXT
Programmiersprachen im
Überblick
LEGO Mindstorms NXT Programmiersprachen im Überblick
Impressum
Ausgabe
September 2010
Copyright
© 2004-2009 by
Fraunhofer-Institut Intelligente Analyse- und Informationssysteme (IAIS)
Autoren
Thorsten Leimbach, Sebastian Trella
Projektgruppe
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: [email protected]
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 PartnerInnen 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 RobertaKursleiterInnen 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 CDROM 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 leJOS 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 RobertaTeacher werden erklärt, Grundsätze von Roberta-Kursen erläutert und der Zertifizierungsprozess für regionale RobertaZentren, 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 RobotikWettbewerben. 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 Sprache Preis NXT-G 2.0
LabVIEW
Education
Edition
Robolab
2.9
NXC
leJOS
RobotC
GNAT GPL for
NXT1
PBLua
Graphisch Graphisch Graphisch C‐ähnlich Java‐Derivat C‐ähnlich Basic Lua Windows Windows, Mac OS, Linux Windows, Mac OS, Linux Siehe nächste Seite Betriebssystem Firmware Windows, MAC OS NXT‐Firmware Geeignte für Programmierumgebung Sprachumfang NXT‐Firmware X Schleifen „Switch‐Case Anweisung“ √ √ √ Trigonometrische Funktionen X Fließkomma Arithmetik X Bluetooth Verbindung Verbindung mit anderen Geräten
Nein Verbindung von NXT zu NXT Ja Protokolle BT NXT‐Filesystem Zugriff Ja, eingeschränkt
Integriertes Data Logging Ja RCX‐kompatibel 1
Windows, Mac OS NXT‐
Firmware Einsteiger Fortgeschrittene
Einsteiger LEGO Mind‐
storms Eudcation / Retail NXT LabVIEW Robolab Felder (Array) „If‐Anweisung“ Windows, Mac OS Nein Angaben basierend auf Ada 2005 & SPARK
√ √ √ √ √ √ X √ √ √ √ Ja Ja BT + I2C Ja Ja X Nein Nein ‐ Ja Ja Nein Ja Windows, Mac Windows, Mac OS, Linux, BSD OS, Linux NXT‐Firmware Java JVM NXT‐Firmware Geübte Geübte Einsteiger Fortgeschrittene
Einsteiger u.a. Netbeans, Eclipse, u.a. Bricx Com‐
Javaeditor RobotC mand Center √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ Ja Ja BT + I2C Ja Ja, rudimentär Vorgänger: NBC Ja Ja BT + I2C + USB Ja Ja, rudimentär Ja, ältere Versionen Ja Ja BT + I2C Ja Ja Ja, ältere Versionen nxtOSEK NXT‐lua Fortgeschrittene Fortgeschrittene u.a. Netbeans, Eclipse √ √ √ √ √ √ Eclipse √ √ √ X √ √ Ja Ja Ja Ja BT BT + I2C Ja Ja Nein, nur manuell Nein, nur manuell Nein Nein Weiterführende Informationen
NXT-G
LEGO Mindstorms 8547 - 2.
Generation
LEGO Mindstorms 9797
(Schulversion)
Preis
Sofware inklusive
Einzelplatzlizenz:
Spielzeugladen
Schullizenz:
75,80€356,88€-
www.shop.lego-in-der-schule.de
http://www.vs-moebel.de/56.0.html?&L=0&FL=10
Hersteller
LEGO Education
Community
http://mindstorms.lego.com/
Tutorials
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€
Hersteller
National Instruments
Community
http://forums.ni.com/t5/LabVIEW/bd-p/170
Tutorial
http://zone.ni.com/devzone/cda/tut/p/id/10243
Literatur
Programmierung von LEGO MINDSTORMS NXT mit NI LabVIEW,
Martin Engels, Hanser Fachbuch, 2010
Robolab 2.9
Tuffts University
Preis
Einzelplatz: 98€
Community
http://www.ceeo.tufts.edu/robolabatceeo/
Literatur
ROBOLAB Lehrerhandbuch Teil 1 +2, Mindstorms for Schools, Lego# 40305.230.007
Tutorial
http://www.cipce.rpi.edu/programs/robotics/robolab/lesson2/lesso
n2.html
Fortsetzung nächste Seite
Weiterführende Informationen
Weiterführende Informationen, Fortsetzung
NXC
In der Entwicklungsumgebung bricxcc enthalten.
Preis
kostenlos
Hersteller
Open Source Community / Johen Hansen
http://bricxcc.sourceforge.net/
Community
http://sourceforge.net/tracker/?group_id=68600
Tutorial
DE
http://www.roberta-home.de/de/was-bietet-roberta/robertareihe/nxc-tutorial
DE
http://lukas.internet-freaks.net/robotic/nxttutorial.html
EN
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
kostenlos
Hersteller
http://lejos.sourceforge.net/
Community
http://lejos.sourceforge.net/forum/
Tutorial
http://lejos.sourceforge.net/nxt/nxj/tutorial/index.htm
Installation
Eclipse
http://www.roberta-home.de/de/was-bietet-roberta/robertareihe/installationsanleitung-lejos-unter-eclipse
Netbeans
http://lejos.sourceforge.net/nxt/nxj/tutorial/Preliminaries/UsingNet
beans.htm
JavaEditor
http://javaeditor.org/wiki/index.php/Configuration/de
Literatur
•
Roberta - Programmieren mit Java: mit CD-ROM. RobertaReihe 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
Hersteller
http://libre.adacore.com/libre/tools/mindstorms/
Tutorial
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€
Hersteller
Carnegie Mellon Robotics Academy
Community
http://www.robotc.net/
Tutorial
http://www.robotc.net/teachingmindstorms/index.html
Literatur
http://carrot.whitman.edu/Past/Spring-2009-204/
PBlua
Preis
kostenlos
Hersteller
http://www.hempeldesigngroup.com/lego/pblua/
Community
http://www.lua.org/
Tutorial
http://mynxt.matthiaspaulscholz.eu/tools/Installing_pbLua.pdf
Hinweis
NXT Toolbox
for MatLAB
Toolkit der RWTH Aachen
Preis
kostenlos
Hersteller
http://www.mindstorms.rwth-aachen.de/
Tutorial
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

Documents pareils