Elektroda.pl
Elektroda.pl
X
Servizza
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Sterowanie telefonem dowolnym sprzętem za pomocą podczerwieni.

error105 13 Sty 2019 16:43 2247 14
  • #1 13 Sty 2019 16:43
    error105
    Poziom 7  

    Sterowanie telefonem dowolnym sprzętem za pomocą podczerwieni.

    Witam,
    długo się zbierałem ale myślę że projekt jest już na tyle dobrze działający by zaprezentować go tutaj.

    Co jest projektem ?
    Sterowanie dowolnym urządzeniem posiadającym odbiornik IRDa (innymi słowy, sterowany Irdą :) ) poprzez nasz telefon komórkowy.

    Po co ?
    Mam w domu sporą liczbę pilotów, do tego do Denona nie mam żadnego (pożyczyłem by odczytać kody), i wygodne jest sterowanie wszystkim jednym urządzeniem.

    Co potrzebujemy ?
    1. Telefon z zainstalowanym Blynk'iem
    a) Konto na serwerze Blynk - darmowe
    b) Własny server VPS z serwerem Blynk
    2. ESP8266 (ja mam Wemos LOLIN)
    3. Diody IR 3mm 940nm 8mW
    4. Rezystor do diody 300 Ohm
    5. Opcjonalnie drukarka 3D by wykonać małą obudowę na czujniki i ESP
    6. Jeśli nie znamy kodów do naszego sprzętu, musimy zaopatrzyć się też w odbiornik podczerwieni np TSOP i za pomocą ESP odczytamy kody.

    Budowa.

    Co tu dużo pisać, programujemy ESP wsadem który mamy w załączniku poprzez Arduino IDE (bibliotekę dodaję żeby nie zginęła), lutujemy diody i rezystory do wyjść które zadamy w programie, podajemy swoje dane do logowania w Blynku oraz WiFi, ustawiamy sobie w aplikacji na telefonie konkretne guziki i tyle :)

    Program.
    Krótki opis programu, coby każdy dał radę sam :)
    By odczytać kody, podłączamy naszą diodę odbiorczą do ESP, i wypalamy program ze szkicu: IRrecvDumpV2
    Potem strzelamy sobie w odbiornik pilotem i w Monitorze Portu Szeregowego widzimy ładnie jaki jest nasz kod pilota, w jakim standardzie, podmieniamy moje dane, na nasze i tyle.

    W programie mamy dwie główne pętle:

    Code:
    void IR_SAMSUNG(){

    Code:
    void IR_DENON(){

    Z racji że używam dwóch odbiorników na razie, możemy dodać dowolną ich ilość, wystarczy utworzyć kolejną pętlę void IR_XXX , w steupie dodać naszą kolejną diodę
    Code:
    IRsend XXX_IR(pin);
    i tyle.





    Sam program jest w switch, nie wiem czy dobrze, nie mniej działa.
    Code:
    switch (IR_SAM) {
    
       
      case 1:
        SAMSUNG_IR.sendNEC(0x2FD48B7, 32, 1); // Power ON
        delay(40);
        break;

      case 2:
        SAMSUNG_IR.sendNEC(0x2FDA25D, 32, 1); // Guide
        delay(40);
        break;

      case 3:
        SAMSUNG_IR.sendNEC(0x2FDC23D, 32, 1); // Exit
        delay(40);
        break;

    Czyli w zależności od tego jaka liczba w zmiennej IR_SAM się pojawi, taki kod zostanie wysłany. Numery ustawiamy w aplikacji Blynka.
    Sama formułka:
    Code:
    SAMSUNG_IR.sendNEC(0x2FDC23D, 32, 1);

    Na początku określa którą diodą wysyłamy kod, sendNEC określa protokół (pokaże nam go IRrcdump), i nawias: kod pilota, liczba bitów, liczba powtórzeń (powtórzenia są ważne na pewno w denonie i musi ich być 3).

    Aplikacja:
    Jak już mniej więcej łapiesz o co chodzi, pora skonfigurować Blynka w telefonie.
    Po pobraniu, logujemy się (albo rejestrujemy) i tworzymy nowy projekt (dostaniemy jego ID które wklepujemy w ArduinoIDE).
    Teraz klikamy + i dodajemy jaki chcemy guzik.
    Po dodaniu klikamy w guzik i zmieniamy OUTPUT na Virtual V0,1,2 itp zależy jak w ESP mamy ustawione, u mnie 0 i 1.
    zmieniamy zmienną 1 na taką która odpowiada guzikowi w swichu, mode PUSH i tyle.

    Program:
    Kod: c
    Zaloguj się, aby zobaczyć kod



    Sterowanie telefonem dowolnym sprzętem za pomocą podczerwieni. Sterowanie telefonem dowolnym sprzętem za pomocą podczerwieni. Sterowanie telefonem dowolnym sprzętem za pomocą podczerwieni. Sterowanie telefonem dowolnym sprzętem za pomocą podczerwieni. Sterowanie telefonem dowolnym sprzętem za pomocą podczerwieni. Sterowanie telefonem dowolnym sprzętem za pomocą podczerwieni. Sterowanie telefonem dowolnym sprzętem za pomocą podczerwieni.

    Załączniki:
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz pendrive 32GB.
  • Servizza
  • #2 13 Sty 2019 18:16
    pier
    Poziom 23  

    Bardzo przydatne szczególnie jak nie mamy oryginalnego pilota do naszego sprzętu.
    Nie bardzo tylko rozumiem po co Używasz dwóch diodek nadawczych?

    Ostatnio używałem tego sketch-a IRrecvDumpV2 aby dodać sterowanie mojego wzmacniacza za pomocą jakiegoś pilota od głośnika Logitech. Działa idealnie.

  • #3 13 Sty 2019 18:23
    japko1024
    Poziom 17  

    Tylko po co do tego serwer, w dodatku znajdujący się poza domem i należący do kogoś innego? Można by zrobić to samo za pomocą WiFi Direct, ewentualnie za pośrednictwem routera, albo po prostu przez Bluetooth. Używanie zewnętrznego serwera niepotrzebnie wydłuża transmisję danych, jest bardziej podatne na awarie lub zamierzone wyłączenie usługi (serwera, operatora Internetu, a jak ktoś nie ma w domu WiFi, to nawet dwóch).

  • Servizza
  • #4 13 Sty 2019 18:32
    error105
    Poziom 7  

    pier napisał:
    Nie bardzo tylko rozumiem po co Używasz dwóch diodek nadawczych?

    Sprzęty są oddalone, a ja mocuje je na wzór kramera wprost na odbiorniku, więc dlatego dałem dwie. Fakt można było dać jedną bez problemu, albo z jednego wyjścia dwoma na raz sterować, ale może ktoś będzie chciał użyć dwóch i więcej to już ma gotowca :)

    japko1024 napisał:
    Tylko po co do tego serwer, w dodatku znajdujący się poza domem i należący do kogoś innego? Można by zrobić to samo za pomocą WiFi Direct, ewentualnie za pośrednictwem routera, albo po prostu przez Bluetooth.

    Dałem opis dla każdego, tak by każdy mógł skopiować.
    Po co zewnętrzny serwer ? Mieszkam na wsi, mam co najwyżej LTE, i steruje zdalnie całym domem - jakbyś doczytał pilot jest tylko jednym z wielu automatów - powiedz mi jakim cudem miałbym połączyć się z serwerem który stał by u mnie w domu ?
    Mój sprzęt nie obsługuje WiFi direct, ba nie ma nawet karty sieciowej - jakieś jeszcze sugestie ? Zmiana sprzętu tylko po to by zrobić to prościej ?

    A tak, kupiłem VPSa za 12zł na rok, i on załatwia mi wszystko, i należy do mnie. Opóźnienia ? Noooooo masakra - klikam guzik i po 20ms mam reakcję na sprzęcie. Może gdybym grał takim pilotem by to jakoś wpłynęło na decyzję, ale tak to co za różnica ?
    Bluetooth - owszem fajny, zasięg 10m na otwartej przestrzeni.
    U siebie mam zadane masę dodatkowych opcji, typu odpalanie muzyki jako budzik, i po wykryciu zamknięcia drzwi wejściowych sprzęt sam się wyłącza.

  • #5 13 Sty 2019 19:58
    Bojleros
    Poziom 15  

    Witam,

    Czym Kolega zrzucał "kody" z pilota Denona ? Możliwe że będe chciał robić podobne zagranie ale żeby sterować klimą LG.

  • #6 13 Sty 2019 20:22
    acctr
    Poziom 14  

    error105 napisał:
    Co potrzebujemy ?
    1. Telefon z zainstalowanym Blynk'iem
    a) Konto na serwerze Blynk - darmowe
    b) Własny server VPS z serwerem Blynk
    2. ESP8266 (ja mam Wemos LOLIN)
    3. Diody IR 3mm 940nm 8mW
    4. Rezystor do diody 300 Ohm
    5. Opcjonalnie drukarka 3D by wykonać małą obudowę na czujniki i ESP
    6. Jeśli nie znamy kodów do naszego sprzętu, musimy zaopatrzyć się też w diodę odbiorczą i za pomocą ESP odczytamy kody.

    Serio? tyle potrzebujemy do wysłania ramki IR? To brzmi jak żart albo propozycja na konkurs "jak zamrugać diodką okrążając Ziemię 100x" :D
    Abstrahując jednak od części "software'owej" mam pytania o część fizyczną. Z tego co widać na zdjęciach nadajnik przykleiłeś "termoglutem" do panelu Denona. Dlaczego wybrałeś takie rozwiązanie? Nie wystarczyło umieścić obudowy gdzieś w dyskretnym miejscu, ze światłem diody skierowanym na sprzęt audio?
    Ta biała druciarnia i termoglut sprawia wrażenie prowizorki.

  • #7 13 Sty 2019 20:42
    pier
    Poziom 23  

    Jeszcze dwa małe szczegóły.
    Nie ma tu żadnego sterowania po IrDa. IrDa to standard transmisji danych w podczerwieni a tu są tylko proste kody.
    Drugi to

    Cytat:
    By odczytać kody, podłączamy naszą diodę odbiorczą do ESP

    Dioda raczej nie wystarczy raczej na pewno będzie potrzebny odbiornik podczerwieni np TSOP....

  • #8 13 Sty 2019 21:31
    error105
    Poziom 7  

    Bojleros napisał:
    Czym Kolega zrzucał "kody" z pilota Denona ? Możliwe że będe chciał robić podobne zagranie ale żeby sterować klimą LG.

    Doczytaj do końca, jest załączona cała biblioteka IRrec i jest tam program do odczytywania kodów :)

    acctr napisał:
    Serio? tyle potrzebujemy do wysłania ramki IR? To brzmi jak żart albo propozycja na konkurs "jak zamrugać diodką okrążając Ziemię 100x"

    Tutaj też nie doczytałeś do końca, jest to jeden z elementów całego domu, i tak po prostu było mi łatwiej podłączyć :) nic nie stoi na przeszkodzie by zamiast ESP wsadzić Attiny z modułem Bluetooth i diodą, i zrobić to prościej.

    acctr napisał:
    Z tego co widać na zdjęciach nadajnik przykleiłeś "termoglutem" do panelu Denona. Dlaczego wybrałeś takie rozwiązanie? Nie wystarczyło umieścić obudowy gdzieś w dyskretnym miejscu, ze światłem diody skierowanym na sprzęt audio?

    Głownie z tego powodu że za jakieś pół roku zaczynam remont całego domu i wtedy druciarnia z kablami białymi zniknie a sama dioda wyląduje w TV - co do gluta, zdjęcia przed obcięciem nadmiaru - dodałem już po ucięciu i wyglada znacznie lepiej mam nadzieję :) Co do naklejenia na obudowie, jest pewna droga firma która stosuje takie rozwiazania i ja rozwiazałem to tak samo.

    acctr napisał:
    Nie wystarczyło umieścić obudowy gdzieś w dyskretnym miejscu, ze światłem diody skierowanym na sprzęt audio?

    Pokój w którym jest TV aktualnie nie ma takiego miejsca, albo tutaj albo na ścianie po drugiej stronie pokoju - wybór oczywisty :)

    pier napisał:
    Nie ma tu żadnego sterowania po IrDa. IrDa to standard transmisji danych w podczerwieni a tu są tylko proste kody.

    Niech będzie, sterowanie sprzętem RTV poprzez wysyłanie prostych kodów - hmmm nie jest to czasem to samo ?

    pier napisał:
    Dioda raczej nie wystarczy raczej na pewno będzie potrzebny odbiornik podczerwieni np TSOP....

    Racja ! Już zmieniam w opisie - trochę nie przemyślałem nazwy :)
    Sterowanie telefonem dowolnym sprzętem za pomocą podczerwieni.

    Dodano po 23 [minuty]:

    Dodałem też obudowy do druku 3D pod ESP8266 Wemos Lolin, wersja z, i bez, DHT11 (niska i wysoka).

  • #9 13 Sty 2019 22:01
    piotr_go
    Poziom 27  

    error105 napisał:
    Niech będzie, sterowanie sprzętem RTV poprzez wysyłanie prostych kodów - hmmm nie jest to czasem to samo ?

    Nie. IrDA
    Popraw temat.

  • #10 13 Sty 2019 22:14
    error105
    Poziom 7  

    Zadowolony ?

    Dodatkowo wywaliłem Delay z kodu, nie wiem czemu nikt nie zauważył tego :)

  • #11 14 Sty 2019 16:31
    Euzebiusz23091998
    Poziom 15  

    Zdradzisz kolego gdzie masz założonego tak taniego VPS-a?

    Sam chciałem zacząć korzystać z blynk-a, myślałem o postawieniu małego serwera na raspberry, ale brak u mnie zewnętrznego IP skutecznie mnie od tego odpędza.

  • #12 14 Sty 2019 21:09
    error105
    Poziom 7  

    Klik !

    Jako serwer Blynka + OpenVPN dla 10 użytkowników sprawdza się idealnie :)
    Albo możesz postawić serwer lokalnie żeby w sieci domowej mieć zerowe opóźnienie, i wypuścić go przez pptpd na VPSie by mieć dostęp zdalny :)

  • #13 15 Sty 2019 22:06
    katakrowa
    Poziom 19  
  • #14 16 Sty 2019 08:13
    error105
    Poziom 7  

    A przeczytałeś chociaż po części opis ? Wydaje mi się że nie, więc nie wiesz po co VPNy, VPSy ani że nie jest to tylko by wyciszyć wzmacniacz :)

  • #15 16 Sty 2019 13:54
    katakrowa
    Poziom 19  

    error105 napisał:
    A przeczytałeś chociaż po części opis ? Wydaje mi się że nie, więc nie wiesz po co VPNy, VPSy ani że nie jest to tylko by wyciszyć wzmacniacz

    Z grzeczności i szacunku dla autorów nidy nie odpisuję w tematach, w których nie czytałem w całości przynajmniej tytułowego posta..
    Szanuję Kolegę za włożoną w projekt pracę i bardzo chwali się, to że podzieliłeś się projektem na forum.
    Niestety mnie ten projekt zupełnie się nie podoba i uważam go za zdecydowany przerost formy nad treścią ( to jest moje zdanie ).Uniwersalne programowalne piloty można kupić za nieduże pieniądze a sterowanie spoza domu do dla mnie żaden argument. Być może inni uważają inaczej i skorzystają z Twojego rozwiązana. Zauważ, że w temacie piszesz TYLKO o sterowaniu Denonem.
    Z drugiej strony jeśli nie chcesz czytać krytycznych opinii na temat swojego projektu to nie wystawiaj go publicznie lub wystawiaj na facebook bo tam można tylko "lubię to" klikać "nie lubię" już nie można.