Turinys:

Nuotoliniu būdu išjunkite arba paleiskite kompiuterį iš naujo naudodami ESP8266 įrenginį: 10 žingsnių (su paveikslėliais)
Nuotoliniu būdu išjunkite arba paleiskite kompiuterį iš naujo naudodami ESP8266 įrenginį: 10 žingsnių (su paveikslėliais)

Video: Nuotoliniu būdu išjunkite arba paleiskite kompiuterį iš naujo naudodami ESP8266 įrenginį: 10 žingsnių (su paveikslėliais)

Video: Nuotoliniu būdu išjunkite arba paleiskite kompiuterį iš naujo naudodami ESP8266 įrenginį: 10 žingsnių (su paveikslėliais)
Video: Windows 10 prisijungimo slaptažodžio įvedimo nuėmimas 2024, Liepa
Anonim
Image
Image

Kad būtų aišku, mes uždarome JŪSŲ kompiuterį, o ne kažkieno.

Istorija tokia:

Vienas mano draugas „Facebook“parašė man žinutę ir pasakė, kad turi keliolika kompiuterių, atliekančių krūvą matematikos, tačiau kiekvieną rytą 3 valandą ryto jie užsidaro. Kadangi kompiuteriai yra už 30 minučių kelio, varyti du miestus (gyvename Pietų Dakotoje), kad būtų galima įjungti kompiuterius, yra didžiulė bėda. Jis paklausė, ar galėčiau jam sukurti daiktų interneto įrenginį, kuris leistų iš naujo paleisti pažeidžiantį kompiuterį iš jaukios lovos?

Niekada nepraleisdamas iššūkio, sutikau jam kažką sudėti. Tai yra tas projektas.

Naudojant du registruotus bitų poslinkius, ESP8266 ESP01, keletą šviesos diodų ir kai kuriuos naminius optoizoliatorius, visas projektas kainuoja apie 5 USD, jei perkate dalis iš Kinijos „eBay“. Gal 20 USD iš „Amazon“.

Tai gana sudėtinga konstrukcija su daugybe smulkių litavimų. Neskaičiuojant mano užsukimų ir litavimo, užtrukau daugiau nei 20 valandų, tačiau tai pasirodė nuostabu ir puikiai veikė.

Pradėkime.

1 žingsnis: prototipo lenta

Prototipų lenta
Prototipų lenta
Prototipų lenta
Prototipų lenta

Visus projektus visada pradėkite nuo duonos lentos prototipo. Tai geriausias būdas nustatyti, ar turite visus komponentus ir ar veikiate taip, kaip tikėtasi. Šis projektas yra šiek tiek sudėtingas, todėl labai rekomenduoju jį pastatyti ant duonos lentos prieš judant į priekį.

Jums reikalingos dalys yra:

  • Vienas ESP8266 ESP01 (nors bet kuris ESP8266 įrenginys veiktų)
  • Du 8 bitų poslinkių registrai, naudojau 74HC595N
  • 16 šviesos diodų, aš naudoju šiaudinę skrybėlę baltus šviesos diodus, kurie veikia esant 3,3 V įtampai. Jei naudojate kitus, jums gali prireikti rezistorių.
  • Trys 3k3-ommpulldown rezistoriai
  • Trumpieji laidai ir duonos lenta

Taip pat turėsite pastatyti bent vieną optoizoliatorių. Naudojau juodus susitraukiančius vamzdelius, ryškiai baltą šviesos diodą, 220 omų rezistorių ir fotorezistorių. Lituokite 220 omų rezistorių prie šviesos diodo katodo, o po to sandariai uždėkite šviesos diodą ir fotorezistorių susitraukiančio vamzdelio viduje. Bet prie jų pateksime vėliau.

Sekite prijungimo schemą, pateiktą kitame žingsnyje. Laidai yra gana paprasti.

Kadangi ESP8266 veikia esant 3,3 V įtampai, įsitikinkite, kad tinkamai maitinate

2 žingsnis: schema naudojant „Will-CAD“

Schema naudojant „Will-CAD“
Schema naudojant „Will-CAD“

Schema yra gana paprasta. Mes sekame standartinį 8 bitų poslinkių registro prijungimą. Kadangi naudoju du 8 bitų poslinkių registrus, juos reikia sujungti grandinėmis prie laikrodžio ir fiksatoriaus kaiščių.

Kadangi ESP01 turi tik du GPIO kaiščius, turime iš naujo naudoti TX & RX kaip išvestį, o tai puikiai tinka mūsų tikslams. Jei norite daugiau valdyti, galite naudoti ESP-12 ar kitą versiją su daugiau nei dviem GPIO kaiščiais. Tačiau tai pridės dar 2 USD prie projekto išlaidų - tai tik beprotiška kalba.

Turime saugoti 8 bitų pamainų registrus ir ESP01 kaiščius, pakeltus aukštai, kad jie nedarytų keistų dalykų ir neįjungtų programos režimo. Aš naudoju tris 3k3 rezistorius, taip pat veiktų didesnės ar mažesnės vertės. Ši vertė buvo gauta iš vadovų, kuriuose kalbama apie alternatyvių kaiščių panaudojimą ESP01.

ESP01 (ESP8266)

  • TX laikrodžio kaištis 3k3 ištraukimas
  • RX fiksavimo kaištis 3k3 traukimas
  • 00 serijos duomenys 3k3 ištraukimas
  • 02 plūduriuojantis

8 bitų poslinkių registras (74HC595H)

  • VCC 3.3V
  • OE 3.3V (tai įjungimo kaištis)
  • GND GND
  • CLR GND (tai neleidžia išvalyti kaiščio)
  • Ir šviesos diodai, tie eina į žemę.

3 žingsnis: ESP8266 kodas

ESP8266 kodas
ESP8266 kodas

ESP8266 kodas yra gana paprastas. Deja, „Instructables“redaktorius yra gana nenaudingas, todėl norėsite gauti kodą tiesiai iš „Github“.

„stelažų perkrovimo“projektas:

github.com/bluemonkeydev/arduino-projects/…

„SensorBase“klasę rasite čia. Tai būtina, jei norite „naudoti“mano kodą:

github.com/bluemonkeydev/arduino-projects/…

Reikia atkreipti dėmesį į keletą dalykų. Kodas yra gana gerai dokumentuotas.

  1. Esu labai tingus kūrėjas, todėl visus daugkartinio naudojimo ESP8266 kodus sudėjau į klasę „SensorBase“. Tai taip pat galite rasti „Github“, nuorodą aukščiau.
  2. Turite įvesti savo MQTT tarpininko serverį, vartotojo vardą, slaptažodį ir prievadą. Juos galima rasti šiek tiek žemiau, kai sukuriame „CloudMQTT“paslaugą.
  3. Jums nereikia sekti mano temos sintaksės formato. Tačiau rekomenduočiau jo laikytis.
  4. Šiame kodekse nėra nieko protingo. Tai labai pragmatiška.

4 žingsnis: „Perfboard“išdėstymas

„Perfboard“išdėstymas
„Perfboard“išdėstymas

Šis projektas bus įdiegtas mini duomenų centre, todėl galutiniam dizainui nusprendžiau naudoti tik perf plokštę. „Perfboard“puikiai tinka tokiems projektams ir yra lengvai išdėstomas naudojant pasirinktinį grafiko popierių. Čia pamatysite mano išdėstymą. Žinoma, galite pasirinkti tai padaryti kitaip.

Mano projektui reikėjo dviejų 8 bitų pamainų registrų, todėl pradėjau nuo jų padėties nustatymo viduryje. Žinojau, kad mano jungtys prie optoizoliatorių kol kas bus paprastos moteriškos antraštės, nors tai nėra idealus sprendimas.

Man patinka šviesos diodai, ir tam reikėjo turėti šviesos diodą kiekvienai optoizoliatoriaus grandinei. Aš žinojau, kad bandymo etapas būtų be galo lengvas, jei galėčiau gauti tiesioginį grįžtamąjį ryšį tiesiai ant lentos, tačiau taip pat žinojau, kad tie šviesos diodai sukels didžiulį skausmą. Ir jie buvo. Aš neturėjau nieko mažesnio nei 5 mm šviesos diodų, todėl turėjau juos suskirstyti. Mano galutinis dizainas sudarė katodų zigzago modelį, nes nenorėjau anodų paleisti ant žemės laidų. Tai pasirodė esąs geras dizainas. Šviesos diodų laidai susijungia virš 8 bitų poslinkių registrų ir paprastumo dėlei veikia plokštės viršuje su ekranuotais laidais.

Norėdami gauti energijos, norėjau paleisti jį iš seno USB kabelio, kad jis būtų maitinamas tiesiai iš vieno kompiuterio. Tai veiks gerai, nes USB prievadai paprastai yra maitinami, net jei kompiuteris yra išjungtas. Aš naudoju linijinį įtampos reguliatorių LM317, kad galia sumažėtų iki 3,3 V. 3.3V reguliatorius taip pat būtų veikęs, bet aš jo neturėjau.

Kad išvengtumėte per daug laidų kirtimo, aš pravedžiau keletą laidų viršutinėje plokštės pusėje, kurios stengiuosi išvengti. Atminkite, kad skylės yra laidžios, todėl naudokite ekranuotus laidus, kad išvengtumėte šortų. Šios jungtys, vykstančios lentos viršuje, mano diagramoje parodytos punktyrinėmis linijomis.

5 žingsnis: Lituota lenta

Lituota lenta
Lituota lenta

Mano paskutinė lituota lenta pasirodė tikrai gerai. Kaip ir buvo galima tikėtis, viršuje esantys šviesos diodai užėmė daug darbo, kad būtų tinkamai lituoti be jokių šortų. Lituodami šviesos diodus ir antraštes, naudodami savo multimetrą nustatykite, ar turite šortų. Geriausia tai sužinoti dabar.

Išskyrus šviesos diodus, visa kita vyko gana gerai. Aš turėjau iš naujo prijungti kelis ryšius, tačiau kai kuriems pacientams, kai kuriems derinant ir šiek tiek pakartotinai lituojant, viskas veiks gerai.

Iš šios nuotraukos pamatysite, kad prijungiau ir optoizoliatorius, kuriuos naudojau 8 laidų CAT-5 kabeliu. Priežastis ta, kad jis yra labai pigus, lengvai sujungiamas ir gerai pažymėtas-daugiau apie tuos optoizoliatorius kitame etape.

6 žingsnis: Optoizoliatorių gamyba

Optoizoliatorių gamyba
Optoizoliatorių gamyba

Žinoma, jums nereikia gaminti savo optoizoliatorių. Daugelį komercinių versijų galima įsigyti už centus už vienetą ir jos veiktų geriau, nes jos tiesiogiai varytų kompiuterio elektros linijas be jokio pasipriešinimo. Bet aš neturėjau jokio optoizoliatoriaus, todėl turėjau jį pagaminti naudojant LED, rezistorių ir fotorezistorių.

Patvirtinęs, kad juodo susitraukiančio vamzdelio įvorėje „išjungimo“varža gali būti mažesnė nei mano matuoklis, o „įjungta“- keli tūkstančiai omų, aš paskutinį kartą išbandžiau seną pagrindinę plokštę. Man tai puikiai pavyko. Įtariu, kad kai kurie kompiuteriai gali būti daugiau ar mažiau jautrūs, tačiau mano išbandytose pagrindinėse plokštėse ši konfigūracija veikė gerai.

Norėdami gauti maksimalų apšvietimą į fotorezistorių, norėsite naudoti tikrai ryškiai baltą šviesos diodą. Nebandžiau daugelio variantų, tačiau ryškiai baltas šviesos diodas ir 220 omų rezistorius tikrai gerai veikia.

7 veiksmas: „CloudMQTT“sąranka

„CloudMQTT“sąranka
„CloudMQTT“sąranka
„CloudMQTT“sąranka
„CloudMQTT“sąranka
„CloudMQTT“sąranka
„CloudMQTT“sąranka

Bet kuri MQTT paslauga ar panaši daiktų interneto paslauga, tokia kaip „Blynk“, veiktų, tačiau aš renkuosi šiam projektui naudoti „CloudMQTT“. Anksčiau naudojau „CloudeMQTT“daugeliui projektų, ir kadangi šis projektas bus perduotas draugui, prasminga sukurti naują paskyrą, kurią taip pat galima perkelti.

Sukurkite „CloudMQTT“paskyrą ir sukurkite naują „egzempliorių“, pasirinkite „Cute Cat“dydį, nes mes jį naudojame tik valdymui, o ne registravimui. „CloudMQTT“suteiks jums serverio pavadinimą, vartotojo vardą, slaptažodį ir prievado numerį. (Atminkite, kad prievado numeris nėra standartinis MQTT prievadas). Perkelkite visas šias vertes į savo ESP8266 kodą atitinkamose vietose, įsitikindami, kad atvejis yra teisingas. (rimtai, nukopijuokite/įklijuokite vertes)

Galite naudoti „CloudMQTT“skydelį „Websocket UI“, kad pamatytumėte įrenginio ryšius, mygtukų paspaudimus ir, esant keistam atvejui, gautumėte klaidą, klaidos pranešimą.

Šių nustatymų jums prireiks ir konfigūruojant „Android MQTT“klientą, todėl, jei reikia, atkreipkite dėmesį į reikšmes. Tikimės, kad jūsų slaptažodį įvesti telefone nėra pernelyg sudėtinga. Negalite to nustatyti naudodami „CloudMQTT“.

8 veiksmas: „MQTT Android“klientas

„MQTT Android“klientas
„MQTT Android“klientas
„MQTT Android“klientas
„MQTT Android“klientas
„MQTT Android“klientas
„MQTT Android“klientas
„MQTT Android“klientas
„MQTT Android“klientas

Bet koks „Android“(arba „iPhone“) MQTT klientas veiktų, bet man patinka „MQTT Dash“. „MQTT Dash“lengva naudoti, jis labai reaguoja ir turi visas jums reikalingas parinktis.

Įdiegę nustatykite MQTT serverį, užpildykite serverį, prievadą, naudotojo vardą ir slaptažodį naudodami egzemplioriaus vertes, o ne prisijungimo prie „CloudMQTT“informaciją. Galite naudoti bet kurį norimą kliento vardą.

Jei viską įvedėte teisingai, jis automatiškai prisijungs prie jūsų MQTT serverio ir parodys tuščią ekraną, nes dar nenustatėte jokių mygtukų, teksto ar pranešimų. Tuščiame ekrane viršutiniame dešiniajame kampe matote „+“, spustelėkite jį, tada pasirinkite „Pasirinkti/mygtukas“. Prie kiekvieno kompiuterio pridėsime vieną „Pasirinkti/mygtuką“, taigi 8 arba 16 ar mažiau.

Jei JŪS gavote ryšio klaidą, viena iš reikšmių yra neteisinga. Grįžkite ir dar kartą patikrinkite

Kiekvienas kompiuteris naudos temą, atitinkančią jūsų kode nurodytas reikšmes. Jei laikytumėtės mano konvencijų, jos būtų „cluster/rack-01/computer/01“. Geriausia būtų pakeisti įjungimo ir išjungimo reikšmes, kad jos atitiktų mūsų kodą. Vietoj „0“ir „1“naudokite atitinkamai reikšmes „įjungta“ir „išjungta“. Taip pat rekomenduočiau naudoti QoS (1), nes lauksime patvirtinimo iš serverio.

Pridėję vieną, galite ilgai paspausti ir naudoti parinktį „klonas“, kad sukurtumėte krūvą, tada pakeiskite jų pavadinimą ir temą.

Pakankamai lengva.

9 veiksmas: ESP8266 gavimas naudojant „Wi -Fi“

Gaukite „ESP8266“naudodami „Wi -Fi“
Gaukite „ESP8266“naudodami „Wi -Fi“

Naudojant „ESP8266 Wifi Manager“modulį, nesunku gauti mūsų įrenginį „Wifi“. Jei naudojote mano „SensorBase“klasę, ji jau yra įmontuota. Jei ne, vadovaukitės „Wifi Manager“puslapyje pateiktomis instrukcijomis.

„Wifi Manager“bandys prisijungti prie jūsų SSID įkrovos metu, o tai negali, nes niekada nesakėte jam savo SSID, todėl jis automatiškai pereis į prieigos taško režimą (arba AP režimą) ir pateiks paprastą tinklalapį, kuriame bus prašoma jūsų SSID & Slaptažodis. Naudodami telefoną ar nešiojamąjį kompiuterį prijunkite naujai prieinamą belaidį tinklą SSID pavadinimu „ESP_xxxxxx“, kur „xxxxxx“yra atsitiktinė (ne atsitiktinė) seka. (Visas instrukcijas rasite „Wifi Manager“puslapyje.)

Prisijungę atidarykite savo interneto naršyklę ir nurodykite ją į 192.168.4.1, įveskite SSID ir slaptažodį ir spustelėkite išsaugoti.

Dabar esate internete, o jūsų „IoT“įrenginyje veikia „aš“dalis!

10 veiksmas: galutinis ryšys ir bandymas

Galutinis ryšys ir bandymas
Galutinis ryšys ir bandymas

Viskas padaryta.

Norėdami viską sujungti, suraskite kompiuterio maitinimo mygtuko kabelį ten, kur jis atitinka pagrindinę plokštę. Turėtumėte pamatyti dvi eilutes antraščių su daugybe laidų ir jungčių. Paprastai jie žymimi gana gerai. Atjunkite jungiklį ir prijunkite optinio izoliatoriaus kištuką. Aš uždėjau keletą „Dupont“kištukų, todėl jie buvo prijungti kaip ir maitinimo kabelis. Šiuo atžvilgiu poliškumas nesvarbus, tačiau įsitikinkite, kad kito galo - to, kuris eina prie jūsų pasirinktinės plokštės - poliškumas yra teisingas.

Ir puikiai veikia. Naudodami „MQTT Dash“klientą (ar panašų įrankį), galite nuotoliniu būdu maitinti savo kompiuterius.

Paspauskite atitinkamą programos tikrinimo mygtuką ir kai programa išgirs iš MQTT serverio su pranešimu „išjungta“, mygtukas vėl pasikeis į nepažymėtą.

Tai veikia keletą savaičių be jokių problemų. Pastebėjome, kad reikia pailginti laiką, kurį paspaudus kompiuteriuose nuspaudžiamas žemas mygtukas. Mes baigėme 1 pilną sekundę. Ši vertė gali būti rodoma kaip nustatyta vertė per MQTT serverį, arba galite prijungti vertę, priklausomai nuo jūsų noro.

Sėkmės ir praneškite man, kaip jums pavyko.

Rekomenduojamas: