FOSSBot: Ένα εκπαιδευτικό ρομπότ ανοιχτού λογισμικού για όλες τις βαθμίδες εκπαίδευσης

Παπαγεωργίου Ελευθερία (1), Χρόνης Χρήστος (2), Βαρλάμης Ηρακλής (3)

Απόφοιτος Χαροκοπείου Πανεπιστημίου Αθηνών και Front-End Developer στην FOSSBot Τeam (1), Υποψήφιος Διδάκτορας Χαροκοπείου Πανεπιστημίου Αθηνών και Υπεύθυνος ανάπτυξης FOSSBot (2), Αναπληρωτής Καθηγητής Χαροκοπείου Πανεπιστημίου Αθηνών και επιβλέπων προγράμματος (3)

elefthppg99@gmail.com (1), chronis@hua.gr (2), varlamis@hua.gr  (3)

Περίληψη

Τα τελευταία χρόνια η εκπαιδευτική ρομποτική χρησιμοποιείται όλο και περισσότερο στον τομέα του STEM. Η χρήση εκπαιδευτικών ρομπότ επιτρέπει την παρουσίαση θεωρητικών και μη θεωρητικών εννοιών με συγκεκριμένους όρους και την βαθύτερη κατανόηση τους μέσω πρακτικών ασκήσεων που επεκτείνουν τις ήδη αποκτηθείσες γνώσεις των μαθητών. Ωστόσο, όσο περισσότερα ρομπότ χρησιμοποιούνται στην εκπαίδευση, τόσο περισσότερα ρομπότ χρειάζονται, πράγμα που είναι δαπανηρό για τα σχολεία, ενώ ταυτόχρονα καθιστά απαγορευτική την ατομική διδασκαλία μεταξύ ρομπότ και μαθητή. Η μόνη λύση σε αυτό το πρόβλημα είναι η κατασκευή ρομπότ με 3D εκτυπώσιμα υλικά και ενοποιημένο λογισμικό, με σκοπό την σημαντική μείωση του κόστους κατασκευής του ρομπότ. Είναι μια πρωτοποριακή λύση που υποστηρίζεται από τον Ανοιχτό Κώδικα και το Ανοιχτό Λογισμικό. Ένα τέτοιο παράδειγμα είναι το FOSSBot το οποίο , το οποίο θα παρουσιαστεί παρακάτω, αναλύοντας τον τρόπο κατασκευής, λειτουργίας και χρήσης μέσα στην τάξη καθώς και τον τρόπο αναβάθμισης του λογισμικού του.

Εισαγωγή

Η επιστήμη, η τεχνολογία, η μηχανική, και τα μαθηματικά (STEM), είναι γνωστικά πεδία που παρέχουν εργαλεία ιδιαίτερα σημαντικά τόσο στους δασκάλους όσο και στους μαθητές. Ιδιαίτερη βαρύτητα αυτών των εργαλείων καταλαμβάνει η ρομποτική, που μπορεί να προσφέρει ποικίλους εναλλακτικούς τρόπους μάθησης, με σκοπό την καλύτερη κατανόηση θεωρητικών και μη αντικειμένων. [4]

Μελέτες για τη χρήση του STEM δείχνουν ότι τα συγκεκριμένα εργαλεία μπορούν να συμβάλλουν στην διαμόρφωση της εκπαιδευτικής διαδικασίας από την πρώιμη παιδική ηλικία έως και το πανεπιστήμιο, για αυτό και θεωρούνται καινοτόμα και πρωτοποριακά. [1,5,8,10]

Η βασική θεωρία για το STEM αναπτύχθηκε από τον Papert [9], όπου με βάση αυτή, οι μαθητές αλληλεπιδρούν με εργαλεία και υλικά, χρησιμοποιώντας τις ήδη κεκτημένες γνώσεις και εμπειρίες για να δημιουργήσουν νέες [7]. Τα εργαλεία STEM προσφέρουν την ευκαιρία στους μαθητές να λύσουν προβλήματα του πραγματικού κόσμου και ταυτόχρονα να επεκτείνουν τις προσωπικές τους εμπειρίες, καθώς γίνονται ενεργοί μαθητές [1,2,6,7]. Μάλιστα καθώς έρχονται σε επαφή με φυσικές συσκευές, όπως τα ρομπότ, η διαδικασία γίνεται πιο ευχάριστη και διατηρείται το ενδιαφέρον του μαθητή [3]. Στην σημερινή εποχή, καθώς η τεχνολογία εξελίσσεται, έχουν αναπτυχθεί και οι «έξυπνες συσκευές», με την χρήση της Τεχνητής Νοημοσύνης, οι οποίες μπορούν να συμβάλλουν στην διδασκαλία ορισμένων αντικειμένων, όπως αυτό της υπολογιστικής σκέψης και της ικανότητας επίλυσης προβλημάτων.

Σε αυτήν την εργαστηριακή παρουσίαση, παρουσιάζουμε το Free και Open Source Software Bot (FOSSBot), ένα ρομπότ ανοιχτού κώδικα και ανοιχτού σχεδιασμού που μπορεί να χρησιμοποιηθεί για εκπαιδευτικούς σκοπούς σε όλα τα επίπεδα του εκπαιδευτικού συστήματος, υποστηρίζοντας πολλές διαφορετικές δραστηριότητες και σενάρια διδασκαλίας. Τα μοναδικά χαρακτηριστικά του FOSSBot μπορούν να συνοψιστούν στα εξής:

  • Τα σχέδια δημιουργίας του ρομπότ είναι ανοιχτά και μπορούν να τροποποιηθούν ανάλογα, ώστε να υποστηρίζουν το περισσότερα σενάρια.

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

  • Το FOSSBot περιλαμβάνει μια λίστα ηλεκτρονικών ειδών που μπορούν εύκολα να βρεθούν στην αγορά στα χαμηλό κόστος. Όλα τα εξαρτήματα μπορούν να συναρμολογηθούν ακολουθώντας τις οδηγίες συναρμολόγησης που είναι επίσης δημόσια διαθέσιμο. Οποιαδήποτε ελαττωματικά ηλεκτρονικά εξαρτήματα μπορούν εύκολα να αντικατασταθούν.

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

  • Το ρομπότ είναι αυτόνομο και τηλεχειριζόμενο, πράγμα που σημαίνει ότι ο καθένας μπορεί να συνδέσει το σε αυτό μέσω φορητού υπολογιστή, smartphone ή tablet ή μπορεί να συνδεθεί στο τοπικό δίκτυο μέσω του wifi.

  • Ο προγραμματισμός του ρομπότ μπορεί να γίνει με ποικίλους τρόπους, με αποτέλεσμα να μπορεί να χρησιμοποιηθεί από διαφορετικές ηλικίες και σε διαφορετικά περιβάλλοντα: i) απευθείας στην Python 100 στο χαμηλότερο επίπεδο, ii) χρησιμοποιώντας διαδραστικά σημειωματάρια (Python Jupyter) στο μεσαίο επίπεδο,  iii) χρησιμοποιώντας μια διεπαφή χωρίς κώδικα (Google Blockly) ή iv) χρησιμοποιώντας μια διεπαφή χρήστη που βασίζεται σε κουμπιά που εκτελεί προκαθορισμένα σενάρια κώδικα.

Στην επόμενη ενότητα αναφέρονται παραδείγματα άλλων εκπαιδευτικών ρομπότ, ενώ στην ενότητα 3 και 4, γίνεται η ανάλυση του υλικού και του λογισμικού του FOSSBot αντίστοιχα. Στην συνέχεια, η ενότητα 5 παρουσιάζει τον τρόπο σχεδίασης του FOSSBot για να ταιριάζει με τα εκπαιδευτικά σενάρια σε διαφορετικά επίπεδα ηλικίας και τέλος η ενότητα 6 συνοψίζει με τα επόμενα βήματά μας για την μελλοντική βελτίωση του ρομπότ και την εκμετάλλευση των δυνατοτήτων του ρομπότ στο μέγιστο βαθμό.

Σχετική δουλειά

Η εξέλιξη και η ενσωμάτωση της εκπαιδευτικής ρομποτικής είναι κάτι που έχει ξεκινήσει εδώ και μερικές δεκαετίες, για να μπορέσει να χρησιμοποιείται τόσο έντονα στην εκπαιδευτική διαδικασία Ένα από τα μεγαλύτερα βήματα που έγιναν στον τομέα αυτό είναι η από την εταιρεία Lego, η οποία συνδύασε τα τουβλάκια Lego με ηλεκτρονικά στοιχεία, με αποτέλεσμα η κατασκευή ενός ρομπότ να μοιάζει σαν μια δραστηριότητα παιχνιδιού. Βασιζόμενα στην παραπάνω λογική, δηλαδή της συναρμολόγησης ρομπότ που έχουν την δυνατότητα να προγραμματιστούν, ακολούθησαν τα ρομποτικά κιτς στον τομέα της εκπαίδευσης, όπως η σειρά Mindstorm και Wedo ή το Bee-Bot ή η Hydra, που βασίζεται σε Arduino και χρησιμοποιεί Blockly μπλοκς.

Το FOSSBot έχει τις ρίζες του σε ένα άλλο ρομπότ ανοιχτού κώδικα και ανοιχτού σχεδιασμού, που σχεδιάστηκε το 2019, ως μέρος του έργου Google Summer of Code. Αυτό το ρομπότ, που ονομάζεται Proteas και ήταν ένα ρομπότ DIY, με τρισδιάστατα εκτυπώσιμα μέρη και αρθρωτό σχέδιο. Επίσης, χρησιμοποιεί Blockly μπλοκς, όπως η Hydra, αλλά πολύ περισσότερα σε αριθμό καθώς και μπορεί να χρησιμοποιηθεί σε πολύ μεγαλύτερο εύρος ηλικιών, σε σχέση με τα προαναφερθείσα ρομπότ, που το καθένα από αυτά απευθύνεται σε συγκεκριμένες ηλικίες.

Σύστημα

Το ρομπότ FOSSBot ανήκει στην κατηγορία DIY(Do It Yourself), αφού μπορεί εύκολα να κατασκευαστεί και από μη παραγωγούς, δηλαδή από άτομα που δεν ήταν οι αρχικοί κατασκευαστές του, ενώ η διαδικασία αποσυναρμολόγησης και επανασυναρμολόγησης μπορεί να αποτελέσει μέρος της εκπαιδευτικής διαδικασίας στα πλαίσια της σχολικής εκπαίδευσης. Αυτό είναι εφικτό, καθώς το FOSSBot είναι κατασκευασμένο από ηλεκτρονικά υλικά που μπορούν να βρεθούν εύκολα στο εμπόριο με χαμηλό κόστος ενώ τα πλαστικά μέρη είναι εύκολα εκτυπώσιμα.

Εικόνα 1: Πάνω όψη του FOSSBot

3D Εκτυπώσιμα μέρη

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

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

Τα τυπωμένα πλέγματα στην μπροστινή και την επάνω πλευρά του ρομπότ βοηθούν να διατηρούνται δροσερά τα ηλεκτρικά μέρη. Η υποδοχή φόρτισης του ρομπότ, ο διακόπτης on/off και ο μοναδικός βρόχος για τη ρυμούλκηση μικρών αντικειμένων βρίσκονται όλα. Αυτός ο βρόχος χρησιμεύει επίσης για την προστασία του ρομπότ από μικρές συγκρούσεις. Η δεύτερη χρήση του είναι για προπονητικές ασκήσεις όπου το ρομπότ πρέπει να τραβάει αντικείμενα μικρού βάρους και μεγέθους.

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

Η άνω επιφάνεια του ρομπότ χωρίζεται σε δύο μέρη. Ένα κάλυμμα που στερεώνεται στο κύριο σώμα χρησιμοποιώντας μοναδικά κλιπ αποτελεί το αρχικό εξάρτημα. Το κύριο κάλυμμα μπορεί να ενωθεί με το κάλυμμα χρησιμοποιώντας μια θέση και περιστροφή κίνησης και κλειδώματος. Το κάλυμμα έχει μεγάλη κυκλική τομή στο κέντρο και μικροσκοπικά ορθογώνια κοψίματα εκατέρωθεν. Αυτό το κύριο κάλυμμα μπορεί απλά να αφαιρεθεί για να δώσει πρόσβαση στο εσωτερικό του ρομπότ και μπορεί επίσης να υποστηρίξει μια βάση από τούβλα Lego, επιτρέποντας την προσθήκη περισσότερων τούβλων στην κορυφή του ρομπότ. Αυτή η επιλογή δίνει τη δυνατότητα στους δασκάλους των χαμηλότερων τάξεων να συνδυάσουν FOSSBot με άλλα έργα Lego και μπορεί να βοηθήσει στην προσθήκη νέων δραστηριοτήτων στο FOSSBot.

Ηλεκτρονικά

Η επιλογή των ηλεκτρονικών στοιχείων είναι μια διαδικασία που έχει γίνει με μεγάλη προσοχή, ώστε να επιλεγούν τα κατάλληλα ηλεκτρονικά που είναι εύκολα αναζητήσιμα στην αγορά, συμβατά με Raspberry Pi, έχουν μικρό κόστος αλλά και ικανά να παρέχουν την μέγιστη δυνατή λειτουργικότητα στο ρομπότ. Ο κατάλογος των ηλεκτρονικών περιλαμβάνει τα ακόλουθα: γυροσκόπιο, επιταχυνσιόμετρο, δύο χιλιομετρητές (Evripidou, και συν.), δύο κινητήρες για τους τροχούς, RGB LED, επαναφορτιζόμενες μπαταρίες λιθίου και αισθητήρας μπαταρίας για τη μέτρηση της ισχύος τους, αντίσταση φωτογραφίας, αισθητήρας απόστασης υπερήχων, ηχείο και τέλος κενό/απόσταση υπέρυθρων αισθητήρας. Με την χρήση των παραπάνω ηλεκτρονικών εξαρτημάτων τα οποία είναι χαμηλού κόστους και εύκολα διαθέσιμα  ευρέως, το FOSSBot μπορεί να κατασκευαστεί με κόστος μικρότερο από 200 USD. Ταυτόχρονα, σε περίπτωση που κάποιο ηλεκτρονικό εξάρτημα είναι ελαττωματικό ή κάποιο πλαστικό μέρος φθαρθεί μπορεί να αντικατασταθεί αρκετά εύκολα.

Όλα τα ηλεκτρονικά στοιχεία του ρομπότ συνδέονται πάνω στην πλακέτα. Μερικές από τις πλακέτες που είχαμε εξετάσει ως πιθανές επιλογές ήταν Raspberry Pi (Zero or 4), Arduino MKR and ESP32. Εν τέλει η πλακέτα που επιλέχθηκε είναι η Raspberry Pi Zero, με πρόσβαση στο Ίντερνετ και δυνατότητα χρήσης της ολοκληρωμένης έκδοσης της γλώσσας προγραμματισμού Python και των βιβλιοθηκών της καθώς και του Docker για την συνεχή ενημέρωση του λογισμικού.

Εικόνα 2: Ηλεκτρονικά στοιχεία του FOSSBot

Λογισμικό του FOSSBOT

Το FOSSBot βασίζεται σε μια αρθρωτή στοίβα λογισμικού, η οποία επιτρέπει την υλοποίηση διαφόρων λειτουργιών προγραμματισμού, οι οποίες ενορχηστρώνονται μέσω ενός GUI και τον εύκολο έλεγχο του υλικού μέσω μιας βιβλιοθήκης λογισμικού που λειτουργεί ως λειτουργικό σύστημα του FOSSBot. Η στοίβα περιλαμβάνει το Google Blockly, το Python Jupyter, το Python Flask για τη φιλοξενία του GUI του FOSSBot, τη βασική βιβλιοθήκη FOSSBot γραμμένη σε Python για τον έλεγχο του υλικού του ρομπότ και, τέλος, τον χρήστη μέσω της διεπαφής χρήστη. Περιλαμβάνει μια χειροκίνητη λειτουργία που παρέχει, δηλαδή έναν τρόπο ελέγχου του ρομπότ χωρίς καμία γνώση προγραμματισμού.

Το λογισμικό FOSSBot έχει κατασκευαστεί χρησιμοποιώντας τις τελευταίες εκδόσεις των προαναφερθέντων τεχνολογιών, συμπεριλαμβανομένων των Docker, Continuous Integration και Logical Microservices Integration (CI). Όπως αναφέρθηκε στην εισαγωγή, ο προγραμματισμός του ρομπότ μπορεί να γίνει με διάφορους τρόπους, οι οποίοι περιγράφονται παρακάτω.

Εικόνα 3: Λογισμικό

Τρόποι λειτουργίας

Υπάρχουν τέσσερις βασικοί τρόποι χρήσης του FOSSBot, όπως απεικονίζονται και στην παραπάνω εικόνα. Η χρήση της διεπαφής του FOSSBot επιτρέπει στον χρήστη να επιλέξει έναν από τους πιθανούς τρόπους χρήσης:

  • της διεπαφής χρήστη χωρίς κωδικοποίηση που είναι κατάλληλη για παιδιά προσχολικής ηλικίας και παρουσιάζει τις κυρίως δυνατότητες του ρομπότ, για παράδειγμα μετακίνηση του ρομπότ προς τα μπροστά ή πίσω

  • της διεπαφής χρήστη κωδικοποίησης που βασίζεται σε μπλοκ που εστιάζει σε μαθητές πρωτοβάθμιας εκπαίδευσης

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

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

Συνεχής ανάπτυξη λογισμικού και ενημερώσεις

Το FOSSBot αποτελείται από ένα σύστημα μοντέρνας αρχιτεκτονικής, με κάθε κομμάτι του λογισμικού να βρίσκεται σε ξεχωριστή εικόνα του Docker, με συνεχής ενοποίηση τους μέσω συνεχών αναβαθμίσεων του λογισμικού του. Η αρχιτεκτονική βασίζεται στην συνεχής ενοποίηση (CI) και αυτό επιτυγχάνεται μέσω του Github, το οποίο πέρα από ότι είναι ένα αποθετήριο κώδικα, διαθέτει και εργαλεία για την σωστή οργάνωση και συνεργασία των μελών της ομάδας αλλά και την συνεχή αναβάθμιση και ενημέρωση των αρχείων του λογισμικού του ρομπότ. Πέρα από το Github, χρησιμοποιείται και το Docker Hub, στο οποίο προωθούνται οι αλλαγές που γίνονται κάθε φορά στον κώδικα στο Github, ώστε να υπάρχει διαθέσιμη η εικόνα της τελευταίας.

Εκπαιδευτικά σενάρια FOSSBOT

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

  • Ο χρήστης μπορεί να δημιουργήσει ένα δικό του πρόγραμμα με όσες εντολές επιθυμεί να διαλέξει από την βιβλιοθήκη εντολών. Έτσι μπορεί να ξεκινήσει δημιουργώντας απλούστερες δομές και στην συνέχεια πιο πολύπλοκες, συνδυάζοντας εντολές επανάληψης, δομές επιλογής, αισθητήρες ή και μεταβλητές.

  • Στο κάτω μέρος του ρομπότ υπάρχουν 3 αισθητήρες infrared reflective obstacle avoidance, χάρη στους οποίους το ρομπότ έχει την δυνατότητα να ακολουθεί την μια μαύρη συνεχόμενη γραμμή στο πάτωμα. Κατά αυτόν τον τρόπο, το ρομπότ μπορεί να εκτελεί μια απόσταση φτάνοντας σε κάποιο στόχο. Μπορεί να χρησιμοποιηθεί συνοδευτικά με κάποιο χαλάκι στο οποίο να απεικονίζονται διαδρομές.

  • Μπορούν ακόμα να διεκπεραιωθούν πειράματα με την χρήση του ultrasonic αισθητήρα απόστασης, με σκοπό το ρομπότ να ακολουθήσει ή να αποφύγει κάποιο  αντικείμενο. Πως μπορεί να επιτευχθεί αυτό; Στο μπροστινό μέρος του ρομπότ, φαίνονται να υπάρχουν δύο μάτια. Αυτά δεν έχουν μόνο διακοσμητικό ρόλο αλλά και πρακτικό, αφού είναι αισθητήρες υπερήχων. Αυτοί με την εκπομπή υπερηχητικών κυμάτων μπορούν να υπολογίσουν την απόσταση ενός αντικειμένου που βρίσκεται μπροστά τους. Συνεπώς, αφού το ρομπότ έχει την δυνατότητα να εντοπίσει κάποιο αντικείμενο μπροστά του, αυτό μπορεί να χρησιμοποιηθεί με δύο τρόπους, είτε να το ακολουθήσει σε περίπτωση που το μπροστινό αντικείμενο κινείται είτε να το αποφύγει σε περίπτωση που αυτό είναι ακίνητο και δεν θέλουμε να υπάρξει σύγκρουση. Ένα τέτοιο παράδειγμα θα ήταν ο υπολογισμός της απόστασης του αντικειμένου από το σταθμευμένο ρομπότ και στην συνέχεια ο μαθητής να δώσει τις κατάλληλες εντολές από το περιβάλλον του Blockly, ώστε το ρομπότ να κινηθεί με τον κατάλληλο τρόπο για να αποφύγει το σταθμευμένο αντικείμενο μπροστά του.

  • Ένα άλλο πείραμα είναι αυτό με την χρήση ultrasonic αισθητήρα απόστασης, ώστε να δοθεί η απάντηση στο ερώτημα: «Πως επηρεάζονται τα υπερηχητικά σήματα από τα υλικά;» Τα υπερηχητικά κύματα μπορούν να χρησιμοποιηθούν σε πειράματα τόσο για την μέτρηση της απόστασης, που αναφέρθηκαν παραπάνω, όσο και για το πως επηρεάζονται από το υλικό πάνω στο οποίο θα “χτυπήσουν”. Για παράδειγμα, αν τα υπερηχητικά κύματα που θα εκπέμψει ο αισθητήρας του ρομπότ, πέσουν πάνω σε ύφασμα, τότε αυτά θα χαθούν στο χώρο και η τιμή της απόστασης που θα προκύψει ως μέτρηση, δεν θα είναι σωστή. Αντίθετα, αν τα υπερηχητικά κύματα πέσουν κ ανακλάσουν πάνω σε σκληρή επιφάνεια, η τιμή της απόστασης θα είναι πολύ πιο κοντά στην πραγματική. Ακόμα, αν τα υπερηχητικά κύματα πέσουν πάνω σε γωνία, πιθανόν δεν θα υπάρξει μέτρηση για την απόσταση ανάμεσα στο ρομπότ και στην γωνία.

  • Στο πίσω μέρος του ρομπότ, υπάρχει μια ειδική θήκη, στην οποία μπορεί να τοποθετηθεί κάποιο μολύβι ή στυλό. Τα παιδιά χρησιμοποιώντας το περιβάλλον του Blockly, μπορούν να δώσουν τις κατάλληλες εντολές, έτσι ώστε το ρομπότ να κινηθεί με τέτοιο τρόπο για να σχεδιαστεί στην επιφάνεια πάνω στην οποία κινείται το ρομπότ το σχήμα που πρέπει να προκύψει. Η προσθήκη μολυβιού/ στυλού στην ειδική θήκη δίνει την δυνατότητα χρήσης του ρομπότ για τον σχεδιασμό βασικών σχημάτων.

Συμπεράσματα και επόμενα βήματα

Από την πρώτη στιγμή, το FOSSBot υποστηρίχθηκε από ομάδες ανοικτού κώδικα, όπως το GFOSS και το Ίδρυμα Ωνάση, που χρηματοδότησαν τη συναρμολόγηση των πρώτων 100 FOSSBots. Ακόμα, το πρόγραμμα Google Summer of Code χρηματοδότησε τον πρώτο γύρο ανάπτυξης. Φυσικά, υποστήριξη βρέθηκε από φοιτητές και καθηγητές ελληνικών πανεπιστημίων που έχουν αγκαλιάσει την όλη πρωτοβουλία, για την προσεκτική σχεδίαση μπλοκ κώδικα και την προσφορά της μέγιστης λειτουργικότητας του ρομπότ μέσα από τα σχεδιασμένα και υλοποιημένα μπλοκ. Ωστόσο, υπάρχουν ακόμη περιθώρια βελτίωσης για να καταστεί το FOSSBot ανταγωνιστικό σε σχέση με τις υπάρχουσες εμπορικές λύσεις. Ο κύριος στόχος μας είναι να λύσουμε όλα τα προβλήματα που σχετίζονται με το λογισμικό FOSSBot και να απλοποιήσουμε τη διαδικασία συναρμολόγησης σχεδιάζοντας μια ειδική πλακέτα που ενσωματώνει το μεγαλύτερο μέρος της καλωδίωσης. Παράλληλα, η ομάδα ανάπτυξης εργάζεται σε στενή επαφή με τους εκπαιδευτικούς για τη δημιουργία διδακτικού υλικού.

Ευχαριστίες

Οι συγγραφείς θα ήθελαν να ευχαριστήσουν τους φοιτητές από το Χαροκόπειο Πανεπιστήμιο Αθηνών που υποστήριξε την ανάπτυξη και τη συναρμολόγηση του FOSSBot μέχρι τώρα: Θανάσης Αποστολίδης, Δημήτρης Χαρίτος, Γιώργος Καζάζης. Επίσης οι φοιτητές του Εθνικού Μετσόβιου Πολυτεχνείου Αθηνών που συνέβαλε με κώδικα στο GSoC: Γιώργος Λοϊζίδης, Δανάη Μπρίλλη καθώς και την εξειδικευμένη ομάδα εκπαιδευτών STEM από το GFOSS για την υποστήριξη των αναδυόμενων εκπαιδευτικών αναγκών και ιδεών μέσω της προσεκτικής σχεδίασης των μπλοκς. Τελευταίο αλλά εξίσου σημαντικό οι άνθρωποι από την Ελληνική Εταιρεία Ελεύθερου Λογισμικού Ανοικτού Κώδικα (GFOSS) και ιδιαίτερα ο Θόδωρος Καρούνος που πίστεψαν στο FOSSBot και υποστηρίζουν την προσπάθεια από την αρχή του.

Αναφορές

  1. Alimisis, D. (2013). Educational robotics: Open questions and new challenges. Themes in Science and Technology Education, σσ. 6, 63–71.

  2. Benitti, F. (2012). Exploring the educational potential of robotics in schools: A systematic review. Computers & Education, σσ. 58, 978-988.

  3. Eguchi, A., & Shen, J. (2012). Student learning experience through CoSpace educational robotics. In Proceedings of the Society for Information Technology & Teacher Education International Conference. Association for the Advancement of Computing in 429.

  4. Evripidou, S., Georgiou, K., Doitsidis, L., Amanatiadis, A., Zinonos, Z., & Chatzichristofis, S. (χ.χ.). Educational robotics: Platforms, competitions and expected learning outcomes. doi:10.1109/ACCESS.2020.3042555

  5. Li, Y., Wang, K., Xiao, Y., & Froyd, J. (2020). Research and trends in STEM education: A systematic review of journal publications. International Journal of STEM Education, σσ. 7, 1–16.

  6. Miglino, O., Lund, H., & Cardaci, M. (1999). Robotics as an educational tool. Journal of Interactive Learning Research.

  7. Papert, S., & Harel, I. (1991). Situating constructionism. Constructionism.

  8. Shen, V., Yang, C., Wang, Y., & Lin, Y. (2012). Application of high-level fuzzy Petri nets to educational grading system. Systems with Applications, σσ. 39, 12935–12946.

  9. Stager, G. (2010). A constructionist approach to teaching with robotics. In Proceedings of the Proceedings of Constructionism and Creativity Conference. Paris, France.

  10. Wan, Z., Jiang, Y., & Zhan, Y. (2021). STEM education in early childhood: A review of empirical studies. Early Education and Development, σσ. 32, 940–962.