Themenindex PPS Lego Mindstorms Mglichkeiten mit LEGO Mindstorms

  • Slides: 34
Download presentation

Themenindex • • • PPS Lego Mindstorms Möglichkeiten mit LEGO Mindstorms Unser Projekt Bau-

Themenindex • • • PPS Lego Mindstorms Möglichkeiten mit LEGO Mindstorms Unser Projekt Bau- und Programmierung Vorführung Abschluss (mit Fragerunde)

Unser PPS-Team

Unser PPS-Team

Umfang von LEGO Mindstorms • Programmierbare Legobaustein • Sensoren • Herkömmliche Legobausteine • 2

Umfang von LEGO Mindstorms • Programmierbare Legobaustein • Sensoren • Herkömmliche Legobausteine • 2 verschiedene Systeme – RCX (altes System) – NXT (neues System, von uns verwendet)

NXT-Set • NXT = Abkürzung für „Next“

NXT-Set • NXT = Abkürzung für „Next“

NXT-Prozessor • • • 32 -Bit-Prozessor 4 Sensoreingänge 3 Motorenausgänge 1 USB 2. 0

NXT-Prozessor • • • 32 -Bit-Prozessor 4 Sensoreingänge 3 Motorenausgänge 1 USB 2. 0 -Port Bluetooth-Kommunikation mit PC, Handys sowie anderen NXT‘s möglich

NXT-Motor • mit einem Rotationssensor ausgestattet • Geschwindigkeit und Distanz messbar • Dies erlaubt

NXT-Motor • mit einem Rotationssensor ausgestattet • Geschwindigkeit und Distanz messbar • Dies erlaubt eine präzise Steuerung

NXT-Sensoren • • Druckkontaktsensoren Lichtsensoren Geräuschsensoren Ultraschallsensoren

NXT-Sensoren • • Druckkontaktsensoren Lichtsensoren Geräuschsensoren Ultraschallsensoren

NXT-Ultraschallsensoren • Misst Distanzen mit Hilfe von Ultraschall • Extrem präzise Rückgabe in cm

NXT-Ultraschallsensoren • Misst Distanzen mit Hilfe von Ultraschall • Extrem präzise Rückgabe in cm oder Inch • eignet sich zum Erkennen von Objekten und Abmessen von Distanzen

Unser Projekt • Verschiedene Projekte standen zur Diskussion • Ausgewählt wurde: Roboball

Unser Projekt • Verschiedene Projekte standen zur Diskussion • Ausgewählt wurde: Roboball

Roboball – das Prinzip • Roboball entspricht einer Art Volleyball • Spielfeld mit zwei

Roboball – das Prinzip • Roboball entspricht einer Art Volleyball • Spielfeld mit zwei Seiten, zwei gegnerische Teams, die versuchen, möglichst viele Bälle auf die gegnerische Hälfte zu schiessen/werfen/transportieren

Spielfeld • Jede Spielfeldhälfte ist 2 x 2 Meter gross • Die Banden sind

Spielfeld • Jede Spielfeldhälfte ist 2 x 2 Meter gross • Die Banden sind 30 cm, das Netz (=Abgrenzung der beiden Spielhälften) ist 15 cm hoch

Bälle • Gespielt wird mit 40 mm Squashbällen • Sehr raue Oberfläche • Grosse

Bälle • Gespielt wird mit 40 mm Squashbällen • Sehr raue Oberfläche • Grosse Reibung

Regeln für den Spielbeginn • Roboter darf beliebig im Spielfeld platziert werden • Bälle

Regeln für den Spielbeginn • Roboter darf beliebig im Spielfeld platziert werden • Bälle werden zufällig ins Spielfeld gelegt (gleichmässig auf beide Spielfeldhälften)

Allgemeine Spielregeln • Befördert ein Roboter einen Ball aus dem Spielfeld, wird er ins

Allgemeine Spielregeln • Befördert ein Roboter einen Ball aus dem Spielfeld, wird er ins Feld zurückgelegt, aus dem er kam • Die Roboter dürfen nicht mehr als 5 Bälle gleichzeitig sammeln • Sieger ist, wer am Schluss weniger Bälle in der eigenen Spielfeldhälfte hat

Vorgaben für den Roboterbau • Die Mechanik des Roboters wird ausschliesslich aus Lego aufgebaut

Vorgaben für den Roboterbau • Die Mechanik des Roboters wird ausschliesslich aus Lego aufgebaut • Die Grösse des Roboters darf max. 40 x 40 cm betragen • Der Roboter muss sich später selbst ohne Fernsteuerung auf dem Spielfeld zurecht finden

Aufteilung unseres Teams • Aufteilung unseres Teams in 2 Gruppen • Die beiden Teams

Aufteilung unseres Teams • Aufteilung unseres Teams in 2 Gruppen • Die beiden Teams versuchen mit verschiedenen Lösungsansätzen die Probleme zu bewältigen

Roboter 1 Fedinand 64

Roboter 1 Fedinand 64

Ballaufnahme • Der Ball wird mithilfe von Walzen aufgenommen • Walzen über die volle

Ballaufnahme • Der Ball wird mithilfe von Walzen aufgenommen • Walzen über die volle Breite von 40 cm

Abwurfsystem • Die Bälle werden auf eine „Plattform“ befördert • Diese wird am Netz

Abwurfsystem • Die Bälle werden auf eine „Plattform“ befördert • Diese wird am Netz gekippt, wodurch die Bälle über das Netz geworfen werden

Navigation • 3 Ultraschallsensoren zur „Orientierung“ • Korrekturfaktor = Abstandtheoretisch / Abstandreal

Navigation • 3 Ultraschallsensoren zur „Orientierung“ • Korrekturfaktor = Abstandtheoretisch / Abstandreal

Roboter 2 Hanspeter Wii

Roboter 2 Hanspeter Wii

Ballaufnahme • Der Ball wird auch mit einer Walze aufgenommen • Walze nicht auf

Ballaufnahme • Der Ball wird auch mit einer Walze aufgenommen • Walze nicht auf ganzer Breite, es wird eine Art Trichter eingesetzt

Transport des Balles • Über eine Art Rad wird der Ball nach oben transportiert,

Transport des Balles • Über eine Art Rad wird der Ball nach oben transportiert, um die nötige Höhe für den Abwurf zu erreichen

Abwurfsystem • Der Ball wird mithilfe von 2 sehr schnell gegeneinander drehenden Räder so

Abwurfsystem • Der Ball wird mithilfe von 2 sehr schnell gegeneinander drehenden Räder so stark beschleunigt, dass er über das Netz fliegt

Programmierung • Programmiersprache: "Not e. Xactly C„ • Basiert auf C • Tool zur

Programmierung • Programmiersprache: "Not e. Xactly C„ • Basiert auf C • Tool zur Programmierung: Bricx CC

Bluetooth

Bluetooth

Bluetooth Slave I #include "NXCDefs. h" #define BT_SHOOT 2 #define S_OUTBOX 3 #define S_INBOX

Bluetooth Slave I #include "NXCDefs. h" #define BT_SHOOT 2 #define S_OUTBOX 3 #define S_INBOX 7 sub BTCheck(int conn){ if (!Bluetooth. Status(conn) == NO_ERR){ Text. Out(5, LCD_LINE 2, "Error"); Wait(1000); Stop(true); } } … … task main(){ int in; BTCheck(0); while(true) { if (Receive. Remote. Number(S_INBOX, true, in) != STAT_MSG_EMPTY_MAILBOX && in == 1) { Rotate. Motor(OUT_ABC, 100, 65); Wait(1000); Rotate. Motor(OUT_ABC, -100, 65); Wait(500); Send. Response. Number(S_OUTBOX, 1); } Wait(500); } }

Bluetooth Master sub shoot(){ int ack; Send. Remote. Number(BT_SHOOT, S_OUTBOX, 1); while(true){ if(Receive. Remote.

Bluetooth Master sub shoot(){ int ack; Send. Remote. Number(BT_SHOOT, S_OUTBOX, 1); while(true){ if(Receive. Remote. Number(S_INBOX, true, ack) != STAT_MSG_EMPTY_MAILBOX && ack == 1) { break; } } }

Die fertigen Roboter

Die fertigen Roboter

Fragerunde ? Irgendwelche Fragen

Fragerunde ? Irgendwelche Fragen

Roboball Vorführung • 3 -minütige Live-Vorführung • Wer gewinnt?

Roboball Vorführung • 3 -minütige Live-Vorführung • Wer gewinnt?

Unsere Website http: //people. ethz. ch/~bhildebr/mindstorms/

Unsere Website http: //people. ethz. ch/~bhildebr/mindstorms/

Schlusswort • Das PPS LEGO Mindstorms hat uns allen sehr gefallen • Wir können

Schlusswort • Das PPS LEGO Mindstorms hat uns allen sehr gefallen • Wir können es nur weiterempfehlen!!! • Vielen Dank an unsere Assistenten Wolfgang und Matthias für die Durchführung dieses PPS