Sadržaj:
- Korak 1: Materijali
- Korak 2: Planiranje
- Korak 3: 3D štampanje
- 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 dugmadi
- Korak 9: Montaža - Spajanje svega zajedno
- 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 izmjena: 2024-01-30 08:08
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, ispražnjena baterija na daljinu ili nemogućnost uključivanja izvora na njihovom televizoru? Znam da se to meni često dešava. 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 novu televiziju i pokušali smo ga naučiti kako promijeniti izvor kako bi mogao prebacivati između DVD -a i TV -a - ali to jednostavno nije mogao shvatiti. Također se bavi slabljenjem vida 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 za vrijeme naše posljednje posjete, 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 prebacujući između svojih voljenih Matlock DVD -ova i Price is Right.
Korak 1: Materijali
- PhidgetIR
- PhidgetSBC4 (ili bilo koji računar sa jednim računarom poput Raspberry Pi)
- Lemilica
- Bočni rezači
- Strojevi za skidanje žice
- Džemper žice
- USB kabel
- Phidget Cable
- Enclosure
- Zaglavlja sa otvorima
- Termoskupljajuće cijevi
Korak 2: Planiranje
Da bih stvorio daljinski upravljač, 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 uređaj s kontrolom koji ima mogućnost slanja i primanja CIR naredbi. Odabrao sam ovo iz nekoliko razloga:
- Htio sam završiti ovaj projekt što je prije moguće i staviti ga u upotrebu, tako da pomisao na izbijanje osciloskopa i ploče nije bila privlačna. Također, koliko je vjerovatno da će moja ručno lemljena kola i dalje raditi za godinu ili dvije?
- PhidgetIR ima sposobnost "učenja" CIR naredbi čineći razvoj izuzetno 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 rezervnih uređaja.
Pošto sam izabrao da koristim PhidgetIR, trebao mi je računar da ga pokrenem. Htio sam da ovaj projekt bude samostalna aplikacija, slično normalnom daljinskom upravljaču, tako da je stolna ili prijenosna računala bila isključena. Odlučio sam se za upotrebu PhidgetSBC4 (računara sa jednom pločom sa Debian Linux-om) jer mi je omogućio povezivanje sa oba tastera bez dodatnog hardvera. Jednostavno se mogu spojiti direktno na ugrađeni VINT Hub. Napomena: za ovaj projekat 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 štampano kućište.
Korak 3: 3D štampanje
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 kako bi se mogle slati naredbe. 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 bi se tada 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 tipke i oznaku koja pokazuje smjer u kojem bi trebali biti okrenuti, tako da su IR LED diode usmjerene u pravom smjeru. Lokalno sam odštampao 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 dodani zaglavci kroz rupe na mjestima gdje su nekad bile LED diode, što ih je činilo lakim za povezivanje pomoću 4-pinske kratkospojne žice. Koristite 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 dugmadi
Gumbi moraju biti povezani s ugrađenim VINT Hubom na PhidgetSBC-u, pa sam prerezao Phidget kabel na pola i lemio krajeve na gumbima. Imajte na umu da su potrebne samo bijela žica (signal) i crna (uzemljenje).
Korak 9: Montaža - Spajanje svega zajedno
Bilo je potrebno neko upravljanje kablovima 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 su mapirani na fizičko dugme na VINT Hubu. Događaji prilaganja, odvajanja, greš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 ();
Slušač promjene stanja koji je gore naveden 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 ("Greška:"+ ex.getDescription ());}}};
Kada je dugme aktivirano, kôd događaja će se izvršiti i postaviti zastavicu. Ove zastavice će biti referencirane i resetovane u glavnoj petlji. Glavna petlja jednostavno čeka promjenu stanja gumba, a zatim šalje IR naredbe koristeći funkciju 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); Thread.sleep (500); ir.transmit (rightButtonString, codeInfo); Thread.sleep (500); ir.transmit (enterButtonString, codeInfo);} if (otherButtonActivated) {otherButtonActivated = false; Log.log (LogLevel. INFO, "IZMJENA IZVORA - DVD"); ir.transmit (sourceButtonString, codeInfo); Thread.sleep (500); ir.transmit (leftButtonString, codeInfo); Thread.sleep (500); ir.transmit (enterButtonString, codeInfo);} Thread.sleep (250);}
Korak 11: Softver - CIR naredbe
Evo primjera kako stvoriti naredbu (u ovom slučaju naredba za povećanje glasnoće):
// IR kod
IRCodeInfo sourceButtonCI = novi IRCodeInfo (); String volumeUp = "77e1d0f0"; // Postavljanje dugmeta 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 bibliotekama Phidget. Nakon što usmjerite daljinski upravljač prema PhidgetIR -u i držite pritisnutu tipku za povećanje glasnoće, IC "uči" kôd i popunjava primjer. Ove se informacije mogu jednostavno kopirati u kôd.
Korak 12: Pokretanje programa
Java datoteka se može pisati i kompajlirati na vanjskom računaru. 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 kompajliranja, 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, bio je zapanjen koliko je jednostavno. Pogledajte video da biste ga vidjeli na djelu!
Treća nagrada na takmičenju za daljinsko upravljanje 2017
Preporučuje se:
Coco-Mic --- DIY Studio Quailty USB mikrofon (MEMS tehnologija): 18 koraka (sa slikama)
Coco-Mic --- DIY Studio Quailty USB mikrofon (MEMS tehnologija): Zdravo Instructabler's, Sahas ovdje. Želite li snimati svoje audio datoteke kao profesionalac? Verovatno biste voleli … Pa … u stvari svi to vole. Danas će vam se želje ostvariti. Ovdje je predstavljen Coco -Mic - koji ne samo da snima kvalitetne
D4E1 - Uradi sam - Pomoćna tehnologija: Podesiva ladica za invalidska kolica: 7 koraka (sa slikama)
D4E1 - Uradi sam - Pomoćna tehnologija: Podesivi uložak za invalidska kolica: Kjell ima urođeni invaliditet: diskinetičku kvadriparezu i ne može sam jesti. Potrebna mu je pomoć monitora, radnog terapeuta, koji ga hrani. Ovo dolazi s dva problema: 1) Radni terapeut stoji za volanom
Trgovina Djeda Mraza 2017, voz: 4 koraka (sa slikama)
Santa's Shop 2017, Train: Santa's Shop 2017 je nadograđena verzija Santa's Shop -a 2016. Htio sam dodati još jedan voz, ali jedina preostala soba bila je na stropu. Sve što trebate učiniti da biste vlak krenuli naglavačke je korištenje magneta. Tačno? Naravno, postoji nekoliko detalja
Kako napraviti kalendar djeda i baka & Spomenar (čak i ako ne znate kako napraviti spomenar): 8 koraka (sa slikama)
Kako napraviti kalendar djeda i baka & Spomenar (čak i ako ne znate kako se bilježiti): Ovo je vrlo ekonomičan (i cijenjen!) Praznični poklon za bake i djedove. Ove sam godine napravio 5 kalendara za manje od 7 dolara 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 varijabilne kontrole temperature vašeg lemilice: 7 koraka
Recikliranje vašeg starog prekidača za prigušivanje zraka kao promenljive kontrole temperature vašeg lemilice: Video sam mnogo profesionalnih kontrola promenljive 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 otpad i neke stare PVC kutije s prekidačima koja je došla s njim i tako