Πίνακας περιεχομένων:
- Βήμα 1: Υλικά
- Βήμα 2: Προγραμματισμός
- Βήμα 3: Τρισδιάστατη εκτύπωση
- Βήμα 4: Συναρμολόγηση - Αφαιρέστε τα LED
- Βήμα 5: Συναρμολόγηση - Προσθήκη κεφαλίδων μέσω οπών
- Βήμα 6: Συναρμολόγηση - Συνδέστε LED
- Βήμα 7: Συναρμολόγηση - Επισυνάψτε το PhidgetIR
- Βήμα 8: Συναρμολόγηση - Προσθήκη κουμπιών
- Βήμα 9: Συνέλευση - Τοποθέτηση όλων μαζί
- Βήμα 10: Λογισμικό - Κωδικός
- Βήμα 11: Λογισμικό - Εντολές CIR
- Βήμα 12: Εκτέλεση του προγράμματος
- Βήμα 13: Αποτέλεσμα
Βίντεο: Τεχνολογία για τον παππού σας: 13 βήματα (με εικόνες)
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:37
Πόσες φορές έχετε πάει στο σπίτι των παππούδων σας για να βοηθήσετε με ένα «πρόβλημα τεχνολογίας» που κατέληξε να είναι ένα καλώδιο ρεύματος χωρίς πρίζα, μια απομακρυσμένη μπαταρία ή να μην μπορείτε να αλλάξετε την πηγή στην τηλεόρασή τους; Ξέρω ότι για μένα, αυτό συμβαίνει αρκετά συχνά. Ενώ τα περισσότερα από τα προβλήματά τους μπορούν να λυθούν απλά τρέχοντας στο κατάστημα για κάποια νέα ΑΑ, μερικές φορές θα μπορούσαν να επωφεληθούν από μια πιο προσαρμοσμένη λύση.
Για παράδειγμα, ο παππούς της φίλης μου πήρε μια νέα τηλεόραση και προσπαθήσαμε να του μάθουμε πώς να αλλάζει την πηγή, ώστε να μπορεί να αλλάζει μεταξύ DVD και τηλεόρασης - αλλά απλά δεν μπορούσε να το καταλάβει. Ασχολείται επίσης με την αποτυχημένη όραση και δεν ενδιαφέρεται πολύ να προσπαθήσει να θυμηθεί περίπλοκες διαδικασίες, απλώς θέλει να παρακολουθεί τις εκπομπές του όταν το θέλει. Αφού προσπάθησα να εξηγήσω ήρεμα τα βήματα κατά την τελευταία μας επίσκεψη χωρίς μεγάλη επιτυχία, αποφάσισα ότι θα του έκανα το δικό του απλό τηλεχειριστήριο δύο κουμπιών. Αυτό θα του επέτρεπε να αλλάξει την πηγή εισόδου στην τηλεόρασή του ανώδυνα, αλλάζοντας ανάμεσα στα αγαπημένα του Matlock DVD και το Price is Right με ευκολία.
Βήμα 1: Υλικά
- PhidgetIR
- PhidgetSBC4 (ή οποιοσδήποτε υπολογιστής σαν το Raspberry Pi)
- Συγκολλητικό σίδερο
- Πλευρικά κοπτικά
- Συρματόσχοινα
- Jumper Wires
- Καλώδιο USB
- Καλώδιο Phidget
- Περίφραξη
- Κεφαλίδες διαμπερών οπών
- Θερμοσυρρικνωμένος σωλήνας
Βήμα 2: Προγραμματισμός
Για να δημιουργήσω το τηλεχειριστήριο, χρειαζόμουν τη δυνατότητα να στέλνω εντολές καταναλωτή υπέρυθρων (CIR) στην τηλεόραση. Αποφάσισα να χρησιμοποιήσω το PhigetIR για αυτήν την εργασία. Το PhidgetIR είναι μια ελεγχόμενη συσκευή USB που έχει τη δυνατότητα να στέλνει και να λαμβάνει εντολές CIR. Το επέλεξα για μερικούς λόγους:
- Wantedθελα να τελειώσω αυτό το έργο το συντομότερο δυνατό και να το χρησιμοποιήσω, οπότε η σκέψη να σπάσω τον παλμογράφο και το ψωμί μου δεν ήταν ελκυστική. Επίσης, πόσο πιθανό είναι τα κυκλώματά μου να δουλεύουν στο χέρι σε ένα ή δύο χρόνια;
- Το PhidgetIR έχει τη δυνατότητα να "μάθει" εντολές CIR κάνοντας την ανάπτυξη εξαιρετικά απλή.
- Μπορείτε να χρησιμοποιήσετε σχεδόν οποιαδήποτε βασική γλώσσα προγραμματισμού με το PhidgetIR. Αυτό σήμαινε ότι μπορούσα να χρησιμοποιήσω την Java και να τελειώσω γρήγορα τα πράγματα.
- Τέλος, εργάζομαι για το Phidgets, οπότε είμαι άνετος με το API και υπάρχουν πάντα εφεδρικές συσκευές.
Επειδή επέλεξα να χρησιμοποιήσω το PhidgetIR, χρειάστηκα έναν υπολογιστή για να τον τελειώσω. Iθελα αυτό το έργο να είναι μια αυτόνομη εφαρμογή, σαν ένα κανονικό τηλεχειριστήριο, οπότε ένας υπολογιστής ή φορητός υπολογιστής ήταν εκτός. Επέλεξα να χρησιμοποιήσω ένα PhidgetSBC4 (έναν υπολογιστή με έναν πίνακα που εκτελεί Debian Linux), επειδή μου επέτρεψε να συνδεθώ και με τα δύο κουμπιά χωρίς πρόσθετο υλικό. Μπορούν απλά να συνδεθούν απευθείας στον ενσωματωμένο διανομέα VINT. Σημείωση: μπορείτε επίσης να χρησιμοποιήσετε ένα Raspberry Pi για αυτό το έργο. Τέλος, εκτός από λειτουργικό ήχο, ήθελα αυτό το έργο να φαίνεται υπέροχο, οπότε αποφάσισα ότι θα ήταν απαραίτητο ένα περίβλημα με 3D εκτύπωση.
Βήμα 3: Τρισδιάστατη εκτύπωση
Για αυτό το έργο, το Geomagic χρησιμοποιήθηκε για τη μοντελοποίηση του περιβλήματος. Υπάρχουν διαθέσιμα αρχεία τρισδιάστατων βημάτων τόσο για το PhidgetIR όσο και για το PhidgetSBC4 που απλοποίησαν τη διαδικασία. Μερικές αποφάσεις λήφθηκαν κατά τη διάρκεια αυτού του βήματος σχετικά με το μέγεθος και τη λειτουργικότητα του περιβλήματος:
- Το PhidgetIR διαθέτει δύο LED IR που πρέπει να είναι στραμμένα προς την τηλεόραση για να στείλετε εντολές. Αντί να σχεδιάσετε το περίβλημα γύρω από την πλακέτα PhidgetIR, τα IR LED θα μπορούσαν να ξεκολληθούν και να κολληθούν στις οπές στο πλάι του περιβλήματος. Ο πίνακας PhidgetIR θα μπορούσε στη συνέχεια να τοποθετηθεί μακριά από τα LED, χρησιμοποιώντας τον κενό χώρο.
- Οι σύνδεσμοι VINT Hub στο PhidgetSBC4 θα μπορούσαν να λυγίσουν προς τα πάνω, κάτι που θα επέτρεπε την πρόσβαση στις συνδέσεις του κουμπιού και θα απέτρεπε επίσης την ανάγκη δημιουργίας μεγαλύτερου περιβλήματος.
Αποφάσισα επίσης να προσθέσω μια ετικέτα για τα κουμπιά και μια ετικέτα που να δείχνει την κατεύθυνση που πρέπει να βλέπει, έτσι ώστε οι λυχνίες IR IR να είναι στραμμένες προς τη σωστή κατεύθυνση. Τύπωσα το περίβλημα τοπικά από μαύρο πλαστικό ABS.
Βήμα 4: Συναρμολόγηση - Αφαιρέστε τα LED
Τα IR LED θα κολληθούν τελικά σε τρύπες στο πλάι του περιβλήματος. Αυτό σημαίνει ότι πρέπει πρώτα να ξεκολλήσουν.
Βήμα 5: Συναρμολόγηση - Προσθήκη κεφαλίδων μέσω οπών
Στη συνέχεια, προστέθηκαν κεφαλίδες διαμέσου οπών όπου ήταν τα LED, πράγμα που τους έκανε εύκολο να συνδεθούν χρησιμοποιώντας ένα καλώδιο άλματος 4 ακίδων. Χρησιμοποιήστε σωλήνες συρρίκνωσης θερμότητας για να αποφύγετε τυχαία επαφή.
Βήμα 6: Συναρμολόγηση - Συνδέστε LED
Κολλήστε τις λυχνίες LED στο πλάι του περιβλήματος.
Βήμα 7: Συναρμολόγηση - Επισυνάψτε το PhidgetIR
Συνδέστε το PhidgetIR στο περίβλημα και συνδέστε τα LED.
Βήμα 8: Συναρμολόγηση - Προσθήκη κουμπιών
Τα κουμπιά πρέπει να συνδεθούν με τον ενσωματωμένο διανομέα VINT στο PhidgetSBC, οπότε έκοψα ένα καλώδιο Phidget στη μέση και κόλλησα τις άκρες στα κουμπιά. Σημειώστε ότι απαιτείται μόνο το λευκό σύρμα (σήμα) και το μαύρο (γείωση).
Βήμα 9: Συνέλευση - Τοποθέτηση όλων μαζί
Απαιτήθηκε κάποια διαχείριση καλωδίων για να συγκεντρωθούν τα πάντα, ωστόσο, το περίβλημα λειτούργησε καλά.
Βήμα 10: Λογισμικό - Κωδικός
Απαιτείται μόνο ένα αρχείο Java για αυτό το έργο, το οποίο μπορείτε να βρείτε εδώ. Το πρόγραμμα χρησιμοποιεί ένα αντικείμενο PhidgetIR και δύο αντικείμενα DigitalInput. Μπορείτε να δημιουργήσετε αυτά τα αντικείμενα ως εξής:
PhidgetIR ir = νέο PhidgetIR ();
DigitalInput tvButton = νέο DigitalInput (); DigitalInput otherButton = νέο DigitalInput ();
Τα αντικείμενα ψηφιακής εισόδου αντιστοιχίζονται σε ένα φυσικό πλήκτρο στο διανομέα VINT. Τα συμβάντα επισύναψης, αποσύνδεσης, σφάλματος και αλλαγής κατάστασης είναι επίσης εγγεγραμμένα σε:
tv.setIsHubPortDevice (αληθινό);
tvButton.setHubPort (4); tvButton.addAttachListener (onAttachListener); tvButton.addDetachListener (onDetachListener); tvButton.addErrorListener (onErrorListener); tvButton.addStateChangeListener (onStateChangeListener); tvButton.open (); otherButton.setIsHubPortDevice (αληθινό); otherButton.setHubPort (5); otherButton.addAttachListener (onAttachListener); otherButton.addDetachListener (onDetachListener); otherButton.addErrorListener (onErrorListener); otherButton.addStateChangeListener (onStateChangeListener); otherButton.open ();
Η κατάσταση ακροατή αλλαγής κατάστασης που αναφέρεται παραπάνω μοιάζει με αυτό:
privatestatic DigitalInputStateChangeListener onStateChangeListener = νέο DigitalInputStateChangeListener () {@OverridepublicvoidonStateChange (DigitalInputStateChangeEvent disce) {
DigitalInput ch = (DigitalInput) disce.getSource (); δοκιμάστε {if (ch.getHubPort () == 4 && disce.getState () == true) {tvButtonActivated = true;} if (ch.getHubPort () == 5 && disce.getState () == true) {otherButtonActivated = true;}} catch (PhidgetException ex) {System.out.println ("Error:"+ ex.getDescription ());}}};
Όταν ενεργοποιηθεί ένα κουμπί, ο κωδικός συμβάντος θα εκτελεστεί και θα ορίσει μια σημαία. Αυτές οι σημαίες θα αναφέρονται και θα επαναφέρονται στον κύριο βρόχο. Ο κύριος βρόχος περιμένει απλώς μια αλλαγή στην κατάσταση κουμπιού και στη συνέχεια στέλνει εντολές IR χρησιμοποιώντας τη λειτουργία μετάδοσης που είναι διαθέσιμη από το PhidgetIR API.
while (true) {if (tvButtonActivated) {
tvButtonActivated = false; Log.log (LogLevel. INFO, "CHANGING SOURCE - TV"); ir.transmit (sourceButtonString, codeInfo); Thread.sleep (500); ir.transmit (rightButtonString, codeInfo); Thread.sleep (500); ir.transmit (enterButtonString, codeInfo);} if (otherButtonActivated) {otherButtonActivated = false; Log.log (LogLevel. INFO, "CHANGING SOURCE - DVD"); ir.transmit (sourceButtonString, codeInfo); Thread.sleep (500); ir.transmit (leftButtonString, codeInfo); Thread.sleep (500); ir.transmit (enterButtonString, codeInfo);} Thread.sleep (250);}
Βήμα 11: Λογισμικό - Εντολές CIR
Ακολουθεί ένα παράδειγμα του τρόπου δημιουργίας μιας εντολής (εντολή αύξησης της έντασης ήχου σε αυτήν την περίπτωση):
// Κωδικός IR
IRCodeInfo sourceButtonCI = νέο IRCodeInfo (); String volumeUp = "77e1d0f0"; // Ρύθμιση κουμπιού πηγής sourceButtonCI.bitCount = 32; sourceButtonCI.encoding = IRCodeEncoding. SPACE; sourceButtonCI.gap = 108921; sourceButtonCI.trail = 549; sourceButtonCI.zero = newint [2]; sourceButtonCI.zero [0] = 549; sourceButtonCI.zero [1] = 627; sourceButtonCI.one = newint [2]; sourceButtonCI.one [0] = 549; sourceButtonCI.one [1] = 1755; sourceButtonCI.header = newint [2]; sourceButtonCI.header [0] = 9084; sourceButtonCI.header [1] = 4600; sourceButtonCI.repeat = newint [3]; sourceButtonCI. επαναλάβετε [0] = 9084; sourceButtonCI.επαναλάβετε [1] = 2308; sourceButtonCI.επαναλάβετε [2] = 549; sourceButtonCI.length = IRCodeLength. CONSTANT;
Για να λάβω τις πληροφορίες για αυτήν την εντολή, χρησιμοποίησα απλώς το παράδειγμα PhidgetIR που συνοδεύει τις βιβλιοθήκες Phidget. Αφού δείξετε το τηλεχειριστήριο προς το PhidgetIR και κρατήσετε πατημένο το κουμπί αύξησης της έντασης, το IR "μαθαίνει" τον κώδικα και συμπληρώνει το παράδειγμα. Αυτές οι πληροφορίες μπορούν στη συνέχεια να αντιγραφούν στον κώδικα.
Βήμα 12: Εκτέλεση του προγράμματος
Το αρχείο Java μπορεί να γραφτεί και να μεταγλωττιστεί σε εξωτερικό υπολογιστή. Τοποθετήστε το PhidgetRemote.java και το phidget22.jar στον ίδιο φάκελο και εκτελέστε την ακόλουθη εντολή:
Windowsjavac -classpath.; Phidget22.jar PhidgetRemote.java
macOS/Linuxjavac -classpath.: phidget22.jar PhidgetRemote.java
Μετά τη μεταγλώττιση, αντιγράψτε τα αρχεία της κλάσης που δημιουργήθηκαν στο PhidgetSBC4 και ρυθμίστε το ώστε να εκτελείται κατά την εκκίνηση.
Βήμα 13: Αποτέλεσμα
Όταν έδωσα το τηλεχειριστήριο στον παππού της φίλης μου και του έδειξα πώς να το χρησιμοποιήσει, έμεινε έκπληκτος από το πόσο απλό ήταν. Δείτε το βίντεο για να το δείτε σε δράση!
Τρίτο Βραβείο στον Διαγωνισμό Τηλεχειριστηρίου 2017
Συνιστάται:
Η μέτρηση του καρδιακού ρυθμού σας βρίσκεται στην άκρη του δακτύλου σας: Προσέγγιση φωτοπληθυσμογραφίας για τον προσδιορισμό του καρδιακού ρυθμού: 7 βήματα
Η μέτρηση του καρδιακού ρυθμού σας βρίσκεται στην άκρη του δακτύλου σας: Προσέγγιση φωτοπληθυσμογραφίας για τον προσδιορισμό του καρδιακού ρυθμού: Ο φωτοπληθυσμογράφος (PPG) είναι μια απλή και χαμηλού κόστους οπτική τεχνική που χρησιμοποιείται συχνά για τον εντοπισμό αλλαγών στον όγκο αίματος σε μια μικροαγγειακή κλίνη ιστού. Χρησιμοποιείται κυρίως μη επεμβατικά για την πραγματοποίηση μετρήσεων στην επιφάνεια του δέρματος, συνήθως
Πείστε τον εαυτό σας να χρησιμοποιεί απλώς έναν μετατροπέα γραμμής 12V σε AC για χορδές φωτός LED αντί να τους επανασυνδέετε για 12V .: 3 βήματα
Πείστε τον εαυτό σας να χρησιμοποιεί απλώς έναν μετατροπέα 12V-σε-AC-line για χορδές φωτός LED αντί να τους επανασυνδέει για 12V .: Το σχέδιό μου ήταν απλό. Wantedθελα να κόψω μια φωτεινή λυχνία LED με τοίχο σε κομμάτια και στη συνέχεια να την ξανασύρσω για να σβήσει 12 βολτ. Η εναλλακτική λύση ήταν να χρησιμοποιήσετε έναν μετατροπέα ισχύος, αλλά όλοι γνωρίζουμε ότι είναι τρομερά αναποτελεσματικοί, σωστά; Σωστά? Or μήπως είναι;
Πώς να μετατρέψετε το κινητό σας τηλέφωνο LG EnV 2 σε φορητό μόντεμ για τον φορητό σας υπολογιστή (ή επιτραπέζιο υπολογιστή): 7 βήματα
Πώς να μετατρέψετε το κινητό σας τηλέφωνο LG EnV 2 σε φορητό μόντεμ τηλεφώνου για το φορητό σας υπολογιστή (ή επιτραπέζιο υπολογιστή): Όλοι είχαμε κάποια στιγμή ανάγκη να χρησιμοποιήσουμε το Διαδίκτυο εκεί που δεν ήταν εφικτό, όπως στο αυτοκίνητο , ή σε διακοπές, όπου χρεώνουν ένα ακριβό χρηματικό ποσό ανά ώρα για να χρησιμοποιήσουν το wifi τους. επιτέλους, βρήκα έναν απλό τρόπο για να
Μετατρέψτε ένα σπασμένο πρόγραμμα αναπαραγωγής DVD σε περίβλημα αξεσουάρ για τον υπολογιστή σας στο σπίτι σας: 10 βήματα
Μετατρέψτε ένα σπασμένο πρόγραμμα αναπαραγωγής DVD σε περίβλημα αξεσουάρ για υπολογιστή οικιακού κινηματογράφου: Για περίπου $ 30 (Υποθέτοντας ότι έχετε ήδη μονάδα DVD-RW και τηλεχειριστήριο κέντρου πολυμέσων) μπορείτε να μετατρέψετε μια παλιά σπασμένη συσκευή αναπαραγωγής DVD σε περίβλημα για τα αντιαισθητικά/ σκληρά σας. για να προσεγγίσετε αξεσουάρ HTPC. Ρίξτε μια ματιά στο βήμα 2 για ανάλυση κόστους. Backgrou
Ποτέ μην εισάγετε την καρφίτσα σας για τον τηλεφωνητή σας: 3 βήματα
Ποτέ μην εισάγετε την καρφίτσα σας για τον τηλεφωνητή σας: Έχετε κουραστεί να χρειάζεται να εισάγετε το φωνητικό ταχυδρομείο σας κάθε φορά που ελέγχετε το φωνητικό ταχυδρομείο σας. Λοιπόν είμαι έτσι βρήκα ένα κόλπο για αυτό