RoboCupRescue 2008 - Robot League Team P.A.N.D.O.R.A. (Greece) Ομάδα Ρομποτικής



Σχετικά έγγραφα
Πτυχιακή Εργασία Οδηγώντας ένα Ρομποτικό Αυτοκίνητο με το WiFi. Η Ασύρματη Επικοινωνία, χρησιμοποιώντας

RobotArmy Περίληψη έργου

ΑΥΤΟΝΟΜΟΙ ΠΡΑΚΤΟΡΕΣ ΠΛΗ 513

ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ

ΡΟΜΠΟΤΙΚΗ ΟΡΑΣΗ. Όταν ένα ρομπότ κινείται σε άγνωστο χώρο ή σε χώρο που μπορεί να αλλάξει η διάταξή του τότε εμφανίζεται η ανάγκη της όρασης μηχανής.

Σήματα, Έλεγχος και Ρομποτική

«Προγραµµατισµός του LEGO Mindstorm NXT για το διαγωνισµό "Move the Ball!"»

ΡΟΜΠΟΤΙΚΗ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ LEGO MINDSTORMS NXT. ΚΕΦΑΛΑΙΟ 7ο. Δραστηριότητες για το ΝΧΤ-G και το Robolab

Φύλλο εργασίας 6. Αποφυγή εμποδίων. Χωριστείτε σε ομάδες 2-3 ατόμων και απαντήστε στις ερωτήσεις του φύλλου εργασίας.

Φύλλο εργασίας 9 - Αυτόνομο ρομποτικό όχημα αποφυγής εμποδίων

Σχεδιαστικές προδιαγραφές

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΑΥΤΟΜΑΤΙΣΜΟΥ

Arduino applications for drone development & programming. 18 th Panhellenic Conference in Informatics 2 nd 4 th of October, 2014

ΕΡΓΑΣΤΗΡΙΑΚΗ ΕΦΑΡΜΟΓΗ 1 ΤO ΡΟΜΠΟΤ INTELLITEK ER-2u

Tank Rescue Computer Game σε Scratch

Συνεργασία σμήνους μη επανδρωμένων οχημάτων (UAVs) σε αποστολές αποτύπωσης

Ερωτήσεις- Απαντήσεις Πολυμέσα Απο το Βιβλίο Εφαρμογές Η/Υ Α,Β,Γ Λυκείου

Μάθημα 5: To Μοντέλο Αναφοράς O.S.I.

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΟ ΚΙΤ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS EV3

Μάθημα 3: Αρχιτεκτονική Υπολογιστών

Remote drive. Μία από τις βασικές αρχές της TOYOTA είναι το ΚΑΙΖΕΝ η ΔΙΑΡΚΗΣ ΒΕΛΤΙΩΣΗ.

ΠΑΡΑΡΤΗΜΑ IV. ΔΙΔΑΚΤΙΚΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΡΑΡΤΗΜΑ IV Ασκήσεις για το Robolab

Δραστηριότητες Έρευνας και Ανάπτυξης του Εργαστηρίου Αυτοματικής Ρομποτικής του Τμήματος Μηχανολογίας του ΤΕΙ Κρήτης

Συλλογή & Επεξεργασία Δεδομένων Εξαμηνιαία ΡομποΚαθαριστής Μέρος Β : Το Πρόγραμμα. Σχεδίαση Συστήματος Πραγματικής Εφαρμογής (Prototyping).

Επιμέλεια παρουσίασης: Αριστείδης Παλιούρας ΤΙ ΕΊΝΑΙ ΈΝΑ ΡΟΜΠΟΤ (ROBOT)?

Breakdance Computer Game σε Scratch.

Συλλογή & Επεξεργασία Δεδομένων Εξαμηνιαία Σχεδίαση Συστήματος Πραγματικής Εφαρμογής (Prototyping).

ΠΕΡΙΕΧΟΜΕΝΟ. ΜΑΘΗΜΑ: ΡΟΜΠΟΤΙΚΗ (3Ε) Γ τάξη Ημερήσιου ΕΠΑ.Λ. και Γ τάξη Εσπερινού ΕΠΑ.Λ.

Αναπαράσταση του κώδικα σε ένα ρομποτικό project

Υλοποίηση του συστήματος ecall εντός του Oχήματος - IVS

ΓΕΩΓΡΑΦΙΚΑ ΣΥΣΤΗΜΑΤΑ ΠΛΗΡΟΦΟΡΙΩΝ ΚΑΙ ΧΑΡΤΟΓΡΑΦΗΣΗ ΦΥΣΙΚΩΝ ΠΟΡΩΝ

Εισαγωγή στα χαρακτηριστικά των μικροφώνων

Σχεδίαση του αλγορίθμου για το παιχνίδι Rat s Life

L-SLAM: Μείωση διαστάσεων στην οικογένεια αλγορίθµων FastSLAM

Ηλεκτρικό & Ηλεκτρονικό Υποσύστηµα ενός Ροµπότ. Επενεργητές Αισθητήρες Σύστηµα Ελέγχου

Τα ηλεκτρονικά μέρη του ρομπότ Επιλογή των μονάδων εισόδου εξόδου ανάλογα το μοντέλο που θέλουμε να κατασκευάσουμε

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

Μέρος Α Γνωριμία με το περιβάλλον προγραμματισμού του ρομπότ OTTO

Πολυτεχνείο Κρήτης Τμήμα ΗΜΜΥ Χειμερινό Εξάμηνο Intelligence Lab. Αυτόνομοι Πράκτορες. Κουσανάκης Βασίλης

ΕΝΤΟΠΙΣΜΟΣ ΘΕΣΗΣ ΚΑΙ ΧΑΡΤΗΓΡΑΦΗΣΗ

Βασική Κατηγοριοποίηση Αισθητήρων Γιώργος Βασιλείου

ICP-CP500. Οδηγός χρήστη Πληκτρολόγια ICP-CP500

Ταυτότητα εκπαιδευτικού σεναρίου. Γνώσεις και πρότερες ιδέες των μαθητών. Σκοπός και στόχοι

ΚΑΤΑΓΡΑΦΗ ΤΟΥ ΙΧΝΟΥΣ ΤΗΣ ΟΠΤΙΚΗΣ ΑΝΑΖΗΤΗΣΗΣ: ΜΙΑ ΜΕΘΟΔΟΣ ΔΙΕΡΕΥΝΗΣΗΣ ΤΗΣ ΕΠΙΛΕΚΤΙΚΟΤΗΤΑΣ ΤΗΣ ΟΠΗΣ ΩΣ ΒΑΣΙΚΟΥ ΧΑΡΑΚΤΗΡΙΣΤΙΚΟΥ ΤΟΥ ΣΧΗΜΑΤΟΣ

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΟ ΚΙΤ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS EV3

Διαδραστική τέχνη και υπολογιστική όραση. Θοδωρής Παπαθεοδώρου Ανωτάτη Σχολή Καλών Τεχνών

Το λειτουργικό σύστημα. Προγραμματισμός II 1

Λιβανός Γιώργος Εξάμηνο 2017Β

Εισαγωγή στη Ρομποτική (για αρχάριους) Δημήτρης Πιπερίδης Διαδραστική Έκθεση Επιστήμης & Τεχνολογίας Ίδρυμα Ευγενίδου

Ενότητα 1η. Εισαγωγή στην Πληροφορική

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΟ ΚΙΤ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS EV3

Κατανεμημένα συστήματα και Επικοινωνία Πραγματικού Χρόνου

Κεφάλαιο 7. ΕΠΑΛ Σύμης Εφαρμογές πληροφορικής Ερωτήσεις επανάληψης

«Η ΛΕΙΤΟΥΡΓΙΑ ΤΟΥ BarCode» ( Μια πρόταση για ένα μαθητικό project )

ΣΕΡΒΟΜΗΧΑΝΙΣΜΟΙ RC. Καταπόδης Στέφανος

Ανακύκλωσε το Computer Game σε Scratch

Υδρομπότ (Hydrobot) Κατασκευή & Προτάσεις Αξιοποίησης Ενός Τηλεκατευθυνόμενου Υποβρύχιου Ρομπότ

Φύλλο εργασίας 1 Εισαγωγή στη Ρομποτική

710 -Μάθηση - Απόδοση. Κινητικής Συμπεριφοράς: Προετοιμασία

Κεφάλαιο 4: Λογισμικό Συστήματος

Α.2 Μαθησιακά Αποτελέσματα Έχοντας ολοκληρώσει επιτυχώς το μάθημα οι εκπαιδευόμενοι θα είναι σε θέση να:

ΑΥΤΟΝΟΜΟ ΣΧΟΛΙΚΟ ΛΕΩΦΟΡΕΙΟ Έκδοση: 15 Ιανουαρίου

Εξοικείωση με το NXT-G

Επιδράσεις νέων εφαρμογών και τεχνολογιών στην ασφάλεια ενός. Γουρνιεζάκης Γιάννης

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

Εισαγωγή στη Ρομποτική και τον Προγραμματισμό με τη χρήση του ρομπότ Thymio & του λογισμικού Aseba

Διπλωματική Εργασία. Επιβλέπων καθηγητής: Δρ. Μηνάς Δασυγένης. Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

Περιγραφή της 3 ης εργαστηριακής εφαρμογής: ρομποτικό σύστημα LEGO NXT

TRAVIS TRAFFIC VIOLATION INFORMATION SYSTEM ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΗΣΗΣ ΠΑΡΑΒΑΣΕΩΝ ΦΩΤΟΕΠΙΣΗΜΑΝΣΗΣ

ΕΡΓΑΣΤΗΡΙΑΚΗ ΕΦΑΡΜΟΓΗ 4 TΟ ΡΟΜΠΟΤΙΚΟ ΟΧΗΜΑ ROGUE BLUE

ΠΑΝΕΠΙΤΗΜΙΟ ΔΥΤΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ

Λειτουργικά Συστήματα Ι. Καθηγήτρια Παπαδάκη Αναστασία

Κεφάλαιο 4 Λογισμικό συστήματος. Εφαρμογές Πληροφορικής Κεφ.4 Καραμαούνας Πολύκαρπος 1

Εισαγωγή στη ρομποτική Γίνε κατασκευαστής

Ρομποτική. Τι είναι ένα ρομπότ ; Τι είναι ο αλγόριθμος ; Τι είναι το πρόγραμμα ; Επιμέλεια παρουσίασης : Κυριακού Γεώργιος

ANDROID Προγραμματισμός Εφαρμογών

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 7 Ακούγοντας Πρώτη Ματιά στην Ανάλυση Fourier. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων

Η Ελληνική Πύλη Ρομποτικής στην 77η ΔΕΘ

Ρομποτικός βραχίονας 4 βαθμών ελευθερίας Κατασκευή και εφαρμογή στον εντοπισμό και μετακίνηση αντικειμένων

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς

Τεχνικές Προδιαγραφές Συστήματος

METROPOLIS. Ένα περιβάλλον σχεδιασμού για ετερογενή συστήματα

Φύλλο εργασίας 4. Η γάτα και τα ποντίκια

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ

ΑΥΤΟΜΑΤΟ ΣΥΣΤΗΜΑ ΕΝΑΛΛΑΓΗΣ ΤΑΧΥΤΗΤΩΝ ΣΕ ΠΟΔΗΛΑΤΟ

Τεχνικό Δελτίο. Εντάσσοντας την θερμογραφία στο πρόγραμμα συντήρησης

Ψηφιακά Αντικείμενα Μάθημα 1 Δραστηριότητα 2. Προγραμματισμός Φυσικών Συστημάτων. Συστήματα Πραγματικών Εφαρμογών. Νέα Ψηφιακά Αντικείμενα

Σχεδιασμός και κατασκευή ενός υβριδικού αμυντικού αυτοματοποιημένου ρομποτικού συστήματος

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

ΣΥΣΤΗΜΑ ΟΠΙΣΘΕΝ ΜΕ ΑΙΣΘΗΤΗΡΕΣ RTG 2012 (Plate Sensor 2012)

Προγραμματισμός. Το περιβάλλον του scratch

«Μαθαίνω Την Προπαίδεια» Εφαρμογή Σε Microwords Pro

Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού

Μάθηση Απόδοση. Διαφοροποιήσεις στην Κινητική Συμπεριφορά. Μάθημα 710 Μάθηση - Απόδοση Διάλεξη 3η

Πακέτο Lego Mindstorms

Λειτουργικά συστήματα πραγματικού χρόνου

Transcript:

RoboCupRescue 2008 - Robot League Team P.A.N.D.O.R.A. (Greece) Ομάδα Ρομποτικής Παπαδόπουλος Χαράλαμπος babisnet@gmail.com, Μαλλιάκας Παναγιώτης pmaliak@hotmail.com, Λάμαρης Κωνσταντίνος ironlam@gmail.com, Ζολώτας Χριστόφορος imgchris@ath.forthnet.gr, Ζαπάρτας Παναγιώτης pazapart@gmail.com, Παπάζογλου Ανέστης mourgos23@gmail.com, Γεωργίου-Σαρλικιώτης Βασίλειος billgs@gmail.com, Φελεκίδης Νικόλαος nfelekidis@gmail.com, Τσαλίδης Πάρης rainfugi@gmail.com, Φούντας Ζαφείρης zfountas@hotmail.com,θωμαρέης Νικίτας absintheus@gmail.com, Σκαλιστής Στέφανος sskalist@gmail.com, Συμονίδης Δημήτριος mitso_23@hotmail.com, Τσελεπής Νικόλαος ntselepi@ieee.org, Καστάνης Θεόδωρος kastado@gmail.com, Κουφός Δημήτριος d_th_koufos@yahoo.gr, Αθανασιάδης Γιάννης johnny.ath@gmail.com, Επιβλέποντες καθηγητές: Βασίλειος Πετρίδης, Ζωή Δουλγέρη, Λουκάς Πέτρου. robochapter@ee.auth.gr http://robotics.ee.auth.gr/ ΠΕΡΙΛΗΨΗ Η ομάδα ρομποτικής PANDORA του Α.Π.Θ. (IEEE Robotics Chapter of AUTh) αποτελείται από προπτυχιακούς φοιτητές του ΤΗΜΜΥ αλλά και της σχολής θετικών επιστημών. Τη χρονιά 2007-2008 διεκδίκησε και πέτυχε τη συμμετοχή στον διεθνή διαγωνισμό RoboCup-Roborescue για τις ανάγκες του οποίου υλοποίησε μία ρομποτική πλατφόρμα για αναζήτηση θυμάτων σε περιπτώσεις φυσικών καταστροφών. Η ομάδα επέλεξε να συμμετάσχει στον συγκεκριμένο διαγωνισμό λόγω των υψηλών απαιτήσεων και του σκληρού ανταγωνισμού δεδομένα που αποτελούσαν πρόκληση. Παρά την έλλειψη εμπειρίας, το μειωμένο προϋπολογισμό και τα στενά χρονικά περιθώρια, κατέλαβε την 9 θέση ανάμεσα σε 18 ομάδες αφήνοντας πίσω κάποιες με πολυετή συμμετοχή στο διαγωνισμό. Λέξεις κλειδιά: RoboCup, Roborescue, SLAM, Navigator, αναγνώριση εικόνας, αναγνώριση ήχου, αυτόνομο, τηλεχειριζόμενο, πλοήγηση, βραχίονας. 1 ΕΙΣΑΓΩΓΗ Η ρομποτική πλατφόρμα που αναπτύχθηκε αποτελείται από το κύριο μηχανολογικό μέρος το οποίο έχει την ικανότητα προσπέλασης εμποδίων και διαθέτει ρομποτικό βραχίονα για την προσέγγιση σημείων. Επάνω φέρει αισθητήρες για την πλοήγηση του και την αναγνώριση θυμάτων στο χώρο καθώς και ηλεκτρονικό υπολογιστή στον οποίο τρέχει όλο, ανεξαιρέτως, το λογισμικό. Οι δύο βασικές λειτουργίες του οχήματος είναι: 1

Τηλεχειριζόμενη, όπου η πλατφόρμα παίρνει εντολές από το χειριστή και επιστρέφει δεδομένα που περιγράφουν την κατάσταση του. Αυτόνομη, όπου η πλατφόρμα πλοηγείται αυτόνομα στο χώρο, αναζητεί θύματα και επιστρέφει δεδομένα με τη κατάστασή του. 2 ΠΕΡΙΓΡΑΦΗ ΤΟΥ ΡΟΜΠΟΤΙΚΟΥ ΣΥΣΤΗΜΑΤΟΣ 2.2 ΥΛΙΚΟ ΤΟΥ ΟΧΗΜΑΤΟΣ Αισθητήρες πλοήγησης 4 αισθητήρες υπερήχων (Sonar-SRF05) με εμβέλεια 3cm-4m. 5 υπέρυθροι αισθητήρες (IR- GP2D12) με εμβέλεια 10-80cm. Τρισδιάστατη ψηφιακή πυξίδα (OS5000) με ακρίβεια πρώτου δεκαδικού. Laser scanner(hokuyo URG04) εμβέλειας 5.5m και εύρος λοβού 240 μοίρες Κάμερα (Logitech) στο πίσω μέρος του οχήματος 3 μικρόφωνα (electret condenser) στην κεφαλή του οχήματος Αισθητήρες Αναγνώρισης 1 θερμικό αισθητήριο στην κεφαλή του βραχίονα για μέτρηση θερμότητας με εμβέλεια περίπου 2m. 1 αισθητήρας CO 2 στο πίσω μέρος του οχήματος που αντλεί από την κεφαλή του βραχίονα τον αέρα του περιβάλλοντος και δίνει ένδειξη για την περιεκτικότητά του σε διοξείδιο του άνθρακα. Κάμερα (Logitech) στην κεφαλή του οχήματος 3 μικρόφωνα (που αναφέρθηκαν παραπάνω) Όλα τα παραπάνω αισθητήρια συνδέονται σε 4 μικροελεγκτές AVR τύπου ATMEGA128. Αυτοί με τη σειρά τους επικοινωνούν με το κεντρικό laptop μέσω σειριακής επικοινωνίας, με τη χρήση καλωδίων USB-TO-SERIAL και δύο HUB. Έχει τοποθετηθεί ακόμη ένας AVR ως εφεδρικός για την περίπτωση που θα χρειαστεί γρήγορη αντικατάσταση κάποιος από τους παραπάνω. 2.1 ΜΗΧΑΝΟΛΟΓΙΚΗ ΚΑΤΑΣΚΕΥΗ 2.1.1 ΠΛΑΤΦΟΡΜΑ Το όχημα αποτελούν 1 ερπυστριοφόρο Tamiya Leopard 2A6 βάρους 2 κιλών. 2 πρόσθιες ερπύστριες TTRK-KT 1 διαφορικό σύστημα με ρόδες από RC car. Κάθε ένα από τα τρία παραπάνω μέρη μπορεί να ενεργοποιηθεί ανεξάρτητα μειώνοντας την συνολική κατανάλωση ισχύος. Σχήμα 1. Η ρομποτική πλατφόρμα Ο σχεδιασμός και η κατασκευή της πλατφόρμας έγιναν με στόχο την εξασφάλιση προσπέλασης όλων των εμποδίων σύμφωνα με τις προδιαγραφές του διαγωνισμού. 2

Παρόλαυτά, ήταν αδύνατο να ανέβει σκαλοπάτια και να προσπελάσει εμπόδια ύψους 25 εκατοστών και άνω. Η αυτονομία του είναι 40 λεπτά εξαιτίας του ειδιαίτερα υψηλού βάρους του, περίπου 15 κιλά( 7 φορές μεγαλύτερο της αρχικής πλατφόρμας). 2.1.2 ΒΡΑΧΙΟΝΑΣ Έχει τις εξής ιδιότητες ικάνοτητες: 5 βαθμούς ελευθερίας. Μπορεί να προσεγγίσει και να ελέγξει για θύμα σε δυσπρόσιτα σημεία. Κλειδώνει στη βάση του(θέση ισορροπίας με χρήση ενός ακόμη σερβοκινητήρα. Στη θέση αυτή απενεργοποιούνται όλοι οι σερβοκινητήρες εκτός εκείνου της κεφαλής). Ελέγχεται από έναν μικροελεγκτή AVR atmega128. Το σύστημα κλειδώματος ήταν αναξιόπιστο εξαιτίας του mini servo και δεν μπορούσε να διορθωθεί λόγω του περιορισμένου χώρου. Αν και είχαμε μια πολύ μικρή ταλάντωση(2mm) γύρω από τη θέση ισορροπίας ο στόχος της χαμηλής κατανάλωσης ισχύος επετεύχθη. 2.2.1 ΑΝΑΓΝΩΡΙΣΗ ΠΙΘΑΝΩΝ ΘΥΜΑΤΩΝ ΚΑΙ ΤΗΣ ΚΑΤΑΣΤΑΣΗΣ ΣΤΗΝ ΟΠΟΙΑ ΒΡΙΣΚΟΝΤΑΙ Συνολικά η επεξεργασία εικόνας που υλοποιήσαμε περιλάμβανε δυο βασικά στάδια. Το πρώτο στάδιο αναφέρεται στην εύρεση ύπαρξης θύματος η μη, στο οπτικό πεδίο του ρομπότ. Το δεύτερο στην αναγνώριση της κατάστασης στην οποία βρίσκεται και ενεργοποιείται εφόσον υπάρχει θετικό αποτέλεσμα από το πρώτο στάδιο. Η αναγνώριση της παρουσίας θύματος υλοποιείται ως εξής: Αφαιρείται το τμήμα της εικόνας που αποτελεί το background. Εκτελείται ένας αλγόριθμος που προσπαθεί να εντοπίσει ανθρώπινα μέλη όπως πρόσωπο, χέρια κ.λ.π. Εδώ χρησιμοποιήθηκε η βιβλιοθήκη opencv. Η εικόνα ελέγχεται ως προς την ύπαρξη υφής ανθρωπίνου δέρματος η οποία και είναι χαρακτηριστική. Εφόσον διαπιστωθεί η παρουσία θύματος εκτελούνται δυο βήματα για την αξιολόγηση της κατάστασης του θύματος. Το πρώτο βήμα άφορα το κατά πόσο το θύμα έχει τις αισθήσεις του και επιτυγχάνεται αξιολογώντας την κίνηση που παρατηρείται στο χώρο. Το δεύτερο βήμα αποσκοπεί στην εκτίμηση του περιβάλλοντος χώρου που βρίσκεται το θύμα. Πιο συγκεκριμένα εκτιμούμε την πιθανότητα το θύμα να είναι εγκλωβισμένο. 2.2.2 ΑΝΑΓΝΩΡΙΣΗ ΗΧΟΥ ΚΑΙ ΤΗΣ ΚΑΤΑΣΤΑΣΗΣ ΤΟΥ ΘΥΜΑΤΟΣ Όσον αφορά τους αισθητήρες ήχου, χρησιμοποιούμε τρία electret condenser μικρόφωνα για την πλοήγηση και αναγνώριση της κατάστασης του θύματος. Είναι τοποθετημένα περιμετρικά στην κεφαλή του βραχίονα. Τα δύο εμπρός με κλίση 90 μοιρών μεταξύ τους, και τα πίσω με κλίση 135 μοιρών με κάθε ένα από τα άλλα δύο ώστε να αναγνωρίζουν ήχους που προέρχονται από εμπρός, πίσω, αριστερά και δεξιά του ρομπότ. Συγκεκριμένα έχουν τρεις λειτουγίες: 3

Κατά την κίνηση του ρομπότ αναγνωρίζουν διάχυτο ήχο.αυτό επιτυγχάνεται μετρώντας την συνολική ενέργεια των ηχητικών σημάτων που δέχονται τα μικρόφωνα. Όταν το ρομπότ βρίσκεται σε στάση, εντοπίζουν την ηχητική πηγή. Ομοίως, υπολογίζοντας την ενέργεια για κάθε ένα μικρόφωνο, υλοποιήσαμε έναν αλγόριθμο που δίνει στην έξοδό του την κατεύθυνση της ηχητικής πηγής σε μια περιοχή ±11 μοιρών. Μπροστά στο θύμα, αντιλαμβάνονται αν μιλάει ή όχι, ή αν φωνάζει μετρώντας την ένταση της ακουστικής ισχύος σε db. Για κάθε μία από τις παραπάνω περιπτώσεις υπολογίζεται η πιθανότητα να έχουμε την αντίστοιχη έξοδο, ούτως ώστε να συμβάλει στην τελική εκτίμηση για την παρουσία του θύματος. 2.3 ΑΡΧΙΤΕΚΡΟΝΙΚΗ ΛΟΓΙΣΜΙΚΟΥ 2.3.1 ΒΑΣΙΚΑ ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ Τα κύρια χαρακτηριστικα στα οποία επικεντρώνεται η αρχιτεκτονική λογισμικού του ρομπότ είναι : η απόδοση (performance), προς την επίτευξη της οποίας η κύρια αρχιτεκτονική τακτική που χρησιμοποιήθηκε ήταν η εισαγωσή παραλληλισμού σε μεγάλο βαθμό για την καλύτερη αξιοποίηση και του υπάρχοντος υλικού, η υψηλή μεταβλητότητα (modifiability) [Clements, 2003] απαραίτητη για την αντιμετώπιση των συχνών αλλαγών και προσθηκών νέων χαρακτηριστικών που απαιτούνται σε τέτοιου είδους εφαρμογές. Υλοποιήθηκε χρησιμοποιώντας: μονάδες λογισμικού με ρόλο διαμεσολαβητή (intermediaries), στοιχεία λογισμικού σχεδιασμένα με βάση την εννοιολογική τους συνοχή. 2.3.2 ΥΠΟΣΥΣΤΗΜΑΤΑ ΛΟΓΙΣΜΙΚΟΥ Προσεγγίζοντας την αρχιτεκτονική λογισμικού μέσω μιας όψης επιπέδων (useslayered view) [Clements, 2003], παρατηρούμε τα ακόλουθα τρία βασικά επίπεδα λογισμικού με τα επιμέρους υποσυστήματά τους: Firmware Layer: Το υποσύστημα μικροελεγκτών αποτελεί βάση όλου του λογισμικού, όπου κατά απαίτηση συλλέγονται τα δεδομένα από τους αισθητήρες, και εκτελούνται οι εντολές κίνησης των ποικίλων κινητήρων που φέρει το όχημα.. Middleware hardware presantation Layer: Τα υποσυστήματα κίνησης και συλλογής δεδομένων βρίσκονται ένα επίπεδο πιο πάνω στην αρχιτεκτονική αποκρύπτοντας απο τα ανώτερα επίπεδα λογισμικού τις λεπτομέρειες επικοινωνίας και χειρισμού των μικροελεγκτών,διεκπεραιώνοντας κάθε φορά την επιθυμητή ενέργεια κίνησης/συλλογής δεδομένων. Το υποσύστημα δικτύου αποτελεί συνδετικό κρίκο με το σταθμό τηλεχειρισμού και εποπτίας, έχοντας διπλό ρόλο. Αφενός, κωδικοποιεί και αποστέλλει περιοδικά τα δεδομένα των αισθητήρων, αφετέρου λαμβάνει τις εντολές του χειριστή, τις αποκωδικοποιεί, και στέλνει το κατάλληλο μήνυμα στην αρμόδια μονάδα λογισμικού προκειμένου να εκτελεστούν. 4

Τα υποσυστήματα εικόνας και ήχου τα οποία χειρίζονται τόσο την αποστολή βίντεο και ήχου μέσω δικτύου (λειτουργία τηλεχειρισμού), όσο και την ενεργοποίηση αλγορίθμων προς έλεγχο ύπαρξης θύματος, τις αποκρίσεις των οποίων αποστέλλουν στα αρμόδια νήματα λογισμικού της μονάδας υπολογιστικής νοημοσύνης. Command and Control Layer: Tο σύστημα γραφικής διασύνδεσης χρήστη παρέχει οπτικοποιημένες πληροφορίες για την κατάσταση του ρομπότ (σήμα wifi, ενέργεια, κλίσεις βραχίονα κτλ) όσο και για το περιβάλλον αυτού, παρέχοντας εικόνα/ήχο και οπτικές ενδείξεις για τις αποστάσεις από τα τυχόντα εμπόδια. Τέλος, παρέχεται η δυνατότητα στο χειριστή, πλήρους τηλεχειρισμού του οχήματος μέσω του πληκτρολογίου και άλλων εξωτερικών χειριστηρίων. Το υποσύστημα υπολογιστικής νοημοσύνης(αυτόνομη λειτουργία), τα στοιχεία λογισμικού του οποίου (planner,navigator, SLAM module) ελέγχουν την κατάσταση του οχήματος και του περιβάλλοντος του χρησιμοποιώντας τα δεδομένα απο τα κατώτερα επίπεδα λογισμικού, προκειμένου να εξασφαλίσσουν την ομαλή πλοήγηση στο χώρο, το διαρκή έλεγχο για εύρεση θυμάτων καθώς και τη χαρτογράφηση των τυχόντων ευρυμάτων. Σχήμα 2. Software Architecture Uses-Layered View (UML) 2.3.3 ΠΕΡΙΒΑΛΛΟΝ ΥΛΟΠΟΙΗΣΗΣ Από τεχνική άποψη, το μεγαλύτερο τμήμα του λογισμικού εκτελείται σε σύγχρονο πυρήνα linux(2.6.25). Για το λογισμικό του ρομπότ χρησιμοποιήθηκαν νήματα POSIX η επικοινωνία των οποίων υλοποιήθηκε με τη χρήση System V ουράς μηνυμάτων και κοινής μνήμης[matthew, 2005], ενώ ο συγχρονισμός τους επιτυγχάνεται με τη χρήση δυαδικών σηματοφόρων της ίδιας οικογένειας συστημάτων διαδιεργασιακής επικοινωνίας. Το μεγαλύτερο μέρος του κώδικα γράφτηκε χρησιμοποιώντας C/C++ και τις αντίστοιχες αρχές προγραμματισμού. 2.4 ΑΥΤΟΝΟΜΗ ΛΕΙΤΟΥΡΓΙΑ Το ρομπότ έχει τη δυνατότητα να κινείται αυτόνομα με τη βοήθεια των περιμετρικών αισθητήρων και του συστήματος χαρτογράφησης. Η αυτόνομη λειτουργία χωρίζεται σε δύο ανεξάρτητα μέρη, την πλοήγηση και το σχεδιασμό ενεργειών. 2.4.1 ΠΛΟΗΓΗΣΗ ΟΧΗΜΑΤΟΣ(NAVIGATOR) Η πλοήγηση του οχήματος μέσα στο χώρο γίνεται αποκλειστικά με τη βοήθεια περιμετρικών αισθητήρων και του συστήματος χαρτογράφησης. Το σύστημα του πλοηγού (Navigator) υλοποιεί για την αποφυγή των εμποδίων μία αντιδραστική 5

συμπεριφορά βασισμένη σε ένα μη-γραμμικό διανυσματικό πεδίο. Το ρομπότ είναι ικανό να διατηρεί την κίνησή του στο κέντρο ενός διαδρόμου και παράλληλα να στρίβει μόνο και μόνο ελέγχοντας τους αισθητήρες υπερήχων, και υπερύθρων. Ο σχεδιασμός ενεργειών(planner) δυστυχώς είτε υπολειτουργούσε, είτε δεν λειτουργούσε. 2.4.2 ΤΑΥΤΟΧΡΟΝΗ ΕΥΡΕΣΗ ΘΕΣΗΣ ΚΑΙ ΚΑΤΑΡΤΙΣΗ ΧΑΡΤΗ(SLAM) Η χαρτογράφηση του περιβάλλοντος του ρομπότ καθώς και η εκτίμηση της θέσης του (SLAM Simultaneous Localization and Mapping) γίνεται με τη χρήση του αισθητήρα Hokuyo URG04 Laser scanner και ενός scan-matching αλγόριθμου. Η προσπάθεια δημιουργίας INS (Inertial Navigation System) με χρήση ψηφιακής πυξίδας και επιταχυνσιομέτρου για οδομετρία εγκαταλήφθηκε λόγω αυξημένης πολυπλοκότητας και περιορισμένου χρόνου. Η χρήση encoders για τον ίδιο σκοπό δεν είχε ικανοποιητικά αποτελέσματα σε συνεργασία με αλγορίθμους που απαιτούν control data και κάνουν χρήση του EKF (Extended Kalman Filter) ή των Particle Filters. Ο αλγόριθμος που χρησιμοποιήθηκε για την επεξεργασία των δεδομένων από το laser είναι ο ICP (Iterative Closest Point) που δεν απαιτεί τη χρήση οδομετρίας και επιπλέον καταναλώνει μικρότερη επεξεργαστική ισχύ. Ο χάρτης του χώρου αναπαρίσταται με τη μορφή ενός occupancy grid, ένα πλέγμα όπου το κάθε κελί παίρνει gray-scale αποχρώσεις ανάλογα με την πιθανότητα να είναι κατειλημμένο ή όχι από κάποιο εμπόδιο και αποθηκεύεται σε μορφή geotiff. 3 ΣΥΜΠΕΡΑΣΜΑΤΑ Μετά τη ολοκλήρωση του διαγωνισμού έγινε αντιληπτός ο μεγάλος βαθμός πολυπλοκότητας του έργου το οποίο απαιτούσε: Ιδιαίτερο και λεπτομερή σχεδιασμό δίνοντας έμφαση στη διαχείριση κινδύνων. Εξειδικευμένο προσωπικό σε συγκεκριμένες τεχνολογίες. Προσωπικό με ευρύτερη αντίληψη του έργου για την διασύνδεση του. Πειθαρχία του προσωπικού και προσήλωση του σε αυτό. Το ότι η ομάδα δεν κατέλαβε μεγαλύτερη θέση οφείλεται κατά κύριο λόγο στη μη συμμόρφωση της με του παραπάνω παράγοντες. Παρόλα αυτά η γενική παρουσία της και το τελικό αποτέλεσμα ήταν πολύ καλύτερο από το αναμενόμενο ενώ το τεχνολογικό χάσμα με τις υπόλοιπες ομάδες που κατέλαβαν υψηλότερες θέσεις ήταν σχετικά μικρό. 4 ΒΙΒΛΙΟΓΡΑΦΙΑ Daniel Bovet, Marco Cesati(2005), Understanding the linux kernel 3 rd edition, O'Reilly Media Neil Matthew, Richard Stones(2007), Beginning linux programming, Wrox. Paul Clements, Len Bass (2003), Software architecture in practice 2 nd edition, Addisson Wesley. Vijay K. Madisetti, Douglas B. Williams (1999), Digital Signal Processing Handbook, CRC Press LLC. Sebastian Thrun, Dieter Fox, Wolfram Burgard(1999-2000), "Probabilistic Robotics", MIT Press. 6