Νικόλαος Πεχλιβανίδης

24
ΠΕΧΛΙΒΑΝΙΔΗΣ ΝΙΚΟΛΑΟΣ ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ: ΑΝΔΡΕΑΣ Λ. ΣΥΜΕΩΝΙΔΗΣ ΙΟΥΛΙΟΣ 2013, ΘΕΣΣΑΛΟΝΙΚΗ Σχεδίαση και ανάπτυξη προσομοιωτή του ρομπότ της ομάδας PANDORA σε εικονικά περιβάλλοντα ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜ ΙΟ Θ ΕΣΣΑΛΟΝΙΚΗΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜ ΗΜ Α ΗΛΕΚΤΡΟΛΟΓΩΝ Μ ΗΧΑΝΙΚΩΝ ΚΑΙ Μ ΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜ ΕΑΣ ΗΛΕΚΤΡΟΝΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ

Upload: issel

Post on 11-Jan-2017

33 views

Category:

Software


3 download

TRANSCRIPT

Page 1: Νικόλαος Πεχλιβανίδης

ΠΕΧΛΙΒΑΝΙΔΗΣ ΝΙΚΟΛΑΟΣ

ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ: ΑΝΔΡΕΑΣ Λ. ΣΥΜΕΩΝΙΔΗΣ

ΙΟΥΛΙΟΣ 2013, ΘΕΣΣΑΛΟΝΙΚΗ

ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ

ΤΟΜΕΑΣ ΗΛΕΚΤΡΟΝΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ

Σχεδίαση και ανάπτυξη προσομοιωτή του ρομπότ της ομάδας PANDORA σε εικονικά περιβάλλοντα

Page 2: Νικόλαος Πεχλιβανίδης

Δομή Παρουσίασης

• Σκοπός Διπλωματικής• Εισαγωγή στο ρομπότ της PANDORA• Πλατφόρμα ROS• Πρόγραμμα Σχεδίασης του ρομπότ• Πρόγραμμα Προσομοίωσης του ρομπότ• Δημιουργία Πιστών• Τι επιτεύχθηκε• Εφαρμογές• Συμπεράσματα• Μελλοντική Εργασία

Page 3: Νικόλαος Πεχλιβανίδης

Σκοπός Διπλωματικής :η προσομοίωση του ρομπότ της ομάδας

PANDORA σε εικονικό περιβάλλον

Για την επίτευξη του στόχου αυτού έγιναν: Τρισδιάστατη Σχεδίαση του ρομπότ Προσομοίωση του ρομπότ Δημιουργία εικονικών πιστών

Page 4: Νικόλαος Πεχλιβανίδης

PANDORA robot:Ρομποτική πλατφόρμα για την

εξευρένηση χώρου και αναγνώρηση θυμάτων.

Υπάρχον Στόχος:Συμμετοχή στο διαγωνισμό RoboCup

Rescue.

Μελλοντικός Στόχος:Εφαρμογή σε πραγματικό

περιβάλλον.

Page 5: Νικόλαος Πεχλιβανίδης

Πλατφόρμα ROS (Robot Operating System)

• Σύστημα επικοινωνίας μέσω ανταλλαγής μηνυμάτων

• Αποτελείται από κόμβους, topics, messages, services και

bags

• Επικοινωνία των κόμβων μέσω topics και services.

Page 6: Νικόλαος Πεχλιβανίδης

Προγράμματα Σχεδίασης

Blender

• Πρόγραμμα ανοιχτού κώδικα

• Υποστηρίζει Python και Scripting

• Δημιουργία 3D εφαρμογών

Ogre 3d

• Πρόγραμμα ανοιχτού κώδικα

• Υποστηρίζει C++

• Βασική λειτουργία του το rendering (Απεικόνιση 3D μοντέλων σε 2D)

Page 7: Νικόλαος Πεχλιβανίδης

Σύγκριση προγραμμάτων και επιλογή Blender

Βασικοί Λόγοι Μειονεκτήματα του Ogre 3d:

Πόλύ καλή γνώση C++ Rendering Επιπλέον ιδιαιτερότητες

Page 8: Νικόλαος Πεχλιβανίδης

3D Δημιουργία των τμημάτων του ρομπότ

Page 9: Νικόλαος Πεχλιβανίδης

Τελική μορφή οχήματος

Page 10: Νικόλαος Πεχλιβανίδης

Προγράμματα Προσομοίωσης

Gazebo

• Multi-robot εφαρμογές

• 3D Περιβάλλον

• Χρήση εξωτερικών βιβλιοθηκών για τον έλεγχο του ρομπότ

• Επικοινωνία με ROS

Player/ Stage

• Multi-robot εφαρμογές

• 2D Περιβάλλον

• Επικοινωνία με ROS

V-Rep

• Multi-robot εφαρμογές

• 3D Περιβάλλον

• Χρήση εξωτερικών βιβλιοθηκών για τον έλεγχο του ρομπότ

• Επικοινωνία με ROS

Page 11: Νικόλαος Πεχλιβανίδης

Σύγκριση προγραμμάτων και επιλογή Gazebo

Σύγκριση 1η Gazebo vs Stage:Χρήση 3D περιβάλλοντος προσομοίωσης από το Gazebo

Σύγκριση 2η Gazebo vs V-Rep:Περισσότερες υπάρχουσες εφαρμογές σε σχέση με το V-Rep

Page 12: Νικόλαος Πεχλιβανίδης

Gazebo Μορφή αρχείου προσομοίωσης SDF (Simulator Description Format)

• Κόσμος : ένα σύνολο από μοντέλα, φώτα, Plugins και γενικές ιδιότητες• Μοντέλα : ένα σύνολο από συνδέσμους (links), joints, αισθητήρες,

και Plugins Links : ένα σύνολο από στοιχεία του μοντέλου Joints : ορίζεται η σχέση μεταξύ των Links (parent-child) Αισθητήρες : αποτελούν τη συλλογή, επεξεργασία, και έξοδος

δεδομένων• Plugins : είναι ο κώδικας ο οποίος συνδέεται με ένα κόσμο (world),

μοντέλο ή αισθητήρα

Page 13: Νικόλαος Πεχλιβανίδης

Δημιουργία SDF αρχείου

Βήμα 1ο : Συλλογή αρχείων που σχεδιάστηκαν στο Blender

Βήμα 2ο : Ένταξη του σχεδιασμένου αρχείου στο πρόγραμμα προσομοίωσης

Βήμα 3ο : Προσθήκη χαρακτηριστικών

1. Πρόσθεση ενός επιπλέον link2. Ρύθμιση του collision element3. Ρύθμιση του visual element4. Ορισμός των αδρανειακών χαρακτηριστικών5. Δημιουργία joints (σχέσεων μεταξύ των link)6. Πρόσθεση των plugins

Page 14: Νικόλαος Πεχλιβανίδης

Περιγραφή PANDORA’s SDF αρχείου

Περιέχει

8 Links

• Βάση οχήματος

• Sonar αισθήτήρας

• Laser (hokuyo)

• Βάση βραχίονα

• Κάτω μέρος βραχίονα

• Πάνω μέρος βραχίονα

• Βάση κεφαλής

• Κεφαλή

7 Joints

• Sonar_joint

• Hokuyo_joint

• Base_arm

• Lower_arm

• Upper_arm

• Base_head

• Head

1 Plugin

• Κίνηση οχήματος

• Εξαγωγή δεδομένων laser

• Εξαγωγή δεδομένων sonar

Page 15: Νικόλαος Πεχλιβανίδης

Ενδεικτικά Αποτελέσματα

Page 16: Νικόλαος Πεχλιβανίδης

Σχεδίαση Εικονικών Πιστών (Arenas)

Πλατφόρμα σχεδίασης Hector_nist_arena_designer

Page 17: Νικόλαος Πεχλιβανίδης

Σχεδίαση και Απεικόνιση Πιστών στο Gazebo

Page 18: Νικόλαος Πεχλιβανίδης

Τι Επιτεύχθηκε

Σχεδιάση του ρομπότ

Ένταξη του στον προσομοιωτή

Δημιουργία Πιστών (Arenas)

Εισαγωγή του ρομπότ στις πίστες

Πλοήγηση του σε αυτές

Χαρτογράφηση πιστών

Page 19: Νικόλαος Πεχλιβανίδης

Σύνθετες εφαρμογές (1)

Page 20: Νικόλαος Πεχλιβανίδης

Σύνθετες εφαρμογές (2)Περιστροφή του ρομπότ μέσα στη πίστα

Page 21: Νικόλαος Πεχλιβανίδης

Σύνθετες Εφαρμογές (3) – Χαρτογράφηση (Slam)

Page 22: Νικόλαος Πεχλιβανίδης

Συμπεράσματα

Ταυτόχρονος έλεγχος κώδικα

Εξοικονόμιση χρόνου

Αποφυγή φθοράς στο υλικό του ρομπότ

Page 23: Νικόλαος Πεχλιβανίδης

Μελλοντικές Επεκτάσεις

1. Προσθήκη αισθητήρων (Sonar, IR)

2. Προσθήκη ερπυστριών στο Gazebo

3. Ολοκλήρωση κώδικα για βραχίονα

Page 24: Νικόλαος Πεχλιβανίδης

Τέλος Παρουσίασης -Ερωτήσεις

Ιδιαίτερες ευχαριστίες στους:• κ. Ανδρέα Λ. Συμεωνίδη, Επικ. Καθηγητή• Τα μέλη και του καθηγητές της ομάδας PANDORA• Αγγελική Καργοπούλου• Άννα Μήνου