Obsah:

Diaľkové vypnutie alebo reštartovanie počítača pomocou zariadenia ESP8266: 10 krokov (s obrázkami)
Diaľkové vypnutie alebo reštartovanie počítača pomocou zariadenia ESP8266: 10 krokov (s obrázkami)

Video: Diaľkové vypnutie alebo reštartovanie počítača pomocou zariadenia ESP8266: 10 krokov (s obrázkami)

Video: Diaľkové vypnutie alebo reštartovanie počítača pomocou zariadenia ESP8266: 10 krokov (s obrázkami)
Video: Урок 101. Использование ИК-пульта дистанционного управления для управления телевизором, лампочкой переменного тока с реле, двигателем постоянного тока и серводвигателем. 2024, Júl
Anonim
Image
Image

Aby bolo jasné, vypíname VÁŠ počítač, nie počítač niekoho iného.

Príbeh prebieha takto:

Môj priateľ na Facebooku mi poslal správu a povedal, že má tucet počítačov, na ktorých beží veľa matematiky, ale každé ráno o tretej ráno sa zamknú. Pretože sú počítače vzdialené 30 minút, je pre nás obrovskou prekážkou previezť dve mestá (žijeme v Južnej Dakote) na napájanie počítačov. Spýtal sa, či by som mu mohol postaviť zariadenie IoT, ktoré by mu umožnilo reštartovať počítač, ktorý sa previnil, z pohodlia svojej útulnej postele?

Nikdy nepremeškám výzvu a súhlasil som, že mu niečo spojím. Toto je ten projekt.

Použitím dvoch registrovaných bitových posunov, ESP8266 ESP01, niekoľkých LED diód a niektorých domácich optoizolátorov, celý projekt stojí asi 5 dolárov, ak si diely kúpite z Číny na eBay. Možno 20 dolárov od Amazonu.

Jedná sa o pomerne zložitú stavbu s množstvom jemného spájkovania. Nepočítajúc moje skrutky a opätovné spájkovanie, výroba mi zabrala viac ako 20 hodín, ale bolo to úžasné a fungovalo to perfektne.

Poďme začať.

Krok 1: Prototypová tabuľa

Prototypová rada
Prototypová rada
Prototypová rada
Prototypová rada

Vždy začnite všetky projekty s prototypom breadboard. Je to najlepší spôsob, ako zistiť, či máte všetky súčasti a fungovať podľa očakávania. Tento projekt je trochu komplikovaný, preto vrelo odporúčam postaviť ho na dosku, než sa pohnete vpred.

Potrebné súčiastky sú tieto:

  • Jeden ESP8266 ESP01 (aj keď by fungovalo akékoľvek zariadenie ESP8266)
  • Dva 8-bitové posuvné registre, použil som 74HC595N
  • 16 LED diód, použil som slamené biele LED diódy, ktoré pracujú na 3,3 V. Ak používate iné, možno budete potrebovať odpory.
  • Tri 3k3-ohmpulldown odpory
  • Prepojovacie káble a nepájivá doska

Budete tiež musieť postaviť najmenej jeden optoizolátor. Použil som čierne zmršťovacie hadičky, jasne bielu LED, 220 ohmový odpor a fotorezistor. Spájajte 220-ohmový odpor na katódu LED a potom utesnite LED a fotoodpor vo vnútri zmršťovacej trubice oproti sebe. K tým sa však dostaneme v neskoršom kroku.

Postupujte podľa schémy zapojenia uvedenej v nasledujúcom kroku. Zapojenie je celkom jednoduché.

Pretože ESP8266 pracuje pri napätí 3,3 V, uistite sa, že ho správne napájate

Krok 2: Schéma pomocou Will-CAD

Schéma pomocou Will-CAD
Schéma pomocou Will-CAD

Schéma je veľmi jednoduchá. Nasledujeme štandardné zapojenie 8-bitového posuvného registra. Pretože používam dva 8-bitové posuvné registre, je potrebné, aby boli prepojené na svojich pinoch „hodín“a „západiek“.

Pretože ESP01 má iba dva GPIO piny, musíme ako výstupy znova použiť TX & RX, čo na naše účely funguje dobre. Ak chcete väčšiu kontrolu, môžete použiť ESP-12 alebo inú verziu s viac ako dvoma kolíkmi GPIO. To však zvýši náklady na projekt o ďalšie 2 doláre - čo je len šialené rozprávanie.

Musíme udržať naše 8-bitové posuvné registre a piny ESP01 vytiahnuté vysoko pri štarte, aby nerobili divné veci alebo neprešli do režimu programu. Použil som tri odpory 3k3, fungovali by aj väčšie alebo menšie hodnoty. Táto hodnota bola odvodená od sprievodcov, ktorí hovoria o využití alternatívnych pinov na ESP01.

ESP01 (ESP8266)

  • Vysunutie hodinového kolíka TX 3k3
  • Vytiahnutie západky RX 3k3
  • 00 sériové údaje 3k3 pullup
  • 02 plávajúce

8-bitový posuvný register (74HC595H)

  • VCC 3,3V
  • OE 3,3 V (toto je aktivačný kolík)
  • GND GND
  • CLR GND (to zabraňuje vymazaniu jasného kolíka)
  • A LED diódy, tie idú na zem.

Krok 3: Kód ESP8266

Kód ESP8266
Kód ESP8266

Kód ESP8266 je veľmi jednoduchý. Bohužiaľ, editor v Instructables je celkom zbytočný, takže budete chcieť získať kód priamo z Githubu.

Projekt „rack-reboot“:

github.com/bluemonkeydev/arduino-projects/…

Tu je k dispozícii trieda „SensorBase“. Je to potrebné, ak chcete „použiť“môj kód:

github.com/bluemonkeydev/arduino-projects/…

Je potrebné poznamenať niekoľko vecí. Kód je veľmi dobre zdokumentovaný.

  1. Som veľmi lenivý vývojár, a tak som všetok opakovane použiteľný kód ESP8266 zaradil do triedy s názvom „SensorBase“. Nájdete to aj na Githube, odkaz vyššie.
  2. Musíte zadať server svojho makléra MQTT, používateľské meno, heslo a port. Tie môžeme nájsť o niečo nižšie, keď vytvoríme službu CloudMQTT.
  3. NEMUSÍTE sa riadiť formátom syntaxe mojej témy. Odporúčal by som ho však dodržiavať.
  4. Na tomto kóde nie je nič múdre. Je to veľmi pragmatické.

Krok 4: Rozloženie dosky

Rozloženie perfboardu
Rozloženie perfboardu

Tento projekt bude nainštalovaný v mini-dátovom centre, takže som sa rozhodol pre konečný návrh použiť iba dosku Perf. Perfboard funguje skvele na projekty, ako je tento, a ľahko sa rozloží pomocou kusu vlastného milimetrového papiera. Tu uvidíte moje rozloženie. Samozrejme sa môžete rozhodnúť, že to urobíte inak.

Môj projekt potreboval dva 8-bitové posuvné registre, takže som začal s ich umiestnením v strede. Vedel som, že moje konektory k optoizolátorom budú zatiaľ jednoduchými hlavičkami, aj keď to nie je ideálne riešenie.

Milujem LED diódy, a to potrebovalo mať LED pre každý obvod optoizolátora. Vedel som, že testovacia fáza by bola nekonečne jednoduchšia, keby som mohol získať okamžitú spätnú väzbu priamo na doske, ale tiež som vedel, že tieto LED diódy spôsobia obrovskú bolesť pri spájkovaní. A boli. Nemal som nič menšie ako 5 mm diódy LED, takže som ich musel rozložiť. Môj konečný návrh vytvoril cik-cak vzor katód, pretože som nechcel previesť anódy cez uzemňovacie vodiče. Toto sa ukázalo ako dobrý dizajn. LED vodiče sa spájajú nad 8-bitovými posuvnými registrami a pre jednoduchosť vedú na vrchu dosky s tienenými vodičmi.

Kvôli napájaniu som ho chcel spustiť zo starého kábla USB, ktorý by mal byť napájaný priamo z jedného z počítačov. To bude fungovať dobre, pretože porty USB sú zvyčajne napájané, aj keď je počítač vypnutý. Na zníženie výkonu na 3,3 V som použil lineárny regulátor napätia LM317. Regulátor 3,3 V by tiež fungoval, ale nemal som ho.

Aby sa zabránilo prílišnému kríženiu drôtov, spustil som niekoľko drôtov na hornú stranu dosky perf, ktorým sa snažím vyhnúť. Majte na pamäti, že priechodné otvory sú vodivé, preto používajte tienené vodiče, aby ste sa vyhli skratom. Tieto pripojenia, ktoré sa odohrávajú v hornej časti dosky, sú na mojom diagrame znázornené prerušovanými čiarami.

Krok 5: Spájkovaná doska

Spájkovaná doska
Spájkovaná doska

Moja posledná spájkovaná doska dopadla naozaj dobre. Ako sa dalo očakávať, LED diódy na vrchu si dali veľa práce, aby boli správne spájkované bez skratov. Potom, čo ste spájkovali LED diódy a hlavičky, pomocou multimetra zistite, či nemáte skrat. Najlepšie je to zistiť hneď.

Okrem LED diód išlo všetko celkom dobre. Musel som prerobiť niekoľko spojení, ale s niektorými pacientmi, určitým ladením a malým prepájaním bude všetko fungovať dobre.

Z tejto fotky uvidíte, že som zapojil aj optoizolátory, ktoré som použil 8-žilový kábel CAT-5. Dôvodom je, že je super lacný, ľahko sa spojuje a je dobre označený-viac o týchto optoizolátoroch v nasledujúcom kroku.

Krok 6: Výroba optoizolátorov

Výroba optoizolátorov
Výroba optoizolátorov

Samozrejme, nemusíte vyrábať vlastné optoizolátory. Mnoho komerčných verzií je k dispozícii za centy za kus a bude fungovať lepšie, pretože by napájali elektrické vedenia počítača priamo bez akéhokoľvek odporu. Ale nemal som žiadny optoizolátor, takže som musel vyrobiť ten svoj pomocou LED, rezistora a fotorezistora.

Po potvrdení, že v rukáve čiernych zmršťovacích bužírok bol odpor „vypnutého“menšieho ako môj merač schopný prečítať a zapnutý odpor bol niekoľko tisíc ohmov, som vykonal záverečný test na starej základnej doske. Mne to fungovalo perfektne. Mám podozrenie, že niektoré počítače môžu byť viac alebo menej citlivé, ale na základných doskách, ktoré som testoval, táto konfigurácia fungovala dobre.

Budete chcieť použiť skutočne žiarivú bielu LED diódu, aby ste do fotorezistora dostali maximum svetla. Neskúšal som veľa možností, ale jasne biela LED a 220-ohmový odpor určite dobre fungujú.

Krok 7: Nastavenie CloudMQTT

Nastavenie CloudMQTT
Nastavenie CloudMQTT
Nastavenie CloudMQTT
Nastavenie CloudMQTT
Nastavenie CloudMQTT
Nastavenie CloudMQTT

Fungovala by akákoľvek služba MQTT alebo podobná služba internetu vecí, ako je Blynk, ale pre tento projekt som sa rozhodol použiť CloudMQTT. CloudeMQTT som v minulosti používal na mnoho projektov a keďže tento projekt bude odovzdaný priateľovi, má zmysel vytvoriť si nový účet, ktorý je možné aj prenášať.

Vytvorte si účet CloudMQTT a potom vytvorte novú „inštanciu“, zvoľte veľkosť „Cute Cat“, pretože ju používame iba na ovládanie, bez protokolovania. CloudMQTT vám poskytne názov servera, používateľské meno, heslo a číslo portu. (Upozorňujeme, že číslo portu nie je štandardným portom MQTT). Preneste všetky tieto hodnoty do svojho kódu ESP8266 na zodpovedajúcich miestach a zaistite, aby bol prípad správny. (vážne, skopírujte/prilepte hodnoty)

Panel „Websocket UI“na serveri CloudMQTT môžete použiť na zobrazenie pripojení vášho zariadenia, stlačení tlačidiel a v zvláštnom prípade, že sa vám zobrazí chyba, chybové hlásenie.

Tieto nastavenia budete potrebovať aj pri konfigurácii klienta Android MQTT, preto si v prípade potreby poznamenajte hodnoty. Našťastie zadanie hesla do telefónu nie je príliš komplikované. V CloudMQTT to nemôžete nastaviť.

Krok 8: Klient Android MQTT

Klient MQTT pre Android
Klient MQTT pre Android
Klient MQTT pre Android
Klient MQTT pre Android
Klient MQTT pre Android
Klient MQTT pre Android
Klient MQTT pre Android
Klient MQTT pre Android

Fungoval by akýkoľvek klient MQTT pre Android (alebo iPhone), ale páči sa mi MQTT Dash. MQTT Dash sa ľahko používa, veľmi rýchlo reaguje a má všetky možnosti, ktoré budete potrebovať.

Po inštalácii nastavte server MQTT, vyplňte server, port, používateľské meno a heslo hodnotami vašej inštancie, NIE vašimi prihlasovacími údajmi do CloudMQTT. Môžete použiť ľubovoľné meno klienta, ktoré chcete.

Ak ste zadali všetko správne, automaticky sa pripojí k vášmu serveru MQTT a zobrazí vám prázdnu obrazovku, pretože ste zatiaľ nenastavili žiadne tlačidlá, text ani správy. Na prázdnej obrazovke vidíte v pravom hornom rohu znak „+“, kliknite naň a potom vyberte „Vybrať/Tlačidlo“. Na jeden počítač pridáme jeden „výber/tlačidlo“, teda 8 alebo 16 alebo menej.

Ak sa vám zobrazila chyba pripojenia, jedna z hodnôt je nesprávna. Vráťte sa a znova skontrolujte

Každý počítač použije tému, ktorá zodpovedá hodnotám zadaným vo vašom kóde. Ak by ste sa riadili mojimi konvenciami, boli by „klaster/stojan-01/počítač/01“. Najlepšie by bolo zmeniť hodnoty „zapnuté“a „vypnuté“tak, aby zodpovedali nášmu kódu. Namiesto „0“a „1“použite hodnoty „zapnuté“a „vypnuté“. Tiež by som odporučil použiť QoS (1), pretože budeme očakávať potvrdenie od servera.

Po pridaní jedného môžete dlho stlačiť a pomocou možnosti „klonovať“vytvoriť zväzok a potom zmeniť jeho názov a tému.

Dosť ľahké.

Krok 9: uvedenie vášho ESP8266 do siete Wi -Fi

Pripojenie ESP8266 k sieti Wi -Fi
Pripojenie ESP8266 k sieti Wi -Fi

Pomocou modulu ESP8266 Wifi Manager je jednoduché dostať naše zariadenie do siete Wifi. Ak ste použili moju triedu SensorBase, je už vstavaná. Ak nie, postupujte podľa pokynov na stránke Wifi Manager.

Wifi Manager sa pri štarte pokúsi pripojiť k vášmu SSID, čo nemôže, pretože ste mu nikdy nepovedali svoje SSID, takže sa automaticky prepne do režimu prístupového bodu (alebo režimu AP) a zobrazí jednoduchú webovú stránku s požiadavkou na vaše SSID. & Heslo. Pomocou telefónu alebo prenosného počítača pripojte novo dostupnú bezdrôtovú sieť k názvu SSID „ESP_xxxxxx“, kde „xxxxxx“predstavuje náhodnú (nie skutočne náhodnú) postupnosť. (Úplné pokyny nájdete na stránke Wifi Manager.)

Po pripojení otvorte webový prehliadač a presmerujte ho na 192.168.4.1, zadajte SSID a heslo a kliknite na tlačidlo Uložiť.

Teraz ste na internete a na vašom zariadení IoT funguje časť „I“!

Krok 10: Konečné pripojenie a testovanie

Konečné pripojenie a testovanie
Konečné pripojenie a testovanie

Všetko hotové.

Ak chcete všetko prepojiť, nájdite kábel napájacieho kábla počítača v mieste, kde sa stretáva so základnou doskou. Mali by ste vidieť dva rady záhlaví so zväzkom drôtov a konektorov. Spravidla sú označené veľmi dobre. Odpojte vypínač a zapojte zástrčku optoizolátora. Na svoje som nasadil niekoľko zástrčiek „Dupont“, takže sa zapojili rovnako ako napájací kábel. Polarita na tomto konci nezáleží, ale uistite sa, že máte správnu polaritu druhého konca - toho, ktorý ide na vašu vlastnú dosku.

A funguje to perfektne. Pomocou klienta MQTT Dash (alebo podobného nástroja) môžete vzdialene napájať svoje počítače.

Stlačte na svojej aplikácii zodpovedajúce tlačidlo začiarknutia a akonáhle sa aplikácia ozve zo servera MQTT so správou „vypnuté“, tlačidlo sa zmení späť na nezaškrtnuté.

Funguje to niekoľko týždňov bez problémov. Všimli sme si, že je potrebné predĺžiť dobu potrebnú na stlačenie tlačidla na počítačoch. Skončili sme s 1 celou sekundou. Túto hodnotu je možné vystaviť ako nastaviteľnú hodnotu prostredníctvom servera MQTT, alebo môžete hodnotu pevne prepojiť, podľa vášho želania.

Veľa šťastia a dajte mi vedieť, ako to vaše dopadlo.

Odporúča: