Përmbajtje:

Mbyllja në distancë ose rinisja e një kompjuteri me pajisjen ESP8266: 10 hapa (me fotografi)
Mbyllja në distancë ose rinisja e një kompjuteri me pajisjen ESP8266: 10 hapa (me fotografi)

Video: Mbyllja në distancë ose rinisja e një kompjuteri me pajisjen ESP8266: 10 hapa (me fotografi)

Video: Mbyllja në distancë ose rinisja e një kompjuteri me pajisjen ESP8266: 10 hapa (me fotografi)
Video: Konfigurimi i qasjes në internet -- sistemi operativ Windows 7 ose Vista 2024, Korrik
Anonim
Image
Image

Për të qenë të qartë këtu, ne po mbyllim kompjuterin TUAJ, jo kompjuterin e dikujt tjetër.

Historia shkon kështu:

Një shok i imi në Facebook më dërgoi një mesazh dhe tha se ai ka një duzinë kompjuterash që përdorin një mori matematike, por çdo mëngjes në 3 të mëngjesit, ata mbyllen. Meqenëse kompjuterët janë 30 minuta larg, është një telash i madh të ngasësh dy qytete (ne jetojmë në Dakotën e Jugut) për të qarkulluar me energji kompjuterët. Ai pyeti, a mund t'i ndërtoja atij një pajisje IoT që do ta lejonte atë të rindizte kompjuterin ofendues nga komoditeti i shtratit të tij komod?

Për të mos humbur asnjë sfidë, unë pranova të krijoj diçka së bashku për të. Ky është ai projekt.

Duke përdorur dy ndërrime të regjistruara, një ESP8266 ESP01, një grusht LED dhe disa optoizolatorë të bërë në shtëpi, i gjithë projekti kushton rreth 5 dollarë nëse blini pjesë nga Kina në eBay. Ndoshta 20 dollarë nga Amazon.

Kjo është një ndërtesë mjaft komplekse me shumë saldim të shkëlqyeshëm. Duke mos llogaritur vidhosjet e mia dhe rilidhjen, më janë dashur 20 orë për ta bërë, por doli e mahnitshme dhe funksionoi në mënyrë perfekte.

Le të fillojmë.

Hapi 1: Bordi Prototip

Bordi Prototip
Bordi Prototip
Bordi Prototip
Bordi Prototip

Gjithmonë filloni të gjitha projektet me një prototip të panelit të bukës. Wayshtë mënyra më e mirë për të përcaktuar nëse i keni të gjithë përbërësit dhe funksiononi siç pritej. Ky projekt është pak i komplikuar, kështu që unë rekomandoj ta ndërtoni atë në një pjatë para se të ecni përpara.

Pjesët që do t'ju nevojiten janë:

  • Një ESP8266 ESP01 (megjithëse çdo pajisje ESP8266 do të funksiononte)
  • Dy regjistra të ndërrimit 8-bit, kam përdorur 74HC595N
  • 16 LED, kam përdorur LED të bardhë me kapelë kashte që funksionojnë në 3.3V. Nëse përdorni të tjerët, mund të keni nevojë për rezistorë.
  • Tre rezistente 3k3-ohmpulldown
  • Tela kërcyes dhe një dërrasë buke

Ju gjithashtu do të duhet të ndërtoni të paktën një optoizolator. Kam përdorur tuba të zinj të zi, një LED të bardhë të ndritshëm, një rezistencë 220-ohm dhe një rezistencë fotografike. Ngjitni rezistencën 220-ohm në katodën e LED-it dhe pastaj vulosni LED-in dhe fotorezistuesin brenda tubit të tkurrjes përballë njëri-tjetrit. Por ne do të shkojmë tek ata në një hap të mëvonshëm.

Ndiqni diagramin e instalimeve elektrike të dhëna në hapin tjetër. Instalimet elektrike janë mjaft të drejtpërdrejta.

Për shkak se ESP8266 funksionon në 3.3V, sigurohuni që ta furnizoni atë siç duhet

Hapi 2: Skema duke përdorur Will-CAD

Skema duke përdorur Will-CAD
Skema duke përdorur Will-CAD

Skema është mjaft e drejtpërdrejtë. Ne po ndjekim lidhjen standarde të një regjistri të ndërrimit 8-bit. Meqenëse unë jam duke përdorur dy regjistra të ndërrimit 8-bit, ata duhet të lidhen së bashku në kunjat e tyre të "orës" dhe "fiksimit".

Për shkak se ESP01 ka vetëm dy kunja GPIO, ne duhet të ri-përdorim TX & RX si dalje, gjë që funksionon mirë për qëllimet tona. Ju mund të përdorni një ESP-12 ose një version tjetër me më shumë se dy kunja GPIO nëse doni më shumë kontroll. Por kjo do të shtojë edhe 2 dollarë të tjerë në koston e projektit - i cili është thjesht i çmendur.

Ne duhet të mbajmë regjistrat tanë të ndërrimit 8-bit dhe kunjat ESP01 të tërhequr lart në nisje, në mënyrë që ata të mos bëjnë gjëra të çuditshme ose të kalojnë në modalitetin e programit. Kam përdorur tre rezistorë 3k3, vlera më të mëdha ose më të vogla do të funksiononin gjithashtu. Kjo vlerë rrjedh nga udhëzuesit që flasin për shfrytëzimin e kunjave alternativë në ESP01.

ESP01 (ESP8266)

  • Kulla e orës TX 3k3 tërheqëse
  • RX kunja e kapjes 3k3 tërheqëse
  • 00 të dhëna serike 3k3 tërheqje
  • 02 lundrues

Regjistri Shift 8-bitësh (74HC595H)

  • VCC 3.3V
  • OE 3.3V (kjo është kunja e aktivizimit)
  • GND GND
  • CLR GND (kjo mban që kunja e qartë të mos pastrohet)
  • Dhe LEDs, ato shkojnë në tokë.

Hapi 3: Kodi ESP8266

Kodi ESP8266
Kodi ESP8266

Kodi ESP8266 është mjaft i drejtpërdrejtë. Fatkeqësisht, redaktuesi në Instructables është mjaft i padobishëm, kështu që ju do të dëshironi të merrni kodin direkt nga Github.

projekti "racks-reboot":

github.com/bluemonkeydev/arduino-projects/…

Klasa "SensorBase" është në dispozicion këtu. Kërkohet nëse doni të "përdorni" kodin tim:

github.com/bluemonkeydev/arduino-projects/…

Ka disa gjëra që duhen vënë re. Kodi është i dokumentuar mjaft mirë.

  1. Unë jam një zhvillues shumë dembel, kështu që i vendos të gjithë kodin ESP8266 të ripërdorshëm në një klasë të quajtur "SensorBase". Këtë mund ta gjeni edhe në Github, lidhjen e mësipërme.
  2. Ju duhet të shkruani serverin e ndërmjetësit tuaj MQTT, emrin e përdoruesit, fjalëkalimin dhe portën. Ato mund të gjenden pak më poshtë kur krijojmë shërbimin CloudMQTT.
  3. NUK keni nevojë të ndiqni formatin sintaksor të temës sime. Sidoqoftë, unë do të rekomandoja ta ndiqni atë.
  4. Nuk ka asgjë të zgjuar në lidhje me këtë kod. Shtë shumë pragmatike.

Hapi 4: Paraqitja e Perfboard

Paraqitja e Perfboard
Paraqitja e Perfboard

Ky projekt do të instalohet në një mini-qendër të të dhënave, kështu që vendosa të përdor vetëm bordin e perf për dizajnin përfundimtar. Perfboard funksionon shkëlqyeshëm për projekte si kjo dhe është e lehtë për tu paraqitur duke përdorur një copë letër grafike të personalizuar. Këtu do të shihni paraqitjen time. Sigurisht, ju mund të zgjidhni ta bëni atë ndryshe.

Projekti im kishte nevojë për dy regjistra ndërrimi 8-bitësh, kështu që fillova me pozicionimin e tyre në mes. E dija që lidhësit e mi me optoizolatorët do të ishin tituj të thjeshtë femra tani për tani, edhe pse kjo nuk është një zgjidhje ideale.

Unë i dua LED -të, dhe kjo duhej të kishte një LED për çdo qark optoizolator. E dija që faza e testimit do të ishte pafundësisht më e lehtë nëse do të mund të merrja reagime të menjëhershme direkt në tabelë, por gjithashtu e dija që ato LED do të shkaktonin dhimbje të mëdha për t'u lidhur. Dhe ata ishin. Unë nuk kisha asgjë më të vogël se LED 5mm, kështu që më duhej t'i tronditja. Dizajni im përfundimtar bëri një model zig-zag të katodave sepse nuk doja të kaloja anodat mbi telat e tokës. Ky doli të ishte një dizajn i mirë. Telat LED bashkohen mbi regjistrat e ndërrimit 8-bit dhe kalojnë në majë të tabelës me tela të mbrojtur për thjeshtësi.

Për energji, doja ta drejtoja nga një kabllo e vjetër USB për t'u furnizuar drejtpërdrejt nga njëri prej kompjuterëve. Kjo do të funksionojë mirë sepse portat USB zakonisht mundësohen edhe nëse kompjuteri është i fikur. Kam përdorur një rregullator linear të tensionit LM317 për të zvogëluar fuqinë në 3.3V. Një rregullator 3.3V do të kishte punuar gjithashtu, por unë nuk e kisha një të tillë.

Për të shmangur tejkalimin e shumë telave, unë kalova disa tela në anën e sipërme të bordit të perfit, të cilat përpiqem t'i shmang. Mbani në mend se vrimat janë përcjellëse, kështu që përdorni tela të mbrojtur për të shmangur pantallonat e shkurtra. Ato lidhje që ndodhin në krye të tabelës tregohen me vija të ndërprera në diagramin tim.

Hapi 5: Bordi i bashkuar

Bordi i bashkuar
Bordi i bashkuar

Tabela ime e fundit e ngjitur doli vërtet mirë. Siç pritej, LED -të në pjesën e sipërme morën shumë punë për t'u bashkuar siç duhet pa asnjë pantallona të shkurtra. Pasi të keni bashkuar LED -et dhe titujt, duke përdorur multimetrin tuaj për të përcaktuar nëse keni ndonjë pantallona të shkurtra. Bestshtë mirë që ta zbuloni tani.

Përveç LED -ve, gjithçka tjetër shkoi mjaft mirë. Më duhej të ribëja disa lidhje, por me disa pacientë, disa korrigjime dhe pak rilidhje, gjithçka do të funksionojë mirë.

Nga kjo foto do të shihni që kam lidhur edhe optoizolatorët, të cilët kam përdorur kabllo CAT-5 me 8 tela. Arsyeja është se është super e lirë, e lehtë për t'u bashkuar dhe është e shënuar mirë-më shumë për ata optoizolatorë në hapin tjetër.

Hapi 6: Bërja e Optoizolatorëve

Bërja e optoizolatorëve
Bërja e optoizolatorëve

Sigurisht, nuk keni nevojë të bëni optoizolatorë tuaj. Shumë versione komerciale janë në dispozicion për qindarka secila dhe do të funksiononin më mirë pasi ato do të drejtonin linjat e energjisë të kompjuterit drejtpërdrejt pa ndonjë rezistencë. Por, unë nuk kisha asnjë optoizolator, kështu që më duhej ta bëja timen duke përdorur një LED, rezistencë dhe rezistencë fotografike.

Pasi konfirmova se brenda një mëngë të tubave të zinj të zi, rezistenca "off" me më pak se njehsori im mund të lexonte dhe rezistenca "on" ishte disa mijë Ohm, bëra një test përfundimtar në një motherboard të vjetër. Ajo funksionoi në mënyrë perfekte për mua. Unë dyshoj se disa kompjuterë mund të jenë pak a shumë të ndjeshëm, por në pllakat amë që kam testuar, ky konfigurim funksionoi mirë.

Ju do të dëshironi të përdorni një LED të bardhë me të vërtetë të ndritshëm për të marrë dritën maksimale në fotorezistues. Unë nuk provova shumë opsione, por LED i bardhë i ndritshëm dhe një rezistencë 220-ohm definitivisht funksionojnë mirë.

Hapi 7: Konfigurimi i CloudMQTT

Konfigurimi i CloudMQTT
Konfigurimi i CloudMQTT
Konfigurimi i CloudMQTT
Konfigurimi i CloudMQTT
Konfigurimi i CloudMQTT
Konfigurimi i CloudMQTT

Çdo shërbim MQTT, ose shërbim i ngjashëm IoT si Blynk, do të funksiononte, por unë zgjedh të përdor CloudMQTT për këtë projekt. Unë kam përdorur CloudeMQTT për shumë projekte në të kaluarën, dhe meqenëse ky projekt do t'i dorëzohet një miku, ka kuptim të krijoni një llogari të re që gjithashtu mund të transferohet.

Krijoni një llogari CloudMQTT dhe më pas krijoni një "shembull" të ri, zgjidhni madhësinë "Cute Cat" pasi ne e përdorim atë vetëm për kontroll, pa regjistrim. CloudMQTT do t'ju japë një emër serveri, emri i përdoruesit, fjalëkalimin dhe numrin e portit. (Vini re se numri i portit nuk është porti standard MQTT). Transferoni të gjitha këto vlera në kodin tuaj ESP8266 në vendet përkatëse, duke u siguruar që rasti është i saktë. (seriozisht, kopjoni/ngjisni vlerat)

Ju mund të përdorni panelin "Websocket UI" në CloudMQTT për të parë lidhjet e pajisjes tuaj, shtytjet e butonave dhe, në skenarin e çuditshëm, që të merrni një gabim, një mesazh gabimi.

Ju do të keni nevojë për këto cilësime kur konfiguroni gjithashtu klientin Android MQTT, kështu që vini re vlerat nëse keni nevojë. Shpresojmë, fjalëkalimi juaj nuk është shumë i komplikuar për të shkruar në telefonin tuaj. Ju nuk mund ta vendosni atë në CloudMQTT.

Hapi 8: Klienti MQTT Android

Klienti MQTT Android
Klienti MQTT Android
Klienti MQTT Android
Klienti MQTT Android
Klienti MQTT Android
Klienti MQTT Android
Klienti MQTT Android
Klienti MQTT Android

Çdo klient MQTT Android (ose iPhone) do të funksiononte, por mua më pëlqen MQTT Dash. MQTT Dash është i lehtë për t’u përdorur, shumë i përgjegjshëm dhe ka të gjitha opsionet që ju nevojiten.

Pasi të jetë instaluar, vendosni një server MQTT, mbushni serverin, portën, emrin e përdoruesit dhe fjalëkalimin me vlerat e shembullit tuaj, NUK informacionin tuaj të hyrjes në CloudMQTT. Ju mund të përdorni çdo emër klienti që dëshironi.

Nëse keni shtypur gjithçka në mënyrë korrekte, ai do të lidhet automatikisht me serverin tuaj MQTT dhe do t'ju tregojë një ekran të zbrazët pasi nuk keni vendosur ende asnjë buton, tekst ose mesazh. Në ekranin e zbrazët, shihni një "+" në këndin e sipërm të djathtë, klikoni mbi të dhe pastaj zgjidhni "Select/Button". Ne do të shtojmë një "Select/Button" për kompjuter, pra 8 ose 16 ose më pak.

Nëse keni marrë një gabim në lidhje, keni një nga vlerat e gabuara. Kthehuni dhe kontrolloni dy herë

Çdo kompjuter do të përdorë temën që korrespondon me vlerat e specifikuara në kodin tuaj. Nëse do të ndiqnit konventat e mia, ato do të ishin "grumbull/raft-01/kompjuter/01". Do të ishte më mirë të ndryshoni vlerat "on" dhe "off" që të përputhen me kodin tonë. Në vend të "0" dhe "1", përdorni vlerat "on" dhe "off", respektivisht. Unë gjithashtu do të rekomandoja përdorimin e QoS (1) pasi do të presim një konfirmim nga serveri.

Pasi të shtoni një, mund të shtypni gjatë dhe të përdorni opsionin "klon" për të krijuar një bandë, pastaj ndryshoni emrin dhe temën e tyre.

Mjaft e lehtë.

Hapi 9: Marrja e ESP8266 në Wifi

Marrja e ESP8266 në Wi -Fi
Marrja e ESP8266 në Wi -Fi

Duke përdorur modulin ESP8266 Wifi Manager, është e lehtë të marrësh pajisjen tonë në Wifi. Nëse keni përdorur klasën time SensorBase, ajo tashmë është e integruar. Nëse jo, ndiqni udhëzimet në faqen e Menaxherit Wifi.

Menaxheri Wifi do të përpiqet të lidhet me SSID -in tuaj në nisje, gjë që nuk mundet pasi nuk e keni treguar kurrë SSID -in tuaj, kështu që automatikisht do të kalojë në modalitetin e pikës së hyrjes (ose Mënyra AP) dhe do të shërbejë në një faqe të thjeshtë në internet që kërkon SSID -in tuaj & Fjalëkalimi Duke përdorur telefonin ose laptopin tuaj, lidhni rrjetin pa tel të sapo-disponueshëm me emrin SSID "ESP_xxxxxx", ku "xxxxxx" është një sekuencë e rastësishme (jo vërtet e rastësishme). (Udhëzimet e plota mund të gjenden në faqen e Menaxherit Wifi.)

Pasi të jeni lidhur, sillni shfletuesin tuaj në internet dhe drejtojeni atë në 192.168.4.1, shkruani SSID -in dhe Fjalëkalimin tuaj dhe klikoni ruaj.

Tani jeni në internet dhe pajisja juaj IoT ka pjesën "I" duke punuar!

Hapi 10: Lidhja dhe Testimi Final

Lidhja dhe Testimi Final
Lidhja dhe Testimi Final

Të gjitha të përfunduara.

Për të lidhur gjithçka, gjeni kabllon e butonit të energjisë të kompjuterit tuaj aty ku takohet me motherboard. Duhet të shihni dy rreshta titujsh me një mori telash dhe lidhësish. Në mënyrë tipike, ato janë etiketuar mjaft mirë. Shkëputni çelsin tuaj dhe lidhni spinën optoisolator. Unë vendosa disa priza "Dupont" në timen, kështu që ata u lidhën ashtu si kablloja e energjisë. Polariteti në këtë drejtim nuk ka rëndësi, por sigurohuni që polariteti i skajit tjetër të jetë i saktë - ai që shkon në tabelën tuaj të personalizuar.

Dhe funksionon në mënyrë perfekte. Duke përdorur klientin MQTT Dash (ose mjet të ngjashëm), mund të fuqizoni nga distanca kompjuterët tuaj.

Shtypni butonin përkatës të kontrollit në aplikacionin tuaj dhe pasi aplikacioni të dëgjojë përgjigjen nga serveri MQTT me mesazhin "off", butoni do të kthehet përsëri në të pakontrolluar.

Kjo ka funksionuar për disa javë pa asnjë problem. Ne vumë re se kohëzgjatja e kohës për të tërhequr butonin poshtë në kompjuterë duhej të zgjaste. Përfunduam me 1 sekondë të plotë. Kjo vlerë mund të ekspozohet si një vlerë e rregullueshme përmes serverit MQTT, ose mund ta lidhni vlerën në varësi të dëshirës tuaj.

Fat i mirë, dhe më tregoni se si doli juaji.

Recommended: