Στο έργο αυτό προτείναμε την κατασκευή ενός συστήματος ψηφιακού ηχητικού βοηθού για χρήση προσανατολισμένη στη εκπαιδευτική διαδικασία.
Ομάδα: “voice_assist” Ανεξάρτητη Ομάδα Αλιάρτου
Τίτλος έργου: «Ψηφιακός ηχητικός βοηθός »
O Ψηφιακός ηχητικός βοηθός είναι ένα project με σκοπό την υποβοήθηση της εκπαιδευτικής διαδικασίας στην τάξη. Μπορεί να προβάλλει υλικό που ο εκπαιδευτικός ή ο μαθητής επιθυμεί σε Διαδραστικό πίνακα, Ηλ.Υπολογιστή, οθόνη tablet,κτλ. Η καθοδήγηση του προγράμματος γίνεται με φωνή ή πληκτρολόγιο . Το υλικό που προβάλλει μπορεί να είναι οποιαδήποτε σελίδα του βιβλίου , οποιουδήποτε μαθήματος , θέματα και λύσεις από την τράπεζα θεμάτων και οποιοδήποτε βοηθητικό εκπαιδευτικό υλικό , έχει ορίσει κατα την αρχικοποίηση ο εκπ/κος ή ο διαχειριστής . Βασίζεται κυρίως σε προγραμματισμό σε python , raspberry pi, bluetooth ή Wifi ηχητική συσκευή. Μπορεί να προσαρμοστεί σε οποιοδήποτε μαθήματα και οποιοδήποτε βαθμίδα εκπαίδευσης.
Στο παρακάτω διάγραμμα βλέπουμε την βασική δομή και λειτουργία του συστήματος
Δομή του συστήματος
Παρακάτω δίνουμε μία σύντομη περιγραφή των βασικών μερών
- Σύστημα αρχείων : Δημιουργούμε κατάλληλους φακέλους και υποφακέλους στους οποίους θα βρίσκονται τα αρχεία, ταξινομημένα κατά τάξη και μάθημα
- Φιλοξενία αρχείων : Το παραπάνω σύστημα αρχείων μπορεί να φιλοξενηθεί είτε τοπικά (στη μονάδα που ελέγχεται και απεικονίζει) , είτε σε έναν τοπικό server που διαμοιράζει τα αρχεία αυτά , είτε σε ένα server που βρήκε στο διαδίκτυο
- Λίστες: Δημιουργούμε λίστες με εκπαιδευτικό υλικό (π.χ θέματα από την τράπεζα θεμάτων, εικόνες, βιβλία…κ.τ.λ) τις οποίες θα φορτώσουμε στο σύστημα ανάλογα με τις επιθυμίες μας και το μάθημα . Μέσω των εντολών “επόμενο”, “προηγούμενο” και “τυχαίο” μπορούμε να πλοηγηθούμε και να εμφανίσουμε τα στοιχεία της λίστας
- Αρχικοποίηση: Είναι το πλέον βασικό για την λειτουργία του συστήματος. Όλες οι παράμετροι για την λειτουργία του αποθηκεύονται στην αρχείο settings.json.
Ενδεικτικά παράμετροι που μπορούμε να τροποποιήσουμε είναι η εξής:- Διαδρομή (path) των φακέλων και αρχείων με το εκπαιδευτικό υλικό
- Είσοδος: Ρυθμίζουμε εάν θα έχουμε είσοδο των εντολών από φωνή ή από πληκτρολόγιο
- Βασική Λειτουργία: Ρυθμίζουμε εάν το σύστημα λειτουργεί ως server ή ως agent
- Στη λειτουργία server το σύστημα πρέπει να έχει και συσκευές εισόδου και εξόδου (να δέχεται τον ήχο και /η να έχει πληκτρολόγιο και οθόνη) για να μπορεί να απεικονίζει τοπικά εκπαιδευτικό υλικό
- Στη λειτουργία agent το σύστημα συνδέεται (subscribe σε ένα στον mqtt broker) από όπου λαμβάνει δικτυακά τις εντολές απεικόνισης που πρέπει να εκτελέσει (άρα χρειάζεται μόνο συσκευές εξόδου-οθόνη και δίκτυο)
- mqtt broker : Διεύθυνση ip, και στοιχεία χρηστών που μπορούν να εισέλθουν
- Εντολές αναγνώρισης : Καθορίζουμε σε κείμενο , ποιες είναι οι εντολές που μπορεί να αναγνωρίζει και να εκτελεί το σύστημα στην αναγνώριση ομιλίας. Επίσης, καθορίζουμε Εναλλακτικές για την αναγνώριση, καθώς και απόκριση με μήνυμα ή ήχο που θα μας δίνει το σύστημα και ταυτόχρονα τι ενεργεία θα εκτελεί
- Πολλές άλλες ρυθμίσεις
…………
- Raspberry pi : Είναι ο κεντρικός εξυπηρετητής του συστήματος. Λαμβάνει όλες τις εντολές και τις μεταδίδει (publish στον mqtt broker). Στην υλοποίησή μας έχουμε εγκαταστήσει τον mosuitto mqtt broker τοπικά στο raspberry pi. Θα μπορούσε , όμως, να είναι εγκατεστημένος σε οποιονδήποτε υπολογιστή του δικτύου ή ακόμη και να χρησιμοποιήσουμε διαδικτυακο mqtt broker.
- Ηχητική συσκευή : Στην υλοποίηση του συστήματος φτιάξαμε με μια ιδιοκατασκευή συνδυασμό μικροφώνου – ηχείου με φωτεινά led (που να μας δίνει ένδειξη όταν ενεργοποιείται ο βοηθός λαμβάνοντας ή αναπαράγοντας ήχο). Αρχικός μας σκοπός ήταν να έχει διασύνδεση wifi αλλά τελικά λόγω δυσκολιών (απρόβλεπτων γεγονότων και έλλειψης χρόνου) προτιμήσαμε τη λύση του bluetooth. Θα μπορούσαμε να πούμε όμως ότι “ουδέν κακόν αμιγές καλού” . Λόγω της παραπάνω τροποποίησης, θα μπορούσε να χρησιμοποιηθεί και οποιαδήποτε bluetooth συσκευή του εμπορίου για τον σκοπό αυτό ( έτσι ώστε το σύστημα να είναι πιο ανοιχτό και ευέλικτο)
Λειτουργία του συστήματος
1-Έλεγχος υπολογιστή
Στο παρακάτω βίντεο δείχνουμε “εν δράσει” το σύστημα. Συγκεκριμένα βλέπουμε παράλληλα την οθόνη ενός καθοδηγούμενου υπολογιστή(στον οποίον απεικονίζεται το εκπαιδευτικό υλικό) και του Raspberry (στην οποία φαίνεται η λήψη-αναγνώριση των φωνητικών εντολών καθώς και η δημοσίευσή τους στον mqtt broker )
2-Έλεγχος Διαδραστικού Πίνακα
Στο παρακάτω βίντεο δείχνουμε πάλι “εν δράσει” τον βοηθό αλλα τώρα ελέγχουμε έναν διαδραστικό πίνακα . Δίνοντας φωνητικές εντολές κάθοδηγούμε το περιεχόμενο που απεικονίζεται στον διαδραστικό πίνακα. Πιο συγκεκριμένα, κάνουμε αναζήτηση για διάφορα θέματα από την τράπεζα θεμάτων , καθορίζουμε πιο μάθημα μας ενδιαφέρει, δείχνουμε το βιβλίο του μαθήματος είτε τη σελίδα του βιβλίου και πολλά άλλα…
3-Έλεγχος υπολογιστή με εντολές απο το πληκτρολόγιο
Στο παρακάτω βίντεο δείχνουμε το σύστημα μας, αλλά τώρα έχοντας αλλάξει την διαμόρφωση του περιμένει εντολές από το πληκτρολόγιο και όχι από φωνή . Συγκεκριμένα βλέπουμε παράλληλα την οθόνη ενός καθοδηγούμενου υπολογιστή(στον οποίον απεικονίζεται το εκπαιδευτικό υλικό) και του Raspberry (στην οποία φαίνεται η λήψη-αναγνώριση των φωνητικών εντολών καθώς και η δημοσίευσή τους στον mqtt broker ). Πάλι κάνουμε αναζήτηση για διάφορα θέματα από την τράπεζα θεμάτων , καθορίζουμε πιο μάθημα μας ενδιαφέρει, δείχνουμε το βιβλίο του μαθήματος είτε τη σελίδα του βιβλίου και πολλά άλλα…
4- Βοηθητικό πρόγραμμα αρχικοποίησης του συστήματος
Στο παρακάτω βίντεο δείχνουμε, ένα βοηθητικό πρόγραμμα το οποίο φτιάξαμε για να είναι εύκολη και μέσα από γραφικό περιβάλλον η αρχική διαμόρφωση του συστήματος. Πιο συγκεκριμένα, μπορούμε μέσα από ένα λογιστικό φύλλο (σε google sheets) να ορίσουμε ποιο είναι τα μαθήματα, οι φάκελοι τα αρχεία, οι λίστες και γενικότερα όλες οι παράμετροι του συστήματος. Από αυτό το περιβάλλον θα μπορούσαμε εύκολα να αλλάξουμε τα μαθήματα έτσι ώστε να προσαρμοστεί το σύστημα σε άλλη τάξη- άλλον εκπαιδευτικό και άλλο ακρωατήριο.
Πληροφορίες
Περισσότερες πληροφορίες για τον κώδικα και την κατασκευή του σήματος μπορούμε μπορούν να βρεθούν στους παρακάτω συνδέσμους
- Αποθετήριο του συστήματος https://github.com/epal-aliartou/voice_assist
- Λίστα με βίντεο λειτουργίας και διαμόρφωσης (playlist) https://www.youtube.com/playlist?list=PL3BpHR7KN3z0Z_yPWOqG21N4b3Il0HUds