Sisukord:

Tehnoloogia teie vanaisa jaoks: 13 sammu (piltidega)
Tehnoloogia teie vanaisa jaoks: 13 sammu (piltidega)

Video: Tehnoloogia teie vanaisa jaoks: 13 sammu (piltidega)

Video: Tehnoloogia teie vanaisa jaoks: 13 sammu (piltidega)
Video: 17 Amazing Fastest Big Wood Sawmill Machines Working At Another Level 2024, November
Anonim
Image
Image

Mitu korda olete käinud oma vanavanemate majas abistamas „tehnoloogiaprobleemi” lahendamisel, mille tagajärjeks oli vooluvõrgust eemaldatud toitekaabel, tühi kaugjuhtimispatarei või teleris toiteallikat vahetamata jätmine? Ma tean, et minu jaoks juhtub seda üsna sageli. Kuigi enamikku nende probleemidest saab lahendada lihtsalt mõne uue AA poodi otsimisega, võiksid nad mõnikord paremini kohandatud lahendusest kasu saada.

Näiteks sai mu tüdruksõbra vanaisa uue televiisori ja me üritasime talle õpetada, kuidas muuta allikat, et ta saaks DVD -d ja telerit vahetada - aga ta lihtsalt ei saanud sellest aru. Ta tegeleb ka halva nägemisega ja ei ole liiga huvitatud keerukate protsesside meeldejätmisest, ta tahab lihtsalt oma saateid vaadata, kui tahab. Olles püüdnud meie viimase visiidi ajal rahulikult seletada, ilma suurema eduta, otsustasin, et teen talle lihtsalt oma lihtsa kahe nupuga kaugjuhtimispuldi. See võimaldaks tal oma teleri sisendallikat valutult vahetada, vahetades hõlpsalt oma armastatud Matlocki DVD -de ja Price is Right vahel.

Samm: materjalid

  • PhidgetIR
  • PhidgetSBC4 (või mis tahes üksikarvuti, näiteks Raspberry Pi)
  • Jootekolb
  • Külgmised lõikurid
  • Traadi eemaldajad
  • Jumper juhtmed
  • USB -kaabel
  • Phidget kaabel
  • Korpus
  • Läbi aukude päised
  • Termokahanevad torud

2. etapp: planeerimine

3D printimine
3D printimine

Kaugjuhtimispuldi loomiseks vajasin võimalust saata telerile tarbija infrapuna (CIR) käske. Otsustasin selle ülesande jaoks kasutada PhigetIR -i. PhidgetIR on USB -juhitav seade, millel on võimalus nii CIR -käske saata kui ka vastu võtta. Valisin selle mitmel põhjusel:

  • Tahtsin selle projekti võimalikult kiiresti lõpule viia ja kasutusele võtta, nii et mõte ostsilloskoobi ja leivalaua lõhkumisest ei köitnud. Samuti, kui suur on tõenäosus, et minu käsitsi joodetud vooluringid töötavad aasta või kahe pärast veel?
  • PhidgetIR -il on võime "õppida" CIR -käske, muutes arendamise äärmiselt lihtsaks.
  • PhidgetIR -iga saate kasutada peaaegu kõiki tavapäraseid programmeerimiskeeli. See tähendas, et võin Java kasutada ja asjad kiiresti valmis saada.
  • Lõpuks töötan Phidgetsis, nii et olen API -ga rahul ja alati leidub varuosi.

Kuna otsustasin kasutada PhidgetIR -i, vajasin selle käivitamiseks arvutit. Tahtsin, et see projekt oleks eraldiseisev rakendus, sarnaselt tavalise kaugjuhtimispuldiga, nii et laua- või sülearvuti oli väljas. Otsustasin kasutada PhidgetSBC4 (üheplaadiline arvuti, mis töötab Debian Linuxiga), sest see võimaldas mul liidestada mõlema surunupuga ilma täiendava riistvarata. Neid saab lihtsalt ühendada otse sisseehitatud VINT-jaoturiga. Märkus: selle projekti jaoks saate kasutada ka Raspberry Pi. Lõpuks, lisaks funktsionaalsele heale soovisin, et see projekt näeks hea välja, seega otsustasin, et 3D -trükitud ümbris on vajalik.

Samm: 3D -printimine

3D printimine
3D printimine
3D printimine
3D printimine

Selle projekti jaoks kasutati korpuse modelleerimiseks Geomagicit. Nii PhidgetIR kui ka PhidgetSBC4 jaoks on saadaval 3D -sammfailid, mis lihtsustasid protsessi. Selle sammu käigus tehti mõned otsused korpuse suuruse ja funktsionaalsuse kohta:

  • PhidgetIRil on kaks IR -valgusdioodi, mis peavad käskude saatmiseks olema suunatud teleri poole. Selle asemel, et kujundada ümbris PhidgetIR -plaadi ümber, võiks IR -valgusdioodid lahti keerata ja liimida korpuse küljel olevatesse aukudesse. Seejärel saab PhidgetIR -plaadi paigaldada LED -idest eemale, kasutades tühja ruumi.
  • PhidgetSBC4 VINT -jaoturi pistikud võivad olla ülespoole painutatud, mis võimaldaks siiski juurdepääsu nuppude ühendustele ja takistaks ka suurema korpuse loomist.

Samuti otsustasin lisada nuppudele sildi ja sildi, mis näitab suunda, kuhu see peaks olema suunatud, nii et IR -valgusdioodid oleksid suunatud õiges suunas. Prindisin ümbrise lokaalselt mustast ABS -plastikust.

Samm: kokkupanek - eemaldage LED -id

Kokkupanek - eemaldage LED -id
Kokkupanek - eemaldage LED -id
Kokkupanek - eemaldage LED -id
Kokkupanek - eemaldage LED -id
Kokkupanek - eemaldage LED -id
Kokkupanek - eemaldage LED -id

Lõpuks liimitakse IR -valgusdioodid korpuse küljel olevatesse aukudesse. See tähendab, et kõigepealt tuleb need lahti keerata.

Samm: kokkupanek - lisage aukude päised

Kokkupanek - lisage aukude päised
Kokkupanek - lisage aukude päised
Kokkupanek - lisage aukude päised
Kokkupanek - lisage aukude päised

Järgmisena lisati LED-valgusdioodide juurde aukudega päised, mis hõlbustas nende ühendamist 4-kontaktilise hüppaja abil. Juhusliku kontakti vältimiseks kasutage termokahanevaid torusid.

6. samm: kokkupanek - kinnitage valgusdioodid

Kokkupanek - kinnitage valgusdioodid
Kokkupanek - kinnitage valgusdioodid
Kokkupanek - kinnitage valgusdioodid
Kokkupanek - kinnitage valgusdioodid

Liimige valgusdioodid korpuse küljele.

Samm 7: kokkupanek - kinnitage PhidgetIR

Kokkupanek - kinnitage PhidgetIR
Kokkupanek - kinnitage PhidgetIR
Kokkupanek - kinnitage PhidgetIR
Kokkupanek - kinnitage PhidgetIR
Kokkupanek - kinnitage PhidgetIR
Kokkupanek - kinnitage PhidgetIR

Kinnitage PhidgetIR korpusele ja ühendage valgusdioodid.

8. samm: kokkupanek - nuppude lisamine

Kokkupanek - nuppude lisamine
Kokkupanek - nuppude lisamine
Kokkupanek - nuppude lisamine
Kokkupanek - nuppude lisamine
Kokkupanek - nuppude lisamine
Kokkupanek - nuppude lisamine

Nupud tuleb ühendada PhidgetSBC sisseehitatud VINT-jaoturiga, nii et lõikasin pooleks Phidget-kaabli ja jootsin otsad nuppude külge. Pange tähele, et vajalik on ainult valge traat (signaal) ja must (maandus).

9. samm: kokkupanek - kõik kokku panemine

Kokkupanek - kõik kokku
Kokkupanek - kõik kokku
Kokkupanek - kõik kokku panemine
Kokkupanek - kõik kokku panemine

Selleks, et kõik kokku saada, oli vaja teatavat kaablihaldust, kuid korpus töötas hästi.

Samm 10: Tarkvara - kood

Selle projekti jaoks on vaja ainult ühte Java -faili, mille leiate siit. Programm kasutab ühte PhidgetIR objekti ja kahte DigitalInput objekti. Saate neid objekte luua järgmiselt.

PhidgetIR ir = uus PhidgetIR ();

DigitalInput tvButton = uus DigitalInput (); DigitalInput otherButton = uus DigitalInput ();

Digitaalsisendi objektid kaardistatakse VINT -jaoturi füüsilisele nupule. Manustamise, eraldamise, vea ja oleku muutmise sündmused on samuti tellitud:

tv.setIsHubPortDevice (tõene);

tvButton.setHubPort (4); tvButton.addAttachListener (onAttachListener); tvButton.addDetachListener (onDetachListener); tvButton.addErrorListener (onErrorListener); tvButton.addStateChangeListener (onStateChangeListener); tvButton.open (); otherButton.setIsHubPortDevice (tõene); otherButton.setHubPort (5); otherButton.addAttachListener (onAttachListener); otherButton.addDetachListener (onDetachListener); otherButton.addErrorListener (onErrorListener); otherButton.addStateChangeListener (onStateChangeListener); otherButton.open ();

Ülaltoodud oleku muutmise kuulaja näeb välja selline:

privatestatic DigitalInputStateChangeListener onStateChangeListener = new DigitalInputStateChangeListener () {@OverridepublicvoidonStateChange (DigitalInputStateChangeEvent disce) {

DigitalInput ch = (DigitalInput) disce.getSource (); proovige {if (ch.getHubPort () == 4 && disce.getState () == true) {tvButtonActivated = true;} if (ch.getHubPort () == 5 && disce.getState () == true) {otherButtonActivated = true;}} catch (PhidgetException ex) {System.out.println ("Viga:"+ ex.getDescription ());}}};

Kui nupp on aktiveeritud, käivitatakse sündmuse kood ja määratakse lipp. Nendele lippudele viidatakse ja lähtestatakse põhiahelas. Põhisilmus ootab lihtsalt nupu oleku muutumist ja saadab seejärel IR -käsud, kasutades edastusfunktsiooni, mis on saadaval PhidgetIR API -st.

while (tõsi) {if (tvButtonActivated) {

tvButtonActivated = vale; Log.log (LogLevel. INFO, "MUUTUVAD ALLIKAD - TV"); ir.transmit (sourceButtonString, codeInfo); Niit.unenägu (500); ir.transmit (rightButtonString, codeInfo); Niit.unenägu (500); ir.transmit (enterButtonString, codeInfo);} if (otherButtonActivated) {otherButtonActivated = false; Log.log (LogLevel. INFO, "MUUTUVAD ALLIKAD - DVD"); ir.transmit (sourceButtonString, codeInfo); Niit.unenägu (500); ir.transmit (leftButtonString, codeInfo); Niit.unenägu (500); ir.transmit (enterButtonString, codeInfo);} Thread.sleep (250);}

Samm 11: Tarkvara - CIR -käsud

Tarkvara - CIR -käsud
Tarkvara - CIR -käsud

Siin on näide käsu loomise kohta (antud juhul helitugevuse suurendamise käsk):

// IR -kood

IRCodeInfo sourceButtonCI = uus IRCodeInfo (); String volumeUp = "77e1d0f0"; // Allika nupu seadistamine 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;

Selle käsu kohta teabe saamiseks kasutasin lihtsalt PhidgetIR raamatukogude komplekti kuuluvat PhidgetIR näidet. Pärast kaugjuhtimispuldi suunamist PhidgetIR -i poole ja helitugevuse suurendamise nuppu all hoidmist õpib infrapuna -kood koodi ja täidab näite. Seda teavet saab seejärel lihtsalt koodi kopeerida.

12. samm: programmi käivitamine

Java -faili saab kirjutada ja kompileerida välises arvutis. Asetage PhidgetRemote.java ja phidget22.jar samasse kausta ja käivitage järgmine käsk:

Windowsjavac -classpath.; Phidget22.jar PhidgetRemote.java

macOS/Linuxjavac -classpath.: phidget22.jar PhidgetRemote.java

Pärast kompileerimist kopeerige loodud klassi failid PhidgetSBC4 -sse ja konfigureerige see käivitamiseks töötama.

13. samm: tulemus

Kui andsin puldi oma tüdruksõbra vanaisale ja näitasin, kuidas seda kasutada, oli ta üllatunud, kui lihtne see on. Vaadake videot, et näha seda tegevuses!

Kaugjuhtimisvõistlus 2017
Kaugjuhtimisvõistlus 2017
Kaugjuhtimisvõistlus 2017
Kaugjuhtimisvõistlus 2017

Kolmas auhind kaugjuhtimisvõistlusel 2017

Soovitan: