Το Ρομπότ των Δασών – Robot Hood – 2o ΓΕΛ Καλαμαριάς

Το Ρομπότ των Δασών – Robot Hood – 2o ΓΕΛ Καλαμαριάς


Βίντεο επίδειξης Robot Hood   

Ομάδα ιΧώΡ

Η ομάδα ιΧώΡ αποτελείται απο το μαθητή (ένας αλλά Λέων) Θοδωρή Τσαούση της Β’ Τάξης του 2ου ΓΕΛ Καλαμαριάς, ο οποίος εμπνεύστηκε, σχεδίασε και δημιούργησε με εκπληκτικό σθένος και μεράκι το Ρομπότ των Δασών, και τον επιβλέποντα εκπαιδευτικό ΠΕ86 Γιώργο Νικολακάκη. Η εργασία ξεκίνησε ως μια απλή ιδέα του Θοδωρή τον Οκτώβρη του 2019 και εμπλουτίστηκε και εξελίχτηκε με πολλές διορθώσεις, προσθήκες και αναβαθμίσεις, φτάνοντας  στο αποτέλεσμα που σας παρουσιάζουμε.

Το ρομπότ των Δασών – Robot Hood

Το ρομπότ των δασών είναι ένας αυτόνομος τετράποδος φύλακας περιοχής, προγραμματισμένος και ατευθυνόμενος από κύκλωμα Arduino, το οποίο πετυχαίνει κίνηση με την βοήθεια servo motors και «αντιλαμβάνεται» ερεθίσματα με τη βοήθεια αισθητήρων. Το ρομπότ παρακολουθεί κλιματικές αλλαγές στο περιβάλλον που κινείται, καθώς καταγράφει τιμές όπως θερμοκρασία, υγρασία, ατμοσφαιρική πίεση και υψόμετρο και αναγνωρίζει σημάδια πυρκαγιάς όπως φλόγες και καπνό. Επιπλέον, διαθέτει μία κάμερα με τη βοήθεια της οποίας αναγνωρίζει αλλοιώσεις – διαφοροποιήσεις στην εικόνα που καταγράφει και μεταδίδει, ενημερώνοντας είτε για πιθανή πυρκαγιά είτε για πιθανές αλλοιώσεις όπως αποψιλώσεις ή ρίψη απορριμμάτων και μπαζών στην περιοχή. Ένα επιπλέον χαρακτηριστικό του είναι ότι διαθέτει ένα solar panel με την χρήση του οποίου επαναφορτίζει τις μπαταρίες του, καθιστώντας το φιλικό προς το περιβάλλον. Τέλος, όλες οι τιμές των μετρήσεων από τους αισθητήρες καθώς και εικόνες από την αναγνώριση της περιοχής, μεταδίδονται και αποθηκεύονται online στο διαδίκτυο σε τοποθεσία που έχει πρόσβαση εξουσιοδοτημένος χρήστης.

Η κατασκευή του Ρομπότ  αποτελείται απο τέσσερα διαφορετικά μέρη και στάδια κατασκευής:

  • Τρόπος μετατόπισης και κίνησης στο περιβάλλον
  • Νευρωνικό δίκτυο – Τεχνητή νοημοσύνη και αναγνώριση αντικειμένων
  • Συλλογή και καταγραφή περιβαλλοντικών δεδομένων με την χρήση αισθητήρων
  • Κύκλωμα συλλογής και παροχής ενέργειας

Κίνηση, μετατόπιση & επαναφορά

Πλάγια όψη του Ρομπότ των Δασών

Για την κίνηση ευθύνεται ένα Arduino Uno R3 το οποίο ελέγχει 11 servo motors MG996R (13-15kg/cm). Τα 8 servos αποτελούν τα πόδια του ρομπότ (2 σε κάθε πόδι). Τα υπόλοιπα 3 servos σχηματίζουν έναν βραχίονα κίνησης 3 αξόνων.

Άρθρωση ποδιού Ρομπότ σε ανοικτή θέση

 

Άρθρωση ποδιού Ρομπότ σε κλειστή θέση

Μία πρόσθετη ενδιαφέρουσα λειτουργία είναι ο βραχίονας. Εάν το ρομπότ αναποδογυρίσει ή ανατραπεί  για οποιοδήποτε λόγο, ο βραχίονας το επαναφέρει στην αρχική του θέση. Ένας αισθητήρας υπερήχων είναι υπεύθυνος για την ενεργοποίηση τριών σερβοκινήρων που αποτελούν τον βραχίονα και τον τοποθετούν στην κατάλληλη πλευρά για να ανασηκωθεί το ρομπότ.

Βραχίονας του Ρομπότ σε κλειστή θέση
Βραχίονας του Ρομπότ σε ανοικτή θέση

Το πρόγραμμα – κώδικας Arduino που ελέγχει τις κινήσεις του Ρομπότ με αρκετές διαφορετικές ρουτίνες βρίσκεται στο  https://github.com/gnicolakakis/Robot_Hood/blob/master/RobotHood2.1.ino

Περισσότερες αναλυτικές οδηγίες και περιγραφές για την κατασκευή του κυρίως σώματος και των ποδιών – αρθρώσεων του ρομπότ καθώς και τον κώδικα της κίνησης θα βρείτε στο Αρχείο οδηγιών κατασκευής στο GitHub. (σελ. 1-12)

 

Νευρωνικό δίκτυο – Τεχνητή Νοημοσύνη

Βήμα 1ο

Πάνω στον βραχίονα του ρομπότ είναι τοποθετημένη μία ειδική κάμερα (wifi esp32 mp5 module cam) η οποία μεταδίδει φωτογραφίες που βγάζει ανά 5 δευτερόλεπτα σε έναν υπολογιστή. Με τον τρόπο αυτό τα αντικείμενα που καταγράφονται από την κάμερα, μεταδίδονται ως εικόνες στον υπολογιστή για να αναγνωριστούν στη συνέχεια  από ένα πρόγραμμα.

Κάμερα wifi esp32 mp5 module cam

Βήμα 2ο

Ο υπολογιστής πρέπει να είναι συνδεδεμένος στο δίκτυο πρόσβασης WiFi που δημιουργεί η κάμερα του ρομπότ, από μια ΔΕΥΤΕΡΗ κάρτα δικτύου. Η πρώτη κάρτα δικτύου πρέπει να έχει πρόσβαση στο δίκτυο WAN.

Βήμα 3ο

Ο υπολογιστής στέλνει όλες τις φωτογραφίες από το ρομπότ στο Google Drive, όπου γίνεται η ανάλυση τους και η αναγνώριση των αντικειμένων. Η αναγνώριση αντικειμένων θα μπορούσε να γίνει   με απευθείας μετάδοση από το ρομπότ, απλά για πολύ λιγότερα αντικείμενα και με μεγαλύτερη επιβάρυνση της κάρτας γραφικών του υπολογιστή.

Βήμα 4ο

Γίνεται η αναγνώριση των αντικειμένων και η εμφάνιση των αποτελεσμάτων με την βοήθεια ενός python script στο Google Colab.

Αναλυτική επεξήγηση του κώδικα (Google Colab) και του λογισμικού για την αναγνώριση αντικειμένων υπάρχει στο Αρχείο οδηγιών κατασκευής στο GitHub. (σελ. 12-14)

 

Συλλογή & καταγραφή περιβαλλοντικών δεδομένων

Επιπρόσθετα, στο ρομπότ βρίσκεται προσαρμοσμένο ένα κύκλωμα συλλογής και καταγραφής περιβαλλοντικών δεδομένων όπως θερμοκρασία, υγρασία, ατμοσφαιρική πίεση, υψόμετρο καθώς και ανίχνευση καπνού.

Το κύκλωμα είναι βασισμένο σε ένα μικροεπεξεργαστή NodeMCU ESP-8266 ο οποίος ελέγχει ένα αισθητήρα πίεσης BMP-280, έναν αισθητήρα θερμοκρασίας-υγρασίας DHT-11 και έναν αισθητήρα καπνού MQ-2.

Οι αισθητήρες συλλέγουν τα δεδομένα και τα μεταφέρουν ασύρματα μέσω του WiFi δικτύου του ESP-8266 σε  Web Server όπου καταγράφονται σε ιστοσελίδα σε μορφή HTML. Η ανανέωση των δεδομένων και της IP γίνεται όταν ζητηθεί ή με ανανέωση της ιστοσελίδας από το χρήστη.

Ασύρματη μετάδοση περιβαλλοντικών δεδομένων

Έτσι το ρομπότ μπορεί να μεταδίδει, εκτός από εικόνα και φωτογραφίες, και τα δεδομένα του περιβάλλοντος που κινείται.

Αναλυτικό σχέδιο κατασκευής του κυκλώματος  και του προγράμματος για την καταγραφή και μετάδοση των περιβαλλοντικών δεδομένων υπάρχει στο Αρχείο οδηγιών κατασκευής στο GitHub. (σελ. 14-15)

Ενέργεια & Αυτονομία

Η εφαρμογή απαιτεί την αυτονομία του ρομπότ σε ένα δάσος ή σε άλλο φυσικό περιβάλλον για μεγάλο χρονικό διάστημα. Για το λόγο αυτό προστέθηκε εκτός από την επαναφορτιζόμενη μπαταρία Lipo 7,4V, 2500mAh, κι ένα ηλιακό solar panel των 6v. Έτσι η μπαταρία θα μπορεί να διαρκεί για μεγάλο χρονικό διάστημα χρησιμοποιώντας ταυτόχρονα και οικολογικές πηγές ενέργειας.

Ηλιακός συλλέκτης για την επαναφόρτιση της μπαταρίας

Συνολική κατασκευή – Υλικά – Κόστος

Τα υλικά από τα οποίο κατασκευάστηκε ο σκελετός του ρομπότ είναι:

  • λεπτό ξύλο για την βάση
  • πλέξι γκλας στα πόδια και σε ένα μέρος της βάσης για ανθεκτικότητα
  • 8 servo motors MG996R στις αρθρώσεις, δύο σε κάθε ένα απο τα τέσσερα πόδια

Επάνω στην βάση είναι στερεωμένα:

  • ένα (1) Arduino Uno
  • μία (1) μπαταρία Lipo 7,4V, 2500mAh
  • ένα (1) solar panel 6 V και
  • ένας βραχίονας που σχηματίζεται απο
    • τρία (3) servo motors MG996R
    • έναν (1) αισθητήρα υπερήχων HC-SR04
    • μία (1) κάμερα ESP32 WiFi στην κορυφή του βραχίονα

Επιπρόσθετα, επάνω στη βάση τοποθετείται το κύκλωμα καταγραφής περιβαλλοντικών δεδομένων που περιλαμβάνει:

  • ένα (1) μικροελεγκτή ESP-8266 NodeMCU
  • έναν (1) αισθητήρα βαρομετρικής πίεσης BMP-280,
  • έναν (1) αισθητήρα θερμοκρασίας-υγρασίας DHT-11 και
  • έναν (1) αισθητήρα καπνού MQ-2.
  • μιά (1) θήκη με τέσσερις (4) μπαταρίες ΑΑΑ

Το συνολικό κόστος όλων των υλικών εκτιμάται περίπου στα 180€. Αναλυτικός πίνακας εκτιμόμενου κόστους παρατίθεται στο Αρχείο οδηγιών κατασκευής στο GitHub. (σελ. 15-16)

Στο αποθετήριο github θα βρείτε ελεύθερο όλο το υλικό για την κατασκευή και προγραμαμτισμό του ρομπότ.

 

Επεκτάσεις – προσθήκες- βελτιώσεις

Το παραπάνω project επιδέχεται διάφορες επεκτάσεις και προσθήκες για μεγαλύτερη αυτονομία και καλύτερο έλεγχο, πράγμα που είναι στα επόμενα πλάνα μας. Συγκεκριμένα:

  • Λόγω των συνθηκών τους τελευταίους 2-3 μήνες δεν μπόρεσαν να  γίνουν επαρκείς δοκιμές για την κίνηση σε ανώμαλο έδαφος, οπότε ίσως χρειαστούν πιθανές μικρές βελτιώσεις
  • Η προσθήκη ενός Raspberry PI στην κατασκευή θα χρησίμευε έτσι ώστε το ρομπότ να μπορεί να «τρέχει» τον κώδικα αναγνώρισης αντικειμένων αυτόνομα χωρίς τη χρήση WAN, ασύρματης κάρτας δικύου και υπολογιστή
  • Η προσθήκη ενός GPS module θα βοηθούσε να καταγράφεται η ακριβής τοποθεσία του ρομπότ κάθε χρονική στιγμή και την τηλεκατεύθυνσή του εξ’ αποστάσεως