Turinys:
- 1 žingsnis: Būtinos sąlygos
- 2 žingsnis: valdybos kūrimas
- 3 žingsnis: schema
- 4 veiksmas: pridėkite „Irremote“biblioteką prie „Arduino“programinės įrangos
- 5 veiksmas: įrašykite kodus iš nuotolinio valdymo pulto
- 6 veiksmas: sukurkite nuotolinio valdymo pulto tinklalapį
- 7 veiksmas: įkelkite nuotolinio valdymo kodą į „Arduino“
- 8 veiksmas: prisijunkite prie žiniatinklio serverio iš savo kompiuterio
- 9 veiksmas: pasirenkamas žingsnis: redaguokite „Hosts“failą, kad būtų lengviau juo naudotis
Video: „Arduino“naršyklės nuotolinio valdymo pultas („Linux“): 9 žingsniai (su paveikslėliais)
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:44
Mes turime vaikų. Man jie labai patinka, bet įjungę vaikų kanalus jie nuolat slepia palydovo ir televizoriaus nuotolinio valdymo pultą. Po to, kai tai vyksta kasdien kelerius metus, ir po to, kai mano brangioji žmona leido man išgerti „Arduino“Kalėdoms, nusprendžiau, kad atėjo laikas padaryti kažką naudingo (jos akimis!) Su „Arduino“. Taigi čia mes turime kulminaciją: žiniatinklio sąsaja su „Arduino“, kuri pakeičia mano nuotolinio valdymo pultus ir yra prieinama iš mano vidinio tinklo. Kai išsiaiškinsiu, kodėl mano eterneto skydas neleidžia mano arduino išsaugoti eskizo, parašysiu naują eskizą, kuriame kaip tinklo serveris naudojamas eterneto skydas, o tai reiškia, kad man nereikia įdiegti „apache“kompiuteryje. Sekite naujienas, aš ateisiu!
1 žingsnis: Būtinos sąlygos
Techninė įranga: „Arduino“pusė: „Arduino“- aš naudoju „Arduino Uno R2“duonos lentą - jūsų vietinę elektronikos parduotuvę arba virtuvę, jei norite autentiškos kepimo lentos montavimo gaubto - naudojau seną plastikinį dėklą su skaidriu dangteliu. Komponentai: infraraudonųjų spindulių LED vienas iš sugedusio nuotolinio valdymo pulto (ačiū vaikams!) Infraraudonųjų spindulių imtuvas - aš gavau iš stebuklingų akių nuotolinio ilgintuvo tranzistoriaus - naudojau BC547 rezistorių - naudojau 1,5 k omo kintamąjį rezistorių, nustatytą į 1 k ohm duonos laido trumpiklius - aš gavau savo iš tvirto šerdies RJ45 kabelio ritės Kompiuterio pusė: Kompiuteris, naudojamas kaip serveris USB laidas į „Arduino“programinę įrangą: „Arduino“programinė įranga - iš arduino.cc irremote bibliotekos - iš https://www.arcfn.com/2009/08/multi-protocol- infrared -remote -library.html (ačiū Kenai, puikus darbas!) „Apache“žiniatinklio serveris su įdiegtu PHP - apache.org Vidinis IP adresas - mano 192.168.0.9 Nuotolinio valdymo pulto paveikslėlis - „Google“arba nuotrauka, padaryta fotoaparatu. Išsaugojau savo 200x600 raiška
2 žingsnis: valdybos kūrimas
Labai rekomenduojama naudoti duonos lentą arduino. Aš sumontavau „Arduino“ir duonos lentą tame pačiame korpuse ir prijungiau visus kaiščius, kuriuos reguliariai naudoju, nuolat prie duonos lentos. Šiam projektui naudojami „Arduino“kaiščiai: 5 V, įžeminti Skaitmeniniai kaiščiai 3, 11 (3 kaištis valdo IR šviesos diodą, 11 kaištis jungiasi prie IR imtuvo)
3 žingsnis: schema
Ši schema yra labai paprasta, 4 komponentai ir 6 laidai. IR šviesos diodų jungtys: Prijunkite vieną iš rezistoriaus kojelių prie „Arduino“skaitmeninio kaiščio 3 Prijunkite kitą rezistoriaus kojelę prie tranzistoriaus pagrindo kaiščio (mano atveju - vidurinė kojelė) prie neigiamo šviesos diodo kojelės (trumpa kojelė, plokščia šviesos diodo pusė) Prijunkite teigiamą šviesos diodo kojelę (ilgą koją, išlenktą pusę) prie 5 V kontaktų IR imtuvo jungčių (jums reikės rasti jūsų IR imtuvas): GND kaištis įžeminamas VS kaištis į 5 V VO kaištį prie „Arduino“skaitmeninio kaiščio 11
4 veiksmas: pridėkite „Irremote“biblioteką prie „Arduino“programinės įrangos
„Irremote“yra puiki biblioteka, kurią parašė Kenas Shirriffas ir kurią galima rasti jo tinklaraštyje adresu https://www.arcfn.com/2009/08/multi-protocol-infrared-remote-library.html Atsisiųskite biblioteką iš https:// arcfn.com/files/IRremote.zip ir įdiekite ją kaip ir bet kurią kitą arduino biblioteką. Jo tinklaraštyje yra daug naudingos informacijos apie biblioteką ir kaip ją įdiegti.
5 veiksmas: įrašykite kodus iš nuotolinio valdymo pulto
Štai nuobodžios (bet neišvengiamos) dalies pradžia: paspaudus kiekvieną nuotolinio valdymo pulto mygtuką, išsaugoma išvesties eilutė ir priskiriama virtualiam nuotolinio valdymo pultui. Tai reikia padaryti tik vieną kartą, tikimasi, kad tai užtruks maždaug 20 minučių. Norėdami išsaugoti išvestį, paleiskite teksto rengyklę. Sukurkite naują dokumentą ir įveskite kiekvieną nuotolinio valdymo pulto mygtuką po vieną eilutėje: įjunkite aukštyn žemyn kairę į dešinę.. ir tt Paleiskite „Arduino IDE“ir spustelėkite „Failai-> Pavyzdžiai-> IRremote-> IRrecvDump“ir įkelkite jį į tavo Arduino. Šis pavyzdys nuotolinius kodus išmes į nuoseklųjį prievadą. Paleiskite serijinio prievado monitorių ir paspauskite nuotolinio valdymo pulto klavišą. Serijinio monitoriaus lange pamatysite eilutę: „Iššifruotas *: * (* bitai)“. Nukopijuokite šią eilutę ir išsaugokite ją savo dokumente atitinkamoje eilutėje. Pakartokite, kol visi raktai bus išsaugoti teksto faile. Aš žinau, koks smagus šis bitukas, iki šiol tai padariau du kartus: P Dabar teks šiek tiek paieškoti ir pakeisti teksto failą: ieškoti „Atšifruotas“pakeisti į „„ ieškoti “: 0x„ pakeisti "," ieškoti "(" pakeisti su "," ieškoti "bitų") pakeisti į "" Taigi tokiai eilutei kaip: dekoduotas NEC: 0x000110 (15 bitų) dabar turėtume turėti eilutę, kuri sako: NEC, 000110, 15
6 veiksmas: sukurkite nuotolinio valdymo pulto tinklalapį
Dabar turime susieti jūsų nuotolinio valdymo pulto atvaizdo mygtukus.
Naudodama https://www.maschek.hu/imagemap/imgmap mygtukus susiejau ir pakeičiau kodą, kurį suteikia svetainė, kad ji veiktų.
Spustelėkite „Naudoti vaizdą kompiuteryje: [pasirinkite failą]“, pasirinkite savo paveikslėlį, spustelėkite [įkelti], spustelėkite [priimti] Į kiekvieną mygtuką įmeskite stačiakampius, apskritimus ir pan. Jei naudojate HREF, įveskite /remote.php?command= ir to mygtuko eilutę iš teksto dokumento, pvz., /Remote.php?command=NEC, 000110, 15 Būtų protinga (ir labai padėtų derinant), jei taip pat užpildytumėte Alt: su mygtuko pavadinimu, bet tai priklauso nuo jūsų.
Pakartokite kiekvieną mygtuką.
Viskas padaryta? Tada mes tęsime. To puslapio apačioje yra „Kodas“, spustelėkite jį ir atsidarys langelis, rodantis vaizdo žemėlapio kodą. Nukopijuokite jį ir įklijuokite į naują tekstinį dokumentą. Tai yra pagrindinė mūsų tinklalapio dalis.
Čia yra mano visas tinklalapis, tiesiog pakeiskite…
su savo kodu aukščiau ir išsaugokite jį kaip remote.php savo žiniatinklio kataloge (/var/www „Linux“) kartu su nuotolinio valdymo vaizdais. Pakeiskite savo vaizdų eilutes:
„https://www.w3.org/TR/html4/loose.dtd“>
„Arduino“LED valdymas
7 veiksmas: įkelkite nuotolinio valdymo kodą į „Arduino“
Sukurkite naują eskizą ir įklijuokite į jį šį kodą:/ * * „WebRemote“* IR šviesos diodas turi būti prijungtas prie „Arduino PWM 3“kaiščio. * 0.1 versija, 2009 m. Liepos mėn. uk/2012/02/irremote-arduino-experimentation/ * „IRremote“bibliotekos autorių teisės 2009 Ken Shirriff, https://arcfn.com */#include template inline Print & operator << (Print & obj, T arg) {obj.print (arg); grįžti obj; } loginis pabaiga = klaidinga; char inData [64]; // Dydis kaip tinkamas baitų indeksas = 0; #define EOP "\ n" IRsend irsend; void setup () {Serial.begin (9600); Serijinis << "Serijinis prievadas inicijuotas" << EOP; } void loop () {Styga pch, sType, sTemp; char inChar, sTest, k; int sBits; ilgas sHex; int i, j; while (1) {while (Serial.available ()> 0) {inChar = Serial.read (); jei (indeksas == 0) {pch = ""; } if (inChar == '\ r' || inChar == '\ n' || inChar == '/') // EOP {end = true; indeksas = 0; pertrauka; } else {if (indeksas <64) // Masyvo dydis {pch += inChar; indeksas ++; }}} if (baigtas) {// Analizuokite duomenis inData čia … pch.toUpperCase (); i = pch.indexOf ('')! = -1? pch.indexOf (''): pch.indexOf (','); sType = pch.substring (0, i); i ++; // praleisti per ',' arba '' // i dabar rodo į šešiakampio pradžią j = pch.lastIndexOf ('')! = -1? pch.lastIndexOf (''): pch.lastIndexOf (','); // j dabar rodo „,“arba „“po šešiakampio sHex = 0; sTemp = pch.substring (i, j); if (sTemp.substring (0, 2) == String ("0X")) sTemp = sTemp.substring (2); (i = 0; i <sTemp.length (); i ++) {k = sTemp ; if (! ((k> = '0' && k = 'A' && k <= 'F'))) break; sHex *= 16; jei (k> = '0' && k <= '9') sHex += (k - '0'); kitaip, jei (k> = 'A' && k <= 'F') sHex + = ((k - 'A') + 10); if (! ((k> = '0' && k = 'A' && k <= 'F'))) break; } sTemp = pch.substring (j+1); sBits = 0; (i = 0; i <sTemp.length (); i ++) {k = sTemp ; sBits *= 10; jei (k> = '0' && k <= '9') sBits += (k - '0'); } if (sType.length ()> 0) {Serial << pch << EOP << "Kodo tipas:" << sType << "Hex:"; Serijinis atspaudas (sHex, HEX); Serijos << "bitai:" << sBits; } sendIt (sType, sHex, sBits); pch = ""; baigėsi = 0; }}} void sendIt (String sType, long sHex, int sBits) {for (int i = 0; i <2; i ++) {if (sType.equals (String ("RC6"))) {irsend.sendRC6 (sHex, sBits); } else if (sType.equals (String ("RC5")))) {irsend.sendRC5 (sHex, sBits); } else if (sType.equals (String ("SONY")))) {irsend.sendSony (sHex, sBits); } else if (sType.equals (String ("NEC")))) {if (! i) irsend.sendNEC (sHex, sBits); } else if (sType.equals (String (""))) {Serial << "Delaying" << EOP; vėlavimas (450); } uždelsimas (30); }}
8 veiksmas: prisijunkite prie žiniatinklio serverio iš savo kompiuterio
.. arba telefonas, „Android“ar „iPad“ar bet kas kitas: naršyklėje eikite į https:// web serverio IP adresą/remote.php. Man adresas yra https://192.168.0.9/remote.php, bet jūsų, be abejo, bus kitaip. Jei viskas veikia, turėtumėte pamatyti nuotolinio valdymo pulto nuotrauką su mygtukais, kuriuos galite spustelėti.
9 veiksmas: pasirenkamas žingsnis: redaguokite „Hosts“failą, kad būtų lengviau juo naudotis
Vienas žingsnis, kurį aš padariau, buvo redaguoti pagrindinio kompiuterio failą (/etc/hosts „Linux“, C: / Windows / System32 / Drivers / etc / hosts Windows). Atminkite, kad šį failą galima redaguoti tik administravimo komandinėje eilutėje („Windows“) arba naudojant „su“(„Linux“).. Tai turėsite padaryti kiekviename įrenginyje, kurį norėjote pasiekti tinklalapiu trumpuoju pavadinimu. Dabar galite pasiekti nuotolinio valdymo pultą naudodami https://remote/remote.php. Tai yra mano pirmasis tinkamas nurodymas, būkite švelnus ir praneškite man, jei yra kokių nors problemų, kad galėčiau jas išspręsti.
Rekomenduojamas:
Televizoriaus nuotolinio valdymo pultas tampa RF nuotolinio valdymo pultu -- NRF24L01+ pamoka: 5 žingsniai (su paveikslėliais)
Televizoriaus nuotolinio valdymo pultas tampa RF nuotolinio valdymo pultu || NRF24L01+ Pamoka: Šiame projekte parodysiu, kaip aš naudoju populiarųjį nRF24L01+ RF IC, norėdamas belaidžiu būdu sureguliuoti LED juostos ryškumą per tris nenaudingus televizoriaus nuotolinio valdymo pulto mygtukus. Pradėkime
„IRduino“: „Arduino“nuotolinio valdymo pultas - imituokite pamestą nuotolinio valdymo pultą: 6 žingsniai
„IRduino“: „Arduino“nuotolinio valdymo pultas - imituokite pamestą nuotolinio valdymo pultą: jei kada nors pametėte televizoriaus ar DVD grotuvo nuotolinio valdymo pultą, žinote, kaip apmaudu, kai tenka vaikščioti, ieškoti ir naudoti paties įrenginio mygtukus. Kartais šie mygtukai net nesuteikia tokių funkcijų kaip nuotolinio valdymo pultas. Gauti
Įprastas nuotolinio valdymo rinkinys transformuotas į keturių kanalų RC žaislinį nuotolinio valdymo pultą: 4 žingsniai
Įprastas nuotolinio valdymo rinkinys transformuotas į keturių kanalų RC žaislinį nuotolinio valdymo pultą: 62 将 通用 遥控 转换 转换 为 为 玩具 模型 中 使用 的 四方法 非常 简单。 只需 准备 一些 瓦楞纸 板 , 然后 按照 视频 教程 完成 这个 电子 项目 并 并 为 视频 教程 完成 这个 电子 项目 并 并 为
Konvertuokite savo IR nuotolinio valdymo pultą į RF nuotolinio valdymo pultą: 9 žingsniai (su paveikslėliais)
Konvertuokite savo IR nuotolinio valdymo pultą į RF nuotolinio valdymo pultą: Šiandienos instrukcijoje aš jums parodysiu, kaip galite naudoti bendrą RF modulį be mikrovaldiklio, kuris galiausiai paskatins mus sukurti projektą, kuriame bet kurio įrenginio IR nuotolinio valdymo pultą galima paversti RF Nuotolinis. Pagrindinis privalumas konvertuojant
„Alexa“balso valdymo televizoriaus nuotolinio valdymo pultas ESP8266: 9 žingsniai
„Alexa“balso valdymo televizoriaus nuotolinio valdymo pultas ESP8266: Ar kas nors jūsų namuose atleidžia nuotolinio valdymo pultą, ar einate į tuščią kambarį, kad pamatytumėte, kaip televizorius skleidžiasi. Baterijos pradeda gesti ir nekontroliuojamos iš kambario galo. Dabar galite valdyti savo televizorių, DVR, bet ką su IR valdikliu, kurį galite