Turinys:
- 1 žingsnis: surinkite elektroniką
- 2 žingsnis: „FastLED“
- 3 žingsnis: programinė įranga
- 4 žingsnis: valdykite jį vietoje
- 5 žingsnis: valdykite jį iš bet kurios vietos
- 6 žingsnis: IFTTT
- 7 žingsnis: padarykite tai gražiai
Video: „IoT“dizaino lempa su IFTTT: 7 žingsniai (su nuotraukomis)
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:47
Šioje instrukcijoje aš jums padėsiu sukurti funkcionalią ir stilingą prie interneto prijungtą LED lempą.
Šis įdomus dizaino objektas yra valdomas naudojant žiniatinklio programą arba internetinę paslaugą IFTTT. Pastaroji leidžia prijungti lempą prie visų rūšių išorinių paslaugų, tokių kaip „Google“padėjėjas, „Alexa“, „Android“pranešimai, laikas ir data, orų prognozė ir kt. Šis projektas apima pagrindines ESP8266 ir „Arduino“redaktoriaus žinias.
1 žingsnis: surinkite elektroniką
Šiam projektui jums reikės:
- „NodeMCU“arba kitas ESP8266 mikrovaldiklis
- Neopixel/WS2812B LED juostelė (1m 60LED/m)
- Lygio perjungiklis*
- Šuolių laidai (iš vyrų į moteris)
- Mikro-USB kabelis
- USB sieninis kištukas (5V)
LED juostelėje yra trys kabeliai: 5 V (raudona), GND (balta) ir DATA (žalia). ESP8266 veikia esant 3,3 V įtampai, tačiau turi VU kaištį. Šis kaištis yra tiesiogiai prijungtas prie USB maitinimo šaltinio, taigi, jei maitinsite plokštę 5 V per USB, ši įtampa taip pat bus prieinama VU kaiščiui. Mes naudosime šį kaištį maitinant LED juostelę. Taigi, trumpai:
- Prijunkite žemę prie žemės (nuo GND iki G)
- Prijunkite 5V+ prie Vu
- Prijunkite Din prie D2
* = Priklausomai nuo jūsų konkrečios aparatūros, šis laidas gali neveikti. Kadangi ESP8266 veikia esant 3,3 V įtampai, jo teikiamas duomenų signalas taip pat bus 3,3 V. Kadangi „WS2812B“maitinamas 5 V įtampa, duomenų signalas gali būti per silpnas, kad juostelė galėtų tinkamai jį priimti. Jei aukščiau minėti laidai neveikia, jums reikės lygio perjungiklio, kuris perjungia duomenų signalą nuo 3,3 V iki 5 V. Žiūrėkite pridedamą laidų schemą.
Pastaba! Kai kurios LED juostos yra labiau linkusios lūžti nei kitos. Jei niekada nedirbote su šiomis juostelėmis, primygtinai rekomenduoju perskaityti „Neopixel Überguide“patarimus, kaip saugiai prijungti „Neopixel“LED juostelę.
2 žingsnis: „FastLED“
Norėdami valdyti šviesos diodus, galime pasinaudoti „FastLED“biblioteka. Jei to dar nepadarėte, pridėkite šią biblioteką prie „Arduino“aplinkos (Eskizas> Įtraukti biblioteką> Tvarkyti bibliotekas> „FastLED“).
Norėdami įsitikinti, kad jūsų laidai veikia, galbūt norėsite išbandyti vieną iš daugelio „FastLED“bibliotekos pavyzdžių (Failas> Pavyzdžiai> „FastLED“). Prieš įkeldami juos į lentą, būtinai pakeiskite kiekvieno pavyzdžio nustatymus (šviesos diodų skaičius = 60, duomenų kaištis = 2).
Būkite atsargūs nustatydami šviesos diodus per šviesiai, kol plokštė prijungta prie kompiuterio. Kai piešiate daugiau nei 500 mA, kompiuteris gali išjungti prievadą. Jei norite naudoti juostą visu ryškumu, maitinkite ją naudodami USB sieninį kištuką, kuris gali tiekti pakankamai didelę srovę.
3 žingsnis: programinė įranga
Dabar atėjo laikas pritaikyti programinę įrangą. Programinę įrangą galima rasti „GitHub“:
github.com/dpkn/lamp/tree/master/software
Atsisiųskite programinės įrangos failą, išpakuokite jį ir atidarykite „software.ino“failą „Arduino“redaktoriuje. Įsitikinkite, kad turite įdiegtas visas šiame faile paminėtas bibliotekas.
Eikite į „Config“skirtuką ir pridėkite „WiFi“tinklo pavadinimą ir slaptažodį šiose eilutėse:
const char* ssid = "";
const char* slaptažodis = "";
Priklausomai nuo maršrutizatoriaus, taip pat gali tekti pakeisti šiuos dalykus:
const IPAddress staticIp (192, 168, 178, 101); // Norimas statinis vietinis įrenginio IP
const IPAddress vartai (192, 168, 178, 1); // maršrutizatoriaus constIPAddress potinklio šliuzo IP (255, 255, 255, 0); // Maršrutizatoriaus potinklis
„MacOS“sistemoje šiuos nustatymus galite rasti skiltyje Sistemos nuostatos> Tinklas> Išplėstinė> TCP/IP
Įkelkite failus į savo lentą. Jei viskas gerai, juostelė užsidegs balta spalva, kai ji prijungta prie „WiFi“tinklo. Atidarykite 115200 baudų serijos monitorių ir patikrinkite, ar nėra papildomos informacijos.
4 žingsnis: valdykite jį vietoje
Norėdami parodyti lempos veikimą, sukūriau nedidelę žiniatinklio programą, kurią galima rasti adresu https://lamp-app.surge.sh (šaltinis „Codepen“). Ši programa siunčia JSON užklausas tiesiai į ESP8266, o tai savo ruožtu atnaujina šviesos diodus.
Aukščiau aprašyta funkcija veiks tik tuo atveju, jei jūsų lempa ir telefonas prijungti prie to paties „WiFi“tinklo, nes kreipiatės į lempą pagal jos vietinį IP adresą. Kad galėtumėte valdyti lempą iš bet kurios vietos, turėsite įsigilinti į maršrutizatoriaus nustatymus.
5 žingsnis: valdykite jį iš bet kurios vietos
Norėdami atverti žibintą stebuklingam dalykui, kuris yra pasaulinis tinklas, turime padaryti tai, kas vadinama uosto persiuntimu. Iš esmės tai nukreipia užklausas, adresuotas jūsų viešuoju IP adresu (tą, kurį pateikia jūsų IPT) ir prievado numerį (šiame pavyzdyje savavališkai nustatytas į 300), į vidinį, vietinį IP adresą, kuriuo galima adresuoti jūsų ESP8266.
Šis procesas kiekvienam įrenginiui yra skirtingas, todėl jei nežinote, kaip tai padaryti konkrečiame maršrutizatoriuje, būtinai nurodykite „Google“uosto persiuntimą + maršrutizatoriaus pavadinimą. Šių nustatymų jums reikės:
Išorinis pradžios/pabaigos uostas: 300
Vidinis pradžios/pabaigos uostas: 300
Vidinis IP adresas: 192.168.178.101 (serijos monitoriuje rodomas adresas)
Protokolas: TCP/UDP
Įspėjimas! Tai atlikę, jūsų lempą gali valdyti visi, žinantys jūsų viešąjį IP ir prievadą, kuriame lemputė veikia. Jei nemanote, kad tai puiki idėja, rekomenduojama įdiegti tam tikrą saugumo sluoksnį
Norėdami patikrinti, ar viskas teisingai nustatyta, įveskite šią informaciją į savo naršyklę: (jei nežinote, koks yra jūsų viešasis IP adresas, eikite į šią svetainę.)
[JŪSŲ VIEŠAS IP]: 300
Turėtumėte pamatyti JSON patvirtinimo pranešimą. Dabar galite pabandyti naudoti programą su savo viešuoju IP adresu.
6 žingsnis: IFTTT
Štai čia ir prasideda tikros linksmybės. Dabar, kai mūsų lempa prijungta prie interneto ~ ~, galime naudoti svetainę IFTTT, kad prijungtume ją prie visų rūšių paslaugų.
Šiame pavyzdyje nustatysime „Google“padėjėjo komandą, kuri švies raudonas lemputes, tačiau galite pasirinkti kitą paslaugą, kuri sužadina jūsų vaizduotę.
- Eikite į IFTTT.com ir sukurkite paskyrą, jei to dar nepadarėte
- Eikite į „Mano programėlės“> „Nauja programėlė“
- Norėdami suaktyvinti paslaugą, ieškokite „Google Assistant“
- Pasirinkite „Pasakykite paprastą frazę“
- Sugalvokite keletą unikalių frazių
- Norėdami rasti veiksmų paslaugą, ieškokite „Webhooks“
- Naudokite šiuos nustatymus:
URL: https:// [JŪSŲ PUBLIKINIS IP]: 300/api
Metodas: POST Turinio tipas: application/json
Ir kūnui:
{„ryškumas“: 120, "state": 4, "color": "raudona"}
Dabar, kai pasakysime pasirinktą sakinį, „Google“padėjėjas pateiks užklausą IFTTT, kuri savo ruožtu atsiųs JSON užklausą dėl mūsų lempos. Būtinai išbandykite! Pasinerkite į kodą, kad pamatytumėte, ką dar galite padaryti juostelę.
7 žingsnis: padarykite tai gražiai
Brangiausia šio projekto dalis yra korpusas, kuriame yra LED juostelė. Jei norite tiesiog išbandyti šį projektą, neišleisdami per daug pinigų, taip pat galite apsvarstyti kitas formas arba tiesiog pagaminti vamzdelį iš balto spausdintuvo popieriaus. Pridedamas vielos rėmas, kurį galite atsispausdinti ant popieriaus ir sulankstyti kai kuriuos vamzdžio stovus, kaip parodyta aukščiau esančiose nuotraukose.
Norėdami gauti tvirtesnį korpusą, naudoju šiuos elementus:
- Matinis akrilo vamzdis (ilgis = 1160 mm, skersmuo = 40 mm, sienelės storis = 2 mm)
- 2x plastikinis dangtelis
- 20x2x30 mm spygliuočių medienos blokas
- 10x1160x2mm metalinė juostelė
Pati LED juostelė yra 1000 mm, paliekant 80 mm abiejuose vamzdžio galuose, kad paslėptų elektroniką. Aš naudoju spausdintuvo popierių, susuktą į vamzdelį iš abiejų galų, kad jie nebūtų skaidrūs. Kad būtų lengviau įterpti, priklijavau LED juostą ant ilgos metalinės juostelės
Stendus frezavau iš spygliuočių medžių kvartalo. Jei norite padaryti tą patį,.stl failas pateikiamas žemiau. Taip pat galite apsvarstyti 3D spausdinimo stendą.
Rekomenduojamas:
Trafaretinė lempa - viena lempa Daug atspalvių: 5 žingsniai
Trafaretinė lempa - viena lempa, daug atspalvių: ši instrukcija parodys, kaip padaryti paprastą lempą su perjungiamais atspalviais (jos abažūris)
Mumijos lempa - „WiFi“valdoma išmanioji lempa: 5 žingsniai (su nuotraukomis)
Mumijos lempa - „WiFi“valdoma išmanioji lempa: Maždaug prieš 230 tūkst. Galime pasakyti, kad tai yra patalpų apšvietimo pradžia. Dabar aš
Dviejų spalvų dizaino šilumos perdavimo vinilas marškinėliams: 10 žingsnių (su nuotraukomis)
Dviejų spalvų dizaino šilumos perdavimo vinilas marškinėliams: Ši instrukcija išmokys jus, kaip naudojant šiluminį presą pasidaryti dvigubos spalvos vinilo dizaino marškinėlius. Medžiagos-Šilumos perdavimo vinilas Vinilo pjaustytuvas Kompiuteris su „Vinylmaster“programa Šilumos presas Žirklės Suvirintojo marškinėliai „RulerX-ACTO“peilis
„TheSUN“, „Arduino“varomas dizaino sieninis laikrodis: 6 žingsniai (su nuotraukomis)
„TheSUN“, „Arduino“varomas dizaino sieninis laikrodis: Sveiki dar kartą, instruktuojamieji žmonės!:-PB Dėl pristatymo problemų negalėjau tęsti savo „ABTW“projekto, todėl nusprendžiau parodyti jums kitą, savo naujausią kūrinį. Manau, daugelis iš mūsų, kaip aš, kaip tos gražios adresuojamos LED juostelės (dar vadinamos NEOP
Spiralinė lempa (dar vadinama „Loxodrome“staline lempa): 12 žingsnių (su nuotraukomis)
Spiralinė lempa (dar vadinama „Loxodrome Desk Lamp“): „Spiral Lamp“(dar vadinama „Loxodrome Desk Lamp“) yra projektas, kurį pradėjau 2015 m. Jį įkvėpė Paulo Nylanderio „Loxodrome Sconce“. Mano pirminė idėja buvo sukurti motorizuotą stalinę lempą, kuri ant sienos projektuotų tekančius šviesos sūkurius. Suprojektavau ir