Obsah:

Náladová světla MQTT s ESP32: 4 kroky (s obrázky)
Náladová světla MQTT s ESP32: 4 kroky (s obrázky)

Video: Náladová světla MQTT s ESP32: 4 kroky (s obrázky)

Video: Náladová světla MQTT s ESP32: 4 kroky (s obrázky)
Video: Náladová lampa JW 2024, Listopad
Anonim
Náladová světla MQTT s ESP32
Náladová světla MQTT s ESP32

Už nějakou dobu jsem byl v pokušení naskočit na LED pás, takže jsem vyběhl a vzal si LED pásek, se kterým si pohrávám. Nakonec jsem vytvořil tato náladová světla. Lze je ovládat pomocí MQTT, což umožňuje přidávat nejrůznější chytrosti.

Je to dobrý víkendový projekt, pokud se neděje nic jiného a chcete si ušpinit ruce, když něco děláte.

Všimněte si, že účelem tohoto Instructable je dokumentovat můj projekt a sdílet nápady s ostatními, a ne nutně poskytnout spolehlivé pokyny a metody. S tím řečeno, čtěte dál!

Zásoby

Elektronika:

  • 1x vývojová deska ESP32
  • 1x 0,96 "I2C OLED displej
  • 1x bzučák
  • 1x Sudový konektor
  • 1x napájecí zdroj 12V (proud závisí na délce vašeho pásku)
  • 1x převodník buck LM2596
  • 1x RGB LED pás se společnou anodou
  • 3x MOSFETY IRFZ44N
  • 3x tranzistory BC547
  • 3x 10kΩ odpory
  • 4x 100Ω odpory
  • 1x prototypovací deska
  • 4x šroubové svorky
  • Záhlaví mužů a žen
  • Drát (použil jsem jednovláknový)

Další hardware a nástroje:

  • Váš požadovaný materiál pro skříň (použil jsem MDF)
  • Plochý, vodivý materiál pro dotykové kontakty (použil jsem tenký hliníkový plech)
  • Pily, vrtačky, brusný papír atd.
  • Páječka a přátelé
  • Horké lepidlo

Důrazně doporučuji nechodit na ESP32 s vestavěným OLED displejem, protože je velmi obtížné pro něj vytvořit dobře zarovnaný výřez ve vašem krytu.

Krok 1: Elektronika

Elektronika
Elektronika
Elektronika
Elektronika

Připojené schéma ukazuje všechna požadovaná připojení, kromě dotykových vstupů. K dispozici je také relativně vágní diagram na panelu, který ukazuje, jak zapojit jeden MOSFET v případě, že je schéma neadekvátní.

Napájení

Převodník buck LM2596 snižuje napětí 12 V z napájení na 5 V pro VIN ESP. Ujistěte se, že je váš napájecí zdroj správně dimenzován na délku použitého LED pásku. Můj 2 metry dlouhý proužek čerpá o něco více než 2 ampéry.

Piny a periferie

Pro dotykové vstupy se používají čtyři dotykové piny. Moje deska ESP32 přišla s připojeným OLED displejem, jehož I2C piny byly napevno zapojeny. To používá čtyři PWM piny, jeden pro každou barevnou složku (červená, zelená a modrá) a jeden pro bzučák.

MOSFET muddles

MOSFETy byly vybrány tak, aby zvládly rychlé spínací časy pro PWM a relativně vysoký proud. Pro každou barevnou složku existuje jeden MOSFET. K pohonu IRFZ44N jsem použil samostatné NPN BJT (BC547) spolu s výsuvným odporem, protože digitální signály 3,3 V z ESP32 možná nestačily na to, aby MOSFETy vedly tolik proudu, kolik je potřeba. MOSFETy na logické úrovni, jako je IRLZ44N, existují, ale dozvěděl jsem se o nich až poté, co jsem vše pájil. Ať tak či onak, můj proužek, který čerpá ~ 2A, funguje dobře.

Pájení

K připojení k LED pásku se používají šroubové svorky a zásuvkové konektory k připojení ESP32, v případě, že bych chtěl vyměnit jeden z nich bez odpájení věcí. Pájení trvalo asi dvě hodiny a bylo velmi jednoduché. Také jsem dal mému LED pásku delší dráty.

Proč jsem si vybral ESP32

Má WiFi a Bluetooth na palubě (i když jsem právě používal pouze WiFi) a já jsem ležel kolem, který jsem chtěl používat. Dotykové vstupy se také hodily pro rozhraní na ovladači, protože ke kontaktu potřebuje pouze jeden vodič. Pokud byste však chtěli, ESP32 by mohl být snadno nahrazen mikrokontrolérem, jako je ESP8266.

Krok 2: Kód

K programování jsem použil sadu nástrojů Arduino (vlastně rozšíření Arduino pro VS Code:)). Existují skvělé návody, jako je tento, jak začít s ESP32 a Arduino IDE, pokud jste tak ještě neučinili.

K dispozici jsou čtyři různé režimy: statická barva, náhodná barva, červené upozornění a modré upozornění. K dispozici jsou čtyři dotykové vstupy pro up, down, next a Red Alert. Dotek používá přerušení.

Přidal jsem do prací také MQTT, abych jej mohl ovládat přes WiFi. Snažím se získat pocit z velké trojky webových aplikací (HTML, CSS, JS), a proto jsem navrhl (ale spíše ošklivou) webovou stránku s motivem Star Treku, která komunikuje s brokerem MQTT a ovládá náladová světla.

Veškerý můj kód lze nalézt v příloze spolu s rychlým referenčním listem, jehož název souboru možná budete chtít změnit, aby se stal markdownem. Před otevřením pomocí Arduina přesuňte všechny soubory do složky s názvem „ESP32MQTTMoodLighting“.

Všimněte si, že můj kód funguje, ale pravděpodobně není největší. Ale to by nemělo vadit, protože si stejně napíšete vlastní, že?:)

Krok 3: Příloha a montáž

Příloha a montáž
Příloha a montáž
Příloha a montáž
Příloha a montáž
Příloha a montáž
Příloha a montáž
Příloha a montáž
Příloha a montáž

Během uzamčení byl jediným materiálem, který jsem mohl dostat do rukou, list 5 mm MDF. Velké řezy jsem provedl běžnou pilkou a dal jsem všemu pořádný písek. Hlavní přípravu dokončil dvojitý nátěr smaltované barvy.

Zadní panel

Chtěl jsem, aby byl můj box snadno otevíratelný, a tak jsem veškerou svou elektroniku namontoval na zadní panel se čtyřmi distančními podložkami M2. Moje perfboardová deska již měla vyvrtané otvory M2. Moje patky měly ve spodní části malé závitové pahýly, které jsem zamýšlel upevnit do MDF. Ale neměl jsem vrták M2. Při označování polohy každého otvoru jsem tedy pomocí malého plochého šroubováku otvory ručně vykopal. Hrubý, ale účinný. Průměr otvorů byl jen o málo menší než průměr závitové části patky. Několikrát jsem stočil patky dovnitř a ven z otvorů, což je rozšířilo a téměř provléklo.

Nakonec stojky pevně seděly ve svých otvorech a držely perfboard na svém místě. Protože moje MDF byla velmi tlustá, nic neprosvítalo na druhou stranu.

Vyvrtal jsem otvor pro napájecí konektor a vytvořil otvor pro průchod vodičů LED pásky přímo pod místem, kde byly umístěny moje šroubové svorky.

Přední panel

Výřez OLED displeje

Začal jsem svůj výřez pro OLED několika startovacími otvory a rozložil je na velikost. Nakonec to bylo velmi zvrácené a špatně zarovnané. Svůj podíl na tom může mít i nekontrolní měření, ale ušetří vám to potíže tím, že nepoužíváte vývojovou desku s vestavěným OLED. Je mnohem jednodušší namontovat displej do vaší díry.

Konektor

Vytvořil jsem konektor z několika mužských a ženských záhlaví. Jeden konec byl připojen k vodičům připojeným k dotykovým kontaktům na předním panelu, zatímco na druhé straně byly vodiče vedeny k dotykovým vstupům ESP. Důvodem bylo, aby přední panel mohl být v případě potřeby zcela odstraněn ze zad, aniž by došlo k rušení pájených spojů. Pokud na přední panel připojíte cokoli jiného, možná budete chtít také vytvořit konektor.

Stiskněte podložky

Dotykové kontakty byly vyrobeny z nějakého hliníkového plechu. Uřízl jsem to, abych získal čtyři potřebné podložky, a ověřil, že tam nejsou žádné zubaté hrany. Potom jsem do předního panelu vyvrtal otvory, dostatečně velké na drát. Aby se pájka mohla přilepit k polštářkům, poškrábal jsem malou část jedné strany smirkovým papírem, abych odstranil oxidovanou vrstvu, a poté jsem ji rychle otřel, abych odstranil všechny částice. Každý drát jsem protáhl odpovídajícím otvorem na předním panelu a každý jsem připájel k jeho podložce. Ujistěte se, že vaše pájka nevytváří na zadní straně příliš velkou bouli, protože to nedovolí podložce sedět v jedné rovině s panelem.

Nakonec na zadní stranu každé podložky přidejte horké lepidlo a zatlačte je na přední panel. Pokud přidáte příliš mnoho, podložky budou zvednuty z panelu. Vyčistěte přebytečné lepidlo, které mohlo být vytlačeno zpod podložek.

Zbytek

Boční panely jsou docela jednoduché. Rychle přístupný otvor ke šroubovým svorkám byl větší problém, než to stálo. Boční panely jsem za horka nalepil na přední panel.

Suchý zip na dvou okrajích drží přední část na zadním panelu. Mezery umožňují únik zvuku bzučáku. Pokud děláte lepší práci než já, neměli byste skončit s něčím, co vypadá jako 5leté předškolní řemeslo:)

Můj LED pás měl lepkavá záda (jsem si jistý, že i váš). Namontoval jsem svůj tak, aby světlo difundovalo ze zdi.

Krok 4: Připojte jej

Zapoj to!
Zapoj to!

Nyní byste měli mít kompletní náladové světlo ovládané MQTT. Namontoval jsem svůj na svůj stůl, kde dodá občasné monotónní práci barevný nádech. Noc je ideálním časem, jak na ni zapůsobit.

Doufám, že se vám čtení tohoto Instructable líbilo a že jste získali několik nápadů pro vaše vlastní projekty. Jak jsem již zmínil, jsem začátečník a toto je můj první Instructable. Budu rád za jakékoli tipy a komentáře.

Doporučuje: