Περίληψη
Οι πρόσφατες εξελίξεις στους τομείς των ενσωματωμένων συστημάτων, των ασύρματων επικοινωνιών και των συστημάτων αυτομάτου ελέγχου έχουν οδηγήσει στην ραγδαία ανάπτυξη των αυτόνομων μη επανδρωμένων οχημάτων (UVs). Σήμερα τα UVs είναι ευρέως διαθέσιμα στην αγορά σε διάφορες εκδόσεις και τύπους ενώ διαθέτουν δυνατότητες αυτόνομης πλοήγησης στο έδαφος, στον αέρα αλλά και στη θάλασσα. Επίσης, αυτά τα οχήματα μπορεί να εξοπλιστούν με εξειδικευμένους αισθητήρες, ενεργοποιητές και μηχανισμούς αλληλεπίδρασης με το περιβάλλον, ανάλογα με τον σκοπό της εκάστοτε αποστολής/εφαρμογής.Παρά τον μεγάλο αριθμό και την τεχνολογική ποικιλία σε διαθέσιμα UVs οι εφαρμογές που ωφελούνται από αυτά, όπως για παράδειγμα εφαρμογές από τον τομέα της γεωργίας ακριβείας και της επιτήρησης δασικών περιοχών, κάνουν χρήση συνήθως μεμονωμένων οχημάτων ενός συγκεκριμένου τύπου. Οι περισσότερες από αυτές τις εφαρμογές θα ωφελούνταν πολλαπλάσια αν μπορούσαν να χρησιμοποιηθούν πολλά και ετερογενή UVs. Για παράδειγμα, α ...
Οι πρόσφατες εξελίξεις στους τομείς των ενσωματωμένων συστημάτων, των ασύρματων επικοινωνιών και των συστημάτων αυτομάτου ελέγχου έχουν οδηγήσει στην ραγδαία ανάπτυξη των αυτόνομων μη επανδρωμένων οχημάτων (UVs). Σήμερα τα UVs είναι ευρέως διαθέσιμα στην αγορά σε διάφορες εκδόσεις και τύπους ενώ διαθέτουν δυνατότητες αυτόνομης πλοήγησης στο έδαφος, στον αέρα αλλά και στη θάλασσα. Επίσης, αυτά τα οχήματα μπορεί να εξοπλιστούν με εξειδικευμένους αισθητήρες, ενεργοποιητές και μηχανισμούς αλληλεπίδρασης με το περιβάλλον, ανάλογα με τον σκοπό της εκάστοτε αποστολής/εφαρμογής.Παρά τον μεγάλο αριθμό και την τεχνολογική ποικιλία σε διαθέσιμα UVs οι εφαρμογές που ωφελούνται από αυτά, όπως για παράδειγμα εφαρμογές από τον τομέα της γεωργίας ακριβείας και της επιτήρησης δασικών περιοχών, κάνουν χρήση συνήθως μεμονωμένων οχημάτων ενός συγκεκριμένου τύπου. Οι περισσότερες από αυτές τις εφαρμογές θα ωφελούνταν πολλαπλάσια αν μπορούσαν να χρησιμοποιηθούν πολλά και ετερογενή UVs. Για παράδειγμα, αυτό θα επέτρεπε να καλυφθούν μεγαλύτερες εκτάσεις και περισσότερα σημεία ενδιαφέροντος σε μικρότερο χρονικό διάστημα. Επίσης η συνδυασμένη χρήση αυτόνομων οχημάτων με συμπληρωματικές δυνατότητες κίνησης, αίσθησης και αλληλεπίδρασης με το περιβάλλον θα δημιουργούσε νέες δυνατότητες στην επιτήρηση αλλά και τον έλεγχο φυσικών διαδικασιών.Όμως, η χρήση πολλών UVs ταυτόχρονα θέτει νέες προκλήσεις. Ένα καίριο ζήτημα είναι το πώς μπορεί να υποστηριχθεί με όσο γίνεται πιο απλό και ευέλικτο τρόπο ο συντονισμένος έλεγχος μιας ολόκληρης ομάδας από διαφορετικά UVs, μέσα από ένα πρόγραμμα-αποστολή. Ο προγραμματισμός UVs, ιδίως για εφαρμογές που θέλουν να εκμεταλλευτούν πολλά UVs ταυτόχρονα, βρίσκεται ακόμα στα πρώτα στάδια της εξέλιξης.Η παρούσα διδακτορική διατριβή εστιάζει στην παροχή προγραμματιστικής υποστήριξης για την ανάπτυξη εφαρμογών-αποστολών με πολλαπλά και ετερογενή UVs απαλλάσσοντας τον προγραμματιστή από την διαχείριση της επικοινωνίας, της ετερογένειας, της δυναμικής αλλά και της διαχείρισης βλαβών.Συγκεκριμένα εισάγουμε ένα προγραμματιστικό μοντέλο που παρέχει κατάλληλες προγραμματιστικές αφαιρέσεις αλλά και μηχανισμούς συντονισμού που αφορούν την ετερογένεια και τη δυναμική των οχημάτων, επιτρέποντας στα προγράμματα των αποστολών να χρησιμοποιούν πολλαπλά UVs με ευέλικτο τρόπο. Υιοθετούμε μια κεντρικοποιημένη υπηρεσιοστρεφή προσέγγιση όπου μια διακεκριμένη οντότητα που ονομάζεται ελεγκτής αποστολής εκτελεί τη λογική του προγράμματος αποστολής, ανακτώντας πληροφορίες από τα UVs και εκτελώντας εντολές ελέγχου υψηλού επιπέδου σε αυτά. Επίσης, το μοντέλο μας παρέχει ενοποιημένες προγραμματιστικές αφαιρέσεις για τον έλεγχο μεμονωμένων UV καθώς και ομάδες από αυτά με ενιαίο τρόπο. Το μοντέλο μαζί με το υποστηρικτικό περιβάλλον εκτέλεσης διαθέτει επίσης ενσωματωμένο μηχανισμό ανοχής βλαβών, ο οποίος συνδυάζει τεχνικές καταγραφής κατάστασης στον ελεγκτή και καταγραφής εντολών στα UVs έτσι ώστε να επιτρέπεται η απρόσκοπτη αποκατάσταση του προγράμματος αποστολής μετά από βλάβες στον ελεγκτή αποστολής.Για την υποστήριξη του παραπάνω προγραμματιστικού μοντέλου σχεδιάστηκε και αναπτύχθηκε ένα αξιόπιστο πρωτόκολλο επικοινωνίας που υλοποιεί αποτελεσματικά το μοντέλο επικοινωνίας αίτησης-απάντησης με συντονιστή (coordinated request-reply) για μια ομάδα κόμβων. Το πρωτόκολλο είναι σχεδιασμένο να εκμεταλλεύεται τις ιδιότητες του ασύρματου μέσου αποφεύγοντας τις συγκρούσεις στα εκπεμπόμενα πακέτα καθώς επίσης έχει ενσωματωμένη λογική για τη διαχείριση βλαβών αλλά και της ομάδας των κόμβων. Το πρωτόκολλο χρησιμοποιείται σαν πρωτόκολλο μεταφοράς των εντολών που προέρχονται από τον ελεγκτή προς τους κόμβους και των δεδομένων από τους κόμβους προς τον ελεγκτή μέσω διαδοχικών αιτήσεων ανάκτησης δεδομένων (polling) με συγκεκριμένο ρυθμό αποστολής. Επιπρόσθετα, έχουμε διερευνήσει την δυναμική προσαρμογή αποστολής των αιτήσεων ανάκτησης δεδομένων με βάση την αυτοματοποιημένη εκτίμηση του ρυθμού αποστολής στους κόμβους. Τέλος, σχεδιάστηκε και αναπτύχθηκε ένα περιβάλλον προσομοίωσης (simulator) για την διεξαγωγή εικονικών αποστολών με UVs που προσομοιώνονται σε λογισμικό. Βασικό πλεονέκτημα σε σχέση με δοκιμές με πραγματικά οχήματα, είναι η δυνατότητα διεξαγωγής ενός μεγάλου εύρους απόλυτα ελεγχόμενων αποστολών και σεναρίων δυσλειτουργίας με πρακτικά μηδενικό κόστος και χωρίς κανένα θέμα ασφάλειας. Το περιβάλλον προσομοίωσης συνδυάζει υπάρχουσες πλατφόρμες προσομοίωσης. Τα εικονικά UVs είναι υλοποιημένα σε εικονικές μηχανές (Virtual Machines) που εκτελούν την πλήρη στοίβα λογισμικού ενός UV συμπεριλαμβανομένου του λογισμικού αυτόματου πιλότου το οποίο είναι διασυνδεδεμένο με το λογισμικό εξομοίωσης της κίνησης του UV. Αυτή τη στιγμή το σύστημα υποστηρίζει αποστολές με σμήνη/ομάδες από πολλά εικονικά πολυκόπτερα που είναι εξοπλισμένα με μία εικονική κάμερα. Τα εικονικά πολυκόπτερα μπορούν να επικοινωνούν μεταξύ τους μέσω ενός εξομοιωμένου ασύρματου δικτύου WiFi
περισσότερα
Περίληψη σε άλλη γλώσσα
The evolution and the widespread adoption of low cost and versatile manufacturing technologies such as 3D printing along with the recent software and hardware advances in embedded computing, wireless communications and control systems have sparked a development boom in the field of unmanned vehicles (UVs) for civilian use. Nowadays, UVs which are commonly known as drones are widely available, come at low cost, and are capable of operating largely autonomously in aerial, ground and aquatic environments with limited human intervention. Besides their considerable and continuously improving mobility and navigation properties, drones can carry a diverse set of application-specific payloads, including various types of sensors/actuators as well as powerful computing and communication equipment.Thanks to these capabilities, drones will become key components of cyber-physical systems. They will revolutionize existing applications, and may very well give birth to entirely new ones. Recently, dro ...
The evolution and the widespread adoption of low cost and versatile manufacturing technologies such as 3D printing along with the recent software and hardware advances in embedded computing, wireless communications and control systems have sparked a development boom in the field of unmanned vehicles (UVs) for civilian use. Nowadays, UVs which are commonly known as drones are widely available, come at low cost, and are capable of operating largely autonomously in aerial, ground and aquatic environments with limited human intervention. Besides their considerable and continuously improving mobility and navigation properties, drones can carry a diverse set of application-specific payloads, including various types of sensors/actuators as well as powerful computing and communication equipment.Thanks to these capabilities, drones will become key components of cyber-physical systems. They will revolutionize existing applications, and may very well give birth to entirely new ones. Recently, drone platforms have been adopted in several civilian application domains, spanning from smart agriculture and structural health monitoring to the entertainment industry. However, their full potential has not been unleashed yet. Despite the significant work that has been done by the scientific community over the last decades in various aspects of wireless sensor networks, robotics and distributed systems, application development for drones remains a hard task, especially when multiple drones are involved and need to perform a joint mission in a coordinated manner. In this thesis we focus on supporting mission program development for unmanned vehicles by reducing the amount and complexity of the programming that is required in order to deal with the problems of communication, coordination, heterogeneity and dynamics in multi-drone missions. We introduce a programming model that provides suitable coordination abstractions and mechanisms regarding resource heterogeneity and dynamics, allowing mission programs to utilize multiple drones in a flexible way. We adopt a centralized service-oriented approach whereby a distinguished entity which is called mission controller runs the mission program logic, which retrieves information from the drones and issues high-level control commands to them. In addition, our programming model provides unified abstractions for controlling individual drones as well as teams of drones with minimal development effort. The model along with its supportive runtime environment comes with an integrated fault tolerant mechanism, which combines checkpointing and logging in order to allow seamless recovery from mission controller failures.We support our programming model with an efficient coordinated transport protocol that performs reliably 1-N request/reply interactions within a group of processes. The protocol utilizes the broadcast nature of the wireless medium to avoid collisions, while allowing a high rate of interactions between the coordinator process (mission controller) and the ordinary processes (UVs) with low and predictable latency. It also comes with integrated fault handling and group management. The protocol is used as a transport for the commands sent by the coordinator process to the ordinary processes. The same protocol can be used to let the coordinator retrieve state/sensor updates from the ordinary processes via polling. We have also done work to support a dynamic adjustment of the polling rate, based on a method that automatically infers the actual data rate of the ordinary processes. Last but not least, we have developed a modular simulation infrastructure to perform tests with multiple virtual UVs (vUVs) in a flexible, controlled and safe way. Each vUV is a separate virtual machine, which runs the entire software stack including autopilot coupled to a physics model that simulates the mobility-related behavior of the UV. The system currently supports multi-copters with a virtual camera sensor, which can communicate with each other over a simulated WiFi network. We have successfully used the simulation environment to test various functional aspects of our system software stack, which would be practically impossible or prohibitively expensive to do using real drones.
περισσότερα