Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Programmierung eingebetteter Systeme mit Lego Mindstorms

Ähnliche Präsentationen


Präsentation zum Thema: "Programmierung eingebetteter Systeme mit Lego Mindstorms"—  Präsentation transkript:

1 Programmierung eingebetteter Systeme mit Lego Mindstorms
Softwarepraktikum SS Jianmin Li

2 Informatik XI – Software für eingebettete Systeme
Arbeitsgebiete: Software- und Systems-Engineering für eingebettete Systeme Architekturentwurf und -evaluation Modellbasierte Analyse von nicht-funktionalen Eigenschaften (z.B. Sicherheit, Zuverlässigkeit, Wartbarkeit) Modellbasierter Entwurf Formale Verifikation von Echtzeitsystemen Agile Methoden für eingebettete Systeme

3 Softwarepraktikum SS08 Betreuer:
L²P Lernraum: Ankündigungen Links (freie Javabücher, APIs, …) Wichtige Unterlagen über das Praktikum Anmeldung übers Campus bis zum Jianmin Li Tel.: Büro: Raum 2320 (HBau)

4 Das Ziel des Praktikums
Roboterfußballspiel mit LEGO NXT Baukästen Motivation und Lernziel: Fachliche Kompetenz Eingebettete Systeme Bilderverarbeitung Echtzeit Programmierung von hardwarenahen Komponenten mit Java und C++ Software Engineering Methode (am Prof.Lichter) Teamfähigkeit

5 Aufgabenstellung des LEGO NXT Praktikums
Das LEGO NXT Roboter Fußballspiel LEGO NXT Fußballgruppe mit der Markierung der verschiedenen Farben Ein Torwart Ein Angreifer Kamera Server System Kommunikation per Bluetooth zwischen dem Server und den Robotern Ziel: Wettbewerb zwischen den Teilnehmern

6 Teilprojekt des LEGO Praktikums I
1 Kamera Gruppe und 2-3 Roboter Gruppen Vorbereitungsaufgaben: Aufbau des Spielfelds (Größe, Kamera auswählen):  Kamera Server Gruppe Festlegung der Spielregeln:  LEGO Roboter Gruppe Kommunikationsprotokoll zwischen Kamera Server und NXT:  LEGO Roboter Gruppen + Kamera Server Gruppe

7 Teilprojekt des LEGO Praktikums II
Was können LEGO NXT Roboter machen?: sich in alle Richtungen bewegen können den Ball finden, dribbeln und möglichst viele Tore schießen die für ihn bestimmten Informationen von Kamera-Server filtern. Aus diesen Informationen Bewegungsbefehle berechnen und sie ausführen. Was kann der Kamera Server machen?: Graphische Anzeige der Situation im Spielfeld Die Position und den Winkel von Ball und Roboter anhand der Farbmarkierung auswerten per Bluetooth an die Roboter in weicher Echtzeit Informationen übermitteln Außerdem gibt es einige Vorbereitungsaufgaben, die zu die Gruppen zugeordnet werden.

8 Ausstattung I LEGO NXT Baukasten: LEGO NXT Link:
Weissgrauer NXT Baustein 32-bit-Arm und 8-bit AVR 215 KB Flash RAM und 64 KB RAM 3 Servomotoren mit Rotationssensoren 2 Berührungssensoren 1 Lichtsensoren 1 Ultraschallsensor 1 Akustiksensor Bluetooth und USB Link: Zentraler Baustein ist der NXT, der aus einem Hauptprozessor Atmel 32-bit-ARM und Koprozessor Atmel 8-bit AVR besteht. Der Ko-Prozessor dient zu Ansteuerung von LCD, USB.Controller. Der Hauptprozessor stellt 215 KB Flash RAM und 64 KB RAM für die Firmware bzw. Betriebsysteme und Programmen zur Verfügung. Über die detailierten technischen Daten findet Ihr auf dem Hompage von LEGO NXT.

9 Ausstattung II Entwicklungsumgebung für LEGO NXT leJOS + Eclipse
leJOS (LEGO Java Operating System): Light-Version von JVM Eclipse : offene Entwicklungsplattform für die Codierung LeJOS: es implementiert einen Teil der Java Virtual Maschine. Es ermöglicht die direkte Ausführung von Java-Programmen auf NXT. Naben der Virtual Maschine liefert leJOS NXJ einen Compiler, einen Linker und Java Basisiklassen. Die aktuelle Version von leJOS enthältet einen Plugin für Eclipse. Eclipse ist eine offene Entwicklungsplattform und vereinfacht Java-Programmierungsphase. Dieser Plugin von leJOs ermöglicht die Java Entwicklungsumgebung von Eclipse mit leJOS. Es stellt Funkionalität für den Firmware leJOS Download, sowie Möglichkeiten zum Compilieren, Linken und Herunterladen des Codes zum NXJ.

10 leJOS Eclipse auf dem PC NXJ .class lejosc lejosrun lejos .bin ROM
Loader Virtual Machine Java data Java program Java source code Compiler leJOS Library Java class files Linker leJOS binary IR I/O Sensors, Motors, LCD, Sound, IR .java

11 Ausstattung III Kamera (?): Entwicklungsumgebung: WebCam oder
Alternative auswählen: Euro 1 Laptop als Server Entwicklungsumgebung: Impresario Tool: LTI-Lib mit C++ Microsoft Visual Studio .NET 2003 Bluetooth C++ Bibliothek Link:

12 Ausstattung IV Werkzeuge für Dokumentation und Projektmanagement
SVN(Tortoise) svn://berlin.ixi.informatik.rwth-aachen.de/repos/Lego08/… Kamera Doc Gruppe 1-3 JavaDoc Doxygen 12

13 Organisation Gruppeeinteilung 1 Kamera Gruppe 2 – 3 LEGO NXT Gruppen
pro Gruppe: 5 -6 Personen Rolleneinteilung ein Projektleiter koordiniert mit allen Gruppemitglieder und den anderen Gruppen die Einhaltung des Zeitplans die Erfüllung der gesetzten Meilensteine Jeder Teilnehmer einer Gruppe führt mind. zwei Rollen aus (Anforderungsspezifikator, Architekt, Implementierter, Tester usw.) Es ist sehr empfehlich, in die Vorlesung von Prof. Lichter.

14 Organisation Zeitplan: 13 Termine 09.04. 2008
Vorstellung des Projekts, Gruppeeinteilung und Wahl des Projektleiters Vorlesung von Prof. Lichter, 14:15-15:45, am AH IV Präsentation über Kommunikationsprotokoll, Spielfeld und Spielregeln Präsentation jeder Gruppe über ihre Planung mit Meilensteinen, die Aufteilung der Teilaufgaben sowie die entsprechenden Teilnehmer usw. Spezifikation & Realisierung: Präsentation in 5 Minuten über den aktuellen Stand des Teilprojektes jeder Gruppe Wettbewerbe zwischen Teilnehmern und Abschlussbericht abzugeben 14

15 Organisation Scheinkriterien:
Ein Abschlussbericht ist in Latex anzufertigen Gesamtkonzept, Aufteilung der Teilaufgaben innerhalb einer Gruppe Zeitplanung & Meilensteine Spezifikation der Anforderungen des Teilprojektes Software Architektur des Teilprojektes (Software Module, Schnittstellen) Ansätze von Methoden und Tools in der Implementierung Testfälle und Testergebnisse Bewertung der Vorgehensweise innerhalb der Gruppe, aufgetretene Probleme, nicht realisierte Funktionalität Erfolgreiche Teilnahme an allen Terminen Vorlesung von Prof. Lichter am , 14:15-15:45, am AH IV

16 Organisation Zugangsdaten zu SVN Server und Laptop im Praktikumraum
L2P Elearning-Raum Impresario Tool


Herunterladen ppt "Programmierung eingebetteter Systeme mit Lego Mindstorms"

Ähnliche Präsentationen


Google-Anzeigen