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

AIY Universal IR Remote Control: 5 Βήματα
AIY Universal IR Remote Control: 5 Βήματα

Βίντεο: AIY Universal IR Remote Control: 5 Βήματα

Βίντεο: AIY Universal IR Remote Control: 5 Βήματα
Βίντεο: "Duniya ke sare TV Control Honge" with Smart IR Controller! #shorts 2024, Νοέμβριος
Anonim
AIY Universal IR Remote Control
AIY Universal IR Remote Control

Αυτό το εγχειρίδιο περιγράφει πώς να φτιάξετε ένα γενικό τηλεχειριστήριο υπερύθρων AIY. Αυτό μπορεί να χρησιμοποιηθεί για τον έλεγχο οποιασδήποτε τηλεόρασης, soundbar, digibox, dvd ή bluray player χρησιμοποιώντας τη φωνή σας.

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

Το έργο AIY χρησιμοποιεί το πρόγραμμα LIRC για την καταγραφή και τη μετάδοση του σήματος IR.

Βήμα 1: Κάντε PCB

Φτιάξτε PCB
Φτιάξτε PCB
Φτιάξτε PCB
Φτιάξτε PCB

Λίστα μερών:

Δύο εκπομπούς υπέρυθρων LED 940nm 5mm

Ένας δέκτης υπερύθρων TSOP38238

Ένα τρανζίστορ 2n3904

Μία αντίσταση 10 ohm

Ένα veroboard

Τέσσερις μονές συνδέσεις (προαιρετικά - έκοψα έναν σύνδεσμο έξι ακίδων σε μονές υποδοχές)

Καλώδια για σύνδεση στο καπέλο AIY.

Βεβαιωθείτε ότι τα IR LED έχουν το μακρύ πόδι στην πρώτη σειρά και το κοντό πόδι στη δεύτερη. Δεύτερο LED με μακρύ πόδι στη δεύτερη σειρά και κοντό πόδι στην τρίτη.

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

Η αντίσταση περνά μεταξύ της σειράς πέντε και της σειράς οκτώ.

Χρησιμοποιήστε ένα κοντό κομμάτι σύρμα για να συνδέσετε τη σειρά μία με τη σειρά επτά.

Συνδέστε τον δέκτη IR στη σειρά επτά, οκτώ και εννέα.

Προσθέστε τις συνδέσεις στις σειρές μία, τέσσερις, οκτώ και εννέα.

Οι συνδετήρες είναι:

Σειρά πρώτη - +5v ισχύ

Σειρά τέσσερα - σήμα πομπού

Σειρά οκτώ - έδαφος

Σειρά εννέα - σήμα δέκτη

Βήμα 2: Συνδεθείτε στο καπέλο AIY

Συνδεθείτε με το καπέλο AIY
Συνδεθείτε με το καπέλο AIY
Συνδεθείτε με το καπέλο AIY
Συνδεθείτε με το καπέλο AIY

Έχω κολλήσει καρφίτσες κεφαλίδας στο AIY μου για να διευκολύνω τη σύνδεση των πραγμάτων.

Οι ακίδες που χρησιμοποίησα είναι Servo 0 (GPIO 26) και Servo 5 (GPIO 24) για το σήμα. Χρησιμοποίησα επίσης +5v από την οριζόντια ακίδα πάνω από τις καρφίτσες Servo. Πήρα το έδαφος από το GND δίπλα στο Servo 0, αλλά μπορείτε να χρησιμοποιήσετε όποιο έδαφος θέλετε.

Χρησιμοποιώντας τα κατάλληλα καλώδια, συνέδεσα το καπέλο AIY στον πίνακα ως εξής:

+5V για τη σειρά 1

Servo 0 (GPIO 26) στη σειρά τέσσερα

GND στη σειρά 8

Servo 5 (GPIO 24) στη σειρά εννέα.

Βήμα 3: Εγκαταστήστε το LIRC

Υποθέτοντας ότι έχετε ήδη ρυθμίσει και δοκιμάσει το AIY:

Πρέπει να εγκαταστήσουμε το LIRC. Ακολουθήστε αυτό το πολύτιμο οδηγό από τον mirza irwan Osman:

www.instructables.com/id/Install-Linux-Infrared-Remote-Control-LIRC-Package

OR μια εναλλακτική οδηγία μπορείτε να βρείτε εδώ από τον Alex Bane:

alexba.in/blog/2013/01/06/setting-up-lirc-on-the-raspberrypi/

ΣΗΜΕΙΩΣΗ: Για τη ρύθμισή μου έπρεπε να διασφαλίσω ότι το αρχείο /boot/config.txt είχε τα εξής:

dtoverlay = lirc-rpi, gpio_in_pin = 24, gpio_out_pin = 26

Βήμα 4: Λάβετε ή δημιουργήστε αρχεία LIRC για τις συσκευές σας

Αυτό το επόμενο βήμα δημιουργεί το αρχείο lircd.conf το οποίο περιέχει τις λεπτομέρειες σχετικά με το τηλεχειριστήριο για τις συσκευές που θέλετε να χρησιμοποιήσετε.

Υπάρχουν δύο τρόποι για να δημιουργήσετε αυτό το αρχείο:

1. Εάν είστε τυχεροί, μπορείτε να βρείτε ένα υπάρχον αρχείο στις σελίδες LIRC για τη συσκευή σας

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

Για το βήμα 1, μεταβείτε στην αρχική σελίδα του LIRC και κοιτάξτε τη λίστα των υποστηριζόμενων συσκευών:

www.lirc.org/

Εάν μπορείτε να βρείτε το αρχείο για τη συσκευή, τότε πρέπει να μεταφέρετε τις πληροφορίες στο αρχείο στο αρχείο lircd.conf /etc /lirc

Καθώς το AIY μου είναι χωρίς κεφαλίδες, χρησιμοποιώ το WINScP για να κάνω τις αλλαγές στο lirc.conf.

Οι πληροφορίες που χρειάζεστε ξεκινούν με "έναρξη τηλεχειριστηρίου" και τελειώνουν με "τελικό τηλεχειριστήριο"

ΣΗΜΕΙΩΣΗ: Εάν θέλετε να ελέγχετε περισσότερες από μία συσκευές, απλώς προσθέστε τον επιπλέον απομακρυσμένο κωδικό στο ίδιο αρχείο μετά το υπάρχον "τελικό τηλεχειριστήριο". Βεβαιωθείτε ότι κάθε τηλεχειριστήριο έχει ένα μοναδικό όνομα. Χρησιμοποιώ το "mytv" για την τηλεόρασή μου και το "sky" για τον ουρανό μου digibox κ.λπ.

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

Ακολουθήστε αυτήν την οδηγία για να μάθετε πώς να καταγράφετε κάθε τηλεχειριστήριο χρησιμοποιώντας το LIRC:

www.instructables.com/id/Record-Infrared-Codes-of-Any-Remote-Control-Unit-f/

Αφού ηχογραφήσετε το πρώτο τηλεχειριστήριο, επαναλάβετε τη διαδικασία μέχρι να καταγράψετε όλα τα τηλεχειριστήρια. Στη συνέχεια, μπορείτε να ενημερώσετε το αρχείο lirc.conf με όλους τους κωδικούς που καταγράψατε. Έπρεπε να το κάνω αυτό για το soundbar μου.

Βήμα 5: Κωδικοποιήστε το AIY για τον έλεγχο των συσκευών σας

Για να ελέγξετε τον πομπό IR από το AIY, κάντε τις απαραίτητες αλλαγές στο αρχείο "assist_library_with_local_commands_demo.py"

Μπορείτε να εκτελέσετε το "assist_library_with_local_commands_demo.py" από το Start Dev Terminal για να δείτε αν ο κωδικός σας λειτουργεί.

Έχω το AIY να ξεκινά αυτόματα κατά την εκκίνηση ακολουθώντας τις οδηγίες εδώ:

aiyprojects.withgoogle.com/voice/#makers-guide-3-4--run-your-app-automatically

Λάβετε υπόψη ότι εάν θέλετε να αλλάξετε τον κωδικό σας, τότε πρέπει να σταματήσετε να εκτελείτε το AIY και, στη συνέχεια, να το ξεκινήσετε ξανά χρησιμοποιώντας τα εξής:

υπηρεσία sudo my_assistant stop

υπηρεσία sudo my_assistant start

Ο συνημμένος κώδικας περιέχει το τρέχον πρόγραμμα εργασίας μου.

(Σημειώστε ότι αυτός ο κώδικας περιέχει επίσης πρόσθετες δυνατότητες, όπως ραδιόφωνο στο Διαδίκτυο).

Ο κώδικας χρησιμοποιεί παραλλαγές κατά την αποστολή του LIRC send_start και send_stop για τη μετάδοση του απαιτούμενου σήματος IR. Διαπίστωσα ότι είναι απαραίτητο να εισαχθεί μια παύση μεταξύ της εκκίνησης και της διακοπής του σήματος και αυτό μπορεί να διαφέρει μεταξύ συσκευών (η Panasonic TV μου απαιτεί μεγαλύτερο σήμα από το sky box). Έτσι για παράδειγμα:

subprocess.call ('irsend SEND_START mytv KEY_POWER', shell = True)

ώρα. ύπνος (0,5)

subprocess.call ('irsend SEND_STOP mytv KEY_POWER', shell = True)

Για να στείλω συνδυασμούς σημάτων, για παράδειγμα το κανάλι Sky TV, δημιούργησα μια λίστα που όρισε μια φράση σε έναν κωδικό καναλιού. Σημειώστε ότι κάποια στιγμή το AIY δεν θα ακούει πάντα τη σωστή λέξη, οπότε έχω συμπεριλάβει επίσης παραλλαγές στη φράση (όπως bbc 1 και bbc one, ή τη λέξη «οδηγός» καθώς και «dave», όπως πάντα επέστρεφε η AIY όταν όταν είπε «dave» - πρέπει να είναι η προφορά μου!). Στη συνέχεια χρησιμοποίησα μια ρουτίνα που έπαιρνε τον κωδικό τριών χαρακτήρων από τη λίστα και μετέδιδε κάθε αριθμό (βλ. Ενότητα ## Ρουτίνα αλλαγής καναλιού Sky ##)

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

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

Καλό τηλεχειριστήριο AIY IR!

Συνιστάται: