Innholdsfortegnelse:

Universell fjernkontroll ved bruk av ESP8266 (Wifi -kontrollert): 6 trinn (med bilder)
Universell fjernkontroll ved bruk av ESP8266 (Wifi -kontrollert): 6 trinn (med bilder)

Video: Universell fjernkontroll ved bruk av ESP8266 (Wifi -kontrollert): 6 trinn (med bilder)

Video: Universell fjernkontroll ved bruk av ESP8266 (Wifi -kontrollert): 6 trinn (med bilder)
Video: Lesson 101: Using IR Remote to control TV, AC Bulb with Relay, DC Motor and Servo Motor 2024, November
Anonim
Universell fjernkontroll ved bruk av ESP8266 (Wifi -kontrollert)
Universell fjernkontroll ved bruk av ESP8266 (Wifi -kontrollert)
Universell fjernkontroll ved bruk av ESP8266 (Wifi -kontrollert)
Universell fjernkontroll ved bruk av ESP8266 (Wifi -kontrollert)
Universell fjernkontroll ved bruk av ESP8266 (Wifi -kontrollert)
Universell fjernkontroll ved bruk av ESP8266 (Wifi -kontrollert)

Dette prosjektet skal erstatte den konvensjonelle fjernkontrollen for alle husholdningsapparater som AC, TV, DVD -spillere, musikkanlegg, SMART apparater !!! Gjør en hel søppel av fjern søppel rundt, noe som gjør oss puslespill !!!

Dette prosjektet vil redde oss fra søppelet til fjernkontroller ved å erstatte alt med ÉN FJERN!

2 deler av dette prosjektet:

  • AVKODING AV NOEN FJERN
  • KODING ESP8266 NODEMCU 1.0 (ESP-12E-modul) eller en hvilken som helst esp8266-versjon med en ttl-tilkobling

VIKTIG: LES VELDET PROJEKTET GANGSOM DET TAR 3 MINNER, MEN IKKE HALVLES OG SKADE DELENE DIN. JEG BLIR IKKE ANSVARLIG

Trinn 1: Konfigurering av Nodemcu med Arduino IDE

Konfigurere Nodemcu med Arduino IDE
Konfigurere Nodemcu med Arduino IDE
Konfigurere Nodemcu med Arduino IDE
Konfigurere Nodemcu med Arduino IDE
Konfigurere Nodemcu med Arduino IDE
Konfigurere Nodemcu med Arduino IDE
  • Først og fremst koble Nodemcu (min er lolin v3, amica og andre kloner vil også fungere) med datamaskin eller bærbar PC.
  • Installer nå driveren til nodemcu (google -søk vil hjelpe).
  • Etter dette åpner du Arduino IDE (Selvfølgelig må du laste den ned og installere den)
  • Klikk på "Verktøy" på Arduino verktøylinje
  • Klikk på "Brett"
  • Velg "Board Manager" og søk etter esp8266 installer den (tar litt tid å fullføre)
  • Velg nå "Sketch" fra arduino -verktøylinjen
  • Velg "Inkluder bibliotek" derfra, velg "Administrer biblioteker"
  • Søk etter "IRremoteESP8266" og installer den

Nå er konfigurasjonen bare utført fra "Verktøy", vi trenger å gå til "Boards" Velg "NodeMcu 1.0 (ESP 12-E)" eller en annen versjon av ESP8266.

Trinn 2: AVKODING av en fjernkontroll | KRETS | Kode

DECODING a Remote | CIRCUIT | Kode
DECODING a Remote | CIRCUIT | Kode
DECODING a Remote | CIRCUIT | Kode
DECODING a Remote | CIRCUIT | Kode
DECODING a Remote | CIRCUIT | Kode
DECODING a Remote | CIRCUIT | Kode
DECODING a Remote | CIRCUIT | Kode
DECODING a Remote | CIRCUIT | Kode

Så for å lage en universell fjernkontroll må vi dekode de andre fjernkontrollene, dvs. for å få IR -heksadesimale koder sendt ut av hver knapp på fjernkontrollen. Akkurat som å snakke universelt må vi kunne alle språk !!! ELLER lær engelsk! Selv om jeg elsker morsmålet mitt, bengali, det søteste språket !! VIRKELIG er det, søk på det …

Så komponenter trengs for å dekode en fjernkontroll:

  • Nodemcu bord
  • TSOP1738 IR -mottaker eller andre IR -mottakere
  • hoppere

Følg nå kretsen ovenfor, men etter å ha lastet opp skissen til nodemcu gjennom Arduino.

  • Åpne Arduino og koble nodemcu til bærbar PC eller datamaskin
  • Velg eksempelet "Filer", og fra IRremoteESP8266 velger du IRrecvDump
  • Last opp til nodemcu

Koble TSOP1738 til Nodemcu som krets og åpne den "serielle skjermen" fra Arduino for å se den dekodede hex-koden til en hvilken som helst fjernkontroll som bilder gitt ovenfor. Laster fortsatt opp koden for referanse, oppdater den, siden den har vært lang, jeg jobber ikke med dette lenger … endre gjerne i github

KODE:

Trinn 3: Koding av Nodemcu | KRETS

Koding Nodemcu | KRETS
Koding Nodemcu | KRETS
Koding Nodemcu | KRETS
Koding Nodemcu | KRETS
Koding Nodemcu | KRETS
Koding Nodemcu | KRETS
Koding Nodemcu | KRETS
Koding Nodemcu | KRETS

Etter dekoding av fjernkontrollene nå er det tur til å laste opp hex-kodene til Nodemcu slik at den kan gi IR-ledede kommandoer for å avgi disse hex-kodesignalene.

  • MERK: kan ikke koble IR -ledning direkte til Nodemcu fordi den ikke kan levere nok strøm.
  • Så trenger transistor moderert IR LED dvs. signal fra Nodemcu går til transistor og deretter IR LED.
  • Transistor som 2N222, 2N3904, BC547 fungerer men

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

Transistor BC547 samlerstrøm: 100mA

begge fungerer …

FORSIKTIG SE SAMLEREN, EMITTEREN, BASETERMINALENE som BC547 og 2N222 har forskjellige konvensjoner. Jeg har brukt BC547 da den er lett tilgjengelig og fungerer bra.

Koden er hentet fra "IRremoteESP8266" eksempler "IRserver" endret tilsvarende som vist på bildet.

krets som vist. MERK Jeg har brukt BC547 transistor og NO motstand mellom base og D2 pin.

SAMLEREN, EMITTER, BASE ER INDIKERT PÅ BILDE. IKKE GJØR DET SAMME FOR ANDRE TRANSISTORER

EDITS: Kreditter "3615JMD"

FORBEDRINGER:

Kan jeg foreslå 2 forbedringer: 1) hvis en erstatter: uint32_t code = strtoul (server.arg (i).c_str (), NULL, 10); av denne uint32_t -koden = strtoul (server.arg (i).c_str (), NULL, 16); Nettsiden godtar HEX -koder direkte. Du trenger ikke å konvertere manuelt til desimal!

2) Jeg har forbedret behandleren for å kunne jobbe med flere IR -formater. Fint når vi vil kontrollere flere enheter fra forskjellige merker: (flere formater kan legges til med en bryter/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); } annet 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 -koblingene må selvfølgelig endres tilsvarende:…. href = / "ir? rcmm = 2400260C …….…. href = \” ir? rc6 = 0000C….

Trinn 4: Kodingskode

Kodingskode
Kodingskode
Kodingskode
Kodingskode

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

Men det er noen endringer som må gjøres wifi -legitimasjonen din - Wifi ssid, Wifi -passord

Web -serverbaserte koder (gul uthevet) - Disse kodene er desimalformen for de heksadesimale IR -kodene. Disse desimalverdiene sendes til ESP8266 som argumenter konvertert til hex-kode og overført til IR LED.

VIKTIG: ETTER AVKODING AV EN FJERNKNAPP KONVERTER HEKSADESIMAL KODE TIL DECIMAL OG ERSTAT DET I Arduino -programmet. Det er ikke veldig vanskelig å konvertere hex til desimal, søk på google etter online heksadesimal til desimal omformer.

bildene er selvforklarende !!! Mye eldre kode (2017), rediger gjerne..

KODE:

Trinn 5: KONTROLL

KONTROLLERING
KONTROLLERING
KONTROLLERING
KONTROLLERING
KONTROLLERING
KONTROLLERING

Vi kan kontrollere den via lenker til webserveren … IP -en til ESP8266 -modulen på ruteren vår kan bli kjent ved å åpne den serielle skjermen like etter at koden er lastet opp. Som på bildet er min 192.168.0.1

Når vi åpner denne IP -adressen i en hvilken som helst nettleser på mobil eller bærbar datamaskin, kan vi se siden som vist på bildet.

ELLER ELLER FOR PROVENCE og enkelhet kan vi bruke en Android -app …

"HTTP REQUEST SHORTCUT" -appen, og skriv adressen for å enkelt utføre koden. Som på bildet kan vi legge til widget på startskjermen for enkelt å få tilgang til de virtuelle knappene og få de nødvendige fjernkontrollknappene.

Bilder er selvforklarende.

SÅ UTEN Å SKRIVE I PROGRAMMET KAN VI PASSERE ARGUMENTET "KODEN" MED DECIMAL AV HEKSADESIMAL KODE UTTREKT FRA AVKODING FJERNE DIREKT I WIDGETEN

VIKTIG: LES VELDET PROJEKTET GANGSOM DET TAR 3 MINNER, MEN IKKE HALVLES OG SKADE DELENE DIN. JEG BLIR IKKE ANSVARLIG

Trinn 6: Prosjektpakket-g.webp" />

Anbefalt: