Σχεδιασμός και υλοποίηση αυτόνομου συστήματος με Μικρολεγκτές
Design and implementations of autonomous system using microcontrollers
Keywords
Mapping ; Robot ; LiDAR ; Navigation ; Autonomous ; Microcontroller ; Πλοήγηση ; Αυτόνομη ; Χαρτογράφηση ; Χώρου ; Ευρετική ; HeuristicAbstract
Στην σημερινή εποχή που οι έξυπνες συσκευές αποτελούν αναπόσπαστο κομμάτι της
καθημερινότητας των ανθρώπων, γίνεται επιτακτική η ανάγκη για την χαρτογράφηση του ανθρώπινου
περιβάλλοντος, ώστε να πραγματοποιήσουν επιτυχώς τις προγραμματισμένες λειτουργίες τους. Σκοπός
της παρούσας διπλωματικής είναι να μελετηθεί το παρόν πρόβλημα στα επίγειά αυτόνομα ρομποτικά
αμαξώματα. Στα πλαίσια της, αναπτύχθηκε εξολοκλήρου από την αρχή μια αυτόνομη ρομποτική
πλατφόρμα πραγματοποίησης δισδιάστατης (2D) χαρτογράφησης περιβάλλοντα χώρου. Δόθηκε έμφαση
στον σχεδιασμό των μηχανολογικών της εξαρτημάτων, ώστε να υπάρχει η δυνατότητα κατασκευής τους
από τρίτους, με την χρήση τεχνολογίας τρισδιάστατης εκτύπωσης (3D printing). Επιπλέον, για τον
σχεδιασμό και τον προγραμματισμό των ηλεκτρονικών της πλατφόρμας, δόθηκε έμφαση στην χρήση
ανοιχτών τεχνολογιών (αναπτυξιακών Arduino και ESP) για να υπάρχει η δυνατότητα ανακατασκευής
της πλακέτας του συστήματος από τρίτους. Ο αλγόριθμος συμπεριφοράς του ρομπότ που αναπτύχθηκε
ακολουθεί ευρετική προσέγγιση (Heuristic) και βασίζεται στις μετρήσεις του αισθητήρα LiDAR, μιας
συστοιχίας αισθητήρων υπερήχων, πυξίδας και του συστήματος οδομετρίας για την επιτυχή του
λειτουργία. Τέλος, οι πληροφορίες αποθηκεύονται σε μία κάρτα μνήμης, που με τη χρήση ειδικών
προγραμμάτων, τα οποία αναπτύχθηκαν στο πλαίσιο της διπλωματικής, δημιουργείται η τελική
απεικόνιση του χώρου.
Η πλατφόρμα που αναπτύχθηκε, εκτέλεσε επιτυχώς τον σκοπό της, καθώς κινήθηκε κατάλληλα
εντός του καθορισμένου πειραματικού χώρου και συνέλεξε από τον αισθητήρα LiDAR τις μετρήσεις του
χώρου. Οι χάρτες δημιουργήθηκαν επιτυχώς, έχοντας όμως ελάχιστο θόρυβο από τον τρόπο των
μετρήσεων και την οδομετρία του συστήματος. Για τη περαιτέρω βελτίωση τους, προτείνεται η χρήση
ενός εκτεταμένου φίλτρου Kalman, καθώς και η αλλαγή της θέσης του αισθητήρα LiDAR. Τέλος, η
πλατφόρμα έχει την δυνατότητα να δεχθεί επεκτάσεις και να χρησιμοποιηθεί για διαφορετικούς σκοπούς,
εκτός της χαρτογράφησης χώρου, καθώς υπήρξε πρόβλεψη για αυτό κατά την διάρκεια του σχεδιασμού
της.
Abstract
Nowadays smart devices are an integral part of people’s everyday life, which makes necessary
the need of these devices to map the human environment, in order to get along with their tasks. This
thesis’s goal was to study this problem on land autonomous moving vehicles. Following this, a robotic
platform was developed from scratch in order to perform two-dimensional (2D) mapping of the robot’s
environment. The mechanical parts were designed in a way so third-party people could recreate them with
use of 3D printing technology. Moreover, the same principle was in mind during the design and
programming of the electronics components of the robot, where opensource and open-hardware
technologies were used whenever was possible, such as Arduino and ESP, so third-party people could
recreate the robot’s board. The behavioral algorithm of the robot was developed using a heuristic
approach and it depends on the measurements received by the LiDAR sensor, an ultrasonic sensor array,
magnetic compass and odometry system, in order to perform its task successfully. The information
generated by the robot in order to recreate the environment map is stored in a microSD card and with the
software that was created among this thesis, it is able to recreate a visual of the environment map.
The robotic platform developed manage to perform its task successfully by navigating through
the environment and got the measurements needed for the map creation, from the LiDAR sensor. The
experimental environment maps were created successfully, having though a bit of noise due to the
measurement technic used and the odometry system. To improve this, it is suggested the use of an
external Kalman filter and changing the position of the LiDAR sensor on the robot chassis. Last but not
least, the robotic platform was developed in order to be able to receive extensions, so it would have the
ability to be used for different tasks, other than environment mapping.