1. Δημιουργία πλατφόρμας κατασκευής
ρομποτικών εφαρμογών με χρήση
διαδικτυακού ρομποτικού προσομοιωτή
Δημήτριος Ρακαντάς, ΑΕΜ 7764
Υπό την επίβλεψη του επίκουρου καθηγητή
Ανδρέα Συμεωνίδη
και του υποψήφιου διδάκτορα
Κωνσταντίνου Παναγιώτου
Θεσσαλονίκη, Ιούλιος 2018
Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης
Πολυτεχνική Σχολή
Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών
Τομέας Ηλεκτρονικής και Υπολογιστών
Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογισμών (ΕΠΥ)
issel
3. Σκοπός διπλωματικής
Υλοποίηση ενός συστήματος που επιτρέπει:
oΕκτέλεση προσομοιώσεων στο νέφος
oΠροβολή προσομοίωσης σε διαδικτυακό περιηγητή
oΔιασύνδεση προσομοίωσης με το σύστημα του χρήστη
Δυνατότητα εκτέλεσης ρομποτικής εφαρμογής στο περιβάλλον του χρήστη
με δεδομένα από την προσομοίωση.
8. Ανάλυση Συστήματος (3/6)
Kubernetes
Ενορχήστρωση Docker
Containers για την
λειτουργία του συστήματος
Διάθεση υπηρεσιών στο
διαδίκτυο
o UI
o Gzweb
o Rosbridge
9. Ανάλυση Συστήματος (4/6)
Roscloudbridge
Διασύνδεση περιβάλλοντος
προσομοίωσης στο νέφος με
το ROS περιβάλλον του
χρήστη
Λήψη και αποστολή
δεδομένων μέσω
Rosbridge
Μετατροπή αυτών σε
ROS δημιουργώντας τα
αντίστοιχα ROS Topics
και Services στο ROS του
χρήστη.
11. User’s PC
Roscloudbridge “Local” ROS
Ανάλυση Συστήματος (Roscloudbridge)
“Cloud” ROS
"Cloud” ROS
Topics
Subscribe to “cloud” ROS Topics
12. User’s PC
Roscloudbridge “Local” ROS
“Cloud” ROS
Topics’ data
to “Local”
ROS Topics
Ανάλυση Συστήματος (Roscloudbridge)
“Cloud” ROS
"Cloud” ROS
Topics
Rosbridge
Subscribe to “cloud” ROS Topics
13. User’s PC
Roscloudbridge “Local” ROS
“Cloud” ROS
Topics’ data
to “Local”
ROS Topics
Ανάλυση Συστήματος (Roscloudbridge)
“Cloud” ROS
"Cloud” ROS
Topics
Rosbridge
Subscribe to “cloud” ROS Topics
“Cloud”
ROS
Topics
14. User’s PC
Roscloudbridge “Local” ROS
“Cloud” ROS
Topics’ data
to “Local”
ROS Topics
Ανάλυση Συστήματος (Roscloudbridge)
“Cloud” ROS
"Cloud” ROS
Topics
Rosbridge
“Cloud”
ROS
Topics
“Local”
ROS
Topics
15. User’s PC
Roscloudbridge “Local” ROS
“Cloud” ROS
Topics’ data
to “Local”
ROS Topics
Ανάλυση Συστήματος (Roscloudbridge)
“Cloud” ROS
"Cloud” ROS
Topics
“Local” ROS
Topics
Rosbridge
“Cloud”
ROS
Topics
Publish “local” ROS Topics
“Local” ROS
Topics’ data
to “Cloud”
ROS Topics
“Local”
ROS
Topics
16. Ανάλυση Συστήματος (6/6)
Διασύνδεση μέσω Command-Line-Interface
$ skele tf --ip=<ip:port> --secret=<secret>
o Σύνδεση της tf στο περιβάλλον του χρήστη
$ skele sub --ip=<ip:port> --secret=<secret> --remote=<remote>
o Δημιουργία του αντίστοιχου ROS Topic για λήψη δεδομένων
$ skele pub --ip=<ip:port> --secret=<secret> --remote=<remote>
o Δημιουργία του αντίστοιχου ROS Topic για αποστολή δεδομένων
$ skele srv --ip=<ip:port> --secret=<secret> --remote=<remote>
o Δημιουργία του αντίστοιχου ROS Service για λήψη δεδομένων
$ skele action --ip=<ip:port> --secret=<secret> --remote=<remote>
o Δημιουργία του αντίστοιχου ROS Action για αποστολή και λήψη δεδομένων
17. Σενάριο Χρήσης
Εκτέλεση προσομοίωσης στο νέφος με 2 Turtlebots
1) Ένα Turtlebot με Lidar Hokuyo και Kinect Sensor
2) Ένα Turtlebot με Lidar Hokuyo
Διασύνδεση προσομοίωσης για την εκτέλεση αλγορίθμων από τον χρήστη
1) Τυχαία κίνηση στο χώρο και αποφυγή εμποδίων
1) Λήψη δεδομένων από /robot1/scan
2) Αποστολή δεδομένων σε /robot1/mobile_base/commands/velocity
2) Μετακίνηση σε ένα διαθέσιμο σημείο του map
1) Λήψη δεδομένων από /robot2/map
2) Αποστολή δεδομένων σε /robot2/move_base/goal
19. Μελλοντικές Eπεκτάσεις
Προσθήκη περισσοτέρων μοντέλων ρομπότ, αισθητήρων και περιβαλλόντων(maps)
Επιλογή έκδοσης ROS του περιβάλλοντος προσομοίωσης
Υποστήριξη Rosbags
Εκτέλεση αλγορίθμων στο νέφος και διασύνδεση τους με το περιβάλλον
προσομοίωσης