Sadržaj:
- Korak 1: Materijali
- Korak 2: Planiranje
- Korak 3: 3D ispis
- Korak 4: Montaža - Uklonite LED diode
- Korak 5: Montaža - Dodajte zaglavlja kroz rupe
- Korak 6: Montaža - Priključite LED diode
- Korak 7: Montaža - Pričvrstite PhidgetIR
- Korak 8: Montaža - dodavanje gumba
- Korak 9: Montaža - sastavljanje svega
- Korak 10: Softver - kod
- Korak 11: Softver - CIR naredbe
- Korak 12: Pokretanje programa
- Korak 13: Rezultat
Video: Tehnologija za vašeg djeda: 13 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:37
Koliko ste puta odlazili u kuću svojih djedova i baka kako biste pomogli oko "tehnološkog problema" koji je završio kao isključeni kabel za napajanje, istrošena baterija na daljinu ili nemogućnost uključivanja izvora na njihovom televizoru? Znam da se to meni često događa. Iako se većina njihovih problema može riješiti jednostavnim trčanjem u trgovinu po neke nove AA -e, ponekad bi mogli imati koristi od prilagođenijeg rješenja.
Na primjer, djed moje djevojke dobio je novi televizor i pokušali smo ga naučiti kako promijeniti izvor kako bi se mogao prebacivati s DVD -a na TV - ali to jednostavno nije mogao shvatiti. Također se bavi slabim vidom i nije previše zainteresiran za pokušaj pamćenja kompliciranih procesa, samo želi gledati njegove emisije kad to želi. Nakon što sam bez mnogo uspjeha pokušao mirno objasniti korake tijekom našeg posljednjeg posjeta, odlučio sam da mu samo napravim vlastiti jednostavan daljinski upravljač s dva gumba. To bi mu omogućilo da bezbolno promijeni ulazni izvor na svom televizoru, s lakoćom se prebacujući između svojih voljenih Matlock DVD -ova i cijene je u redu.
Korak 1: Materijali
- PhidgetIR
- PhidgetSBC4 (ili bilo koje jednokrilno računalo poput Raspberry Pi)
- Lemilica
- Bočni rezači
- Skidači žica
- Žice za kratkospojnike
- USB kabl
- Phidget kabel
- Kućište
- Zaglavlja kroz rupe
- Termoskupljajuće cijevi
Korak 2: Planiranje
Za izradu daljinskog upravljača trebala mi je mogućnost slanja potrošačkih infracrvenih (CIR) naredbi na televizor. Odlučio sam koristiti PhigetIR za ovaj zadatak. PhidgetIR je USB upravljani uređaj koji ima mogućnost slanja i primanja CIR naredbi. Odabrao sam ovo iz nekoliko razloga:
- Htio sam ovaj projekt završiti što je prije moguće i staviti ga u upotrebu, pa pomisao na izbijanje osciloskopa i ploče nije bila privlačna. Također, koliko je vjerojatno da bi moja ručno lemljena kola i dalje radila za godinu ili dvije?
- PhidgetIR ima sposobnost "učenja" CIR naredbi čineći razvoj iznimno jednostavnim.
- S PhidgetIR -om možete koristiti gotovo sve glavne programske jezike. To je značilo da mogu koristiti Javu i brzo završiti stvari.
- Konačno, radim za Phidgets, pa mi je API ugodan, a uvijek ima i rezervnih uređaja.
Budući da sam odlučio koristiti PhidgetIR, trebalo mi je računalo za pokretanje. Htio sam da ovaj projekt bude samostalna aplikacija, slično normalnom daljinskom upravljaču, tako da je stolno ili prijenosno računalo bilo isključeno. Odlučio sam se za korištenje PhidgetSBC4 (računalo na jednoj ploči s Debian Linuxom) jer mi je omogućilo sučelje s oba gumba bez dodatnog hardvera. Jednostavno se mogu spojiti izravno na ugrađeno VINT čvorište. Napomena: za ovaj projekt možete koristiti i Raspberry Pi. Konačno, osim što je funkcionalno zvučan, želio sam da ovaj projekt izgleda sjajno, pa sam odlučio da će biti potrebno 3D tiskano kućište.
Korak 3: 3D ispis
Za ovaj projekt, Geomagic je korišten za modeliranje kućišta. Dostupne su 3D datoteke koraka i za PhidgetIR i za PhidgetSBC4 što je pojednostavilo proces. Tijekom ovog koraka donesene su neke odluke u pogledu veličine i funkcionalnosti kućišta:
- PhidgetIR ima dvije IC LED diode koje moraju biti usmjerene prema televizoru za slanje naredbi. Umjesto dizajniranja kućišta oko PhidgetIR ploče, IC LED diode se mogu odspojiti i zalijepiti u rupe sa strane kućišta. Pločica PhidgetIR tada bi se mogla montirati dalje od LED dioda, koristeći prazan prostor.
- VINT Hub konektori na PhidgetSBC4 mogli bi se saviti prema gore, što bi i dalje omogućilo pristup tipkovnim vezama, a spriječilo bi i stvaranje većeg kućišta.
Također sam odlučio dodati oznaku za gumbe i oznaku koja pokazuje smjer u kojem bi trebali biti okrenuti tako da IC LED diode budu usmjerene u pravom smjeru. Lokalno sam ispisao kućište od crne ABS plastike.
Korak 4: Montaža - Uklonite LED diode
IC LED diode će se na kraju zalijepiti u rupe sa strane kućišta. To znači da ih prvo treba odspojiti.
Korak 5: Montaža - Dodajte zaglavlja kroz rupe
Zatim su na mjesto gdje su bile LED diode dodani zaglavci kroz rupe, što ih je olakšalo povezivanje pomoću 4-pinske kratkospojne žice. Upotrijebite termoskupljajuće cijevi kako biste spriječili slučajni kontakt.
Korak 6: Montaža - Priključite LED diode
Zalijepite LED diode na bočnu stranu kućišta.
Korak 7: Montaža - Pričvrstite PhidgetIR
Pričvrstite PhidgetIR na kućište i spojite LED diode.
Korak 8: Montaža - dodavanje gumba
Gumbi moraju biti spojeni na ugrađeni VINT Hub na PhidgetSBC, pa sam prerezao Phidget kabel na pola i lemio krajeve na gumbima. Imajte na umu da su potrebna samo bijela žica (signal) i crna (uzemljenje).
Korak 9: Montaža - sastavljanje svega
Bilo je potrebno neko upravljanje kabelima kako bi se sve spojilo, međutim, kućište je radilo dobro.
Korak 10: Softver - kod
Za ovaj projekt potrebna je samo jedna Java datoteka koju možete pronaći ovdje. Program koristi jedan objekt PhidgetIR i dva objekta DigitalInput. Ove objekte možete stvoriti ovako:
PhidgetIR ir = novi PhidgetIR ();
DigitalInput tvButton = novi DigitalInput (); DigitalInput otherButton = novi DigitalInput ();
Objekti digitalnog ulaza preslikani su u fizički gumb na VINT Hubu. Događaji pripajanja, odvajanja, pogreške i promjene stanja također su pretplaćeni na:
tv.setIsHubPortDevice (true);
tvButton.setHubPort (4); tvButton.addAttachListener (onAttachListener); tvButton.addDetachListener (onDetachListener); tvButton.addErrorListener (onErrorListener); tvButton.addStateChangeListener (onStateChangeListener); tvButton.open (); otherButton.setIsHubPortDevice (true); otherButton.setHubPort (5); otherButton.addAttachListener (onAttachListener); otherButton.addDetachListener (onDetachListener); otherButton.addErrorListener (onErrorListener); otherButton.addStateChangeListener (onStateChangeListener); otherButton.open ();
Gore navedeni slušatelj promjena stanja izgleda ovako:
privatestatic DigitalInputStateChangeListener onStateChangeListener = novi DigitalInputStateChangeListener () {@OverridepublicvoidonStateChange (DigitalInputStateChangeEvent disce) {
DigitalInput ch = (DigitalInput) disce.getSource (); pokušajte {if (ch.getHubPort () == 4 && disce.getState () == true) {tvButtonActivated = true;} if (ch.getHubPort () == 5 && disce.getState () == true) {otherButtonActivated = true;}} catch (PhidgetException ex) {System.out.println ("Pogreška:"+ ex.getDescription ());}}};
Kada je gumb aktiviran, kôd događaja će se izvršiti i postaviti zastavicu. Ove zastavice će se referencirati i resetirati u glavnoj petlji. Glavna petlja jednostavno čeka promjenu stanja gumba, a zatim šalje IR naredbe pomoću funkcije prijenosa koja je dostupna iz PhidgetIR API -ja.
while (true) {if (tvButtonActivated) {
tvButtonActivated = false; Log.log (LogLevel. INFO, "IZMJENA IZVORA - TV"); ir.transmit (sourceButtonString, codeInfo); Navoj.spavanje (500); ir.transmit (rightButtonString, codeInfo); Navoj.spavanje (500); ir.transmit (enterButtonString, codeInfo);} if (otherButtonActivated) {otherButtonActivated = false; Log.log (LogLevel. INFO, "IZMJENA IZVORA - DVD"); ir.transmit (sourceButtonString, codeInfo); Navoj.spavanje (500); ir.transmit (leftButtonString, codeInfo); Navoj.spavanje (500); ir.transmit (enterButtonString, codeInfo);} Thread.sleep (250);}
Korak 11: Softver - CIR naredbe
Evo primjera kako stvoriti naredbu (u ovom slučaju naredba za pojačavanje glasnoće):
// IR kod
IRCodeInfo sourceButtonCI = novi IRCodeInfo (); String volumeUp = "77e1d0f0"; // Postavljanje gumba izvora 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.repeat [0] = 9084; sourceButtonCI.repeat [1] = 2308; sourceButtonCI.repeat [2] = 549; sourceButtonCI.length = IRCodeLength. CONSTANT;
Da bih dobio informacije za ovu naredbu, jednostavno sam upotrijebio primjer PhidgetIR -a koji dolazi s knjižnicama Phidget. Nakon što je daljinski upravljač usmjerio prema PhidgetIR -u i držao pritisnutu tipku za pojačavanje glasnoće, IC "uči" kôd i popunjava primjer. Ti se podaci mogu jednostavno kopirati u kôd.
Korak 12: Pokretanje programa
Java datoteka može se zapisati i sastaviti na vanjskom računalu. Postavite PhidgetRemote.java i phidget22.jar u istu mapu i pokrenite sljedeću naredbu:
Windowsjavac -classpath.; Phidget22.jar PhidgetRemote.java
macOS/Linuxjavac -classpath.: phidget22.jar PhidgetRemote.java
Nakon prevođenja, kopirajte generirane datoteke klasa u PhidgetSBC4 i konfigurirajte ih za pokretanje pri pokretanju.
Korak 13: Rezultat
Kad sam djedu djevojke dao daljinski i pokazao mu kako se njime koristi, začudio se koliko je jednostavan. Pogledajte video da biste ga vidjeli na djelu!
Treća nagrada na natjecanju za daljinsko upravljanje 2017
Preporučeni:
Živi pikseli - zamislite da tehnologija ima život: 4 koraka (sa slikama)
Živi pikseli - zamislite da tehnologija ima život: Vidjevši da su proizvodi pametne kuće sve češći u našim životima, počeo sam razmišljati o odnosu između ljudi i ovih proizvoda. Ako jednog dana proizvodi pametne kuće postanu neizostavan dio svačijeg života, koje stavove trebamo zauzeti
Coco-Mic --- DIY Studio Quailty USB mikrofon (MEMS tehnologija): 18 koraka (sa slikama)
Coco-Mic --- DIY Studio Quailty USB mikrofon (MEMS tehnologija): Pozdrav Instructabler's, Sahas ovdje. Želite li svoje audio datoteke snimiti kao profesionalac? Vjerojatno biste voljeli … Pa … zapravo svi to vole. Danas će vam se želje ostvariti. Ovdje je predstavljen Coco -Mic - koji ne samo da snima kvalitetne
Trgovina Djeda Mraza 2017., vlak: 4 koraka (sa slikama)
Santa's Shop 2017, Train: Santa's Shop 2017 nadograđena je verzija Santa's Shopa 2016. Htio sam dodati još jedan vlak, ali jedina preostala soba bila je na stropu. Sve što morate učiniti da vlak krene naopako je koristiti magnete. Pravo? Naravno, postoji nekoliko detalja
Kako napraviti kalendar djeda i bake & Spomenar (čak i ako ne znate kako spomenar): 8 koraka (sa slikama)
Kako napraviti kalendar djeda i bake & Spomenar (čak i ako ne znate zapisati album): Ovo je vrlo ekonomičan (i cijenjen!) Blagdanski dar za bake i djedove. Ove sam godine napravio 5 kalendara za manje od 7 USD svaki. Materijali: 12 sjajnih fotografija vašeg djeteta, djece, nećaka, nećaka, pasa, mačaka ili druge rodbine12 različitih komada
Recikliranje vašeg starog prekidača za prigušivanje zraka kao promjenjive kontrole temperature vašeg lemilice: 7 koraka
Recikliranje vašeg starog prekidača za prigušivanje zraka kao varijabilna kontrola temperature vašeg lemilice: Vidio sam mnogo profesionalnih kontrola promjenjive temperature lemilice, ali preskupih. Tako sam napravio jedan od starog prekidača za prigušivanje, utičnice, ploče i utikača koji su već bili bezvrijedni i neke stare PVC kutije s prekidačima koja je došla s njim i tako