05
Απρ
ΠΟΛΥΤΕΧΝΕΙΟ ΚΡΗΤΗΣ
Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών
Πρόγραμμα Προπτυχιακών Σπουδών
ΠΑΡΟΥΣΙΑΣΗ ΔΙΠΛΩΜΑΤΙΚΗΣ ΕΡΓΑΣΙΑΣ
Μιχαήλ Οικονομάκη
με θέμα
Εξομοιωτής Αγωνιστικών Μη-Στελεχωμένων Ιπτάμενων Οχημάτων βασισμένων στην Φυσική σε Εικονική Πραγματικότητα
Physics-based Drone Racing Simulator in Virtual Reality
Εξεταστική Επιτροπή
Καθηγήτρια Αικατερίνη Μανιά (επιβλέπουσα)
Καθηγητής Μιχαήλ Λαγουδάκης
Καθηγητής Παναγιώτης Παρτσινέβελος (Σχολή ΜΗΧΟΠ)
Περίληψη
Σε αυτή τη διπλωματική παρουσιάζεται ένας εξομοιωτής αγωνιστικών μη-στελεχωμένων ιπτάμενων οχημάτων με στοιχεία αεροηλεκτρονικής σε εικονική πραγματικότητα που έχει σχεδιαστεί για να βοηθάει τους χρήστες να εκπαιδευτούν στο να πετάνε τετρακόπτερα με υψηλή ταχύτητα. Με την αύξηση της χρήσης των μη επανδρωμένων αεροσκαφών (UAVs) δημιουργείται η ανάγκη ύπαρξης έμπειρων χειριστών drone που να μπορούν να τα πετάνε τόσο γρήγορα όσο και να αποφεύγουν εμπόδια. Σε αυτόν τον προσομοιωτή, έχει αναπτυχθεί η φυσική κίνηση των τετρακόπτερων. Ένα τετρακόπτερο έχει τέσσερις προπέλες, μία σε κάθε γωνία του. Για κάθε προπέλα , η ταχύτητα, διεύθυνση και περιστροφή ελέγχεται για να γίνει ο χειρισμός του roll, pitch, yaw και thrust. Οι δυνάμεις drag και lift υλοποιήθηκαν ώστε να είναι ρεαλιστική η κίνηση του τετρακόπτερου. Ζώνες αέρα δημιουργήθηκαν χρησιμοποιώντας την κανονική κατανομή για να τις κάνει πιο ρεαλιστικές. Μέσω της εικονικής πραγματικότητας, ο χρήστης καλείται να περάσει από σημεία ελέγχου σε τρεις πίστες και παράλληλα να αποφεύγει εμπόδια. Αυτό μηδενίζει τον κίνδυνο ζημιάς κατά την εκπαίδευση όταν γίνεται σε πραγματικό χώρο, καθώς ο χρήστης μπορεί να επαναλάβει την εξομοίωση όποτε χτυπάει σε εμπόδια. Η πρώτη πίστα περιλαμβάνει ένα περιβάλλον πόλης και προαστίων, η δεύτερη ένα περιβάλλον με νησιά στην θάλασσα και περισσότερες ζώνες αέρα και η τρίτη περιλαμβάνει κυρίως απλά σχήματα και δύο κύρια χρώματα για να διευκολύνει την εκπαίδευση του χρήστη. Ένας απαιτητικός αντίπαλος με βάση τη τεχνητή νοημοσύνη δημιουργήθηκε για να ολοκληρώνει την πίστα γρήγορα με τη χρήση ενισχυτικής μάθησης. H εκμάθηση του έγινε μέσω νευρωνικού συστήματος που παίρνει σαν είσοδο την κίνηση του τετρακοπτέρου από τον χρήστη και σαν έξοδο τον χειρισμό του yaw, roll, pitch and thrust. Η εφαρμογή περιλαμβάνει τρεις πίστες και δυνατότητα προβολής πρώτου ή τρίτου προσώπου ενώ ο χρήστης κινείται μόνος ή εναντίων αντιπάλων. Ακόμα, περιλαμβάνεται εύκολη ή δύσκολη λειτουργία που προσαρμόζεται στο πόσο καλά είναι εκπαιδευμένος ο αντίπαλος. Η αξιολόγηση του συστήματος επικεντρώνεται στην καταγραφή του χρόνου ολοκλήρωσης της πίστας και του αριθμού επαναλήψεων. Αξιολογήθηκε αν η ύπαρξη αντιπάλων επηρεάζει τη διαδικασία εκμάθησης του χρήστη.
Abstract
In this thesis, a virtual reality drone racing simulator with the use of avionics is presented, designed to help humans train to fly quadcopters at high speeds. With the increase of the usage of UAVs in different fields nowadays, comes the demand in having experienced pilots that can fly the aircrafts both at high speed but also avoid obstacles. In this simulator, real physics for the movement of the quadcopters is implemented. A quadcopter has four propellers in each of the four corners. For each propeller, speed and direction of rotation are controlled in order to handle the yaw, pitch, roll and thrust. Lift and drag forces were implemented in order for the movement of the quadcopter to be realistic . Wind zones were implemented using the normal distribution algorithm to make them feel more realistic. With the usage of Virtual Reality, the user is called to pass through checkpoints in three stages while also avoid obstacles in the way. This makes the training danger free in real time scenarios, since the user can restart the simulation whenever it hits an obstacle. Each stage provides a different training experience, the first one simulates an urban and suburban environment, the second one a coastal environment with more wind zones and the third one mostly blocks and two main colors to help ease the training. A challenging opponent in the form of AI was made using reinforcement learning algorithms. It is trained using a neural network and takes the same inputs as the player drone and provides outputs on how to handle its yaw,roll, pitch and thrust. The application contains three stages and the possibility of first or third person view while the user is moving solo or versus AI opponents. Moreover, easy and hard mode is included that adjusts how well the opponent AI is trained. The evaluation of the system focuses on noting the completion time of the stage and the number of restarts. It was evaluated if the existence of the AI opponents had any impact on the training process of the user.
Meeting ID: 920 6080 5475
Security checked Passcode: 983063