Obsah:

Designová lampa IoT s IFTTT: 7 kroků (s obrázky)
Designová lampa IoT s IFTTT: 7 kroků (s obrázky)

Video: Designová lampa IoT s IFTTT: 7 kroků (s obrázky)

Video: Designová lampa IoT s IFTTT: 7 kroků (s obrázky)
Video: 16 ошибок штукатурки стен. 2024, Červenec
Anonim
Designová lampa IoT s IFTTT
Designová lampa IoT s IFTTT
Designová lampa IoT s IFTTT
Designová lampa IoT s IFTTT

V tomto Instructable vás provedu při výrobě LED lampy připojené k internetu, která je funkční i stylová.

Tento funky designový objekt je ovladatelný pomocí webové aplikace nebo online služby IFTTT. Ten umožňuje připojit lampu ke všem druhům externích služeb, jako je Google Assistant, Alexa, oznámení pro Android, čas a datum, předpověď počasí atd. Tento projekt předpokládá základní znalosti o ESP8266 a editoru Arduino.

Krok 1: Shromážděte elektroniku

Shromážděte elektroniku!
Shromážděte elektroniku!
Shromážděte elektroniku!
Shromážděte elektroniku!

Pro tento projekt budete potřebovat následující:

  • NodeMCU nebo jiný mikrokontrolér ESP8266
  • Neopixel/WS2812B LED pásek (1m 60LED/m)
  • Posunovač úrovně*
  • Propojovací vodiče (muž-žena)
  • Micro-USB kabel
  • USB zásuvka (5V)

LED pásek má tři kabely: 5V v (červený), GND (bílý) a DATA v (zelený). ESP8266 pracuje na 3,3 V, ale má pin VU. Tento kolík je přímo připojen k napájení USB, takže pokud budete desku napájet 5V přes USB, bude toto napětí k dispozici také na pinu VU. Tento pin použijeme k napájení LED pásky. Takže ve zkratce:

  • Připojte uzemnění k zemi (GND TO G)
  • Připojte 5V+ k Vu
  • Připojte Din k D2

* = V závislosti na vašem konkrétním hardwaru nemusí toto zapojení fungovat. Protože ESP8266 pracuje na 3,3 V, bude datový signál, který poskytuje, také na 3,3 V. Protože je WS2812B napájen 5V, může být datový signál příliš slabý na to, aby byl páskem správně přijat. Pokud výše uvedené zapojení nefunguje, budete potřebovat řadič úrovně, který posune datový signál z 3,3 V na 5 V. Viz přiložené schéma zapojení.

Poznámka! Některé LED pásky jsou náchylnější k rozbití než jiné. Pokud jste s těmito pásy nikdy nepracovali, důrazně doporučuji přečíst si Neopixel Überguide, kde najdete tipy na bezpečné připojení LED pásku Neopixel.

Krok 2: FastLED

FastLED
FastLED

K ovládání LED můžeme použít knihovnu FastLED. Pokud jste to ještě neudělali, přidejte tuto knihovnu do svého prostředí Arduino (Skica> Zahrnout knihovnu> Spravovat knihovny> 'FastLED').

Chcete -li se ujistit, že vaše zapojení funguje, možná budete chtít vyzkoušet jeden z mnoha příkladů, které jsou součástí knihovny FastLED (Soubor> Příklady> FastLED). Před nahráním na desku nezapomeňte změnit nastavení v každém příkladu (počet LED = 60, datový pin = 2).

Buďte opatrní s nastavením příliš jasných LED diod, když je deska připojena k vašemu počítači. Při odběru více než 500 mA může váš počítač port vypnout. Pokud chcete pásek používat při plném jasu, napájejte jej pomocí USB zásuvky, která dokáže poskytnout dostatečně vysoký proud.

Krok 3: Software

Software
Software

Nyní je čas na vlastní software. Software je k dispozici na GitHub:

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

Stáhněte si softwarový soubor, rozbalte jej a otevřete soubor software.ino v editoru Arduino. Ujistěte se, že máte nainstalované všechny knihovny uvedené v tomto souboru.

Přejděte na kartu Konfigurace a do těchto řádků přidejte název a heslo své WiFi sítě:

const char* ssid = "";

const char* heslo = "";

V závislosti na směrovači může být také nutné změnit následující:

const IPAddress staticIp (192, 168, 178, 101); // Požadovaná statická lokální IP zařízení

brána const IPAddress (192, 168, 178, 1); // IP brány routeru podsíť constIPAddress (255, 255, 255, 0); // Podsíť routeru

V systému MacOS najdete tato nastavení v části Předvolby systému> Síť> Upřesnit> TCP/IP

Nahrajte soubory na desku. Pokud vše půjde dobře, pruh se po připojení k vaší WiFi síti rozsvítí bíle. Otevřete Serial Monitor na 115200 baud a zkontrolujte další informace.

Krok 4: Místní ovládání

Abych předvedl fungování lampy, vytvořil jsem malou webovou aplikaci, která je k dispozici na adrese https://lamp-app.surge.sh (zdroj na Codepen). Tato aplikace odesílá požadavky JSON přímo do ESP8266, který zase aktualizuje LED diody.

Výše uvedené bude fungovat pouze tehdy, pokud jsou vaše lampa a telefon připojeny ke stejné WiFi síti, protože lampu adresujete podle její místní IP adresy. Abyste mohli lampu ovládat odkudkoli, musíte se podívat do nastavení routeru.

Krok 5: Ovládání odkudkoli

Abychom vaši lampu otevřeli kouzelné věci, kterou je World Wide Web, musíme udělat něco, čemu se říká přesměrování portů. V zásadě to přesměruje požadavky adresované na vaši veřejnou IP adresu (tu, kterou vám sdělil váš ISP) a číslo portu (v tomto případě libovolně nastavené na 300) na interní, lokální IP adresu, na kterou je váš ESP8266 adresovatelný.

Tento proces je pro každé zařízení jiný, takže pokud nevíte, jak to udělat na konkrétním routeru, ujistěte se, že jste si vygooglili „přesměrování portů“+ název routeru. Toto jsou nastavení, která budete potřebovat:

Externí počáteční/koncový port: 300

Interní počáteční/koncový port: 300

Interní adresa IP: 192.168.178.101 (adresa, která je zobrazena v Serial Monitor)

Protokol: TCP/UDP

Varování! Poté může vaši lampu ovládat kdokoli, kdo zná vaši veřejnou IP adresu a port, na kterém lampa běží. Pokud si nemyslíte, že je to skvělý nápad, doporučujeme implementovat určitou vrstvu zabezpečení

Chcete -li vyzkoušet, zda je vše správně nastaveno, zadejte do prohlížeče následující: (pokud nevíte, jaká je vaše veřejná IP adresa, přejděte na tento web.)

[VAŠE VEŘEJNÁ IP]: 300

Měli byste vidět potvrzovací zprávu JSON. Nyní můžete aplikaci zkusit použít s veřejnou IP adresou.

Krok 6: IFTTT

IFTTT
IFTTT
IFTTT
IFTTT
IFTTT
IFTTT
IFTTT
IFTTT

Tady začíná skutečná zábava. Nyní, když je naše lampa připojena k ~~ internetu ~~, můžeme pomocí webové stránky IFTTT připojit všechny různé druhy služeb.

V tomto příkladu nastavíme příkaz Google Assistant, který rozsvítí červeně, ale můžete si vybrat jinou službu, která podnítí vaši představivost.

  1. Přejděte na stránku IFTTT.com a vytvořte si účet, pokud jste tak ještě neučinili
  2. Přejděte na „Moje aplety“> „Nový aplet“
  3. Pro spouštěcí službu vyhledejte „Google Assistant“
  4. Vyberte „Řekněte jednoduchou frázi“
  5. Vymyslete pár unikátních frází
  6. Pro akční službu vyhledejte „Webhooks“
  7. Použijte následující nastavení:

URL: https:// [VAŠE-VEŘEJNÁ-IP]: 300/api

Metoda: POST Typ obsahu: application/json

A pro tělo:

Když teď řekneme zvolenou větu, Asistent Google odešle požadavek na IFTTT, který zase odešle požadavek JSON naší lampě. Určitě to vyzkoušejte! Ponořte se do kódu, abyste zjistili, co dalšího můžete s proužkem dělat.

Krok 7: Make It Pretty

Making It Pretty
Making It Pretty
Making It Pretty
Making It Pretty
Making It Pretty
Making It Pretty

Nejdražší částí tohoto projektu je plášť, ve kterém je umístěn LED pás. Pokud si chcete jen vyzkoušet tento projekt, aniž byste na něj utráceli příliš mnoho peněz, můžete také zvážit jiné tvary nebo jednoduše vyrobit tubu z bílého papíru do tiskárny. V příloze najdete drátový model, který si můžete vytisknout na papír a složit několik stojanů pro trubku, jak je znázorněno na obrázcích výše.

Pro pevnější plášť jsem použil následující položky:

  • Matná akrylová trubka (délka = 1160 mm, průměr = 40 mm, tloušťka stěny = 2 mm)
  • 2x plastový uzávěr
  • Blok z měkkého dřeva 20x2x30mm
  • Kovový pásek 10x1160x2mm

Samotný LED pásek je 1000 mm, takže 80 mm na obou koncích trubice skrývá elektroniku. Použil jsem papír do tiskárny srolovaný do trubičky na obou koncích, aby byly neprůhledné. Aby bylo vložení snazší, přilepil jsem LED pásek na dlouhý kovový pás

Vyfrézoval jsem stojany z bloku měkkého dřeva. Pokud chcete udělat to samé, soubor.stl je uveden níže. Můžete také zvážit 3D tisk stojanu.

Doporučuje: