Πίνακας περιεχομένων:

Τηλεόραση τηλεχειριστηρίου Alexa Voice Control ESP8266: 9 βήματα
Τηλεόραση τηλεχειριστηρίου Alexa Voice Control ESP8266: 9 βήματα

Βίντεο: Τηλεόραση τηλεχειριστηρίου Alexa Voice Control ESP8266: 9 βήματα

Βίντεο: Τηλεόραση τηλεχειριστηρίου Alexa Voice Control ESP8266: 9 βήματα
Βίντεο: Customer Reviews of the Alexa Voice Remote - Powerful Streaming Stick with 4K Ultra HD & Alexa 2024, Ιούλιος
Anonim
Τηλεχειριστήριο τηλεόρασης Alexa Voice Control ESP8266
Τηλεχειριστήριο τηλεόρασης Alexa Voice Control ESP8266

Μήπως κάποιος στο σπίτι σας χάνει το τηλεχειριστήριο, μπαίνετε σε ένα άδειο δωμάτιο για να βρείτε την τηλεόραση να φουντώνει. Οι μπαταρίες αρχίζουν να αποτυγχάνουν και δεν υπάρχει έλεγχος από το πίσω μέρος του δωματίου. Τώρα μπορείτε να ελέγξετε την τηλεόρασή σας, το DVR, οτιδήποτε με έλεγχο IR μπορείτε να καταγράψετε το σήμα IR. Έφτιαξα αυτό το σύστημα για τον έλεγχο του SKY DVR με μια απλή φωνητική διεπαφή.

Απαιτούμενο υλικό:

  1. Amazon Echo ή Dot
  2. Ένας δρομολογητής wifi που μπορεί να μεταφερθεί προς τα εμπρός (ο πάροχος υπηρεσιών μου το έκανε αυτό για μένα)
  3. Ένα Arduino NANO μετατράπηκε σε 3V3
  4. ESP8266 -01 ή παρόμοιο
  5. Μονάδα ή κύκλωμα πομπού IR
  6. Ενότητα δέκτη IR εάν θέλετε να καταγράψετε κωδικούς.

Απαιτούμενο λογισμικό και υπηρεσίες:

  1. Arduino IDE, χρησιμοποίησα 1.6.11
  2. Λογαριασμός δεξιοτήτων Amazon Alexa (δωρεάν)
  3. Λογαριασμός Amazon AWS (Δωρεάν βαθμίδα αλλά απαιτεί πιστωτική κάρτα για άνοιγμα λογαριασμού) ή εναλλακτικό διακομιστή.

Βήμα 1: Ρύθμιση δεξιοτήτων Alexa

Ρύθμιση δεξιοτήτων Alexa
Ρύθμιση δεξιοτήτων Alexa
Ρύθμιση δεξιοτήτων Alexa
Ρύθμιση δεξιοτήτων Alexa
Ρύθμιση δεξιοτήτων Alexa
Ρύθμιση δεξιοτήτων Alexa

Το κιτ δεξιοτήτων Alexas παίρνει τη φωνητική εντολή και το φιλτράρει χρησιμοποιώντας μια λίστα "τιμών"

Μόλις εγγραφείτε:

Στην κονσόλα Amazon Developer, επιλέξτε την καρτέλα Alexa> Alexa Skills Kit [Ξεκινήστε]

[Προσθήκη νέας ικανότητας]

Τύπος δεξιοτήτων: Πρότυπο προσαρμοσμένης αλληλεπίδρασης

Γλώσσα: επιλέξτε τη σωστή, όταν αυτό ήταν ρυθμισμένο στα Αγγλικά (ΗΠΑ) δεν θα απαντούσε!

Όνομα: αυτό δεν είναι σημαντικό τώρα καθώς δεν δημοσιεύουμε.

Όνομα επίκλησης:, επιλέξτε ένα σύντομο όνομα, είναι η λέξη που χρησιμοποιείται για το άνοιγμα της εφαρμογής.

[ΕΠΟΜΕΝΟ]

Σχέδιο Πρόθεσης, επικολλήστε τον κώδικα

Προσαρμοσμένοι τύποι υποδοχής {Προσθήκη τύπου υποδοχής], εισαγάγετε EFFECT_ON_TV

σε τιμές υποδοχής, επικολλήστε τον κώδικα

Δείγματα εκφωνήσεων, τοποθέτηση, TVCommandIntent tv {TVAction}

[ΑΠΟΘΗΚΕΥΣΗ], στην επόμενη σελίδα δεξιοτήτων πρέπει να προσθέσουμε έναν σύνδεσμο στον κώδικα που πρόκειται να εκτελέσουμε όταν το "Intent" ενεργοποιείται είτε από τη λέξη έναρξης εφαρμογής "clicker" είτε μετά από "tv {slot value}" Το

Θα επιστρέψουμε στην Alexa αφού ρυθμίσουμε το σενάριο python διακομιστή Lambda.

Βήμα 2: AWS Lambda Server Python Script

Εγγραφείτε στο Δωρεάν Επίπεδο του AWS, είχα ανησυχίες ότι αυτό μπορεί να μου κοστίσει πραγματικά χρήματα, αλλά μετά από λίγο χρήση και διάβασμα φόρουμ τα όρια χρήσης είναι τόσο υψηλά για προσωπική και αναπτυξιακή χρήση που δεν πρέπει ποτέ να φτάσει σε σημείο χρέωσης. Υπάρχει μια εναλλακτική λύση για να χρησιμοποιήσετε τον δικό σας διακομιστή HTTPS και ίσως αυτό να είναι κάτι που θα μπορούσε να κάνει το esp8266, άλλο ένα διδακτικό!

Αυτός είναι ο κώδικας που εκτελείται όταν εκφωνείται το Όνομα Επίκλησης (π.χ. "Alexa open clicker") και λαμβάνει τη μαγική λέξη από την Alexa. Μόλις ξεκινήσει η εφαρμογή, χρειάζεται μόνο να πείτε "tv play, tv jump πέντε" και η Alexa θα στείλει "play", "jump 5" σε αυτό το σενάριο python. Η εφαρμογή λήγει εάν δεν έχει απαντήσεις μετά από λίγο.

Στις Υπηρεσίες AWS, επιλέξτε πρώτα την τοποθεσία σας, επάνω δεξιά υπάρχει μια επιλογή.

για τις ΗΠΑ επιλέξτε Ν Βιρτζίνια, για την ΕΕ επιλέξτε την Ιρλανδία.

επιλέξτε Λάμδα από την επικεφαλίδα Υπολογισμός.

[Δημιουργία συνάρτησης Λάμδα]

[Κενή λειτουργία]

Διαμόρφωση σκανδάλης: κάντε κλικ στο κουκκίδα και επιλέξτε Alexa Skills Kit

[ΕΠΟΜΕΝΟ]

Διαμόρφωση συνάρτησης

Ονομάστε ό, τι θέλετε

Περιγραφή, εξαρτάται από εσάς

Runtine: Python 2.7

επικόλληση στον κώδικα python,

στον κωδικό, η διεύθυνση URL HTTP θα πρέπει να αλλάξει στη δική σας εξωτερική διεύθυνση IP αργότερα

σύνδεσμος = "https://185.255.255.255:777/text?data=" + αγαπημένο_χρώμα

κάτω στην οθόνη είναι ένας ΡΟΛΟΣ, κάντε κλικ στην καρτέλα και επιλέξτε Επιλογή προσαρμοσμένου ρόλου

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

[ΕΠΟΜΕΝΗ] η κριτική, πατήστε [Δημιουργία συνάρτησης] και θα πρέπει να συγκεντρώσει και να σας δώσει έναν αριθμό ARN. ΑΝΤΙΓΡΑΦΕΤΕ αυτόν τον κώδικα και θα τον βάλουμε στο κιτ δεξιοτήτων alexa.

Βήμα 3:

Βήμα 4: Ορίστε τον σύνδεσμο Alexa Skills Kit στο AWS Lambda

Ορίστε το σύνδεσμο Alexa Skills Kit στο AWS Lambda
Ορίστε το σύνδεσμο Alexa Skills Kit στο AWS Lambda

Στο κιτ δεξιοτήτων Alexa, επιλέξτε τη σελίδα Διαμόρφωση, με επικεφαλίδα Global Fields και επιλέξτε AWS Lambda και την περιοχή σας και επικολλήστε τον κωδικό ARN στο πλαίσιο, [ΕΠΟΜΕΝΟ], στη δοκιμή, ελέγξτε ότι είναι επιλεγμένο το ΕΝΕΡΓΟΠΟΙΗΣΗ.

Έχουμε τελειώσει εδώ προς το παρόν, τώρα για κάποιο υλικό.

Βήμα 5: Μετατροπή Arduino NANO 3V3

Μετατροπή Arduino NANO 3V3
Μετατροπή Arduino NANO 3V3
Μετατροπή Arduino NANO 3V3
Μετατροπή Arduino NANO 3V3

Το ESP8266 τρέχει από 3v3 οπότε είτε το τρέχετε από εξωτερικό ρυθμιστή είτε μετατρέπετε ένα nano. Έχω χρησιμοποιήσει ένα κλώνο nano με ένα τσιπ usb CH340. Έχω δύο διαφορετικές διατάξεις pcb που γνωρίζω, αλλά ελπίζω ότι αυτό θα καλύψει τις περισσότερες διατάξεις.

Πρέπει να αντικαταστήσουμε τον ρυθμιστή 5V με ένα συμβατό με ακίδα 3v3 ένα, 1117-3. στη συνέχεια, δρομολογήστε το 5V από την πρίζα usb μόνο στη ρυθμιστή και συνδέστε όλα τα άλλα στην έξοδό του. ευτυχώς αυτό μπορεί να επιτευχθεί αφαιρώντας τη δίοδο εισόδου αντικαθιστώντας τον ρυθμιστή και προσθέτοντας ένα καλώδιο από την πλευρά εισόδου της διόδου στο Vin στον νανο πίνακα.

ελέγξτε ότι μπορείτε να προγραμματίσετε το nano μετά τη μετατροπή.

Βήμα 6: Κωδικός NANO

Κωδικός NANO
Κωδικός NANO
Κωδικός NANO
Κωδικός NANO

Αυτό χρησιμοποίησε κωδικούς για το τηλεχειριστήριο SKY UK, μπορεί να είναι συγκεκριμένο για το μοντέλο και αξίζει να ελέγξετε ότι οι κωδικοί σας λειτουργούν σε ξεχωριστό σκίτσο που δεν συνδέεται με το esp8266.

Χρησιμοποίησα τη βιβλιοθήκη IRremote by shirriff Έκδοση 2.0.1

Χρησιμοποιήστε το παράδειγμα IRrecord για να καταγράψετε απομακρυσμένες εντολές που απαιτούν μονάδα δέκτη IR ή μπορείτε να βρείτε τους κωδικούς σας στον ιστό; Δεν θα ασχοληθώ με αυτό εδώ, αλλά εδώ μπορείτε να επιλέξετε τι ελέγχετε και πώς.

Συνδέστε έναν πομπό IR που διατίθεται στο ebay ή δημιουργήστε έναν. Θα πρέπει να χρησιμοποιήσετε ένα LED 850nm IR, καθώς αυτά είναι τα πιο κοινά στους δέκτες. Η βιβλιοθήκη IR χρησιμοποίησε το D3 ως τον ακροδέκτη TX

Η λέξη alexa περνάει στο nano, οπότε από εδώ το nano της με φωνητικό έλεγχο.

Βήμα 7: ESP8266

ESP8266
ESP8266
ESP8266
ESP8266
ESP8266
ESP8266

Υπάρχουν πολλές μονάδες ESP8266, χρησιμοποίησα μία που έπρεπε να συνδέσω με μικροσκόπιο, το ESP8266-01 έχει κεφαλίδα 2x4 και όλες τις καρφίτσες που χρειάζεστε και είναι φθηνές. Πολλά παραδείγματα στον ιστό,. Τα ταξίδια μου, το GPIO_0 πρέπει να συνδεθεί με το gnd κατά τη διάρκεια της ενεργοποίησης (μπορεί στη συνέχεια να μετακινηθεί) κατά τον προγραμματισμό, είναι ένας πείρος διαμόρφωσης, που έχει τραβηχτεί εσωτερικά. Μόλις προγραμματιστεί, αφήστε το GPIO_0 να επιπλέει και να τροφοδοτείται εκ νέου. Το CHPD συνδέεται μόνιμα στο V+.

Ο διαχειριστής του σκάφους στο arduino 1.6.11 δεν διαθέτει τον σύνδεσμο esp8622, στο Arduino IDEfile> προτιμήσεις> πρόσθετες διευθύνσεις URL του Board, προσθέστε:

arduino.esp8266.com/stable/package_esp8266c…

μετά πήγαινε στο board manager και βρες το πακέτο esp8266. Αυτό θα σας δώσει τώρα μια μεγάλη λίστα με πίνακες esp8266, επιλέξτε Εργαλεία> Πίνακας> Γενική μονάδα ESP8266. Χρησιμοποιώντας μια μονάδα usb to uart, μπορείτε τώρα να προγραμματίσετε το τμήμα esp με esp8266_server_text. Τροφοδοτήστε με 3V3, συνδέστε TX-RX, RX-TX και Gnd.

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

Μπορείτε να εκτελέσετε τον κώδικα ενεργοποιώντας εκ νέου το esp ενώ είστε συνδεδεμένοι με το μετατροπέα USB σε uart και το σειριακό παράθυρο arduino (9600 baud) θα εμφανίζει την τοπική διεύθυνση IP της μονάδας esp. εισαγάγετε αυτό στον κώδικα και επαναπρογραμματίστε.

Βήμα 8: Ρύθμιση δικτύου

Ρυθμιση δικτυου
Ρυθμιση δικτυου
Ρυθμιση δικτυου
Ρυθμιση δικτυου

Έτσι, για να επιτρέψουμε την κλήση URL της Lambda να συνδεθεί με τον διακομιστή ESP HTTP, πρέπει να ορίσουμε το δρομολογητή σας σε προώθηση θυρών. Πήρα την εξωτερική μου διεύθυνση IP από το https://www.whatsmyip.org/, είμαι σε σύνδεσμο μικροκυμάτων, οπότε ο πάροχός μου έχει το δρομολογητή και έπρεπε να ζητήσω προώθηση θυρών από αυτούς. Έπρεπε να δώσω τη διεύθυνση IP του ESP8266 στο δίκτυό μου και τη θύρα που επέλεξα, π.χ. 777. Η εξωτερική διεύθυνση IP πρέπει να εισαχθεί στο σενάριο lambda python και η τοπική διεύθυνση esp θα εμφανιστεί όταν εκτελείτε τον κωδικό esp8266 ο σύνδεσμος usb to uart.

Η μονάδα ESP στη σύνδεση usb to uart πρέπει να εμφανίζει σε ένα τερματικό την εισερχόμενη λέξη από το λάμδα.

Συνδέστε το ESP στο nano όπως φαίνεται στο μαλακό σειριακό 3v3, gnd και TX σε nano D2. αν έχετε το nano στο usb σε μια σειριακή εμφάνιση comms στο th epc θα πρέπει να δείχνει τι λαμβάνει από το esp.

Εάν το ESP δεν είναι συνδεδεμένο στο δίκτυο ή δεν ανταποκρίνεται στην κλήση URL από το lambda, το lambda θα λήξει και η Alexa αναφέρει μια αποτυχημένη απόκριση δεξιοτήτων

Βήμα 9: Παύση της τηλεόρασης Alexa Open Clicker

Alexa Open Clicker Tv Παύση
Alexa Open Clicker Tv Παύση

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

Καθίστε αναπαυτικά και πείτε "Alexa open Clicker"

οδηγός τηλεόρασης

κατεβασε τηλεοραση

tv επιλέξτε

τηλεοπτικό παιχνίδι

tv άλμα πέντε

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

Οι διαφημίσεις στο Ηνωμένο Βασίλειο είναι περίπου πέντε λεπτά.

Για έξοδο από την εφαρμογή πείτε ότι η Alexa κλείνει.

Απολαμβάνω.

Συνιστάται: