Indholdsfortegnelse:

Universal fjernbetjening ved hjælp af ESP8266 (Wifi -kontrolleret): 6 trin (med billeder)
Universal fjernbetjening ved hjælp af ESP8266 (Wifi -kontrolleret): 6 trin (med billeder)

Video: Universal fjernbetjening ved hjælp af ESP8266 (Wifi -kontrolleret): 6 trin (med billeder)

Video: Universal fjernbetjening ved hjælp af ESP8266 (Wifi -kontrolleret): 6 trin (med billeder)
Video: How to use ESP32 WiFi and Bluetooth with Arduino IDE full details with examples and code 2024, November
Anonim
Universal fjernbetjening ved hjælp af ESP8266 (Wifi -kontrolleret)
Universal fjernbetjening ved hjælp af ESP8266 (Wifi -kontrolleret)
Universal fjernbetjening ved hjælp af ESP8266 (Wifi -kontrolleret)
Universal fjernbetjening ved hjælp af ESP8266 (Wifi -kontrolleret)
Universal fjernbetjening ved hjælp af ESP8266 (Wifi -kontrolleret)
Universal fjernbetjening ved hjælp af ESP8266 (Wifi -kontrolleret)

Dette projekt skal erstatte den konventionelle fjernbetjening til alle husholdningsapparater som AC, TV, DVD -afspillere, musikanlæg, SMART apparater !!! At lave et helt skrot af fjernstrøelse rundt omkring, hvilket får os til at puslespil !!!

Dette projekt vil redde os fra uønsket til fjernbetjeninger ved at erstatte dem med ÉN FJERN!

2 dele af dette projekt:

  • AFKODNING AF ENHVER FJERN
  • KODNING ESP8266 NODEMCU 1.0 (ESP-12E-modul) eller enhver esp8266-version med en ttl-forbindelse

VIGTIGT: LÆS VENLIGST HELE PROJEKTET TROGTIGT, DET TAR 3 MINDER, MEN IKKE HALVLÆS OG SKADE DINE DELE…. JEG BLIVER IKKE ANSVARLIG

Trin 1: Konfiguration af Nodemcu med Arduino IDE

Konfiguration af Nodemcu med Arduino IDE
Konfiguration af Nodemcu med Arduino IDE
Konfiguration af Nodemcu med Arduino IDE
Konfiguration af Nodemcu med Arduino IDE
Konfiguration af Nodemcu med Arduino IDE
Konfiguration af Nodemcu med Arduino IDE
  • Først og fremmest forbinde Nodemcu (min ene er lolin v3, amica og andre kloner fungerer også) med computer eller bærbar computer.
  • Installer nu driveren til nodemcu (Google -søgning hjælper).
  • Efter dette skal du åbne Arduino IDE (selvfølgelig skal du downloade den og installere den)
  • Klik på "Værktøjer" på Arduino værktøjslinje
  • Klik på "Board"
  • Vælg "Board Manager", og søg efter esp8266 installer det (tager noget tid at afslutte)
  • Vælg nu "Skitse" fra arduino -værktøjslinjen
  • Vælg "Inkluder bibliotek", og vælg derefter "Administrer biblioteker"
  • Søg efter "IRremoteESP8266" og installer det

Nu er konfigurationen kun udført fra "Værktøjer", vi skal gå til "Boards" Vælg "NodeMcu 1.0 (ESP 12-E)" eller en anden version af ESP8266.

Trin 2: AFKODNING af en fjernbetjening | CIRCUIT | Kode

AFKODNING af en fjernbetjening | CIRCUIT | Kode
AFKODNING af en fjernbetjening | CIRCUIT | Kode
AFKODNING af en fjernbetjening | CIRCUIT | Kode
AFKODNING af en fjernbetjening | CIRCUIT | Kode
AFKODNING af en fjernbetjening | CIRCUIT | Kode
AFKODNING af en fjernbetjening | CIRCUIT | Kode
AFKODNING af en fjernbetjening | CIRCUIT | Kode
AFKODNING af en fjernbetjening | CIRCUIT | Kode

Så for at lave en universel fjernbetjening er vi nødt til at afkode de andre fjernbetjeninger, dvs. for at få IR -hexadecimale koder udsendt af hver knap med fjernbetjeninger. Ligesom at tale universelt skal vi kende hvert sprog !!! ELLER lær engelsk! Selvom jeg elsker mit modersmål bengali det sødeste sprog !! VIRKELIG er det, søg det …

Så komponenter er nødvendige for at afkode en fjernbetjening:

  • Nodemcu bord
  • TSOP1738 IR -modtager eller andre IR -modtagere
  • springere

Følg nu ovenstående kredsløb, men efter at have uploadet skitsen til nodemcu gennem Arduino.

  • Åbn Arduino og tilslut nodemcu til bærbar eller computer
  • Fra "Filer" vælg eksempel, og vælg IRrecvDump fra IRremoteESP8266
  • Upload til nodemcu

Tilslut TSOP1738 til Nodemcu som kredsløb, og åbn den "serielle skærm" fra Arduino for at se den afkodede hex-kode for enhver fjernbetjening som vist ovenfor. Uploader stadig koden til reference, opdater den, da den har været lang Jeg ved ikke mere om dette … føl dig fri til at ændre i github

KODE:

Trin 3: Kodning af Nodemcu | KREDSLØB

Kodning af Nodemcu | KREDSLØB
Kodning af Nodemcu | KREDSLØB
Kodning af Nodemcu | KREDSLØB
Kodning af Nodemcu | KREDSLØB
Kodning af Nodemcu | KREDSLØB
Kodning af Nodemcu | KREDSLØB
Kodning af Nodemcu | KREDSLØB
Kodning af Nodemcu | KREDSLØB

Efter afkodning af fjernbetjeningerne nu er det tur til at uploade hex-koderne til Nodemcu, så den kan give IR-ledede kommandoer til at udsende disse hex-kodesignaler.

  • BEMÆRK: kan ikke tilslutte IR -ledning direkte til Nodemcu, fordi den ikke kan levere nok strøm.
  • Så har brug for transistor modereret IR LED dvs. signal fra Nodemcu går til transistor derefter IR LED.
  • Transistor som 2N222, 2N3904, BC547 virker men

Transistor 2N222, 2N3904 kollektorstrøm: 600mA

Transistor BC547 kollektorstrøm: 100mA

begge virker…

FORSIGTIG SE SAMLEREN, EMITTEREN, BASETERMINALERNE som BC547 og 2N222 har forskellige konventioner. Jeg har brugt BC547, da den er let tilgængelig og fungerer fint.

Koden er taget fra "IRremoteESP8266" eksempler "IRserver" ændret i overensstemmelse hermed som vist på billedet.

kredsløb som vist. BEMÆRK Jeg har brugt BC547 transistor og NO modstand mellem base og D2 pin.

SAMLEREN, EMITTER, BASE ER ANGIVET PÅ BILLEDET. GØR IKKE DET SAMME FOR ANDRE TRANSISTORER

EDITS: Kreditter "3615JMD"

FORBEDRINGER:

Må jeg foreslå 2 forbedringer: 1) hvis en erstatter: uint32_t code = strtoul (server.arg (i).c_str (), NULL, 10); ved denne uint32_t kode = strtoul (server.arg (i).c_str (), NULL, 16); Websiden accepterer HEX -koder direkte. Ingen grund til at konvertere manuelt til decimal!

2) Jeg har forbedret handler for at kunne arbejde med flere IR -formater. Dejligt, når vi vil styre flere enheder fra forskellige mærker: (flere formater kan tilføjes med en switch/etui)

void handleIr ()

{for (uint8_t i = 0; i <server.args (); i ++) {if (server.argName (i) == "rcmm") {// format pour la freebox uint32_t code = strtoul (server.arg (i).c_str (), NULL, 16); irsend.sendRCMM (kode, 32); Serial.println (kode); } ellers hvis (server.argName (i) == "rc6") {// format pour la TV phillips uint32_t code = strtoul (server.arg (i).c_str (), NULL, 16); irsend.sendRC6 (kode, 20); Serial.println (kode); }} handleRoot (); } HTTP -linkene skal naturligvis ændres i overensstemmelse hermed:…. href = / "ir? rcmm = 2400260C …….…. href = \" ir? rc6 = 0000C….

Trin 4: Kodningskode

Kodningskode
Kodningskode
Kodningskode
Kodningskode

Jeg har taget koden fra eksempler på "IRremoteESP8266", "IRserver".

Men der er nogle ændringer, der skal udføres med dine wifi -legitimationsoplysninger - Wifi ssid, Wifi -adgangskode

De webserverbaserede koder (gul markeret) - Disse koder er decimalformen for de hexadecimale IR -koder. Disse decimalværdier sendes til ESP8266 som argumenter konverteret til hex-kode og transmitteres til IR LED.

VIGTIGT: EFTER AFKODNING AF EN FJERNKNAP KONVERTER HEXADECIMAL KODE TIL DECIMAL OG ERSTAT DET I Arduino -programmet. Det er ikke særlig svært at konvertere hex til decimal, søg på google efter online hexadecimal til decimal converter.

billederne er selvforklarende !!! Meget ældre kode (2017), du er velkommen til at redigere..

KODE:

Trin 5: KONTROLLERING

KONTROLLERING
KONTROLLERING
KONTROLLERING
KONTROLLERING
KONTROLLERING
KONTROLLERING

Vi kan styre det via webserverlinkene … IP'en på ESP8266 -modulet på vores router kan kendes ved at åbne den serielle skærm lige efter upload af koden. Som på billedet er min 192.168.0.1

Ved åbning af denne IP i enhver browser på mobil eller bærbar computer kan vi se siden som vist på billedet.

ELLER ELLER TIL FORENKLIGHED og enkelhed kan vi bruge en Android -app …

"HTTP REQUEST SHORTCUT" -app, og skriv adressen for nemt at udføre koden. Som på billedet kan vi tilføje widget på startskærmen for let at få adgang til de virtuelle knapper og få de nødvendige fjernbetjeningsknapper.

Billeder er selvforklarende.

SÅ UDEN AT SKRIVE I PROGRAMMET KAN VI PASSERE ARGUMENTET "KODE" MED DECIMAL AF HEXADECIMAL KODEN UDTRYKKET FRA AFKODNING FJERNE DIREKT I WIDGETEN

VIGTIGT: LÆS VENLIGST HELE PROJEKTET TROGTIGT, DET TAGER 3 MIN., MEN IKKE HALVLÆS OG SKADE DINE DELE…. JEG BLIVER IKKE ANSVARLIG

Trin 6: Projektpakket-g.webp" />

Anbefalede: