Orodha ya maudhui:
- Hatua ya 1: Vifaa
- Hatua ya 2: Kupanga
- Hatua ya 3: Chapisha 3D
- Hatua ya 4: Mkutano - Ondoa taa za taa
- Hatua ya 5: Mkutano - Ongeza Kupitia Vichwa vya Shimo
- Hatua ya 6: Mkutano - Ambatisha LED
- Hatua ya 7: Mkutano - Ambatisha PhidgetIR
- Hatua ya 8: Mkutano - Kuongeza Vifungo
- Hatua ya 9: Mkutano - Kuweka Kila kitu Pamoja
- Hatua ya 10: Programu - Kanuni
- Hatua ya 11: Programu - Amri za CIR
- Hatua ya 12: Kuendesha Programu
- Hatua ya 13: Matokeo
2025 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2025-01-23 15:11
Umeenda mara ngapi kwa nyumba ya babu na nyanya yako kusaidia na "shida ya teknolojia" ambayo iliishia kuwa kebo ya umeme isiyofunguliwa, betri ya mbali iliyokufa au kutoweza kubadili chanzo kwenye Runinga yao? Najua kwamba kwangu, hii hufanyika mara nyingi. Wakati shida zao nyingi zinaweza kutatuliwa kwa kukimbilia dukani kwa AA mpya, wakati mwingine wangeweza kufaidika na suluhisho iliyogeuzwa zaidi.
Kwa mfano, babu ya rafiki yangu wa kike alipata televisheni mpya na tulijaribu kumfundisha jinsi ya kubadilisha chanzo ili aweze kubadili kati ya DVD na Runinga - lakini hakuweza kujua. Yeye pia anashughulika na kutokuona vizuri na havutii sana kujaribu kukumbuka michakato ngumu, anataka tu kutazama vipindi vyake wakati anataka. Baada ya kujaribu kuelezea kwa utulivu hatua wakati wa ziara yetu ya mwisho bila mafanikio mengi, niliamua nitamfanya awe udhibiti wa kijijini wa vitufe vyake rahisi. Hii ingemruhusu abadilishe chanzo cha kuingiza kwenye runinga yake bila uchungu, akibadilisha kati ya DVD za kipenzi za Matlock na Bei ni sawa kwa urahisi.
Hatua ya 1: Vifaa
- PhidgetIR
- PhidgetSBC4 (au kompyuta yoyote ya bodi moja kama Raspberry Pi)
- Chuma cha kulehemu
- Wakataji wa Upande
- Vipande vya waya
- Waya za Jumper
- Kebo ya USB
- Cable ya Phidget
- Ufungaji
- Vichwa vya shimo
- Tubing ya kupungua kwa joto
Hatua ya 2: Kupanga
Ili kuunda kijijini, nilihitaji uwezo wa kutuma amri za infrared (CIR) kwa televisheni. Niliamua kutumia PhigetIR kwa kazi hii. PhidgetIR ni kifaa kinachodhibitiwa na USB ambacho kina uwezo wa kutuma na kupokea amri za CIR. Nilichagua hii kwa sababu chache:
- Nilitaka kumaliza mradi huu haraka iwezekanavyo na kuitumia, kwa hivyo wazo la kuvunja oscilloscope yangu na ubao wa mkate haikuwa ya kupendeza. Pia, kuna uwezekano gani kwamba mizunguko yangu inayouzwa mkono ingekuwa bado inafanya kazi kwa mwaka mmoja au miwili?
- PhidgetIR ina uwezo wa "kujifunza" maagizo ya CIR kufanya maendeleo kuwa rahisi sana.
- Unaweza kutumia karibu lugha yoyote ya programu ya kawaida na PhidgetIR. Hii ilimaanisha ningeweza kutumia Java na kumaliza mambo haraka.
- Mwishowe, ninafanya kazi kwa Phidgets, kwa hivyo niko sawa na API, na kila wakati kuna vifaa vipuri vilivyowekwa karibu.
Kwa sababu nilichagua kutumia PhidgetIR, nilihitaji kompyuta ili kuitumia. Nilitaka mradi huu uwe programu ya kusimama peke yake, kama kijijini kawaida, kwa hivyo desktop au kompyuta ndogo ilikuwa nje. Nilichagua kutumia PhidgetSBC4 (kompyuta moja ya bodi inayoendesha Debian Linux), kwa sababu iliniruhusu kuunganishwa na vifungo vyote vya kushinikiza bila vifaa vyovyote vya ziada. Wanaweza tu kushonwa kwa waya moja kwa moja kwenye Kituo cha VINT kilichojengwa. Kumbuka: unaweza pia kutumia Raspberry Pi kwa mradi huu. Mwishowe, pamoja na kuwa na sauti ya utendaji, nilitaka mradi huu uonekane mzuri, kwa hivyo niliamua kuwa kiambatisho kilichochapishwa cha 3D kitakuwa muhimu.
Hatua ya 3: Chapisha 3D
Kwa mradi huu, Geomagic ilitumika kuiga kiambatisho. Kuna faili za hatua za 3D zinazopatikana kwa PhidgetIR na PhidgetSBC4 ambayo ilirahisisha mchakato. Maamuzi mengine yalifanywa wakati wa hatua hii kuhusu saizi na utendaji wa kiambatisho:
- PhidgetIR ina taa mbili za IR ambazo zinahitaji kuelekeza kwa Runinga ili kutuma amri. Badala ya kubuni kiambatisho karibu na bodi ya PhidgetIR, taa za IR zinaweza kufutwa na kushikamana kwenye mashimo upande wa eneo. Bodi ya PhidgetIR basi inaweza kuwekwa mbali na LEDs, ikitumia nafasi tupu.
- Viunganishi vya VINT Hub kwenye PhidgetSBC4 vinaweza kuinuliwa juu, ambayo bado ingeruhusu ufikiaji wa unganisho la kitufe cha kushinikiza, na pia ingezuia kuunda kiunga kikubwa.
Niliamua pia kuongeza lebo kwa vifungo na lebo inayoonyesha mwelekeo inapaswa kukabiliwa ili taa za IR zielekezwe kwenye mwelekeo sahihi. Nilichapisha eneo la ndani kutoka kwa plastiki nyeusi ya ABS.
Hatua ya 4: Mkutano - Ondoa taa za taa
Taa za IR mwishowe zitawekwa gundi kwenye mashimo upande wa eneo. Hii inamaanisha kwanza wanahitaji kufutwa.
Hatua ya 5: Mkutano - Ongeza Kupitia Vichwa vya Shimo
Ifuatayo, vichwa vya shimo viliongezwa mahali zilipokuwa LED, ambayo ilifanya iwe rahisi kuungana na kutumia waya ya jumper ya pini 4. Tumia neli ya kupunguza joto ili kuzuia mawasiliano ya bahati mbaya.
Hatua ya 6: Mkutano - Ambatisha LED
Gundi taa za LED kwenye kando ya ua.
Hatua ya 7: Mkutano - Ambatisha PhidgetIR
Ambatisha PhidgetIR kwenye ua, na unganisha taa za taa.
Hatua ya 8: Mkutano - Kuongeza Vifungo
Vifungo vya kushinikiza vinahitaji kushikamana na Kitovu cha VINT kilichojengwa kwenye PhidgetSBC, kwa hivyo nilikata Cable ya Phidget katikati na kugeuza ncha kwa vifungo. Kumbuka kuwa waya tu nyeupe (ishara) na nyeusi (ardhi) zinahitajika.
Hatua ya 9: Mkutano - Kuweka Kila kitu Pamoja
Usimamizi fulani wa kebo ulihitajika ili kupata kila kitu pamoja, hata hivyo, ua ulifanya kazi vizuri.
Hatua ya 10: Programu - Kanuni
Kuna faili moja tu ya Java inayohitajika kwa mradi huu ambayo unaweza kupata hapa. Programu hutumia kitu kimoja cha PhidgetIR, na vitu viwili vya Uingizaji wa Dijiti. Unaweza kuunda vitu hivi kama hii:
PhidgetIR ir = PhidgetIR mpya ();
DigitalInput tvButton = mpyaInputInput (); Uingizaji wa Dijiti nyingineButton = Kuingiza mpya kwa Dijiti ();
Vitu vya Uingizaji wa Dijiti vimepangwa kwa kitufe cha kusukuma kwenye Kitovu cha VINT. Ambatisha, onyesha, makosa, na hafla za mabadiliko ya hali pia zimeandikishwa kwa:
TV.setIsHubPortDevice (kweli);
tvButton.setHubPort (4); tvButton.addAttachListener (onAttachListener); tvButton.addDetachListener (onDetachListener); tvButton.addErrorListener (onErrorListener); tvButton.addStateChangeListener (onStateChangeListener); TVButton.ufungue (); nyingineButton.setIsHubPortDevice (kweli); nyingineButton.setHubPort (5); kifungo kingine.addAttachListener (onAttachListener); nyingineButton.addDetachListener (onDetachListener); nyingineButton.addErrorListener (onErrorListener); nyingineButton.addStateChangeListener (onStateChangeListener); kifungo kingine.ufungue ();
Msikilizaji wa mabadiliko ya serikali aliyetajwa hapo juu anaonekana kama hii:
Ubinafsishaji wa DigitalInputStateChangeListener onStateChangeListener = mpya DigitalInputStateChangeListener () {@ OverridepublicvoidonStateChange (DigitalInputStateChangeEvent disce) {
DigitalInput ch = (DigitalInput) disce.getSource (); jaribu {if (ch.getHubPort () == 4 && disce.getState () == true) {tvButtonActivated = true;} if (ch.getHubPort () == 5 && disc.getState () == kweli) {otherButtonActivated = true;}} kukamata (PhidgetException ex) {System.out.println ("Error:" + ex.getDescription ());}}};
Wakati kifungo kimeamilishwa, nambari ya hafla itafanya na kuweka bendera. Bendera hizi zitatajwa na kuwekwa upya kwenye kitanzi kuu. Kitanzi kikuu kinangojea tu mabadiliko katika hali ya kifungo, na kisha itume amri za IR kwa kutumia kazi ya kupitisha ambayo inapatikana kutoka PhidgetIR API.
wakati (kweli) {if (tvButtonActivated) {
tvButtonActivated = uwongo; Log.log (LogLevel. INFO, "KUBADILI CHANZO - TV"); ir.transmit (chanzoButtonString, codeInfo); Kulala (500); ir. kusambaza (kuliaButtonString, codeInfo); Kulala (500); ir.tritmit (enterButtonString, codeInfo);} ikiwa (nyingineButtonActivated) {otherButtonActivated = false; Log.log (LogLevel. INFO, "CHANGING CHANZO - DVD"); ir.utoaji (chanzoButtonString, codeInfo); Kulala (500); uhamishaji (kushotoButtonString, codeInfo); Kulala (500); ir. kusambaza (EnterButtonString, codeInfo);} Thread.sleep (250);}
Hatua ya 11: Programu - Amri za CIR
Hapa kuna mfano wa jinsi ya kuunda amri (amri ya kuongeza sauti katika kesi hii):
// Nambari ya IR
Chanzo cha IRCodeInfoButtonCI = IRCodeInfo mpya (); Kamba ya sautiUp = "77e1d0f0"; // Weka chanzo cha kitufe cha chanzoButtonCI.bitCount = 32; chanzoButtonCI.encoding = IRCodeEncoding. SPACE; chanzoButtonCI.gap = 108921; chanzoButtonCI.trail = 549; chanzoButtonCI.zero = newint [2]; chanzoButtonCI.zero [0] = 549; chanzoButtonCI.zero [1] = 627; chanzoButtonCI.one = newint [2]; chanzoButtonCI.one [0] = 549; chanzoButtonCI.one [1] = 1755; chanzoButtonCI.header = newint [2]; chanzoButtonCI.header [0] = 9084; kichwaButtonCI.header [1] = 4600; chanzoButtonCI.repeat = newint [3]; chanzoButtonCI.rudia [0] = 9084; chanzoButtonCI.rudia [1] = 2308; chanzoButtonCI.rudia [2] = 549; chanzoButtonCI.length = IRCodeLength. CONSTANT;
Ili kupata habari kwa agizo hili, nilitumia tu mfano wa PhidgetIR unaokuja na maktaba za Phidget. Baada ya kuelekeza kijijini kuelekea PhidgetIR na kushikilia kitufe cha kuongeza sauti, IR "hujifunza" nambari hiyo, na kueneza mfano. Habari hii inaweza kunakiliwa kwa nambari tu.
Hatua ya 12: Kuendesha Programu
Faili ya Java inaweza kuandikwa na kukusanywa kwenye kompyuta ya nje. Weka PhidgetRemote.java na phidget22.jar kwenye folda moja na uendesha amri ifuatayo:
Windowsjavac -classpath.; Phidget22.jar PhidgetRemote.java
MacOS / Linuxjavac -classpath.: phidget22.jar PhidgetRemote.java
Baada ya kukusanya, nakili faili za darasa zilizozalishwa kwenye PhidgetSBC4, na uisanidie ili kuanza kwenye boot.
Hatua ya 13: Matokeo
Nilipompa kijijini babu ya rafiki yangu wa kike na kumwonyesha jinsi ya kutumia, alishangaa jinsi ilivyokuwa rahisi. Angalia video ili kuiona ikifanya kazi!
Zawadi ya Tatu katika Mashindano ya Udhibiti wa Kijijini 2017
Ilipendekeza:
Jinsi ya kutengeneza WIFI yako mwenyewe Lango la Kuunganisha Arduino yako kwa Mtandao wa IP?: Hatua 11 (na Picha)
Jinsi ya kutengeneza WIFI yako mwenyewe Lango la Kuunganisha Arduino yako kwa Mtandao wa IP? Ninafanya kazi kwenye roboti ambayo inahitaji kuunganishwa kabisa na seva inayoendesha ar
Kugundua Babu Nje ya Kitanda Muda Mrefu: Hatua 7
Kugundua Babu Nje ya Kitanda Muda Mrefu: AsiliWakati kumekuwa na wachunguzi wa kengele ya kitanda kwa miaka mingi ambayo ni rahisi tu kufungwa kwa pedi ya kitanda inapiga kengele ya ndani kwa watoa huduma wakati mtu anaamka kitandani, hakujakuwa na njia ya familia ya mbali walezi kufuatilia lo
Zilizovunjika kwa Masikio kwa Jozi Yako Inayodhaminiwa zaidi kwa 99p na Soldering Rahisi: 3 Hatua
Sikio lililovunjika kwa Jozi Yako Inayodhaminiwa zaidi kwa 99p na Soldering Rahisi: Kuna miongozo michache ya kutengeneza plugs na inaongoza kwenye vifaa vya sauti vilivyovunjika lakini hizi zinakosa njia rahisi zaidi ya kuchukua nafasi ya risasi na moja kutoka kwa bei rahisi kutoka kwa ebay. Matengenezo ya vifaa vya masikio na kuziba ni ngumu na haiwezekani kuwa kama
CityCoaster - Jenga Coaster yako ya Ukweli iliyoongezwa kwa Biashara Yako (TfCD): Hatua 6 (na Picha)
CityCoaster - Jenga Coaster yako ya Ukweli iliyoongezwa kwa Biashara Yako (TfCD): Mji ulio chini ya kikombe chako! CityCoaster ni mradi uliozaliwa ukifikiria juu ya bidhaa ya Rotterdam Uwanja wa Ndege wa Hague, ambayo inaweza kuelezea utambulisho wa jiji, ikiburudisha wateja wa eneo la mapumziko na ukweli uliodhabitiwa. Katika mazingira kama hayo
Kuongeza Kuingia Moja kwa Moja kwa Stereo ya Gari Yako kwa Kicheza IPod / mp3: Hatua 5
Kuongeza Kuingia Moja kwa Moja kwenye Stereo ya Gari Yako kwa Kicheza IPod / mp3: Hii inayoweza kufundishwa itakuonyesha jinsi ya kuongeza mchango msaidizi, kama kichwa cha kichwa, kwa gari lako ili uweze kusikiliza iPod / mp3 player / GPS au Chochote kilicho na laini kupitia stereo za magari yako. Wakati nitakuwa nikiongeza kwenye '99 Chevy Subu yangu