Successfully reported this slideshow.
Your SlideShare is downloading. ×

Design and implementation of an Automation Mechanism for the configuration of robotic devices for the simulator Gazebo

Design and implementation of an Automation Mechanism for the configuration of robotic devices for the simulator Gazebo

Download to read offline

In the age of rapid development of technology, the use of robotic systems is wide throughout the spectrum of modern life and the automation achieved through the use of robotic systems, yields large and faster production at relatively lower costs. However, robots often behave inconsistently during testing, given the complexity of the systems and the large variability of the environment. Robotic simulations provide the solution to this problem, as they provide a low-cost, easily accessible virtual robot development environment. They are used to quickly evaluate the design of a robot, simulate virtual sensors, provide a reduced model for predictable model controllers, and an architecture for real-world control of robots, and so on. Robotic simulations take place in special software, robotic simulators. A robotics simulator is a simulator, used to create an application for a physical robot without depending on the actual machine, thus saving cost and time. In some cases, these applications can be transferred to the physical robot (or rebuilt) without modification. One of the most popular applications for robotic simulators is the 3D modeling and rendering of a robot and its environment. This type of robotics software has a simulator, which is a virtual robot, which is capable of mimicking the motion of a real robot in a real situation. Some robotic simulators even employ physics engines for a more realistic robotic motion output. There is a large number of robotics simulators, each serving, either different or same purposes. However, while robotics simulators offer a wealth of benefits, the need to produce high quality applications and software has become more pressing than ever. Increasing productivity, reducing errors (debugging), auditing, verifying and maintaining software play a crucial role in the quality of the final product. A solution to this problem derives from automation software engineering. (continue in full text)

In the age of rapid development of technology, the use of robotic systems is wide throughout the spectrum of modern life and the automation achieved through the use of robotic systems, yields large and faster production at relatively lower costs. However, robots often behave inconsistently during testing, given the complexity of the systems and the large variability of the environment. Robotic simulations provide the solution to this problem, as they provide a low-cost, easily accessible virtual robot development environment. They are used to quickly evaluate the design of a robot, simulate virtual sensors, provide a reduced model for predictable model controllers, and an architecture for real-world control of robots, and so on. Robotic simulations take place in special software, robotic simulators. A robotics simulator is a simulator, used to create an application for a physical robot without depending on the actual machine, thus saving cost and time. In some cases, these applications can be transferred to the physical robot (or rebuilt) without modification. One of the most popular applications for robotic simulators is the 3D modeling and rendering of a robot and its environment. This type of robotics software has a simulator, which is a virtual robot, which is capable of mimicking the motion of a real robot in a real situation. Some robotic simulators even employ physics engines for a more realistic robotic motion output. There is a large number of robotics simulators, each serving, either different or same purposes. However, while robotics simulators offer a wealth of benefits, the need to produce high quality applications and software has become more pressing than ever. Increasing productivity, reducing errors (debugging), auditing, verifying and maintaining software play a crucial role in the quality of the final product. A solution to this problem derives from automation software engineering. (continue in full text)

More Related Content

More from ISSEL

Related Books

Free with a 30 day trial from Scribd

See all

Design and implementation of an Automation Mechanism for the configuration of robotic devices for the simulator Gazebo

  1. 1. Σχεδίαση και ανάπτυξη Μηχανισμού Αυτοματοποίησης της παραμετροποίησης ρομποτικών συσκευών για το περιβάλλον προσομοίωσης Gazebo Design and implementation of an Automation Mechanism for the configuration of robotic devices for the Gazebo simulator ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εργαστήριο Επεξεργασίας Πληροφορία και Υπολογισμών Διπλωματική Εργασία του Χωραφά Χρήστου Α.Ε.Μ: 8718 Μάρτιος, 2021 Επιβλέποντες: Αναπληρωτής καθηγητής: Ανδρέας Λ. Συμεωνίδης Διδάκτωρ: Ζολώτας Χριστόφορος
  2. 2. Η άνθιση της τεχνολογίας έχει “εγκαταστήσει” στη ζωή μας το λογισμικό και τη ρομποτική. • Υπάρχει μεγάλη ανάγκη για κατασκευή ρομπότ και λογισμικού για ρομπότ. • Οι περισσότερες δοκιμές ρομπότ και εφαρμογών για αυτά γίνονται σε ειδικά λογισμικά, τους Ρομποτικούς Προσομοιωτές. • Μειώνεται έτσι σημαντικά το κόστος και ο χρόνος ανάπτυξης. Λογισμικό και Ρομπότ
  3. 3. Παρόλα αυτά, συνεχίζουν να υπάρχουν κάποιες δυσκολίες: Στο Gazebo, η παραμετροποίηση ενός στοιχείου του απαιτεί τη σύνταξη ενός .sdf αρχείου, που περιγράφει αυτό το στοιχείο. Πράγμα δύσκολο, αφού η σύνταξη ενός τέτοιου αρχείου απαιτεί ενδελεχή μελέτη των προδιαγραφών του SDFormat και γνώση της XML. Πολλοί μηχανισμοί παράγουν κώδικα για ρομπότ, αλλά δε διαθέτουν προσομοιωτές ή δυνατότητα προσομοίωσης. 1 2 3 Προβλήματα
  4. 4.  Αυξάνεται η παραγωγικότητα και ποιότητα λογισμικού.  Συνδυάζεται με μια μεθοδολογία αυτοματοποίησης της μηχανικής λογισμικού, τη Μοντελοστραφή Μηχανική.  Ταυτόχρονα, τις τέλευταίες δύο δεκαετίες αναπτύσσεται ραγδαία ο κλάδος της Αυτοματοποιημένης Μηχανικής Λογισμικού.  Προσφέρει υψηλότερο αφαιρετικό επίπεδο, ώστε να επικεντρώνεται ο μηχανικός στο πρόβλημα και όχι στις λεπτομέρειες υλοποίησης. Λύση – Αυτοματοποίηση Λογισμικού
  5. 5. Μηχανισμός Αυτοματοποίησης Πιο εύκολη/γρήγορη προσομοίωση Δεν απαιτεί τεχνικές γνώσεις Αυτοματοποίηση προσομοίωσης για εφαρμογές ρομποτικής TekTrain Παραγωγή αρχείων αισθητήρων για τον προσομοιωτή Gazebo Στόχοι Διπλωματικής Εργασίας
  6. 6. Ροές Διπλωματικής Γραφική Διεπαφή Gazebo Models M2T Παραγωγή .sdf TekTrain TekTrain App M2M Gazebo Models 1. 2. Ροές Διπλωματικής
  7. 7. Βήματα Ανάπτυξης Μελέτη του SDFormat. Προκύπτει από το SDFormat, περιέχει την πληροφορία των μοντέλων. Μετασχηματισμός μοντέλων σε αρχεία .sdf. Δημιουργία Μετασχηματισμού Μ2Τ Μέσω του Sirius UI. Συλλογή προδιαγραφών που ορίζουν τη σύνταξη ενός .sdf αρχείου. Δημιουργία Μετασχηματισμού Μ2M Δημιουργία μετα-μοντέλου. Μετασχηματισμός εφαρμογής TekTrain σε Gazebo Model. Υλοποίηση γραφικής διεπαφής
  8. 8. 1. Η κλάση Sensor. Περιέχει τα βασικά χαρακτηριστικά, που κληρονομεί ο κάθε αισθητήρας. 2. H κλάση Noise. Εισάγει θόρυβο και αποτελεί έξτρα παραμετροποίηση για ορισμένους αισθητήρες. 3. Ο αισθητήρας Sonar. Πέρα από τα δικά του ξεχωριστά χαρακτηριστικά, κληρονομεί και τα βασικά της κλάσης Sensor. Μετα-Μοντέλο
  9. 9. Γραφική Διεπαφή Στη γραφική διεπαφή οι αισθητήρες χωρίζονται σε τύπους Node και Container. Nodes είναι οι αισθητήρες που δε δέχονται έξτρα παραμετροποίηση, σε αντίθεση με τα Containers. Οι αισθητήρες Nodes απεικονίζονται με το εικονίδιο τους, ενώ οι αισθητήρες Containers απεικονίζονται ως “boxes”, μέσα στα οποία μπορεί ο χρήστης να εισάγει περαιτέρω λειτουργικότητα. Στη δεξιά πλευρά βρίσκεται η παλέτα της διεπαφής και περιλαμβάνει όλους τους αισθητήρες και τις έξτρα λειτουργικότητες των αισθητήρων τύπου Container. Γραφική Διεπαφή
  10. 10. Γραφική Διεπαφή Στη γραφική διεπαφή ορίζονται και κάποιοι Κανόνες Επικύρωσης, που διασφαλίζουν τη σωστή μοντελοποίηση αισθητήρων, χωρίς σφάλματα. Ενδεικτικά, αριστερά παρουσιάζεται ένας κανόνας που εξασφαλίζει τη μοναδική ονομασία των αισθητήρων. Γραφική Διεπαφή
  11. 11. Τα Gazebo Models Camera και Sonar, που δημιουργήθηκαν στο GUI. Δεξιά απεικονίζονται οι παραμετροποιήσεις, που μπορούν να δεχτούν. Γραφική Διεπαφή Παραδείγματα μοντέλων αισθητήρων
  12. 12. Γραφική Διεπαφή Model To Text – M2T Sonar Sensor Εισαγωγή του δημιουργούμενου μοντέλου Sonar από τη γραφική διεπαφή στον M2T μετασχηματισμό και παραγωγή του .sdf αρχείου του.
  13. 13. Γραφική Διεπαφή Model To Model – M2M Εισαγωγή μιας εφαρμογής TekTrain στον M2Μ μετασχηματισμό και παραγωγή των αντίστοιχων Gazebo Models. TekTrain App Παραδοχή: δημιουργείται μόνο ένα μοντέλο αισθητήρα για κάθε σύνολο λειτουργικοτήτων, εκτός από το Sonar, που δημιουργείται ένα για κάθε κατεύθυνση ανίχνευσης εμποδίου.
  14. 14. Ακολουθεί ένα βίντεο, στο οποίο παρουσιάζεται η Ροή 1. Δημιουργία μοντέλων αισθητήρων μέσω της γραφικής διεπαφής και μετασχηματισμός τους σε .sdf αρχεία. Παράδειγμα Χρήσης 1
  15. 15. Ακολουθεί ένα βίντεο, στο οποίο παρουσιάζεται η Ροή 2. Δημιουργία μιας εφαρμογής TekTrain και ο μετασχηματισμός της σε Gazebo Models. Παράδειγμα Χρήσης 2
  16. 16. Αφού γίνει η εισαγωγή των παραγώμενων .sdf αρχείων στο Gazebo, μπορούμε να προχωρήσουμε στην προσομοίωση. Ακολουθεί ένα βίντεο, στο οποίο παρουσιάζεται μία προσομοίωση στο Gazebo με ένα όχημα. Φέρει πάνω του τους αισθητήρες Sonar και Ray, που δημιουργήθηκαν με τον μηχανισμό αυτοματοποίησης. Ενδεικτική Προσομοίωση
  17. 17. .
  18. 18. Συμπεράσματα και Επεκτάσεις Οι χρήστες δε χρειάζεται • Να γνωρίζουν τη σύνταξη ενός .sdf αρχείου, που περιέχει τους αισθητήρες και τις παραμέτρους τους. • Άρα ουτε την XML. Οι χρήστες μπορούν • Να φτιάξουν κάποιο μοντέλο σε μια άλλη γραφική εφαρμογή, και να μετασχηματίσουν στη συνέχεια το μοντέλο τους σε μοντέλο συμβατό με το Gazebo. • Να προχωρήσουν απευθείας στην προσομοίωση, μειώνοντας την πολυπλοκότητα και τα σφάλματα. Επεκτάσεις • Διαφορετικά επίπεδα παραμετροποίησης ( χαμηλό, υψηλο κλπ.). • Εισαγωγή Gazebo Plug-ins στα μοντέλα (έξτρα λειτουργίες). • Υποστήριξη M2M και για άλλες εφαρμογές, όπως TekTrain.
  19. 19. Σας ευχαριστώ για τον χρόνο σας!

×