Přidejte do svého počítače s NodeMCU osvětlení řízené Wi-Fi

  • Lesley Fowler
  • 0
  • 2901
  • 757
reklama

Věž stolních počítačů prošla od dob šedých plastových věží skrytých pod stolem dlouhou cestu. Kromě pouzder, která plní různé funkce, se u PC pouzder vyvinul smysl pro estetiku. Skleněné panely se pyšně předvádějí na součástkách a silné futuristické návrhy se stávají středem pozornosti na stole každého hrdého geeka.

LED instalace jsou stále běžnější. Jednoduchý 12 V RGB pásek lze zakoupit za pouhých $ 1 za metr a rozsvítí se uvnitř pouzdra (spolu s téměř čímkoli jiným) dokonale.

Chceme však udělat něco trochu zvláštnějšího než tohle! Dnes budeme používat Pixel LED k vytvoření Wi-Fi regulovatelného osvětlení pouzdra, s vlastním zvykem Pokud to tak je (IFTTT) oznámení. Celý tento systém je napájen pomocí náhradního konektoru Molex uvnitř věže, takže je zcela izolován. Nejlepší ze všeho je, že celý tento projekt stojí méně než 10 dolarů.

Tento tutoriál je k dispozici ve videu níže, nebo si můžete číst psanou verzi.

Světla s mozkem

Pro tento projekt budeme používat individuálně adresovatelné LED diody. Někdy známý jako Neopixely, z čeho vybírat. Zde použité LED diody jsou z a WS2812B pás, k dispozici za přibližně 4 $ na metr.

Budeme používat NodeMCU deska je ovládat. I když byste mohli použít jakoukoli desku kompatibilní s Arduino s Wi-Fi, NodeMCU je naše oblíbené jako vrah Arduino. Seznamte se s Arduino Killer: ESP8266 Seznamte se s Arduino Killer: ESP8266 vestavěné Wi-Fi za méně než 10 $? No, je. .

Co potřebuješ

  1. 1 x 5 V Pixel LED pásek, Neopixel / WS2811 / 12 / 12B
  2. 1 x NodeMCU (3 $ na AliExpress)
  3. 1 x 220 - 500 Ohm rezistor
  4. 1 x 100-1000 microFarad kondenzátor
  5. 1 x Páčkový spínač nebo jistič
  6. 1 x zásuvka Molex
  7. 1 x prkénko
  8. 1 x 5V napájení (pro testování)
  9. 1 x Protoboard a vodič (pro instalaci obvodu)
  10. Různé připojovací dráty
  11. Páječka a pájka

Jediná věc v tomto seznamu, která je zde neobvyklá, je Molex konektor. Mnoho majitelů PC v těchto dnech ve svých sestavách vůbec nepoužívá jednotku CD, i když pro ně stále přichází napájecí zdroj s připojením. Tyto náhradní elektrické vedení můžeme využít k naší výhodě. Zachránil jsem svůj ženský konektor ze staré diskové jednotky, i když jsou k dispozici za pouhých 0,30 $.

Sestavte si svůj obvod

Abychom se v našem případě vyhnuli zbytečnému strkávání, otestujeme naše nastavení pomocí externího zdroje napájení. Nastavte si prkénko takto.

Pokud toto poprvé nastavujete tyto LED diody, ráda bych prozkoumala našeho podrobného průvodce, jak tyto proužky nejprve použít s Arduino.

Přepínač jednoduše přeruší NodeMCU z obvodu. V této sestavě budu ve skutečnosti používat jednoduchý jistič místo vypínače. Jeho funkcí je umožnit izolaci desky VIN pin, zatímco je připojen přes USB. I když množství energie, kterou budou naše LED diody čerpat, je relativně malé, je dobré se vyhnout příliš velkému množství energie přes USB.

Jakmile je vaše prkénko nastaveno, mělo by vypadat asi takto:

V mém příkladu jsou kondenzátor a rezistor již na protoboardu, protože byl zachráněn ze staršího projektu, ačkoli obvod je přesně stejný.

Nyní, když máme hardware nastaven, vytvořme náš kód.

Mozky operace

NodeMCU budete kódovat pomocí Arduino IDE. V tomto příkladu nastavíme dva provozní režimy, hlavní vypínač a oznamovací signál při přijetí e-mailu. K komunikaci s naší radou budeme používat webovou službu Blynk, zařízení pro internet věcí.

Nezapomeňte si prohlédnout náš úvodní článek Blynk Začínáme s Blynk: Jednoduchá DIY IoT zařízení Začínáme s Blynk: Jednoduchá DIY IoT zařízení Blynk je služba internetu věcí (IoT) navržená tak, aby dálkové ovládání a čtení senzorových dat z vašich zařízení rychlé a snadné. pokud jste to nikdy předtím nepoužili.

V aplikaci Blynk vytvořte nový projekt a vyberte jako svou desku NodeMCU. Na vaši e-mailovou adresu zaregistrovanou v Blynku bude zaslán autorizační kód. Přidat 3 tlačítka a 3 posuvníky.

Tato tlačítka a posuvníky by měly být nastaveny tak, aby odesílaly hodnoty na virtuální kolíky V0-V5. “Test” tlačítko nyní otestuje naše e-mailové oznámení. Označte další dvě tlačítka Napájení a Auto / Manual nebo něco podobného, ​​a tři posuvníky jsou pro Červené, Zelená, a Modrý.

Nyní otevřete Arduino IDE. Pro tento projekt budete potřebovat knihovny Blynk a FastLED, takže se ujistěte, že máte nainstalované obě. Pokud právě začínáte s Arduino IDE, podívejte se do naší příručky pro začátečníky Arduino Začínáme s Arduino: Průvodce pro začátečníky Začínáme s Arduino: Průvodce pro začátečníky Arduino je platforma s otevřeným zdrojovým kódem elektroniky založená na flexibilní, snadno použitelné hardware a software. Je určen pro umělce, designéry, fandy a kohokoli, kdo má zájem o vytváření interaktivních objektů nebo prostředí. .

Zde rozdělíme kód na kousky, ale pokud byste raději jednoduše stáhli celý kód, najdete jej na GitHubu.

Pokud se to rozhodnete, nezapomeňte do skriptu přidat své vlastní Wi-Fi údaje, autorizační kód a příslušný pin NodeMCU a počet LED. Pokud se teprve začínáte učit programování, procházel bych od nuly, abych se naučil, jak každá část funguje. Je to jeden z mnoha způsobů, jak se naučit programování. Jak se naučit programování bez stresu Jak se naučit programování bez stresu Možná jste se rozhodli programovat, ať už pro kariéru nebo jen jako koníček. Skvělý! Ale možná se začínáte cítit ohromeni. Není to tak skvělé. Zde je nápověda, která vám usnadní cestu. .

Vytvořte novou skicu a uložte ji s příslušným názvem. Nezapomeňte vybrat správnou kartu a port ze seznamu Nástroje > Prkno a Nástroje > Přístav menu. Začněte zahrnutím příslušných jmenných prostorů Blynk a FastLED:

#define BLYNK_PRINT Serial #include #include #include "FastLED.h"

Dále přidejte některé definice pro FastLED:

// --- Definice FastLED a CRGB --- #define LED_PIN 3 // GPIO pin pro RGB LED. #definovat NUM_LEDS 44 // Počet připojených LED. #define BRIGHTNESS 64 // Výchozí jas LED. #define LED_TYPE WS2812B #define COLOR_ORDER GRB CRGB leds [NUM_LEDS];

Dále deklarujeme proměnné pro naše RGB hodnoty, náš automatický / manuální režim a náš hlavní přepínač. Přidáme také hodnotu pro základní barvu vyžadovanou předvolbou FastLED, kterou budeme používat později.

// --- proměnné pro naše hodnoty RGB (0-1023) --- int r = 500; int g = 500; int b = 500; // --- proměnné pro zapnutí / vypnutí a automatické / ruční přepínání int masterSwitch = 1; int autoMode = 1; // --- int / byte pro automatické zvyšování odstínů --- uint8_t gHue = 0; // rotující „základní barva“ používaná mnoha vzory 

Při přidávání údajů o Blynku nezapomeňte zde zadat své vlastní údaje o Wi-Fi:

// --- Blynk autorizační kód a wifi podrobnosti --- char auth [] = "YourAuthCode"; // Blynk autorizační char ssid [] = "YourWifiName"; char pass [] = "YourWifiPassword";

Pomocí funkce Nastavení přidáme naše LED diody do FastLED a navazujeme komunikaci s Blynkem.

void setup () // bezpečnostní zpoždění při zapnutí (3000); Serial.egegin (9600); // --- přidejte LEDS do FastLED a nastavte jas --- FastLED.addLeds (leds, NUM_LEDS) .setCorrection (TypicalSMD5050); FastLED.setBrightness (BRIGHTNESS); #define FRAMES_PER_SECOND 120 // --- zahájit komunikaci se serverem Blynk --- Blynk.begin (auth, ssid, pass); 

Pomocí příkazů if-funkce Loop můžete dělat různé věci v závislosti na tom, v jakém režimu jste.

void loop () Blynk.run (); if (masterSwitch == 0) for (int i = 0; i < NUM_LEDS; i++)  leds[i] = CRGB::Black; FastLED.show(); delay(30);   if(autoMode == 0 && masterSwitch == 1)  for (int i = 0; i < NUM_LEDS; i++) leds[i] = CRGB(r, g, b); FastLED.show(); delay(30);   if(autoMode == 1 && masterSwitch == 1)  fill_rainbow( leds, NUM_LEDS, gHue, 7); // send the 'leds' array out to the actual LED strip FastLED.show(); // insert a delay to keep the framerate modest FastLED.delay(1000/FRAMES_PER_SECOND); EVERY_N_MILLISECONDS(20)  gHue++; // slowly cycle the "base color" through the rainbow   

Nyní použijte BLYNK_WRITE funkce pro změnu těchto proměnných v závislosti na tom, co vyberete v aplikaci Blynk:

// --- Master On / Off --- BLYNK_WRITE (V0) masterSwitch = param.asInt ();  // --- Hodnota červeného posuvníku --- BLYNK_WRITE (V1) r = param.asInt ();  // --- Hodnota zeleného posuvníku --- BLYNK_WRITE (V2) g = param.asInt ();  // --- Hodnota modrého posuvníku --- BLYNK_WRITE (V3) b = param.asInt ();  // --- Přepnout automatický / manuální režim --- BLYNK_WRITE (V4) autoMode = param.asInt (); 

Nakonec vytvořte funkci, která způsobí, že se jako e-mailové upozornění použije opakovaná sekvence červených světel. Toto je navrženo tak, aby se spustilo bez ohledu na to, co se děje, což znamená, že budete vždy dostávat oznámení, i když světla jsou aktuálně vypnutá.

// --- Světlo upozornění e-mailem --- BLYNK_WRITE (V5) int g = param.asInt (); if (g == 1) for (int a = 0; a < 10 ; a++)  for (int i = 0; i< NUM_LEDS; i++)  leds[i] = CRGB(1023, 0, 0); FastLED.show(); delay(10); FastLED.clear(); delay(10);     

Jakmile máte tento plný kód na místě, použijte spínač / jistič k izolaci NodeMCU od obvodu a připojte jej přes USB. Nahrajte náčrtek na tabuli. Po nahrání odpojte kabel USB a připojte napájení 5V. Při dobrém stavu by se LED pásek měl spustit v automatickém režimu fill_rainbow režim z FastLED. Signál upozornění můžete vyzkoušet pomocí testovacího tlačítka.

Jak můžete vidět zde, rozložil jsem své LED diody zhruba na stranu mého případu, takže jsem věděl, kolik jich budu potřebovat. V mém případě to bylo 44, i když používám mini věž, takže možná budete moci použít mnohem více. Nezapomeňte vzít v úvahu spotřebu energie LED, které používáte, a kolik energie vašeho počítače může poskytnout.

Konfigurace IFTTT

Budeme používat Integrace IFTTT do Gmailu pro spuštění naší oznamovací sekvence. Pokud jste nikdy nepoužívali IFTTT, budete ohromeni pouhým množstvím způsobů, jak můžete automatizovat své oblíbené webové aplikace. Pokud to pak: Připojte a automatizujte kterékoli ze svých oblíbených webových aplikací. Jakékoli dvě z vašich oblíbených webových aplikací Kreativním způsobem propojte kterékoli ze svých oblíbených webových aplikací. Jakási "digitální lepicí páska" podle Linden Tibbets, tvůrce aplikace, If This Then That (ifttt) vám umožní najít nová využití ... .

Nastavte nový applet. Pro “Tento”, Vybrat Každý nový e-mail ve složce Doručená pošta z Gmail kanál. Pro “Že”, vybrat Webhooks výrobce a Vytvořte webový požadavek.

V sekci URL se nazýváme náš oznamovací kolík. Pro práci s vaším projektem budete muset upravit adresu URL. Formát je http: // BlynkIpAddress / YourAuthCode / pin / V5. Blynk ip najdete zadáním ping blynk-cloud.com v příkazovém řádku.

Vybrat DÁT jako Metoda, a aplikace / json jako Typ obsahu. Nakonec přidejte [“1”] do Tělo a poté klikněte na Vytvořit akci.

Nyní pokaždé, když do doručené pošty přijde e-mail s adresou Gmail spojenou s IFTTT, odešle e-mail “1” zprávu Virtual Pin 5 na serveru Blynk, která spustí naše upozornění. Zkuste si e-mail vyzkoušet. Buďte trpěliví, IFTTT může chvíli trvat!

Nyní se můžete zbavit tlačítka Test v aplikaci Blynk, pokud si budete přát.

Dát to všechno dohromady

Nyní, když máme vše testováno, je čas dokončit a nainstalovat náš hardware. Přesuňte svůj projekt z prkénku na prkno. Pokud jste pájení a hledáte několik tipů, podívejte se na našeho průvodce pájením. Naučte se pájet, s těmito jednoduchými tipy a projekty. Naučte se, jak pájet, s těmito jednoduchými tipy a projekty. horkého železa a roztaveného kovu? Pokud chcete začít pracovat s elektronikou, musíte se naučit pájet. Pomozte nám. .

Před připojením konektoru Molex k desce si uvědomte, jaké kolíky budete používat. Zásuvkový konektor pocházející z napájení počítače bude mít čtyři kabely. Dva černé kabely jsou běžné zemnicí kabely, žlutý kabel je + 12 V a červený je + 5 V. Ujistěte se, že jste na desku připojili odpovídající kolíky konektoru. Rozhodl jsem se připojit pouze dva kolíky, abych se vyhnul náhodnému smažení desky a LED!

Rozhodl jsem se připojit kabely DuPont mezi moji desku a LED diody, takže strana pouzdra na PC může být stále zcela odstraněna, aniž by bylo nutné odstranit proto-desku. Navrhuji položit vaše LED diody na pouzdro a zajistit je páskou, aby se začalo, jen aby se zkontrolovalo, zda se po uzavření zavřely uvnitř pouzdra..

Poznámka: Když pájíte své LED pásky dohromady, musí datové vedení proudit stejným směrem. To bude označeno na proužku.

Nakonec připojte svůj proto-board do vaší PC věže. Protože je to pro mě dočasné sestavení, rozhodl jsem se izolovat zadní část desky a připevnit ji zipem k zadní části mého pouzdra. Rozhodnete se však připojit desku, dávejte pozor, abyste nezpůsobili žádné zkraty, a dávejte si pozor na nebezpečí, které představuje statická elektřina na vnitřních součástech.

Osvícený

Všechno je v pořádku, měli byste mít plně funkční světlo Wi-Fi a automatické e-mailové oznámení. Nyní, když máte tento systém na svém místě, můžete použít přepínač kill na desce, abyste bezpečně připojili NodeMCU přes USB a změnili kód. Můžete zkusit přidat další oznámení integrované s IFTTT (modré světlo pro zmínky na Twitteru nebo na Facebooku), nebo experimentovat s vlastními nastaveními v knihovně FastLED, aby se vaše světla trochu pohybovala.

Nainstalovali jste do své PC věže LED? Nastavili jste pro ně nějakou úžasnou automatizaci? Dejte nám vědět o svých projektech a plánech v sekci komentářů níže!

Obrázek Kredit: David Brown / Flickr




Bisher hat noch niemand einen Kommentar zu diesem Artikel abgegeben.

O moderní technologii, jednoduché a cenově dostupné.
Váš průvodce ve světě moderních technologií. Naučte se, jak používat technologie a pomůcky, které nás každý den obklopují, a naučte se, jak objevovat na internetu zajímavé věci.