Sisällysluettelo:
- Vaihe 1: Kerää elektroniikkaa
- Vaihe 2: FastLED
- Vaihe 3: Ohjelmisto
- Vaihe 4: Hallitse sitä paikallisesti
- Vaihe 5: Hallitse sitä mistä tahansa
- Vaihe 6: IFTTT
- Vaihe 7: Tee siitä kaunis
Video: IoT -suunnittelulamppu IFTTT: llä: 7 vaihetta (kuvilla)
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:02
Tässä ohjeessa opastan sinua tekemään Internetiin yhdistetyn LED-lampun, joka on sekä toimiva että tyylikäs.
Tämä funky-suunnitteluobjekti on hallittavissa verkkosovelluksella tai IFTTT-verkkopalvelulla. Jälkimmäinen mahdollistaa lampun kytkemisen kaikenlaisiin ulkoisiin palveluihin, kuten Google Assistant, Alexa, Android -ilmoitukset, aika ja päivämäärä, sääennuste jne. Tässä projektissa oletetaan perustiedot ESP8266: sta ja Arduino -editorista.
Vaihe 1: Kerää elektroniikkaa
Tätä projektia varten tarvitset seuraavat:
- NodeMCU tai muu ESP8266 -mikro -ohjain
- Neopixel/WS2812B LED-nauha (1m 60LED/m)
- Tasonvaihtaja*
- Hyppyjohdot (uros-naaras)
- Micro-USB-kaapeli
- USB -seinäpistoke (5V)
LED-nauhassa on kolme kaapelia: 5 V (punainen), GND (valkoinen) ja DATA (vihreä). ESP8266 toimii 3,3 V: n jännitteellä, mutta siinä on VU -nasta. Tämä nasta on kytketty suoraan USB -virtalähteeseen, joten jos käytät virtalähdettä 5 V: n USB -liitännällä, tämä jännite on käytettävissä myös VU -nastassa. Käytämme tätä tappia LED -nauhan virtalähteeksi. Eli lyhyesti:
- Liitä maa maahan (GND - G)
- Liitä 5V+ Vu
- Yhdistä Din D2: een
* = Laitteistostasi riippuen tämä johdotus ei ehkä toimi. Koska ESP8266 toimii 3,3 V: n jännitteellä, sen tarjoama datasignaali on myös 3,3 V: n jännitteellä. Koska WS2812B: n virtalähteenä on 5 V, datasignaali voi olla liian heikko, jotta nauha vastaanottaa sen oikein. Jos yllä oleva johdotus ei toimi, tarvitset tasonsiirtimen, joka siirtää datasignaalin 3,3 V: sta 5 V. Katso oheinen kytkentäkaavio.
Huomautus! Jotkut LED-nauhat ovat murtumisalttiimpia kuin toiset. Jos et ole koskaan työskennellyt näiden nauhojen kanssa, suosittelen lämpimästi lukemaan Neopixel Überguide -oppaan, jossa on vinkkejä Neopixel-LED-nauhan turvalliseen liittämiseen.
Vaihe 2: FastLED
LEDien ohjaamiseen voimme käyttää FastLED -kirjastoa. Jos et ole jo tehnyt sitä, lisää tämä kirjasto Arduino -ympäristösi (Luonnos> Sisällytä kirjasto> Hallitse kirjastoja> FastLED).
Varmistaaksesi, että johdot toimivat, sinun kannattaa kokeilla yhtä monista FastLED -kirjaston mukana tulevista esimerkeistä (Tiedosto> Esimerkit> FastLED). Muista muuttaa kunkin esimerkin asetuksia (merkkivalojen määrä = 60, datanasta = 2), ennen kuin lataat ne taulullesi.
Ole varovainen asettamalla LEDit liian kirkkaiksi, kun kortti on kytketty tietokoneeseen. Kun piirrät enemmän kuin 500 mA, tietokone saattaa sulkea portin. Jos haluat käyttää nauhaa täydellä kirkkaudella, käytä sitä USB -seinäpistokkeella, joka voi tuottaa riittävän suuren virran.
Vaihe 3: Ohjelmisto
Nyt on aika tehdä räätälöityjä ohjelmistoja. Ohjelmisto on saatavana GitHubista:
github.com/dpkn/lamp/tree/master/software
Lataa ohjelmistotiedosto, pura se ja avaa software.ino -tiedosto Arduino -editorissa. Varmista, että kaikki tässä tiedostossa mainitut kirjastot on asennettu.
Siirry Config -välilehteen ja lisää WiFi -verkon nimi ja salasana näille riveille:
const char* ssid = "";
const char* salasana = "";
Sinun on ehkä myös muutettava seuraavia asioita reitittimestä riippuen:
const IPAdd staticIp (192, 168, 178, 101); // Laitteen haluttu staattinen paikallinen IP
const IPAddress -yhdyskäytävä (192, 168, 178, 1); // Reitittimen constIPAddress -aliverkon yhdyskäytävän IP (255, 255, 255, 0); // Reitittimen aliverkko
MacOSissa nämä asetukset löytyvät kohdasta Järjestelmäasetukset> Verkko> Lisäasetukset> TCP/IP
Lataa tiedostot taulullesi. Jos kaikki menee hyvin, liuska palaa valkoisena, kun se on yhdistetty WiFi -verkkoon. Avaa Serial Monitor 115200 baudilla tarkistaaksesi lisätietoja.
Vaihe 4: Hallitse sitä paikallisesti
Osoittaakseni lampun toiminnan tein pienen verkkosovelluksen, joka on saatavilla osoitteessa https://lamp-app.surge.sh (lähde Codepenissa). Tämä sovellus lähettää JSON -pyynnöt suoraan ESP8266: lle, joka puolestaan päivittää LEDit.
Yllä oleva toimii vain, jos lamppu ja puhelin on yhdistetty samaan WiFi -verkkoon, koska osoitat lampulle sen paikallisen IP -osoitteen. Jotta voit hallita lamppua mistä tahansa, sinun on tutkittava reitittimen asetuksia.
Vaihe 5: Hallitse sitä mistä tahansa
Jotta voisimme avata lampun taikuuteen, joka on World Wide Web, meidän on tehtävä jotain, jota kutsutaan portinsiirtoksi. Pohjimmiltaan tämä ohjaa julkisella IP -osoitteellasi (Internet -palveluntarjoajasi toimittama) ja porttinumerolla (tässä esimerkissä mielivaltaisesti 300) osoitetut pyynnöt sisäiseen, paikalliseen IP -osoitteeseen, johon ESP8266 on osoitettavissa.
Tämä prosessi on erilainen jokaisella laitteella, joten jos et tiedä miten tämä tehdään omalla reitittimelläsi, varmista, että käytät Googlen portinsiirtoa + reitittimesi nimeä. Tarvitset seuraavat asetukset:
Ulkoinen aloitus-/lopetusportti: 300
Sisäinen aloitus-/lopetusportti: 300
Sisäinen IP -osoite: 192.168.178.101 (sarjamonitorissa näkyvä osoite)
Protokolla: TCP/UDP
Varoitus! Tämän jälkeen lamppua voi ohjata kuka tahansa, joka tuntee julkisen IP -osoitteesi ja lampun käynnissä olevan portin. Jos se ei ole mielestäsi hyvä idea, suositellaan jonkin tietoturvatason käyttöönottoa
Testaa, onko kaikki asetettu oikein, kirjoittamalla selaimeesi seuraavat tiedot: (jos et tiedä julkista IP -osoitettasi, siirry tälle verkkosivustolle.)
[JULKINEN IP -osoitteesi]: 300
Sinun pitäisi nähdä JSON -vahvistusviesti. Voit nyt yrittää käyttää sovellusta julkisen IP -osoitteesi kanssa.
Vaihe 6: IFTTT
Tästä alkaa todellinen hauskuus. Nyt kun lamppu on kytketty ~ ~ Internetiin ~ ~, voimme käyttää IFTTT -verkkosivustoa kytkeäksemme sen kaikenlaisiin palveluihin.
Tässä esimerkissä määritämme Google Assistant -komennon, joka muuttaa valot punaisiksi, mutta voit valita toisen palvelun, joka herättää mielikuvituksesi.
- Siirry osoitteeseen IFTTT.com ja luo tili, jos et ole jo tehnyt sitä
- Siirry kohtaan Omat appletit> Uusi appletti
- Hae laukaisupalvelua varten Google Assistant
- Valitse Sano yksinkertainen lause
- Keksi muutama ainutlaatuinen lause
- Hae toimintapalvelusta hakusana "Webhooks"
- Käytä seuraavia asetuksia:
URL-osoite: https:// [JULKINEN IP-osoitteesi]: 300/api
Menetelmä: POST -sisällön tyyppi: application/json
Ja vartalolle:
Kun sanomme valitsemamme lauseen, Google Assistant tekee pyynnön IFTTT: lle, joka puolestaan lähettää JSON -pyynnön lampullemme. Muista kokeilla sitä! Sukella koodiin nähdäksesi, mitä muuta voit saada nauhalle.
Vaihe 7: Tee siitä kaunis
Tämän projektin kallein osa on kotelo, jossa on LED -nauha. Jos haluat vain kokeilla tätä projektia kuluttamatta siihen liikaa rahaa, voit myös harkita muita muotoja tai yksinkertaisesti tehdä putken valkoisesta tulostuspaperista. Liitteenä on metallikehys, jonka voit tulostaa paperille ja taittaa putken jalat, kuten yllä olevissa kuvissa näkyy.
Vahvempaan koteloon käytin seuraavia tuotteita:
- Matta akryyliputki (pituus = 1160 mm, halkaisija = 40 mm, seinämän paksuus = 2 mm)
- 2x muovikorkki
- 20x2x30mm havupuuta
- 10x1160x2mm metallinauha
Itse LED -nauha on 1000 mm, joten putken molemmissa päissä on 80 mm elektroniikan piilottamiseksi. Käytin tulostinpaperia, joka oli rullattu putkeen molemmista päistä, jotta ne eivät olisi läpinäkyviä. Liittämisen helpottamiseksi liimasin LED -nauhan pitkän metalliliuskan päälle
Jyrsin telineet havupuusta. Jos haluat tehdä saman,.stl -tiedosto on alla. Voit myös harkita telineen 3D -tulostusta.
Suositeltava:
Bluetooth RC -auto STM32F103C: llä ja L293D: llä - Edullinen: 5 vaihetta
Bluetooth RC -auto STM32F103C: llä ja L293D: llä - Edullista: Tein Bluetooth Arduino -auton, kuten tässä kuvattu, Ardumotive_com. Ongelmani olivat akut ja niiden paino sekä kustannukset. Sittemmin matkapuhelimien halvoista virtapankkeista on tullut erittäin edullisia. Kaikki mitä tarvitsen
Alexa Ääniohjattu Raspberry Pi Drone IoT: llä ja AWS: llä: 6 vaihetta (kuvilla)
Alexa Ääniohjattu Raspberry Pi Drone IoT: llä ja AWS: llä: Hei! Nimeni on Armaan. Olen 13-vuotias Massachusettsin poika. Tämä opetusohjelma näyttää, kuten voit päätellä otsikosta, kuinka rakentaa Raspberry Pi Drone. Tämä prototyyppi osoittaa, kuinka dronit kehittyvät ja kuinka suuri rooli niillä voi olla
Sisäkasvien kastelu NodeMCU: lla, paikallisella Blynk -palvelimella ja Blynk Apk: lla, säädettävä asetuspiste: 3 vaihetta
Sisäkasvien kastelu NodeMCU: lla, paikallisella Blynk -palvelimella ja Blynk Apk: llä, säädettävä asetuspiste: Olen rakentanut tämän projektin, koska sisäkasvieni on oltava terveitä, vaikka olen lomalla pitkään ja pidän ajatuksesta hallita tai ainakin seurata kaikkia mahdollisia asioita, joita kotona tapahtuu Internetin kautta
Älypuhelintelakka USB: llä ja HDMI: llä: 6 vaihetta
Älypuhelintelakka USB: llä ja HDMI: llä: Tämä on opas rakentaa älypuhelintelakka, jossa on neljä USB -tuloa, HDMI -lähtö ja USB C -läpivienti lataamista varten. monenlaisiin USB -laitteisiin, kuten näppäimistöihin, hiiriin
Levynvaihto PS1: llä (tai PSX: llä): 8 vaihetta
Levynvaihdon vaihtaminen PS1: llä (tai PSX: llä): Tämä näyttää sinulle vaihe vaiheelta kuinka vaihtaa levyt Ps1: lle (tai PSX: lle). Tämä on melko vaikeaa. jos sinulla on ongelmia, käy tällä sivustolla http://www.angelfire.com/ca/PlaystationHouse/SwapTrick.html