Obsah:
- Zásoby
- Krok 1: Myšlienka
- Krok 2: Blokový diagram
- Krok 3: Programovanie
- Krok 4: Schéma a spájkovanie
- Krok 5: Aplikácia pre Android
Video: Mesačná lampa IoT: 5 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:57
V tomto návode vám ukážem, ako previesť jednoduchú LED žiarovku napájanú z batérie na zariadenie IoT.
Tento projekt zahŕňa:
- spájkovanie;
- programovanie ESP8266 s Arduino IDE;
- vytváranie aplikácií pre Android pomocou MIT App Inventor.
Objektom záujmu je táto lampa v tvare mesiaca, ktorú som kúpil od GearBest. Tento návod je však skutočne možné prispôsobiť akémukoľvek zariadeniu nízkeho napätia DC (zariadenia napájané striedavým prúdom vyžadujú ďalšie obvody).
Zásoby
- Smartfón s Androidom (testované verzie Androidu 7-9).
- Spájkovacie nástroje.
- Prototypovanie DPS (protoboard).
- Doska ESP-12E (alebo iný devboard s mikrokontrolérom ESP8266).
- USB-sériový prevodník na programovanie.
- Niekoľko rôznych hodnôt pasívnych komponentov (odpory a kondenzátory).
(Voliteľné. Pozrite si časť „Blokový diagram“)
- 3.3V@500mA LDO IC.
- Doska prevodníka logickej úrovne 3,3V-5V.
- Napájanie 5 V DC.
Krok 1: Myšlienka
Mesačná lampa je napájaná jedným článkom Li-ION 18650 a má 3 prevádzkové režimy:
- vypnuté;
- Manuálny;
- auto.
V manuálnom režime sa lampa ovláda tlačidlom, každé stlačenie zmení stav LED diódy (modrá zapnutá, oranžová zapnutá, zapnutá, vypnutá), intenzita svetla sa zmení podržaním stlačeného tlačidla. V automatickom režime sa svetelné diódy LED menia klepnutím alebo zatrasením samotnou lampou.
Rozhodol som sa pridať ESP8266, aby fungoval ako webový server, ktorý počúva žiadosti a podľa toho simuluje stlačenia tlačidiel. Nechcel som narušiť pôvodnú funkciu žiarovky, len som chcel pridať ďalšie funkcie ovládania cez WiFi, a tak som namiesto priameho ovládania LED diód zvolil ESP na simuláciu stlačení tlačidiel. Tiež mi to umožnilo minimálne komunikovať s pôvodnými obvodmi.
Keď bol prototyp hotový, neustále napájal ~ 80mA z batérie vo vypnutom stave (~ 400mA pri plnom jase). Pohotovostný prúd je vysoký, pretože ESP8266 funguje ako server a je vždy pripojený k WiFi a počúva požiadavky. Batéria sa vybila po jednom a pol dni iba vo vypnutom stave, a tak som sa neskôr rozhodol použiť nabíjací port USB žiaroviek na napájanie všetkej elektroniky z externého 5V zdroja a vyradenej batérie dohromady (ale toto je voliteľné).
Krok 2: Blokový diagram
V blokovom diagrame vidíte, ktoré obvody budú pridané a ako budú existujúce obvody upravené. V mojom prípade som batériu úplne vybral a skratoval IC vstup nabíjačky batérií s výstupom (opäť je to voliteľné). Priehľadné bloky v diagrame označujú komponenty, ktoré sú obídené (aj keď tlačidlo stále funguje tak, ako bolo pôvodne určené).
Podľa dokumentácie ESP8266 toleruje iba 3,3 V, existuje však veľa príkladov, keď ESP8266 funguje úplne dobre s 5 V, takže prevodník logickej úrovne a 3,3 V LDO môžu byť vynechané, zostal som však pri osvedčených postupoch a tieto komponenty som pridal.
Použil som 3 I/O piny ESP8266 a pin ADC. Jeden digitálny výstupný kolík je na simuláciu stlačení tlačidiel, dva digitálne vstupy slúžia na zistenie toho, aké farebné LED diódy svietia (z toho môžeme zistiť, v akom stave je MCU a ktorý stav nasleduje po stlačení tlačidla). Kolík ADC meria vstupné napätie (prostredníctvom deliča napätia), takže môžeme monitorovať zostávajúcu úroveň nabitia batérie.
Ako externý zdroj napájania používam starú nabíjačku telefónu 5V@1A (nepoužívajte rýchlonabíjačky).
Krok 3: Programovanie
Stručne povedané, program funguje takto (ďalšie informácie nájdete v samotnom kóde):
ESP8266 sa pripája k vášmu prístupovému bodu WiFi, ktoré prihlasovacie údaje musíte zadať na začiatku pred programovaním kódu, získa IP adresu z vášho routera, server DHCP, aby ste zistili IP adresu, ktorú budete potrebovať neskôr, môžete skontrolovať nastavenia DHCP webového rozhrania alebo nastaviť príznak ladenia v kóde na 1 a uvidíte, čo IP ESP získal v sériovom monitore (túto IP by ste si mali vyhradiť v nastaveniach smerovačov, aby ESP pri štarte vždy dostal rovnakú IP).
Po inicializácii MCU vždy vykoná rovnakú rutinu navždy:
- Skontrolujte, či je stále pripojené k prístupovému bodu, ak nie, pokúste sa znova pripojiť až do úspechu.
-
Počkajte, kým klient odošle požiadavku HTTP. Keď sa stane požiadavka:
- Skontrolujte vstupné napätie.
- Skontrolujte, v akom stave sú diódy LED.
- Priraďte požiadavku HTTP k známym stavom LED (modrá svieti, oranžová svieti, obidve sú zapnuté, je vypnutá).
- Simulujte toľko stlačení tlačidiel, koľko je potrebné, aby sa dosiahol požadovaný stav.
Stručne popíšem programovacie pokyny, ak pri prvom programovaní MCU ESP8266 MCU hľadáte podrobnejšie pokyny.
Budete potrebovať Arduino IDE a prevodník sériového rozhrania USB (napríklad FT232RL). Pri príprave IDE postupujte podľa týchto pokynov.
Pripojte modul ESP-12E na programovanie podľa schémy zapojenia. Niekoľko rád:
- použite externý napájací zdroj 3,3 V@500 mA (vo väčšine prípadov sériové napájanie USB nestačí);
- skontrolujte, či je váš sériový prevodník USB kompatibilný s logickou úrovňou 3,3 V;
- skontrolujte, či sa úspešne nainštalovali ovládače sériového prevodníka USB (zo správcu zariadení systému Windows), môžete tiež skontrolovať, či funguje správne z IDE, iba z krátkych pinov RX a TX, ako z IDE vyberte port COM, otvorte sériový monitor a niečo napíšte, ak všetko funguje v konzole by sa mal zobrazovať text, ktorý odosielate;
- z nejakého dôvodu som bol schopný naprogramovať ESP iba vtedy, keď som najskôr pripojil USB sériový prevodník k počítaču a potom napájal ESP z externého zdroja 3,3 V;
- po úspešnom naprogramovaní nezabudnite pri ďalšom štarte vytiahnuť GPIO0 vysoko.
Krok 4: Schéma a spájkovanie
Pri spájkovaní všetkých komponentov na protoboard postupujte podľa schémy. Ako už bolo spomenuté, niektoré komponenty sú voliteľné. Použil som KA78M33 3,3 V LDO IC a túto dosku prevodníka logickej úrovne od sparkfun, alternatívne si môžete prevodník vyrobiť sami podľa schémy (namiesto BSS138 môžete použiť ľubovoľný N-kanálový mosfet). V prípade, že budete pokračovať v používaní batérie Li-ION, +5V napájacia sieť bude plusovým pólom batérie. Referenčné napätie ADP ESP8266 ADC je 1V, mnou zvolené hodnoty deliča rezistora umožňujú merať vstupné napätie až 5,7V.
K pôvodnej doske s žiarovkami by malo byť 5 pripojení: +5 V (alebo +batéria), GND, tlačidlo, signály PWM zo žiaroviek MCU na ovládanie modrej a oranžovej diódy LED. Ak napájate lampu zo zdroja 5 V, rovnako ako ja, budete chcieť skrátiť nabíjačku batérií IC VCC pin s kolíkom OUTPUT, takže všetka elektronika bude napájaná priamo z +5 V, a nie z výstupu OUTPUT nabíjačky batérií.
Nasledujte druhý obrázok pre všetky spájkovacie body, ktoré budete musieť urobiť na doske plošných spojov žiaroviek.
POZNÁMKY:
- Ak ste sa rozhodli skratovať +5 V pomocou výstupu IC nabíjačky batérií, najskôr batériu úplne vyberte, nechcete pripojiť +5 V priamo k batérii.
- Dávajte pozor na to, na ktorý pin kolíka tlačidla spájkujete výstup ESP, pretože 2 kolíky tlačidla sú spojené so zemou a nechcete skratovať, keď je výstup ESP VYSOKÝ, je lepšie to skontrolovať pomocou multimetra.
Krok 5: Aplikácia pre Android
Aplikácia pre Android bola vytvorená pomocou vynálezcu aplikácie MIT. Ak si chcete stiahnuť aplikáciu alebo klonovací projekt, kliknite na tento odkaz (na prístup k nemu budete potrebovať účet Google).
Pri prvom spustení budete musieť otvoriť nastavenia a zadať svoju IP adresu ESP8266. Táto IP adresa bude uložená, takže ju nebudete musieť zadávať znova po reštartovaní programu.
Aplikácia testovaná s niekoľkými zariadeniami Android 9 a Android 7.
Odporúča:
Lampa nálady IOT: 8 krokov (s obrázkami)
IOT Mood Lamp: IoT Mood lampa vyrobená pomocou Node MCU (ESP8266), LED diód RGB a nádoby. Farby žiarovky je možné meniť pomocou aplikácie Blynk. Vybral som pamätnú sochu Tonyho Starka, ktorú som nechal vytlačiť 3D a vložiť do tejto lampy. Môžete si vziať akúkoľvek hotovú sochu alebo
Lampa múmie - inteligentná lampa ovládaná WiFi: 5 krokov (s obrázkami)
Múmia - inteligentná lampa ovládaná WiFi: Asi pred 230 tisíc rokmi sa ľudská bytosť naučila ovládať oheň, čo viedlo k zásadnej zmene jeho životného štýlu, pretože v noci začal pracovať aj pomocou svetla z ohňa. Môžeme povedať, že toto je začiatok vnútorného osvetlenia. Teraz ja
Indikátor udalosti RPi-Zero IoT / farebná lampa: 6 krokov (s obrázkami)
Indikátor udalosti RPi-Zero IoT / farebná lampa: Žiadny ďalší mikro-ovládač, & Nie je potrebný žiadny prídavný modul HAT. RPi-Zero robí všetko. Ešte lepšie je použiť RPi-Zero W! Príklad použitia: Indikátor stavu webovej služby (napr. Sledovanie DowJonesIndex), indikátor stavu politických alebo športových udalostí, náladové svetlo
Dizajnová lampa IoT s IFTTT: 7 krokov (s obrázkami)
Dizajnová lampa IoT s IFTTT: V tomto návode vás prevediem výrobou LED žiarovky pripojenej na internet, ktorá je funkčná aj štýlová. Tento zábavný dizajnový predmet je možné ovládať pomocou webovej aplikácie alebo online služby IFTTT. Ten umožňuje zavesenie žiarovky
Špirálová lampa (tiež ako stolná lampa Loxodrome): 12 krokov (s obrázkami)
The Spiral Lamp (aka Loxodrome Desk Lamp): The Spiral Lamp (aka Loxodrome Desk Lamp) je projekt, ktorý som začal v roku 2015. Bol inšpirovaný Loxodrome Sconce Paula Nylandera. Môj pôvodný nápad bol motorizovaná stolová lampa, ktorá by na stenu premietala prúdiace svetelné lúče. Navrhol som a