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 SS13

  Informationen | Neuigkeiten | Termine | Programmieraufgabe | Material | Schein

Informationen

Gehalten von:

René Neumann, M.Sc.
Felix Emmert

ECTS:

10

SWS:

6

Gehalten in:

SS2013

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 über 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, Künstliche 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ößeres 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 ausführlich 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 für spätere Praktika/SEPs/Arbeiten besonders wertvoll.

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

Voraussetzungen

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 weitere Voraussetzung.

Zulassung

Die Anmeldung für das Praktikum ist über lego_info-subscribe@lists.model.in.tum.de möglich. Hierbei garantiert eine Anmeldung noch keinen Platz. Neben dieser Anmeldung ist die Lösung einer Programmieraufgabe notwendig, wie auch die Anwesenheit bei der Vorbesprechung.

Die endgültige Platzverteilung wird bei der Vorbesprechung bekannt gegeben.

Sollten mehr Studenten die Voraussetzungen erfüllen, als Plätze zur Verfügung stehen, so werden diese in der folgenden Reihenfolge vergeben:

  1. Studenten, die sich bereits für das letzte Semester angemeldet und die Aufgabe dort gelöst hatten, aber nicht am Praktikum teilnehmen konnten (z.B. wegen Platzmangel)
  2. Studenten, die das Praktikum nicht einfach im folgenden Semester machen können (z.B. Studenten im letzten Semester, Auslandsstudenten, etc.)
  3. Alle anderen. Sollte es hier mehr Studenten als restliche Plätze geben, so werden die Plätze verlost.