Note: This is an archvied version of our old webpage. Some links might be broken. The current one can be found here.
I7 Logo
Chair for Foundations of Software Reliability and Theoretical Computer Science
Informatik Logo TUM Logo
Lego Mindstorms Praktikum SS12

  Informationen | Neuigkeiten | Termine | Material | Schein

Informationen

Gehalten von:

René Neumann, M.Sc.
Carl Denis
Felix Emmert

ECTS:

10

SWS:

6

Gehalten in:

SS2012

Ziele und Inhalte

Lego Mindstorms sind Lego-Steine, in denen Sensoren (Licht-, Temperatur-, ... -Sensoren), Aktoren (Motoren, Hydraulik, Servo-Motoren, ...) und Computer eingebaut sind und aus denen man vom Baukran ueber den Putzroboter und das Rennauto bis zur Turingmaschine alles bauen kann, was die Phantasie hergibt.

Das Programmierpraktikum Lego Mindstorms soll den Teilnehmerinnen und Teilnehmern sowohl einen grundlegenden Einblick in die Programmierung von Lego Mindstorms als auch (autonomer mobiler und/oder kooperativer) intelligenter Roboter geben und einen kleinen Vorgeschmack auf die entsprechenden Lehrveranstaltungen (Robotik, Verteilte Anwendungen, Kuenstliche Intelligenz) im Hauptstudium liefern.

Zunächst werden Aufbau und Programmierung von Lego Mindstorms vorgestellt und an einfachen Modellen eingeübt. Die Teilnehmerinnen und Teilnehmer lösen in Gruppen zu zwei Personen einige vorbereitete Aufgaben. Den Abschluss bildet ein grösseres kooperatives Projekt, in dem eine teamübergreifende Abschluss-Aufgabe zu lösen ist.

Die Aufgaben stammen dabei aus unterschiedlichen Bereichen von selbständig fahrenden Autos über Verklemmungsprobleme (Lieferanten/Abholerproblem, Speisende Philosophen, etc.) bis hin zur Kommunikation zwischen autonomen Robotern. Alle Aufgaben werden hierbei praktisch (d.h. in Lego) gelöst, wobei ausfuehrlich Gelegenheit zur selbständigen Konstruktion eigener Kreationen gegeben ist.

Bei der Arbeit mit den Lego Mindstorms Robotern werden die Teilnehmerinnen und Teilnehmer zusätzlich einen kleinen praktischen Einblick in den Software-Entwicklungsprozess erhalten, u.a.
  • Erstellung einer Spezifikation,
  • Verifikation,
  • Programmierung,
  • Dokumentation.
Diese Kenntnisse sind fuer spaetere Praktika/SEPs/Arbeiten besonders wertvoll.

Es wird Wert darauf gelegt, dass modularer, gut lesbarer und dokumentierter Programmcode erstellt wird.

Voraussetzungen und Durchführung

Da das Programmierpraktikum in kleinen Gruppen zu 2 Personen durchgeführt wird, ist Teamfähigkeit eine grundlegende Voraussetzung. Sie werden sich mit Ihren Kommilitonen bei der Lösung der Abschluss-Aufgabe durch alle Teams absprechen müssen.

Gute Programmierkenntnisse in JAVA sind eine Voraussetzung.

Programmieraufgabe

Ab diesem Semester gehört das korrekte Lösen einer Programmieraufgabe zu den Zulassungsbedingungen. Dies dient damit auch der Vorbereitung (Auffrischung der Java-Kenntnisse, Algorithmenwissen, ...) auf das Praktikum.
Die genaue Aufgabenstellung findet gibt es als PDF, genauso wie das Java-Grundgerüst.
Abgabedatum: 10. Juni 2012 -- 23:59 Uhr