Sadržaj:

Tehnologija za vašeg djeda: 13 koraka (sa slikama)
Tehnologija za vašeg djeda: 13 koraka (sa slikama)

Video: Tehnologija za vašeg djeda: 13 koraka (sa slikama)

Video: Tehnologija za vašeg djeda: 13 koraka (sa slikama)
Video: Ako imate iPhone, OVO MORATE ISPROBATI! 2024, Studeni
Anonim
Image
Image

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

3D ispis
3D ispis

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

3D ispis
3D ispis
3D ispis
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

Montaža - Uklonite LED diode
Montaža - Uklonite LED diode
Montaža - Uklonite LED diode
Montaža - Uklonite LED diode
Montaža - Uklonite LED diode
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

Montaža - Dodajte zaglavlja kroz rupe
Montaža - Dodajte zaglavlja kroz rupe
Montaža - Dodajte zaglavlja kroz rupe
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

Sklop - Priključite LED diode
Sklop - Priključite LED diode
Sklop - Priključite LED diode
Sklop - Priključite LED diode

Zalijepite LED diode na bočnu stranu kućišta.

Korak 7: Montaža - Pričvrstite PhidgetIR

Montaža - pričvrstite PhidgetIR
Montaža - pričvrstite PhidgetIR
Montaža - pričvrstite PhidgetIR
Montaža - pričvrstite PhidgetIR
Montaža - pričvrstite PhidgetIR
Montaža - pričvrstite PhidgetIR

Pričvrstite PhidgetIR na kućište i spojite LED diode.

Korak 8: Montaža - dodavanje gumba

Montaža - dodavanje gumba
Montaža - dodavanje gumba
Montaža - dodavanje gumba
Montaža - dodavanje gumba
Montaža - dodavanje gumba
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

Montaža - sastavljanje svega
Montaža - sastavljanje svega
Montaža - sastavljanje svega
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

Softver - CIR naredbe
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!

Natjecanje na daljinsko upravljanje 2017
Natjecanje na daljinsko upravljanje 2017
Natjecanje na daljinsko upravljanje 2017
Natjecanje na daljinsko upravljanje 2017

Treća nagrada na natjecanju za daljinsko upravljanje 2017

Preporučeni: