30
INSTITUT FÜR ANGEWANDTE INFORMATIK UND FORMALE BESCHREIBUNGSVERFAHREN AIFB KIT – Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Software Engineering (Praktikum) Programmierung des Lego Mindstorms NXT Raumabbildung mittels eines NXT-Radarfahrzeugs

SoftwareEngineeringPraktikumRev_final-1

Embed Size (px)

Citation preview

Page 1: SoftwareEngineeringPraktikumRev_final-1

INSTITUT FÜR ANGEWANDTE INFORMATIK UND FORMALE BESCHREIBUNGSVERFAHREN

AIFB

KIT – Universität des Landes Baden-Württemberg undnationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Software Engineering (Praktikum)Programmierung des Lego Mindstorms NXT

Raumabbildung mittels eines NXT-Radarfahrzeugs

Page 2: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

2 01.02.11 AIFB

EinleitungAufbau des NXTPC-ProgrammZusammenfassung & Ausblick

Übersicht

Page 3: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

3 01.02.11 AIFB

EinleitungFilmScreenshotsSVN

Aufbau des NXTDas ProgrammZusammenfassung & Ausblick

Übersicht

Page 4: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

4 01.02.11 AIFB

Einleitung: Film – Vorschau

Page 5: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

5 01.02.11 AIFB

Einleitung: Film

Page 6: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

6 01.02.11 AIFB

Einleitung: Screenshots – Anfahrtsvektor 0/0BlueCove version 2.1.0 on winsockFound: NXT2Range:255.0Range:27.0Range:28.0…Range:27.0Range:27.0Range:27.0Sonderfall Abwaerts am Anfangrichtung:truek-NEGATIV:2richtung:truek-NEGATIV:2NXT-Befehle werden aufgerufenAnfahrtslueckengroesse:15.64719060195324Anfahrtslueckengroesse:2.258707580237991Anfahrtslueckengroesse:19.17912235533945*********Sonderfall erste Runde!************Es gibt keine Anfahrtsluecken, die fuer den NXT geeignet sind!Daher Drehung um 1800.0Rotation-Keine Luecke gefundenGrad:180Weiterscannen...

Page 7: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

7 01.02.11 AIFB

Einleitung: Screenshots – Anfahrtsvektor 1/0Range:44.0richtung:truek-POSITIV:2k-NEGATIV:3NXT-Befehle werden aufgerufenAnfahrtslueckengroesse:49.70322753276816Anfahrtsvektork:1i:00.0RotationGrad:-9.391373147454829RadialeAbstandmessungAbstand:23.87839Translatorische Bewegung-SOLLLaenge-SOLL:40.50799048590869AbstandmessungTranslatorischAbstand:44.0Translatorische Bewegung-ISTLaenge-IST:40.50799048590869RadialeAbstandmessung2Abstand:34.0Fand eine Kollision statt?Float-in:0.0RotationGrad:0.0Weiterscannen...

Page 8: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

8 01.02.11 AIFB

Einleitung: Screenshots – Anfahrtsvektor 2/0Range:75.0richtung:truek-NEGATIV:2NXT-Befehle werden aufgerufenAnfahrtslueckengroesse:70.60185591874682Anfahrtsvektork:2i:040.50799048590869RotationGrad:25.285535995470454RadialeAbstandmessungAbstand:34.0Translatorische Bewegung-SOLLLaenge-SOLL:62.52874926949309AbstandmessungTranslatorischAbstand:53.0Der Anfahrtsvektor wurde gekuerzt!Translatorische Bewegung-ISTLaenge-IST:52.99999999999999RadialeAbstandmessung2Abstand:38.868576Fand eine Kollision statt?Float-in:0.0RotationGrad:-30.49093146827029Weiterscannen...

Page 9: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

9 01.02.11 AIFB

Einleitung: Screenshots – Anfahrtsvektor 3/0Range:70.0Range:70.0Range:70.0Range:70.0Range:70.0Range:70.0richtung:truek-POSITIV:2k-NEGATIV:3richtung:truek-NEGATIV:2richtung:truek-NEGATIV:2richtung:truek-NEGATIV:2NXT-Befehle werden aufgerufenAnfahrtslueckengroesse:51.21571890305503Anfahrtsvektork:3i:052.99999999999999RotationGrad:-9.439995807373293RadialeAbstandmessungAbstand:18.693762Um eine Kollision zu vermeiden, wird dieser Anfahrtsvektor nicht genutzt!...

Page 10: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

10 01.02.11 AIFB

Einleitung: Screenshots – Anfahrtsvektor 3/i Anfahrtslueckengroesse:5.580449625592849Anfahrtslueckengroesse:1.883896323180394Anfahrtslueckengroesse:4.735217773710122Momentaner Scanpunkt: 3Zurueck zum letzten Scanpunkt!

Page 11: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

11 01.02.11 AIFB

Einleitung: Screenshots – Rückwärts 3 → 2 Rotation-LINKS:149.50906853172972Vorwärts:52.99999999999999Rotation-RECHTS:154.71446400452953Momentaner Scanpunkt: 2Zurueck zum letzten Scanpunkt!

Page 12: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

12 01.02.11 AIFB

Einleitung: Screenshots – Rückwärts 2 → 1Rotation-RECHTS:180.0Vorwärts:40.50799048590869Rotation-LINKS:170.60862685254517Momentaner Scanpunkt: 1Zurueck zum letzten Scanpunkt!

Page 13: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

13 01.02.11 AIFB

Einleitung: Screenshots – Rückwärts 1 → 0Rotation-RECHTS:180.0Vorwärts:0.0Rotation-RECHTS:0.0Anfahrtslueckengroesse:15.64719060195324Anfahrtslueckengroesse:2.258707580237991Anfahrtslueckengroesse:19.17912235533945NXT ausschalten!EXIT

Page 14: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

14 01.02.11 AIFB

Einleitung: Screenshots – Raumabbildung I

Page 15: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

15 01.02.11 AIFB

Einleitung: Screenshots – Raumabbildung II

Page 16: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

16 01.02.11 AIFB

Einleitung: SVN I

Page 17: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

17 01.02.11 AIFB

Einleitung: SVN II

Page 18: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

18 01.02.11 AIFB

EinleitungAufbau des NXTPC-ProgrammZusammenfassung & Ausblick

Übersicht

Page 19: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

19 01.02.11 AIFB

EinleitungAufbau des NXT

ElementeModule

Das ProgrammZusammenfassung & Ausblick

Übersicht

Page 20: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

20 01.02.11 AIFB

Aufbau des NXT: Elemente

Aktoren1 Motor – Radar & Abstandsmessung2 Motoren - Fortbewegung

Sensoren 1 Ultraschallsensor – Radar & Abstandsmessung1 Tastsensor - Kollisionserkennung

(Bluetooth-Schnittstelle)Bidirektionale Funkverbindung PC ↔ NXT

NXT-Haupteinheit & Bauelemente

Page 21: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

21 01.02.11 AIFB

Aufbau des NXT: Module I

Modul1: RadarParallele Motorbewegung und SensornutzungRadar2-Klasse (Runnable1)

Modul2: FortbewegungTripodDriver-Klasse

Modul3: Bluetooth-KommunikationSteuerung: PC → NXTSensorwertübergabe: NXT → PC Communication-Klasse (Runnable2)

Page 22: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

22 01.02.11 AIFB

Aufbau des NXT: Module II

Modul4: KollisionserkennungKollisionserkennung (Runnable3)Präventiver STOP & Speicherung der zurückgelegten DistanzWertübergabe an die Schnittstelle NXT → PC

Modul5: AbstandsmessungAbstandsmessung90°- Kegelmessung (tranlatorische Bewegung)270°- Kegelmessung (rotatorische Bewegung)Wertübergabe an die Schnittstelle NXT → PC

Page 23: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

23 01.02.11 AIFB

EinleitungAufbau des NXTPC-ProgrammZusammenfassung & Ausblick

Übersicht

Page 24: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

24 01.02.11 AIFB

EinleitungAufbau des NXTPC-Programm

AufbauAblauf

Zusammenfassung & Ausblick

Übersicht

Page 25: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

25 01.02.11 AIFB

PC-Programm: Aufbau I

GUIEchtzeit Radarbild & ParametereingabeGrafische AuswertungErgebnis-Raumabbildung

Informationsverarbeitung-GrafikRadarbilderstellung (Echtzeit)Radarbildauswertung

Sensorwertbereinigung → MedianSchnittmengeInformationstransformation(Lücken, Anfahrtslücken, Anfahrtsvektoren)

Raumabbildung

Page 26: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

26 01.02.11 AIFB

PC-Programm: Aufbau II

Informationsverarbeitung-BefehleRobotersteuerungKollisionsvermeidung

Bluetooth SchnittstelleNXTKommunikation

DatenspeicherungDynamicDataStore (RAM)

Page 27: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

27 01.02.11 AIFB

Lückenpunkte&

Lückenlinien

Medianglättung(Ausreißer)Anfahrtslücken

PC-Programm: Ablauf

Medianglättung(Ausreißer)

Radarbilderstellung (Echtzeit) Schnittmenge

Nächste Iteration Raumabbildung(Koordinatentrans.)

AnfahrtsvektorenAnfahrtsvektorwahl

&Rückwärtsschritt

NXT-Befehle

NXT-Com.

Page 28: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

28 01.02.11 AIFB

EinleitungAufbau des NXTPC-ProgrammZusammenfassung & Ausblick

Übersicht

Page 29: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

29 01.02.11 AIFB

Zusammenfassung & Ausblick

Zusammenfassung:Ungenauigkeiten: Servomotor, Ultraschallsensor, Zahlenbereiche!Es gilt die richtigen Lücken zu finden (Radarschatten)!Geschwindigkeit vs. Genauigkeit (Radar) Es muß ein Tastsensor zur Sicherheit eingesetzt werden!Es gibt viele Einstellmöglichkeiten für die Parameter!Problemfall: Ecke!

Ausblick:Optimierung der Baustruktur und des dynamischen VerhaltensWeitere Filter für die Sensorwerte Speicherung nicht nur im RAMVerbesserung der Stream-KommunikationVerb. der Kollisionserkennung u. Abstandsmessung (hinten)

Page 30: SoftwareEngineeringPraktikumRev_final-1

Sascha Friedrich:Raumabbildung mittels eines NXT-Radarfahrzeugs

30 01.02.11 AIFB

Ich danke für Ihre Aufmerksamkeit!