Spisu treści:

Uniwersalny pilot za pomocą ESP8266 (kontrolowany przez Wi-Fi): 6 kroków (ze zdjęciami)
Uniwersalny pilot za pomocą ESP8266 (kontrolowany przez Wi-Fi): 6 kroków (ze zdjęciami)

Wideo: Uniwersalny pilot za pomocą ESP8266 (kontrolowany przez Wi-Fi): 6 kroków (ze zdjęciami)

Wideo: Uniwersalny pilot za pomocą ESP8266 (kontrolowany przez Wi-Fi): 6 kroków (ze zdjęciami)
Wideo: Jak sterować dowolnym urządzeniem w domu za pomocą pilota od TV i Arduino 2024, Listopad
Anonim
Uniwersalny pilot za pomocą ESP8266 (kontrolowany przez Wi-Fi)
Uniwersalny pilot za pomocą ESP8266 (kontrolowany przez Wi-Fi)
Uniwersalny pilot za pomocą ESP8266 (kontrolowany przez Wi-Fi)
Uniwersalny pilot za pomocą ESP8266 (kontrolowany przez Wi-Fi)
Uniwersalny pilot za pomocą ESP8266 (kontrolowany przez Wi-Fi)
Uniwersalny pilot za pomocą ESP8266 (kontrolowany przez Wi-Fi)

Projekt ten ma zastąpić konwencjonalne piloty do wszystkich urządzeń domowych takich jak AC, TV, odtwarzacze DVD, system muzyczny, sprzęt AGD SMART !!! Robienie całego śmiecia zdalnego zaśmiecania, układanie puzzli!!!

Ten projekt uratuje nas od śmieci do pilotów, zastępując wszystko JEDNYM PILOTEM!

2 część tego projektu:

  • DEKODOWANIE KAŻDEGO PILOTA
  • KODOWANIE ESP8266 NODEMCU 1.0 (moduł ESP-12E) lub dowolna wersja esp8266 z połączeniem ttl

WAŻNE: PROSIMY O UWAŻNE PRZECZYTANIE CAŁEGO PROJEKTU TO POTRWA 3 MINUTY, ALE NIE PRZECZYTAJ NA PÓŁ I NIE USZKODZIĆ SWOICH CZĘŚCI…. NIE BĘDĘ ODPOWIEDZIALNY

Krok 1: Konfiguracja Nodemcu z Arduino IDE

Konfiguracja Nodemcu z Arduino IDE
Konfiguracja Nodemcu z Arduino IDE
Konfiguracja Nodemcu z Arduino IDE
Konfiguracja Nodemcu z Arduino IDE
Konfiguracja Nodemcu z Arduino IDE
Konfiguracja Nodemcu z Arduino IDE
  • Przede wszystkim podłącz Nodemcu (mój to lolin v3, amica i inne klony też będą działać) z komputerem lub laptopem.
  • Teraz zainstaluj sterownik nodemcu (pomoże wyszukiwarka google).
  • Następnie otwórz Arduino IDE (oczywiście musisz go pobrać i zainstalować)
  • Kliknij „Narzędzia” na pasku narzędzi Arduino
  • Kliknij „Płyta”
  • Wybierz "Board Manager" i wyszukaj esp8266 zainstaluj go (zakończenie zajmie trochę czasu)
  • Teraz wybierz „Szkic” z paska narzędzi arduino
  • Wybierz "Dołącz bibliotekę" stamtąd wybierz "Zarządzaj bibliotekami"
  • Wyszukaj „IRremoteESP8266” i zainstaluj go

Teraz konfiguracja odbywa się tylko z "Narzędzia" musimy przejść do "Płyty" Wybierz "NodeMcu 1.0(ESP 12-E)" lub inną wersję ESP8266.

Krok 2: DEKODOWANIE PILOTA |OBWÓD | Kod

DEKODOWANIE PILOTA |OBWÓD | Kod
DEKODOWANIE PILOTA |OBWÓD | Kod
DEKODOWANIE PILOTA |OBWÓD | Kod
DEKODOWANIE PILOTA |OBWÓD | Kod
DEKODOWANIE PILOTA |OBWÓD | Kod
DEKODOWANIE PILOTA |OBWÓD | Kod
DEKODOWANIE PILOTA |OBWÓD | Kod
DEKODOWANIE PILOTA |OBWÓD | Kod

Tak więc, aby wykonać pilota uniwersalnego, musimy zdekodować pozostałe piloty, czyli uzyskać kody szesnastkowe IR emitowane przez każdy przycisk pilota. Tak jak mówimy uniwersalnie, musimy znać każdy język!!! LUB ucz się angielskiego! Chociaż kocham mój ojczysty język bengalski, najsłodszy język!! NAPRAWDĘ jest, przeszukaj to…

A więc komponenty potrzebne do zdekodowania pilota:

  • Płyta Nodemcu
  • Odbiornik podczerwieni TSOP1738 lub inne odbiorniki podczerwieni
  • zworki

Teraz postępuj zgodnie z powyższym obwodem, ale po przesłaniu szkicu do nodemcu przez Arduino.

  • Otwórz Arduino i podłącz nodemcu do laptopa lub komputera
  • Z "Plików" wybierz przykład zejdź i z IRremoteESP8266 wybierz IRrecvDump
  • Prześlij do nodemcu

Podłącz TSOP1738 do Nodemcu jako obwód i otwórz „monitor szeregowy” z Arduino, aby zobaczyć zdekodowany kod szesnastkowy dowolnego pilota, jak na zdjęciach powyżej. Wciąż przesyłam kod referencyjny, aktualizuj go, ponieważ minęło dużo czasu. Nie pracuję już nad tym … możesz zmienić na github

KOD:

Krok 3: Kodowanie Nodemcu | OKRĄŻENIE

Kodowanie Nodemcu | OKRĄŻENIE
Kodowanie Nodemcu | OKRĄŻENIE
Kodowanie Nodemcu | OKRĄŻENIE
Kodowanie Nodemcu | OKRĄŻENIE
Kodowanie Nodemcu | OKRĄŻENIE
Kodowanie Nodemcu | OKRĄŻENIE
Kodowanie Nodemcu | OKRĄŻENIE
Kodowanie Nodemcu | OKRĄŻENIE

Po zdekodowaniu pilotów teraz przyszła kolej na wgranie kodów szesnastkowych do Nodemcu, aby mógł wydawać polecenia led IR, aby wyemitować te sygnały w kodzie szesnastkowym.

  • UWAGA: nie można podłączyć diody IR bezpośrednio do Nodemcu, ponieważ nie może dostarczyć wystarczającej ilości prądu.
  • Potrzebna jest więc tranzystorowa moderowana dioda IR, czyli sygnał z Nodemcu trafia do tranzystora, a następnie diody IR.
  • Tranzystor taki jak 2N222, 2N3904, BC547 działa, ale

Tranzystor 2N222, 2N3904 prąd kolektora: 600mA

Prąd kolektora tranzystora BC547: 100mA

obie prace…

UWAGA ZOBACZ KOLEKTOR, EMITER, ZACISKI PODSTAWOWE, ponieważ BC547 i 2N222 mają inną konwencję. Użyłem BC547, ponieważ jest łatwo dostępny i działa dobrze.

Kod pochodzi z przykładów "IRremoteESP8266" "IRserver" odpowiednio zmodyfikowany jak pokazano na rysunku.

obwód, jak pokazano. Uwaga: Użyłem tranzystora BC547 i brak oporu między podstawą a pinem D2.

KOLEKTOR, EMITER, PODSTAWA SĄ WSKAZANE NA ZDJĘCIU. NIE rób tego samego dla innych tranzystorów

EDYCJE: Kredyty „3615JMD”

ULEPSZENIA:

Czy mogę zasugerować 2 ulepszenia: 1) jeśli ktoś zastąpi: kod uint32_t = strtoul(server.arg(i).c_str(), NULL, 10); przez ten kod uint32_t = strtoul(server.arg(i).c_str(), NULL, 16); Strona internetowa akceptuje kody HEX bezpośrednio. Nie ma potrzeby ręcznej konwersji na dziesiętny!

2) Ulepszyłem obsługę, aby móc pracować z wieloma formatami IR. Miło, gdy chcemy sterować kilkoma urządzeniami różnych marek: (więcej formatów można dodać za pomocą przełącznika/obudowy)

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(kod, 32); Serial.println(kod); } else if (server.argName(i) == "rc6") { // format dla TV phillips uint32_t code = strtoul(server.arg(i).c_str(), NULL, 16); irsend.sendRC6(kod, 20); Serial.println(kod); } } handleRoot(); } Linki HTTP należy oczywiście odpowiednio zmodyfikować: …. href=\"ir?rcmm=2400260C…….…. href=\"ir?rc6=0000C….

Krok 4: Kodowanie kodu

Kod kodujący
Kod kodujący
Kod kodujący
Kod kodujący

Zaczerpnąłem kod z przykładów "IRremoteESP8266", "IRserver".

Ale należy wprowadzić pewne zmiany w poświadczeniach Wi-Fi - Wifi ssid, hasło Wi-Fi

Kody oparte na serwerze WWW (podświetlone na żółto) - te kody są dziesiętną postacią szesnastkowych kodów IR. Te wartości dziesiętne są przekazywane do ESP8266 jako argumenty konwertowane na kod szesnastkowy i przesyłane do diody podczerwieni.

WAŻNE: PO ODKODOWANIU PRZYCISKU ZDALNEGO KONWERTUJ KOD SZESNASTKOWY NA DZIESIĘTNY I ZAMIEŃ GO W PROGRAMIE Arduino. Nie jest trudno przekonwertować szesnastkowy na dziesiętny, wyszukaj w google konwerter szesnastkowy na dziesiętny online.

obrazy są oczywiste !!! Znacznie starszy kod (2017), edytuj..

KOD:

Krok 5: KONTROLOWANIE

KONTROLOWANIE
KONTROLOWANIE
KONTROLOWANIE
KONTROLOWANIE
KONTROLOWANIE
KONTROLOWANIE

Możemy nim sterować poprzez łącza serwera WWW… IP modułu ESP8266 na naszym routerze można poznać otwierając monitor szeregowy zaraz po wgraniu kodu. Jak na zdjęciu mój to 192.168.0.1

Po otwarciu tego adresu IP w dowolnej przeglądarce telefonu komórkowego lub laptopa możemy zobaczyć stronę, jak pokazano na obrazku.

ALBO DLA WYGODNOŚCI i prostoty możemy skorzystać z aplikacji na Androida…

"HTTP REQUEST SHORTCUT" i wpisz adres, aby łatwo wykonać kod. Jak na zdjęciu, możemy dodać widżet na ekranie głównym, aby łatwo uzyskać dostęp do wirtualnych przycisków i uzyskać niezbędne przyciski pilota.

Zdjęcia są oczywiste.

WIĘC BEZ WPISYWANIA W PROGRAMIE MOŻEMY PRZEKAZAĆ ARGUMENT „KOD” Z DZIESIĘTNYM Z KODU SZESNASTKOWEGO WYCIĄGNIĘTYM Z DEKODOWANIA PILOTÓW BEZPOŚREDNIO W WIDGECIE

WAŻNE: PROSIMY O UWAŻNE PRZECZYTANIE CAŁEGO PROJEKTU TO POTRWA 3 MINUTY, ALE NIE PRZECZYTAJ NA PÓŁ I NIE USZKODZIĆ SWOICH CZĘŚCI…. NIE BĘDĘ ODPOWIEDZIALNY

Krok 6:-g.webp" />

Zalecana: