Obstacle detection με χρήση sonars απότο ρομπότ ΝΑΟ Κυράνου Ίρις Αυτόνομοι Πράκτορες 2009
Σκοπός Obstacle detection: Αναγνώριση ύπαρξης κάποιου αντικειμένου, με χρήση των sonars, σε κάποια απόσταση από το ρομπότ που εμποδίζει την κίνησή του προς την επιθυμητή κατεύθυνση. Δημιουργία Grid που κωδικοποιεί την πληροφορία του περιβάλοντος του ρομπότ και αποθηκεύει τις θέσεις στις οποίες εντόπισε εμπόδιο Ομαλή κίνηση του ρομπότ προς μια κατεύθυνση και αλλαγή πορείας στην περίπτωση που θα συναντήσει κάποιο εμπόδιο. Path planning (στα προσεχώς): με γνωστό σημείο προορισμού και τρέχουσας θέσης του ρομπότ στον χώρο, εύρεση της καλύτερης δυνατής πορείας του, ώστε να φτάσει στον προορισμό αποφεύγοντας τυχόν εμπόδια.
Sonars (in webots) Χαρακτηριστικά: 4 ultrasonic sonars(!?) detection range from 0 cm to 70 cm (under 15 cm there is no distance information) Number of rays = 6 Effective cone: 60° Frequency: 40kHz Sensitivity: -86dB
Polar Grid Θεωρήσαμε ότι το ρομπότ βρίσκεται στο κέντρο ενός πολικού grid (ομόκεντροι κύκλοι σε ίση απόσταση ο ένας από τον άλλο)==array διαστάσεων 7x36 Αρχικοποίηση: όλα τα κελιά στο 0.5 (έλλειψη γνώσης για την παρουσία εμποδίου στη θέση αυτή) Ενημέρωση: Η τιμή σε κάθε κελί αλλάζει ανάλογα με τις μετρήσεις του περιβάλλοντος. Συγκεκριμένα αύξάνεται όσο μεγαλώνει η πεποίθησή μας για την παρουσία εμποδίου σε αυτήν την θέση, ή αντίστοιχα μειώνεται στην απουσία εμποδίου.
Polar Grid (συνέχεια) Update: Όσο το ρομπότ περπατάει αλλάζουν θέση και τα εμπόδια. Μετάφραση κίνησης του ρομπότ σε κίνηση των εμποδίων στο grid. (χρήση μετασχηματισμών πολικών συντεταγμένων σε καρτεσιανές και τουμπαλιν) Aging: Ανά τακτα χρονικά διαστήματα μειώνεται η τιμή των κελιών κατά ένα μικρό ποσοστό (δεν μας επηρεαζει ο θόρυβος και δεν κρατάμε παλιές πληροφορίες)
Αποφυγή εμποδίου Όταν τα sonars εντοπίσουν κάποιο εμπόδιο σε κοντινή απόσταση στο ρομπότ και ανάλογα με την πλευρά στην οποία εντοπίστηκε αυτό, το ρομπότ εκτελεί μία από τις εξής κινήσεις: _Στροφή προς τα δεξιά (όταν βρει εμπόδιο μπροστα και αριστερά αλλά όχι δεξια) _Στροφή προς τα αριστερά (όταν εμπόδιο μπροστα και δεξιά) _Πλάγια βήματα (όταν δέχεται τις ίδιες περίπου μετρήσεις και από τα δεξιά και από τα αριστερά sonars
Μετακινήσεις εμποδίων στο grid Προς τα πίσω κίνηση κατα 20cm Περιστροφή κατα 80º Προς τα μπρος κίνηση κατα 20cm Προς τα πίσω και πλάγια δεξια κίνηση κατα 20cm
Ακολουθία κινήσεων στον προσομοιωτή webots
Μελλοντικοί Στόχοι (και ελπίζω όχι πολύ μακρινοί) Ολοκλήρωση αλγορίθμου path planning Δημιουργία κώδικα που να τρέχει στο ρομπότ και χρήση αυτού σε προσεχείς διαγωνισμούς RoboCup