Orodha ya maudhui:

Kidhibiti cha Kijijini cha Kivinjari cha Arduino (linux): Hatua 9 (na Picha)
Kidhibiti cha Kijijini cha Kivinjari cha Arduino (linux): Hatua 9 (na Picha)

Video: Kidhibiti cha Kijijini cha Kivinjari cha Arduino (linux): Hatua 9 (na Picha)

Video: Kidhibiti cha Kijijini cha Kivinjari cha Arduino (linux): Hatua 9 (na Picha)
Video: $5 WiFi Camera Setup | ESP32 Wifi Setup view on Mobile phone 2024, Julai
Anonim
Kidhibiti cha Kijijini cha Kivinjari cha Arduino (linux)
Kidhibiti cha Kijijini cha Kivinjari cha Arduino (linux)
Kidhibiti cha Kijijini cha Kivinjari cha Arduino (linux)
Kidhibiti cha Kijijini cha Kivinjari cha Arduino (linux)

Tuna watoto. Ninawapenda kwa bits lakini wanaendelea kuficha rimoti ya satellite na TV wanapoweka chaneli za watoto. Baada ya hii kutokea kila siku kwa miaka kadhaa, na baada ya mke wangu mpendwa kuniruhusu kuwa na Arduino kwa Krismasi niliamua kuwa ilikuwa wakati wa kutengeneza kitu muhimu (machoni pake!) Na Arduino. Kwa hivyo hapa tuna kilele cha hiyo: kiunga-msingi cha wavuti kwa Arduino ambayo inachukua nafasi za mbali zangu na inapatikana kutoka kwa mtandao wangu wa ndani. Ninapogundua kwanini ngao yangu ya ethernet hairuhusu arduino yangu kuweka mchoro nitaandika mchoro mpya ambao hutumia ngao ya ethernet kama seva ya wavuti, ikimaanisha sihitaji apache iliyosanikishwa kwenye kompyuta yangu. Endelea kufuatilia, nitafika hapo!

Hatua ya 1: Mahitaji

Mahitaji
Mahitaji

Vifaa: upande wa Arduino: Arduino - ninatumia Bodi ya Mkate ya Arduino Uno R2 - duka lako la vifaa vya elektroniki, au jikoni ikiwa unataka kizuizi halisi cha kuweka ubao wa mkate - Nilitumia kasha la zamani la plastiki na kifuniko cha uwazi Vipengele: LED ya infrared - nilibabaika moja kutoka kwa udhibiti wa kijijini uliovunjika (watoto wa shukrani!) Mpokeaji wa infrared - Nilipata yangu kutoka kwa macho ya uchawi extender Transistor - nilitumia Resistor ya BC547 - nilitumia kontena ya kutofautisha ya 1.5k ohm iliyowekwa kwa waya 1k ohm Breadboard jumper - nilipata yangu kutoka kwa msingi thabiti wa RJ45 reel upande wa Kompyuta: Kompyuta kutumia kama seva ya USB inayoongoza kwa Programu ya Arduino: Programu ya Arduino - kutoka kwa maktaba ya arduino.cc irremote - kutoka https://www.arcfn.com/2009/08/multi-protocol- infrared-remote-library.html (asante Ken, kazi kubwa!) Seva ya wavuti ya Apache na PHP imewekwa - apache.org Anwani ya ndani ya IP - yangu ni 192.168.0.9 Picha ya udhibiti wako wa kijijini - google au picha iliyopigwa kwenye kamera yako. Niliokoa yangu kwa azimio la 200x600

Hatua ya 2: Kuunda Bodi

Kujenga Bodi
Kujenga Bodi

Kutumia ubao wa mkate kwa arduino inapendekezwa sana. Niliweka Arduino yangu na ubao wa mkate kwenye ua ule ule na nikatia waya pini zote ninazotumia mara kwa mara kwenye ubao wa mkate kabisa. Pini za Arduino zinazotumiwa kwa mradi huu: 5v, pini za Dijiti za ardhini 3, 11 (pini 3 inadhibiti mwangaza wa IR, pini 11 inaunganisha kwa mpokeaji wa IR)

Hatua ya 3: Mpangilio

Mpangilio
Mpangilio

Mpangilio huu ni rahisi sana, vifaa 4 na waya 6. Uunganisho wa LED za IR: Unganisha moja ya miguu ya kontena na pini ya dijiti ya Arduino 3 Unganisha mguu mwingine wa kontena kwa pini ya msingi ya transistor (mguu wa katikati kwangu) Unganisha mtoaji wa transistor chini Unganisha mtoza ya transistor kwa mguu hasi wa LED (mguu mfupi, upande wa gorofa ya LED) Unganisha mguu mzuri (mguu mrefu, upande uliopindika) wa LED kwenye unganisho la 5v la mpokeaji IR (utahitaji kupata pinout kwa mpokeaji wako wa IR): pini ya GND chini siri ya VS kwa pini ya 5V VO kwa pini ya dijiti ya Arduino 11

Hatua ya 4: Ongeza Maktaba ya Irremote kwenye Programu ya Arduino

Ongeza Maktaba ya Irremote kwenye Programu ya Arduino
Ongeza Maktaba ya Irremote kwenye Programu ya Arduino

irremote ni maktaba nzuri iliyoandikwa na Ken Shirriff na inapatikana kutoka kwa blogi yake kwa https://www.arcfn.com/2009/08/multi-protocol-infrared-remote-library.html Pakua maktaba kutoka https:// arcfn.com / files / IRremote.zip na usakinishe kama ungependa maktaba nyingine yoyote kwa arduino. Blogi yake ina habari nyingi muhimu kuhusu maktaba na jinsi ya kuisanikisha.

Hatua ya 5: Rekodi Nambari Kutoka kwa Udhibiti wako wa Kijijini

Hapa kuna mwanzo wa sehemu ya kuchosha (lakini isiyoweza kuepukika): Kubonyeza kila kitufe kwenye rimoti, kuokoa kamba ya pato na kuifanya kwa ramani ya kijijini. Unahitaji kufanya mara moja tu, tarajia kuchukua takriban dakika 20 au zaidi. Anza kihariri cha maandishi ili kuokoa pato lako. Unda hati mpya na uandike kila kitufe kwenye udhibiti wako wa kijijini, moja kwa kila mstari: Nimisha Juu Kushoto Kulia.. et cetera Anzisha IDE ya Arduino na bonyeza "Files-> Mifano-> IRremote-> IRrecvDump" na uipakie kwenye Arduino yako. Mfano huu utatupa nambari za mbali kwenye bandari ya serial. Anza mfuatiliaji wa bandari ya Serial na bonyeza kitufe kwenye udhibiti wako wa kijijini. Utaona kamba ikionekana kwenye dirisha la ufuatiliaji wa serial: "Imesimbuliwa *: * (* bits)". Nakili mstari huu na uihifadhi kwenye hati yako kwenye laini inayofaa. Rudia hadi uwe na funguo zako zote zilizohifadhiwa kwenye faili ya maandishi. Najua ni furaha gani hii kidogo, nimeifanya mara mbili hadi sasa: P Sasa tunahitaji kutafuta kidogo na kuchukua nafasi kwenye faili ya maandishi: tafuta nafasi ya "Decoded" na "" tafuta ": 0x" badala ya., 15

Hatua ya 6: Unda Ukurasa wa Wavuti kwa Udhibiti wako wa Kijijini

Sasa tunahitaji kuchora vifungo kwenye picha yako ya udhibiti wako wa kijijini.

Nilitumia https://www.maschek.hu/imaap/imgmap kuchora vifungo na kurekebisha nambari ambayo tovuti inakupa kuifanya ifanye kazi.

Bonyeza "Tumia picha kwenye kompyuta yako: [chagua faili]", chagua picha yako, bonyeza [pakia], bonyeza [kubali] Tone mstatili, duara n.k kwenye kila kitufe. Kwa HREF weka /remote.php?command= na laini ya kitufe hicho kutoka kwa hati ya maandishi kwa mfano /remote.php?command=NEC, 000110, 15 Itakuwa busara (na kusaidia sana katika utatuzi) ikiwa pia utajaza Alt: na jina la kitufe lakini hiyo ni juu yako.

Rudia kila kifungo.

Yote yamefanywa? Kisha tutaendelea. Chini ya ukurasa huo kuna "Msimbo", bonyeza hapo na sanduku litafunguliwa likionyesha nambari ya ramani ya picha. Nakili hiyo na ibandike kwenye hati mpya ya maandishi. Hii ndio sehemu kuu ya ukurasa wetu wa wavuti.

Hapa kuna ukurasa wangu kamili wa wavuti, badilisha tu…

na nambari yako mwenyewe hapo juu na uihifadhi kama remote.php kwenye saraka yako ya wavuti (/ var / www kwenye linux) pamoja na picha zako za kudhibiti kijijini. Badilisha mistari kwa picha zako mwenyewe:

"https://www.w3.org/TR/html4/loose.dtd">

Udhibiti wa Arduino LED

Hatua ya 7: Pakia Nambari ya Udhibiti wa Kijijini kwa Arduino yako

Pakia Nambari ya Udhibiti wa Kijijini kwa Arduino yako
Pakia Nambari ya Udhibiti wa Kijijini kwa Arduino yako

Unda mchoro mpya na ubandike nambari ifuatayo ndani yake: / * * WebRemote * IR LED lazima iunganishwe na Arduino PWM pin 3. * Toleo la 0.1 Julai, 2009 * Hati miliki hii ya hakimiliki Gregory Fenton, https://labby.co. uk / 2012/02 / irremote-arduino-experimentation / * Hakimiliki ya maktaba ya IRremote 2009 Ken Shirriff, https://arcfn.com * / # pamoja na templeti iliyomo ndani Chapisha na mwendeshaji << (Chapisha & obj, T arg) {obj.print (arg); kurudi obj; } boolean ilimalizika = uwongo; char inData [64]; // Ukubwa kama index ya byte inayofaa = 0; #fafanua EOP "\ n" IRsend irsend; kuanzisha batili () {Serial.begin (9600); Serial << "Bandari ya serial imeanzishwa" << EOP; } kitanzi batili () {Stchchch, sType, sTemp; char katikaChar, sTest, k; int sBits; muda mrefu sHex; int i, j; wakati (1) {wakati (Serial.available ()> 0) {inChar = Serial.read (); ikiwa (index == 0) {pch = ""; } ikiwa (inChar == '\ r' || inChar == '\ n' || inChar == '/') // EOP {ended = true; faharisi = 0; kuvunja; } vingine {if (index <64) // Array size {pch + = inChar; index ++; }}} ikiwa (imeisha) {// Changanua data katika InData hapa… pch.toUpperCase (); i = pch.indexOf (")! = -1? pch.indexOf (''): pch.indexOf (','); sType = pch. mkondoni (0, i); i ++; // ruka juu ',' au "// i sasa inaashiria kuanza kwa hex j = pch. lastIndexOf (")! = -1? pch.lastIndexOf (''): pch.lastIndexOf (','); // j sasa inaelekeza kwa ',' au "baada ya hex sHex = 0; sTemp = pch. kamba (i, j); ikiwa (sTemp.substring (0, 2) == String ("0X")) sTemp = sTemp.substring (2); kwa (i = 0; i <sTemp.length (); i ++) {k = sTemp ; ikiwa (! ((k> = '0' && k = 'A' && k <= 'F'))) kuvunja; sHex * = 16; ikiwa (k> = '0' && k <= '9') sHex + = (k - '0'); vinginevyo ikiwa (k> = 'A' && k <= 'F') sHex + = ((k - 'A') + 10); ikiwa (! ((k> = '0' && k = 'A' && k <= 'F'))) kuvunja; } sTemp = pch. uzi wa chini (j + 1); sBits = 0; kwa (i = 0; i <sTemp.length (); i ++) {k = sTemp ; sBits * = 10; ikiwa (k> = '0' && k <= '9') sBits + = (k - '0'); } ikiwa (sType.length ()> 0) {Serial << pch << EOP << "Aina ya msimbo:" << sType << "Hex:"; Serial.print (sHex, HEX); Serial << "Bits:" << sBits; } Tuma (sType, sHex, sBits); pch = ""; kumalizika = 0; }}} batili sendIt (String sType, long sHex, int sBits) {for (int i = 0; i <2; i ++) {if (sType.equals (String ("RC6"))) {irsend.sendRC6 (sHex, sBits); } mwingine ikiwa (sType.equals (String ("RC5"))) {irsend.sendRC5 (sHex, sBits); } kingine ikiwa (sType.equals (String ("SONY"))) {irsend.sendSony (sHex, sBits); } mwingine ikiwa (sType.equals (String ("NEC"))) {if (! i) irsend.sendNEC (sHex, sBits); } mwingine ikiwa (sType.equals (String (""))) {Serial << "Kuchelewesha" << EOP; kuchelewesha (450); } kuchelewa (30); }}

Hatua ya 8: Unganisha kwenye seva ya wavuti kutoka kwa kompyuta yako

Unganisha kwa Seva ya Wavuti Kutoka Kompyuta yako
Unganisha kwa Seva ya Wavuti Kutoka Kompyuta yako

.. au simu au android au ipad au chochote: nenda kwa https:// anwani ya IP ya webserver / remote.php katika kivinjari chako Kwangu anwani ni https:// 192.168.0.9/remote.php lakini bila shaka yako itakuwa tofauti. Ikiwa yote yanafanya kazi unapaswa kuona picha ya udhibiti wako wa kijijini na vifungo unavyoweza kubonyeza.

Hatua ya 9: Hiari Hatua: Hariri Majeshi Yako Faili Ili Kuifanya iwe Rahisi Kutumia

Hatua ya Hiari: Hariri Majeshi Yako ya Faili ili Kuifanya iwe Rahisi Kutumia
Hatua ya Hiari: Hariri Majeshi Yako ya Faili ili Kuifanya iwe Rahisi Kutumia

Hatua niliyoifanya ni kuhariri faili yangu ya majeshi (/ nk / majeshi kwenye linux, C: / Windows / System32 / Madereva / nk / majeshi kwenye windows). Kumbuka kuwa faili hii inaweza kuhaririwa tu katika mwongozo wa amri ya kiutawala (windows) au kwa su (linux) Ongeza mstari wa mbali wa ip.add.re.ss badala ya ip.add.re.ss na anwani ya IP ya seva na uhifadhi faili.. Utahitaji kufanya hivyo kwenye kila kifaa unachotaka kufikia ukurasa wa wavuti na jina fupi. Sasa unaweza kufikia kijijini na https://remote/remote.php Huu ndio mafunzo yangu ya kwanza yanayofaa, kuwa mpole na unijulishe ikiwa kuna shida yoyote ili niweze kuzirekebisha.

Ilipendekeza: