Sadržaj:

IoT dizajnerska lampa sa IFTTT: 7 koraka (sa slikama)
IoT dizajnerska lampa sa IFTTT: 7 koraka (sa slikama)

Video: IoT dizajnerska lampa sa IFTTT: 7 koraka (sa slikama)

Video: IoT dizajnerska lampa sa IFTTT: 7 koraka (sa slikama)
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Juli
Anonim
IoT dizajn lampa sa IFTTT
IoT dizajn lampa sa IFTTT
IoT dizajn lampa sa IFTTT
IoT dizajn lampa sa IFTTT

U ovom uputstvu vodit ću vas u izradi LED lampe povezane s internetom koja će biti funkcionalna i elegantna.

Ovim elegantnim dizajnerskim objektom može se upravljati putem web-aplikacije ili mrežne usluge IFTTT. Ovo posljednje omogućuje spajanje lampe na sve vrste vanjskih usluga poput Google Asistenta, Alexa, Android obavijesti, vremena i datuma, vremenske prognoze itd. Ovaj projekt pretpostavlja osnovno poznavanje ESP8266 i Arduino uređivača.

Korak 1: Okupite elektroniku

Okupite elektroniku!
Okupite elektroniku!
Okupite elektroniku!
Okupite elektroniku!

Za ovaj projekat trebat će vam sljedeće:

  • NodeMCU ili drugi ESP8266 mikrokontroler
  • Neopixel/WS2812B LED traka (1m 60LED/m)
  • Mjenjač nivoa*
  • Žice za preskakanje (muško-žensko)
  • Mikro-USB kabl
  • USB zidni utikač (5V)

LED traka ima tri kabela: 5V (crveno), GND (bijelo) i DATA ulaz (zeleno). ESP8266 radi na 3.3V, ali ima VU pin. Ovaj pin je direktno spojen na USB napajanje, pa ako napajate ploču sa 5V preko USB -a, ovaj napon će biti dostupan i na VU pinu. Ovaj pin ćemo koristiti za napajanje LED trake. Dakle, ukratko:

  • Spojite uzemljenje na uzemljenje (GND TO G)
  • Spojite 5V+ na Vu
  • Povežite Din na D2

* = Ovisno o vašem hardveru, ovo ožičenje možda neće raditi. Budući da ESP8266 radi na 3.3V, signal podataka koji daje bit će također na 3.3V. Budući da se WS2812B napaja s 5V, signal podataka može biti preslab da bi ga traka pravilno primila. Ako gornje ožičenje ne radi, trebat će vam Level Shifter koji prebacuje podatkovni signal sa 3,3 V na 5 V. Pogledajte priloženu shemu ožičenja.

Bilješka! Neke LED trake su sklonije lomljenju od drugih. Ako nikada niste radili s ovim trakama, toplo preporučujem čitanje Neopixel Überguidea za savjete o sigurnom povezivanju Neopixel LED trake.

Korak 2: FastLED

FastLED
FastLED

Za kontrolu LED dioda možemo koristiti FastLED biblioteku. Ako već niste, dodajte ovu biblioteku u svoje Arduino okruženje (Sketch> Include Library> Manage libraries> 'FastLED').

Kako biste bili sigurni da vaše ožičenje radi, možda biste trebali isprobati jedan od mnogih primjera koji dolaze s bibliotekom FastLED (Datoteka> Primjeri> FastLED). Promijenite postavke u svakom primjeru (broj LED dioda = 60, pin za podatke = 2), prije nego što ih postavite na svoju ploču.

Budite oprezni sa postavljanjem LED dioda previše svijetlim dok je ploča spojena na vaš računar. Kada crpite više od 500mA, vaš računar može zatvoriti port. Ako želite koristiti traku pri punoj svjetlini, napajajte je pomoću USB zidnog utikača koji može opskrbiti dovoljno visoku amperažu.

Korak 3: Softver

Softver
Softver

Sada je vrijeme za prilagođeni softver. Softver je dostupan na GitHub -u:

github.com/dpkn/lamp/tree/master/software

Preuzmite softversku datoteku, raspakirajte je i otvorite datoteku software.ino u svom Arduino uređivaču. Uvjerite se da imate instalirane sve biblioteke koje se spominju u ovoj datoteci.

Idite na karticu Config i dodajte naziv mreže i lozinku svoje WiFi mreže u ove redove:

const char* ssid = "";

const char* lozinka = "";

Ovisno o usmjerivaču, možda ćete također morati promijeniti sljedeće:

const IPAddress staticIp (192, 168, 178, 101); // Željena statička lokalna IP adresa uređaja

const IPAddress gateway (192, 168, 178, 1); // IP pristupnika podmreže constIPAddress podružnice (255, 255, 255, 0); // Podmreža usmjerivača

Na MacOS -u ove postavke možete pronaći pod System Preferences> Network> Advanced> TCP/IP

Otpremite datoteke na svoju ploču. Ako sve prođe kako treba, traka će zasvijetliti bijelo kada je spojena na vašu WiFi mrežu. Otvorite Serijski monitor na 115200 bodova da provjerite dodatne informacije.

Korak 4: Lokalna kontrola

Da bih demonstrirao rad lampe, napravio sam malu web-aplikaciju koja je dostupna na https://lamp-app.surge.sh (izvor na Codepenu). Ova aplikacija šalje JSON zahtjeve izravno na ESP8266, koji zauzvrat ažurira LED diode.

Gore navedeno će funkcionirati samo ako su vaša svjetiljka i telefon povezani na istu WiFi mrežu jer se lampi obraćate prema lokalnoj IP adresi. Da biste mogli kontrolirati lampu s bilo kojeg mjesta, morat ćete se pozabaviti postavkama usmjerivača.

Korak 5: Kontrola s bilo kojeg mjesta

Da bismo otvorili lampu za čarobnu stvar koja je World Wide Web, moramo učiniti nešto što se zove prosljeđivanje portova. U osnovi, ovo će preusmjeriti zahtjeve upućene na vašu javnu IP adresu (onu koju vam daje vaš ISP) i broj porta (u ovom primjeru proizvoljno postavljen na 300) na internu, lokalnu IP adresu na kojoj se može adresa ESP8266.

Ovaj proces je različit za svaki uređaj, pa ako ne znate kako to učiniti na svom određenom usmjerivaču, svakako google "prosljeđivanje portova" + naziv vašeg usmjerivača. Ovo su postavke koje će vam trebati:

Vanjski start/end port: 300

Unutrašnji start/end port: 300

Interna IP adresa: 192.168.178.101 (adresa koja je prikazana u serijskom monitoru)

Protokol: TCP/UDP

Upozorenje! Nakon toga, vašom lampom može upravljati svako ko zna vašu javnu IP adresu i port na kojem lampa radi. Ako mislite da to nije dobra ideja, preporučuje se implementacija nekog sloja sigurnosti

Da biste provjerili je li sve ispravno postavljeno, u svoj preglednik unesite sljedeće: (ako ne znate koja je vaša javna IP adresa, posjetite ovu web stranicu.)

[VAŠA JAVNA IP]: 300

Trebali biste vidjeti poruku potvrde JSON -a. Sada možete pokušati koristiti aplikaciju sa svojom javnom IP adresom.

Korak 6: IFTTT

IFTTT
IFTTT
IFTTT
IFTTT
IFTTT
IFTTT
IFTTT
IFTTT

Tu počinje prava zabava. Sada kada je naša svjetiljka spojena na ~~ internet ~~, možemo koristiti web stranicu IFTTT da je povežemo na sve različite vrste usluga.

U ovom primjeru postavit ćemo naredbu Google pomoćnika koja svijetli crveno, ali možete odabrati drugu uslugu koja će vam pobuditi maštu.

  1. Idite na IFTTT.com i kreirajte račun ako već niste
  2. Idite na 'Moji apleti'> 'Novi aplet'
  3. Za uslugu okidača potražite 'Google pomoćnik'
  4. Odaberite "Reci jednostavnu frazu"
  5. Izmislite nekoliko jedinstvenih fraza
  6. Za akcijsku uslugu potražite "Webhooks"
  7. Koristite sljedeće postavke:

URL: https:// [VAŠA-JAVNA-IP]: 300/api

Metoda: POST Tip sadržaja: application/json

A za tijelo:

Sada kada izgovaramo odabranu rečenicu, Google asistent će uputiti zahtjev IFTTT -u, koji će zauzvrat poslati JSON zahtjev za našu lampu. Isprobajte ga obavezno! Zaronite u kod da vidite šta još možete učiniti da traka radi.

Korak 7: Učinite to lijepo

Učiniti to prilično
Učiniti to prilično
Učiniti to prilično
Učiniti to prilično
Učiniti to prilično
Učiniti to prilično

Najskuplji dio ovog projekta je kućište u kojem se nalazi LED traka. Ako samo želite isprobati ovaj projekt, a da na to ne potrošite previše novca, razmislite i o drugim oblicima ili jednostavno napravite cijev od bijelog papira za pisač. U prilogu ćete pronaći žičani okvir koji možete odštampati na papiru kako biste presavili neke stalke za cijev, kao što je prikazano na gornjim slikama.

Za čvršće kućište koristio sam sljedeće stavke:

  • Akrilna cijev sa mrazom (dužina = 1160 mm, promjer = 40 mm, debljina stjenke = 2 mm)
  • 2x plastična kapica
  • 20x2x30mm blok od mekog drveta
  • 10x1160x2mm metalna traka

Sama LED traka je 1000 mm, ostavljajući 80 mm na oba kraja cijevi kako bi sakrila elektroniku. Koristio sam papir za štampač smotan u cijev s oba kraja kako bih bio netransparentan. Da bih olakšao umetanje, zalijepio sam LED traku na dugu metalnu traku

Isklesao sam štandove iz bloka četinara. Ako želite učiniti isto, dolje se nalazi.stl datoteka. Takođe možete razmisliti o 3D štampanju postolja.

Preporučuje se: