Web IR daljinski upravljač sa Esp8266 (NodeMCU): 4 koraka
Web IR daljinski upravljač sa Esp8266 (NodeMCU): 4 koraka
Anonim
Web IR daljinski upravljač sa Esp8266 (NodeMCU)
Web IR daljinski upravljač sa Esp8266 (NodeMCU)

Problem

Na stolu u dnevnoj sobi nalaze se tri daljinska upravljača. Da biste gledali svoju omiljenu emisiju, morate precizno slijediti poseban redoslijed pritiskanja dugmeta na barem dva od njih. A tvoja cimerka, mama, djevojka se toga nikada ne sjeća.

Rešenje

Kupujete Logitech Harmony;-)

Ali ako ne želite potrošiti ovaj novac, možete izgraditi nešto slično za manje od 10 USD. Spajanjem infracrvene LED diode na ESP8266 (s.th. poput Arduina, ali s ugrađenom WiFi mrežom) lako možemo konstruirati uređaj s kojim možemo kontrolirati uređaje s malom web stranicom s bilo kojeg računala ili mobilnog telefona na vašoj WiFi mreži.

Sta ti treba

  • NodeMCU razvojna ploča (isporučuju se iz Azije za <5 €)
  • IC senzor (OS-1838B ili TSOP38238)
  • IR LED
  • 100Ω otpornik
  • NPN tranzistor (tj. 2N2222)
  • mali komad prototipa PCB -a
  • četveropolni konektor koji pristaje na NodeMCU (tj. adapter za napajanje diskete)

Ako imate stari daljinski upravljač, vjerojatno ćete moći koristiti IR LED i tranzistor s njega.

Korak 1: Sklapanje hardvera

Sklapanje hardvera
Sklapanje hardvera
Sklapanje hardvera
Sklapanje hardvera
Sklapanje hardvera
Sklapanje hardvera
Sklapanje hardvera
Sklapanje hardvera

Sastavite komponente na mali komad na malom komadu prototipne ploče i spojite komponente kao što je prikazano na dijagramu.

Zavisno od LED -a, zaštitni otpornik možda neće biti potreban. Ako otkrijete da morate ciljati jako dobro ili morate biti jako blizu uređaja, vjerojatno ga možete ukloniti.

Sve sam spojio na utikač koji sam uklonio sa pokvarenog adaptera za napajanje računara (onog za disketu).

Korak 2: Instaliranje aplikacije na NodeMCU

Postavite svoje okruženje za kompajliranje programa za esp8266 s Arduino IDE-om: [https://github.com/espressif/arduino-esp32

Klonirajte ili preuzmite izvorni kod aplikacije iz spremišta github

U Arduino IDE instalirajte biblioteku IRremoteESP8266 (Meni: Sketch -> Manage Libraries). Kopirajte datoteku config.h.example i imenujte ovu kopiju config.h. Morate barem navesti SSID i lozinku svoje WiFi mreže u config.h da biste se mogli povezati s web serverom. Arduino Sketch bi sada trebao biti u mogućnosti sastaviti i učitati. Spojite razvodnu ploču koju ste stvorili na 3V, uzemljenje, D5, D6.

Ako je sve funkcioniralo i pokrenuli ste čip povezan s Arduino IDE, trebali biste prikazati IP adresu na kojoj poslužitelj radi na serijskom monitoru.

Korak 3: Prilagođavanje HTML stranice kontroliranju NodeMCU-a

Proces u ovom koraku prikazan je i u videu.

U direktoriju izvornog koda postoji i 'ir.html'. Ako je ispravno konfigurirano, ovo će 'razgovarati' s NodeMCU -om.

Dakle, prvi korak je reći datoteci pod kojom adresom može pronaći NodeMCU. Otvorite datoteku ir.html u uređivaču teksta i potražite redak koji izgleda ovako:

var host = '192.168.2.121';

Promijenite vrijednost između oznaka tako da se podudara s adresom koju je web poslužitelj ispisao na serijskom monitoru nakon pokretanja.

SnimanjePritisnite dugme za snimanjeDodalite daljinski upravljač na senzoru i pritisnite željeno dugme na daljinskom upravljaču. Nakon toga ispod dugmeta za snimanje trebao bi se pojaviti dugačak popis brojeva. To su vremena signala za to dugme koje ste pritisnuli na daljinskom upravljaču.

Postavljanje naredbi

Sada želimo način slanja signala s tim vremenskim intervalima iz samog čipa. Za to moramo dodati vrijeme koje smo upravo zabilježili na listu poznatih signala. Kopirajte vrijednosti (uključujući uglate zagrade) koje vam je dao proces snimanja i umetnite novi red s imenom i vrijednostima u datoteku ir.html nakon retka koji izgleda ovako:

var signali = {

"pgr1 btn": [1, 2, 3], Zamijenite 1, 2, 3 zabilježenim vrijednostima i ne zaboravite zarez iza okolnih zagrada. Da bismo zapravo dodali dugme, moramo dodati i naredbu. Naredba se može sastojati od više signala jer ćemo možda morati 'pritisnuti' više tipki na daljinskom upravljaču, tj. 1 i 2 da dođemo do kanala 12 na TV -u. Ovo također omogućava kontrolu više uređaja s jednom naredbom. Potražite liniju koja izgleda ovako

"Zvuk uključen/isključen": ["mute"], Kopirajte taj red i promijenite tekst "Zvuk uključen/isključen" tako da odgovara onome što želite prikazati na novom gumbu. Promijenite ime "mute" u naziv signala koji ste dodali. Dakle, rezultat bi mogao biti:

"HBO": ["prg 1 btn"], Ako želite izvršiti više signala, dodajte ih ovako:

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

Korak 4: Upotreba

Nakon što ste umetnuli željene sekvence signala u HTML datoteku, možete je kopirati na bilo koje računalo ili mobilni uređaj koji ima preglednik i povezan je na istu WiFi mrežu kao i NodeMCU.

Preporučuje se: