Obsah:

Webové IR dálkové ovládání s Esp8266 (NodeMCU): 4 kroky
Webové IR dálkové ovládání s Esp8266 (NodeMCU): 4 kroky

Video: Webové IR dálkové ovládání s Esp8266 (NodeMCU): 4 kroky

Video: Webové IR dálkové ovládání s Esp8266 (NodeMCU): 4 kroky
Video: Jak vyrobit 4kanálové Wi-Fi relé ESP8266 ESP01 | ESP01 Domácí automatizace | RemoteXY | FLProg 2024, Listopad
Anonim
Webové IR dálkové ovládání s Esp8266 (NodeMCU)
Webové IR dálkové ovládání s Esp8266 (NodeMCU)

Problém

Na stole v obývacím pokoji jsou tři dálkové ovladače. Chcete -li sledovat svůj oblíbený pořad, musíte přesně sledovat speciální sekvenci stisknutí tlačítka alespoň na dvou z nich. A tvoje spolubydlící, máma, přítelkyně si na ně nikdy nevzpomene..

Řešení

Koupíte si Logitech Harmony;-)

Ale pokud nechcete utrácet tyto peníze, můžete postavit něco podobného za méně než 10 $. Připojením infračervené LED k ESP8266 (s.th. jako Arduino, ale s WiFi na palubě) můžeme snadno postavit zařízení, se kterým můžeme ovládat zařízení pomocí malé webové stránky z jakéhokoli počítače nebo mobilního telefonu ve vaší WiFi.

Co potřebuješ

  • Vývojová deska NodeMCU (dodávají se z Asie za <5 EUR)
  • IR senzor (OS-1838B nebo TSOP38238)
  • IR LED
  • 100Ω odpor
  • NPN tranzistor (tj. 2N2222)
  • malý kus prototypu DPS
  • čtyřpinový konektor, který pasuje na NodeMCU (tj. napájecí adaptér diskety)

Pokud máte starý dálkový ovladač, pravděpodobně můžete použít IR LED a tranzistor z něj.

Krok 1: Sestavení hardwaru

Sestavení hardwaru
Sestavení hardwaru
Sestavení hardwaru
Sestavení hardwaru
Sestavení hardwaru
Sestavení hardwaru
Sestavení hardwaru
Sestavení hardwaru

Sestavte součásti na malý kus na malém kousku prototypu desky plošných spojů a připojte součásti podle obrázku.

V závislosti na LED nemusí být ochranný odpor nezbytný. Pokud zjistíte, že musíte mířit opravdu dobře nebo musíte být opravdu blízko zařízení, pravděpodobně jej můžete odstranit.

Všechno jsem připojil k zástrčce, kterou jsem odstranil z rozbitého napájecího adaptéru PC (ten pro disketu).

Krok 2: Instalace aplikace na NodeMCU

Nastavte si prostředí, aby kompilovalo programy pro esp8266 s Arduino IDE: [https://github.com/espressif/arduino-esp32

Klonujte nebo stáhněte zdrojový kód aplikace z úložiště github

Do Arduino IDE nainstalujte knihovnu IRremoteESP8266 (Menu: Skica -> Správa knihoven). Zkopírujte soubor config.h.exple a pojmenujte tuto kopii config.h. Abyste se mohli připojit k webovému serveru, musíte v config.h alespoň zadat SSID a heslo vaší WiFi. Skicu Arduino by nyní mělo být možné kompilovat a nahrávat. Propojovací desku, kterou jste vytvořili, připojte k 3V, Ground, D5, D6.

Pokud vše fungovalo a spustíte čip připojený k Arduino IDE, měla by se vám na sériovém monitoru zobrazit IP adresa, na které server běží.

Krok 3: Přizpůsobení stránky HTML pro ovládání NodeMCU

Proces v tomto kroku je také ukázán na videu.

V adresáři zdrojového kódu je také „ir.html“. Pokud je správně nakonfigurován, bude „mluvit“s NodeMCU.

Prvním krokem je tedy sdělit souboru, pod jakou adresou může najít NodeMCU. Otevřete soubor ir.html v textovém editoru a vyhledejte řádek vypadající takto:

var host = '192.168.2.121';

Změňte hodnotu mezi zatržítky tak, aby odpovídala adrese, kterou webový server po spuštění vytiskl na sériovém monitoru.

Nahrávání Stiskněte tlačítko Nahrávat Namiřte dálkový ovladač na senzor a stiskněte požadované tlačítko na dálkovém ovladači. Poté by se pod tlačítkem Záznam měl objevit dlouhý seznam čísel. Toto jsou načasování signálu pro tlačítko, které jste stiskli na dálkovém ovladači.

Nastavení příkazů

Nyní chceme způsob, jak odeslat signál s těmito časováními ze samotného čipu. K tomu musíme přidat načasování, která jsme právě zaznamenali, do seznamu známých signálů. Zkopírujte hodnoty (včetně hranatých závorek), které vám proces záznamu poskytl, a vložte nový řádek se jménem a hodnotami do souboru ir.html za řádek, který vypadá takto:

var signály = {

"pgr1 btn": [1, 2, 3], Nahraďte 1, 2, 3 zaznamenanými hodnotami a nezapomeňte na čárku za hranatými závorkami. Chcete -li skutečně přidat tlačítko, musíme také přidat příkaz. Příkaz se může skládat z více signálů, protože možná budeme muset 'stisknout' více tlačítek na dálkovém ovladači, tj. 1 a 2, abychom dosáhli kanálu 12 v televizi. To také umožňuje ovládat více zařízení jedním příkazem. Podívejte se na řádek, který vypadá takto

"Zvuk zapnout/vypnout": ["ztlumit"], Zkopírujte tento řádek a změňte text „Zvuk zapnout/vypnout“tak, aby odpovídal tomu, co chcete zobrazit na novém tlačítku. Změňte název „ztlumit“na název signálu, který jste přidali. Výsledkem tedy může být:

"HBO": ["prg 1 btn"],

Pokud chcete spustit více signálů, přidejte je takto:

"HBO": ["prg 1 btn", "prg 2 btn"],

Krok 4: Použití

Poté, co do souboru HTML vložíte požadované sekvence signálů, můžete je zkopírovat do libovolného počítače nebo mobilního zařízení, které má prohlížeč a je připojeno ke stejné síti WiFi jako NodeMCU.

Doporučuje: