- Μια νέα προσέγγιση για συσκευές οικιακού αυτοματισμού χρησιμοποιώντας το Chirp
- Αναπαραγωγή ήχου Chirp με τον Βοηθό Google
- Προετοιμασία του Arduino Nano 33
Πρόσφατα με ενδιέφερε όλα τα νέα προϊόντα οικιακού αυτοματισμού στην αγορά και ως εκ τούτου αγόρασα ένα Google Home Mini και μερικές άλλες έξυπνες συσκευές για τον έλεγχο των φώτων, των ανεμιστήρων, του AC και τι όχι. Ενώ δούλεψε και όλα ήταν διασκεδαστικά στη χρήση, έχω προβληματίσει λίγο με όλες αυτές τις ασύρματες συνδέσεις να συμβαίνουν γύρω μου. Η κρεβατοκάμαρά μου και μόνο είχε 5 έξυπνες συσκευές, και συμπεριλαμβανομένου του φορητού υπολογιστή και του τηλεφώνου μου, θα ήταν συνολικά 7 ασύρματες συσκευές γύρω μου που θα έμενα πάντα συνδεδεμένοι στο δρομολογητή μου. Ανησυχούσα ότι όλα αυτά τα σήματα Wi-Fi μπορεί να είναι κακό για την υγεία μας και αυτό το ερευνητικό έγγραφο για το Sciencedirect πρόσθεσε στοιχεία στις σκέψεις μου. Τότε άρχισα να σκέφτομαι μια εναλλακτική λύση ασύρματου οικιακού αυτοματισμού που δεν χρειάζεται Wi-Fi / Bluetooth για να λειτουργήσει.
Μια νέα προσέγγιση για συσκευές οικιακού αυτοματισμού χρησιμοποιώντας το Chirp
Έχουμε δημιουργήσει ένα πρόγραμμα αυτοματισμού οικιακού τηλεχειριστηρίου IR που μπορεί να λειτουργήσει χωρίς Wi-Fi ή Bluetooth, αλλά δεν είναι πλέον δροσερό και ήθελα να ελέγξω τις συσκευές με φωνή. Έψαχνα μια τεχνική για το Google home mini να επικοινωνεί απευθείας με τις έξυπνες συσκευές, οπότε βασικά χρειάζομαι μια μέθοδο ασύρματης επικοινωνίας Machine to Machine χωρίς να χρησιμοποιώ Wi-Fi ή BLE.
Τότε θυμήθηκα τη συνέντευξη με τον Dan Jones, CTO της Chirp, στην οποία εισήγαγε τον Chirp ως «Το Chirp είναι ένας τρόπος μετάδοσης πληροφοριών χρησιμοποιώντας ηχητικά κύματα. Σε αντίθεση με το Wi-Fi ή το Bluetooth που χρησιμοποιεί ραδιοσυχνότητες, το Chirp κωδικοποιεί δεδομένα σε τόνους που μπορούν να αναπαραχθούν (μεταδοθούν) χρησιμοποιώντας οποιοδήποτε ηχείο υπολογιστή και να ληφθούν μέσω οποιουδήποτε μικροφώνου υπολογιστή χωρίς να απαιτείται πρόσθετο υλικό όπως τα τσιπ RF. Αυτό επιτρέπει στο Chirp να χρησιμοποιείται σε οποιαδήποτε καταναλωτική συσκευή που διαθέτει ηχείο και μικρόφωνο, όπως κινητά τηλέφωνα, φορητούς υπολογιστές, συστήματα PA κ.λπ. και μπορεί να μεταδίδει πληροφορίες ακόμη και μέσω ροής YouTube ή τηλεοπτικής μετάδοσης. " Αυτό σημαίνει ότι μπορούμε να χρησιμοποιήσουμε το Google home mini για να μιλήσουμε απευθείας (χρησιμοποιώντας chirp) με την έξυπνη συσκευή μας.Το μόνο που χρειαζόμαστε είναι ένα μικρόφωνο και ένας επεξεργαστής μέσα σε αυτές τις έξυπνες συσκευές για την αποκωδικοποίηση των δεδομένων ήχου chirp για την εκτέλεση των απαιτούμενων ενεργειών. Η Chirp ανακοίνωσε επίσης πρόσφατα την ενσωμάτωση του data-over-sound για το Arduino, αυτό σημαίνει ότι πρέπει να είμαστε σε θέση να χρησιμοποιήσουμε το νέο Arduino nano 33 BLE sense board για να τρέξουμε το Chirp SDK για το έργο μας.
Έτσι, σε αυτό το έργο, θα κατασκευάσουμε μια συσκευή ακουστικής οικιακής αυτοματοποίησης στην οποία θα είμαστε σε θέση να ελέγξουμε αυτήν την έξυπνη συσκευή χωρίς να χρησιμοποιήσουμε ασύρματες συνδέσεις όπως Wi-Fi ή Bluetooth. Θα χρησιμοποιήσουμε το Actions for Google και το Dialogflow για να δημιουργήσουμε μια δοκιμαστική εφαρμογή για τον Βοηθό μας Google για να κάνει την αναπαραγωγή κωδικοποιημένου ήχου (Chirp). Αυτός ο ήχος θα τραβηχτεί στη συνέχεια από τον πίνακα Arduino nano BLE που τρέχει το πρόγραμμα Chirp Arduino, με βάση το μήνυμα που κωδικοποιείται στα δεδομένα, ο πίνακας Arduino θα μπορούσε να εκτελέσει οποιαδήποτε ενέργεια όπως εναλλαγή φορτίου AC που ελέγχει το LED RGB, κ.λπ. Μπορεί να ακούγεται σαν πολύ, αλλά είναι σχετικά απλό και οι πλήρεις οδηγίες δίνονται παρακάτω. Ας ξεκινήσουμε λοιπόν.
Αναπαραγωγή ήχου Chirp με τον Βοηθό Google
Ο ευκολότερος τρόπος για τη δημιουργία αυτοματοποιημένου οικιακού αυτοματισμού είναι να χρησιμοποιήσετε το IFTTT με τον Βοηθό Google για οικιακό αυτοματισμό. Όμως, κατά τη στιγμή της σύνταξης αυτού του άρθρου, το Chrip δεν διαθέτει Applet στο IFTTT, επομένως θα χρησιμοποιήσουμε την εγγενή πλατφόρμα Actions for Google. Υπάρχει μια καλή πιθανότητα ότι η Chirp έχει δώσει τη δική της μικροεφαρμογή στο IFTTT τη στιγμή που διαβάζετε αυτό το άρθρο, οπότε ελέγξτε το. Εάν όχι, ας προχωρήσουμε με το Actions for Google για να δημιουργήσουμε μια εφαρμογή Βοηθού Google.
Βήμα 1: Ανοίξτε την κονσόλα Dialogflow. Ίσως χρειαστεί να εγγραφείτε εάν δεν το έχετε κάνει ακόμα. Στη συνέχεια, κάντε κλικ στο "Δημιουργία νέου πράκτορα" όπως φαίνεται παρακάτω
Βήμα 2: Δώστε στον νέο σας πράκτορα ένα όνομα και μετά κάντε κλικ στο create. Έχω ονομάσει τον πράκτορά μου ως "Circuitdgest_Automation"
Βήμα 3: Τώρα θα μεταφερθείτε στην ενότητα προθέσεων. Εκεί εκπαιδεύετε τον νέο σας πράκτορα για διάφορες προθέσεις. Στην περίπτωσή μας θα γράψουμε δύο προθέσεις, η μία είναι να ανάψει το φως και η άλλη να σβήσει το φως. Μπορείτε να γράψετε οποιονδήποτε αριθμό προθέσεων βάσει των εφαρμογών και των εντολών που πρέπει να κατανοήσετε ο Αντιπρόσωπός σας. Από προεπιλογή, θα έχετε την πρόθεση καλωσορίσματος, αλλά ας δημιουργήσουμε μια νέα για να ανάψει το φως κάνοντας κλικ στο "Δημιουργία πρόθεσης" και θα ονομάσω αυτήν την πρόθεση Ανάβει
Στη νέα σελίδα κάντε κλικ στο "Προσθήκη φράσεων εκπαίδευσης" και εισαγάγετε την εντολή που πρέπει να κατανοήσει ο βοηθός σας σε αυτήν την περίπτωση "Ενεργοποιήστε το φως". Μπορείτε να γράψετε οποιονδήποτε αριθμό φράσεων προπόνησης που μεταφέρουν το νόημα της ίδιας πρόθεσης.
Βήμα 4: Τώρα μετακινηθείτε προς τα κάτω και κάντε κλικ στο «Προσθήκη απόκρισης». Εδώ λέμε στον βοηθό πώς να ανταποκριθεί αν ενεργοποιηθεί αυτή η συγκεκριμένη πρόθεση. Από προεπιλογή, μπορείτε να εισαγάγετε την απάντηση κειμένου εδώ, αλλά χρειαζόμαστε τον ήχο για να παίξει ο βοηθός μας, οπότε κάντε κλικ στο σύμβολο "+" κοντά στην καρτέλα "Προεπιλογή" και επιλέξτε Βοηθός Google και στη συνέχεια ρολόι "Προσθήκη απαντήσεων" και επιλέξτε "Απλές απαντήσεις" ". Μέσα στο πλαίσιο κειμένου απλής απόκρισης πληκτρολογήστε αυτόν τον κωδικό
Είναι ένας απλός κώδικας SSML για αναπαραγωγή ήχου από μια διεύθυνση URL και στη συνέχεια πείτε "Λυχνίες ενεργοποιημένες". Αυτός ο ήχος θα πρέπει να είναι ο κωδικοποιημένος ήχος από το Chirp και πρέπει να μεταφορτωθεί jovo.tech.
Λήψη κωδικοποιημένου ήχου από chirp:
Αυτός ο κωδικοποιημένος ήχος μπορεί να ληφθεί από την εφαρμογή Chrip Android. Εγκαταστήστε την εφαρμογή και πληκτρολογήστε το μήνυμα που θέλετε να κωδικοποιήσετε και κάντε κλικ στο κουμπί Αποστολή για να ακούσετε τον κωδικοποιημένο ήχο
Εδώ έχω πληκτρολογήσει "Lights on". Ομοίως, μπορείτε να πληκτρολογήσετε οποιοδήποτε μήνυμα και να κάνετε κλικ στο κουμπί Αποστολή για να ελέγξετε τον κωδικοποιημένο ήχο. Στη συνέχεια μπορούμε να αποθηκεύσουμε αυτό το αρχείο ήχου (μορφή mp3) χρησιμοποιώντας οποιαδήποτε συσκευή εγγραφής ήχου. Έχω καταγράψει δύο τέτοια αρχεία ήχου με το κωδικοποιημένο μήνυμα "Lights on" και "Lights off". Μπορείτε να τα κατεβάσετε από εδώ εάν θέλετε να εξοικονομήσετε χρόνο. Μόλις είστε έτοιμοι με τα αρχεία ήχου, μεταβείτε στον μετατροπέα ήχου τεχνολογίας jovo για να ανεβάσετε τα αρχεία mp3 και να λάβετε έναν σύνδεσμο για αυτό.
Λάβετε υπόψη ότι πρόκειται για ένα εργαλείο δοκιμών και τα αρχεία σας θα είναι ζωντανά μόνο για 24 ώρες. Εάν το χρειάζεστε για μεγάλο χρονικό διάστημα, πρέπει να χρησιμοποιήσετε τον δικό σας διακομιστή ιστού, όπως το Google Fire-Base, όπως αυτό το δείγμα Firebase Google Assistant interface. Τώρα που έχετε τον σύνδεσμο, η απάντησή σας στη ροή διαλόγου θα πρέπει να μοιάζει με αυτό
Βεβαιωθείτε ότι κάνετε κλικ στο save για να αποθηκεύσετε αυτήν την πρόθεση.
Βήμα 5: Ομοίως, δημιουργήστε μια άλλη νέα πρόθεση να σβήσετε τα φώτα. Πληκτρολογήστε ξανά τη φράση προπόνησης και επίσης την απάντησή σας. Αυτή τη φορά εισάγετε τον σύνδεσμο του άλλου αρχείου ήχου και ζητήστε του να πει ότι τα φώτα απενεργοποιήθηκαν όπως φαίνεται παρακάτω.
Και πάλι σιγουρευτείτε ότι το αποθηκεύετε επίσης.
Βήμα 6: Τώρα, στην αριστερή πλευρά κάντε κλικ στην καρτέλα ενσωματώσεων και επιλέξτε Βοηθός Google. Αυτό θα μας βοηθήσει να δοκιμάσουμε την εφαρμογή χρησιμοποιώντας τον Βοηθό Google. Επιλέξτε την εφαρμογή Βοηθού Google και κάντε κλικ στο "ΔΟΚΙΜΗ"
Βήμα 7: Αυτό θα διαρκέσει λίγο χρόνο μετά τον οποίο θα λάβετε τη δοκιμαστική οθόνη όπως φαίνεται παρακάτω. Στην αριστερή γωνία, μπορείτε να δείτε ένα πλαίσιο κειμένου όπου μπορείτε να πληκτρολογήσετε τις δοκιμαστικές σας εντολές και να δείτε πώς αποκρίνεται η εφαρμογή. Μπορείτε επίσης να βρείτε μερικές εφαρμογές εντοπισμού σφαλμάτων στην αριστερή πλευρά της οθόνης.
Όταν πληκτρολογείτε "ανάβει τα φώτα ανάγνωσης", θα πρέπει να παίζει τον ήχο κουδουνίσματος και να λέει ότι τα φώτα είναι αναμμένα, παρόμοιο με αυτό και για το "Απενεργοποίηση φώτων ανάγνωσης". Μόλις λειτουργήσει εδώ, μπορείτε να το δοκιμάσετε σε οποιαδήποτε συσκευή βοηθού google όπως το τηλέφωνό σας ή το google home mini που είναι συνδεδεμένο στο αναγνωριστικό σας Gmail. Απλώς πείτε ότι μιλάτε στην εφαρμογή δοκιμής μου και αρχίστε να ελέγχετε τη συσκευή.
Προετοιμασία του Arduino Nano 33
Τώρα από την πλευρά του υλικού, τα πράγματα έχουν γίνει αρκετά εύκολα χάρη στον πίνακα Arduino Nano 33 BLE Sense. Επειδή η πλακέτα διαθέτει ενσωματωμένο μικρόφωνο και chirp βιβλιοθήκες έτοιμες να αναπτυχθούν απευθείας από το Arduino IDE. Εάν είστε εντελώς νέος σε αυτόν τον πίνακα, συνιστάται να διαβάσετε αυτό το άρθρο «Ξεκινώντας με το Arduino Nano 33 BLE» για να το καταλάβετε