Spisu treści:

Alexa IoT TV-Controller ESP8266: 10 kroków (ze zdjęciami)
Alexa IoT TV-Controller ESP8266: 10 kroków (ze zdjęciami)

Wideo: Alexa IoT TV-Controller ESP8266: 10 kroków (ze zdjęciami)

Wideo: Alexa IoT TV-Controller ESP8266: 10 kroków (ze zdjęciami)
Wideo: Smart Home with Google Assistant & Alexa using NodeMCU ESP8266 (Manual + Voice) | IoT Projects 2021 2024, Listopad
Anonim
Alexa IoT TV-kontroler ESP8266
Alexa IoT TV-kontroler ESP8266
Alexa IoT TV-kontroler ESP8266
Alexa IoT TV-kontroler ESP8266
Alexa IoT TV-kontroler ESP8266
Alexa IoT TV-kontroler ESP8266

Ostatnio kupiłem Amazon Echo Dot podczas dnia Amazon Prime za ~20 €.

Ci mali asystenci głosowi są tani i świetnie nadają się do domowej automatyki domowej, jeśli wiesz, co jest możliwe i jak budować inteligentne urządzenia.

Mam telewizor Samsung Smart TV, ale chciałem, aby był jeszcze mądrzejszy. W tej instrukcji pokażę, jak zbudować kontroler do telewizora, aby sterować nim bezprzewodowo za pomocą głosu. Niektóre możliwe i przydatne polecenia to:

  • Włącz/wyłącz telewizor
  • Ustawienia głośności (w górę/w dół/wycisz)
  • Przełącz na inne źródło (port HDMI, telewizor itp.)
  • Włącz Netflix/Amazon Prime/YouTube…

Jeśli Twój telewizor ma port USB, który jest zawsze włączony, masz jackpota! Jeśli nie, możesz użyć długiego kabla USB lub małej płytki regulatora mocy, która obniża napięcie od 12,5 do 16 V do 5 V. Użyłem tego, ponieważ miałem już zasilacz 12V bezpośrednio pod moim łóżkiem dla niektórych taśm LED:)

Innym sposobem i dlatego biorę udział w Battery-Challenge, jest to, że moja zaprojektowana obudowa wydrukowana w 3D ma miejsce na płytkę baterii i ładowarki LiPo o pojemności 150 mAh. Możesz więc zachować go całkowicie bezprzewodowo!

Niestety nie mam żadnych zdjęć, ponieważ mój iPhone zginął podczas aktualizacji iOS, a zdjęcia nie zostały przesłane do mojego iCloud:(Czyli załączone zdjęcia są tylko bez baterii w środku, którą podłączyłem po ostatecznym montażu…

Jeśli jednak chcesz zbudować własny kontroler, oto czego potrzebujesz:

Kieszonkowe dzieci:

  • Narzędzia:

    • Lutownica
    • Gorący klej
    • Drukarka 3D (opcjonalnie)
    • Termokurczliwe
  • Komponenty: (Linki są tylko przykładowe!)
  • 1x płyta ESP8266-01s + programator:
  • 1x Tranzystor NPN 2N2222A:
  • Rezystor 1x 100 Ohm:
  • Rezystor 2x10 k Ohm: patrz link powyżej
  • 1x Mały Przełącznik (NC - To ważne!!):
  • 1x 3mm IR-Emiter LED:
  • 1x Mini konwerter obniżający napięcie:
  • 1x żeńska płytka złącza Micro-USB:
  • 1x płytka ładująca TP4056 (opcjonalnie):
  • 1x bateria Mini LiPo (opcjonalnie):

Dalej:

Do zbudowania tego projektu potrzebny jest system z darmowym "ioBroker". Jest to darmowy broker MQTT, który umożliwia ESP8266 łączenie się z nim i udostępnianie jego danych. ioBroker ma również adapter Alexa, którego możemy użyć, aby nasz ESP bezprzewodowo komunikował się z Alexą.

Uruchamiam ioBroker na starej płycie głównej laptopa - ale w przypadku małych automatyzacji wystarczyłoby Raspberry-Pi. Możesz pobrać ioBroker na jego oficjalnej stronie tutaj:

Potrzebujesz również oprogramowania układowego Tasmota! Możesz go pobrać tutaj:

Wybierz swój język

Jeśli chcesz używać go z Alexą, musisz wiedzieć, jakie fizyczne urządzenie Alexa jest potrzebne! Aplikacja Alexa nie działa! Alexa-Connectivity jest tylko opcjonalna - możesz również włączyć telewizor, naciskając mały przycisk MQTT, taki jak ten:

Krok 1: Zaprogramuj ESP8266

Zaprogramuj ESP8266
Zaprogramuj ESP8266

Ponieważ ESP8266 zamierzamy później wlutować do płytki, musimy go najpierw zaprogramować. W tym celu polecam skorzystać z taniej płytki Programmer - ta, której użyłem nie jest polecana! Musiałem to zmodyfikować, aby działało, więc sprawdź link na górze (patrz: Materiały eksploatacyjne).

Najpierw podłącz ESP do programatora. Następnie uruchom Flash-Tool na swoim komputerze. Teraz podłącz programator przez USB i naciśnij przycisk FLASH na płytce drukowanej podczas podłączania. Zwolnij go po kilku sekundach. Teraz powinien być pokazany port COM w narzędziu programowym. Wybierz i kontynuuj, wybierając Tasmota-Firmware. Szybkość transmisji powinna wynosić 115 000 i wybrany tryb QIO. Po zakończeniu kliknij przycisk Flash w narzędziu. Teraz programista zaczyna.

Po zakończeniu wyświetli się ZROBIONE.

Teraz możesz wyjąć programator z komputera i włożyć go z powrotem po przełączeniu programatora w tryb UART (przełącznik na płytce drukowanej).

Krok 2: Skonfiguruj ESP - WiFi

Skonfiguruj swój ESP - WiFi
Skonfiguruj swój ESP - WiFi

Teraz, gdy ESP jest zaprogramowany i podłączony do komputera w trybie UART, przejdź do ustawień Wi-Fi urządzenia i wyszukaj sieć, która zawiera „tasmota” w identyfikatorze SSID (np. „Tasmota-31278D”). Połącz się z nim, przejdź do przeglądarki i przejdź do 192.168.4.1.

Poniżej wyjaśniam, co musisz zrobić w konfiguracji:

Ustawienia wifi:

  • WLAN1:

    • SSID twojego routera Wi-Fi
    • Hasło do routera Wi-Fi
  • WLAN2:

    • SSID Twojego (drugiego) routera (opcjonalnie)
    • Hasło do (drugiego) routera (opcjonalnie)
  • Hostname: Nazwa, która jest wyświetlana w sieci - polecam "TV-Remote"

Potwierdź ustawienia, klikając „Zapisz” (zielony przycisk). Teraz ESP próbuje połączyć się z siecią Wi-Fi.

Jeśli ten proces się nie powiedzie, ESP ponownie otworzy swoją własną sieć Tasmota-Wifi.

Krok 3: Skonfiguruj swój ESP - Konfiguracja modułu

Skonfiguruj swój ESP - Konfiguracja modułu
Skonfiguruj swój ESP - Konfiguracja modułu

Gdy ESP połączy się z siecią domową pomyślnie, musisz wyszukać jego adres IP w menu routera.

Wpisz adres w przeglądarce. Zostanie wyświetlona strona tasmota ESP. Teraz przejdź do modułu Ustawienia Konfiguracja i wybierz „Ogólny (18)”.

Po zakończeniu wyszukaj w rozwijanym menu GPIO-2 IRsend (8) i wybierz go.

Naciśnij Zapisz!

Krok 4: Skonfiguruj swój ESP - MQTT

Skonfiguruj swój ESP - MQTT
Skonfiguruj swój ESP - MQTT

ESP musi połączyć się z naszym brokerem MQTT (ioBroker). Możemy skonfigurować ustawienia MQTT na karcie UstawieniaKonfiguruj MQTT. Tam musisz wprowadzić swój adres IP brokera, port brokera, użytkownika MQTT (jeśli go nie znasz, możesz go znaleźć w ustawieniach adaptera MQTT na ioBroker!). Ponadto musisz wpisać hasło MQTT, nazwę klienta (jak urządzenie jest wyświetlane w ioBroker) i temat. Tematem jest nazwa folderu w iobroker. Jeśli chcesz używać więcej urządzeń MQTT, polecam zadeklarować pełne tematy, takie jak salon/%topic% lub kuchnia/%topic%. Ale nie musisz tego robić, ale pomoże ci to później, gdy będziesz mieć dużo urządzeń podłączonych do twojego Brokera!

Nie zapomnij zapisać wszystkiego później!:)

I to wszystko! ESP jest już gotowy do użycia!

Krok 5: Skonfiguruj swojego IoBrokera

Skonfiguruj swojego IoBrokera
Skonfiguruj swojego IoBrokera

Teraz, gdy ESP jest gotowy do użycia, musimy skonfigurować MQTT-Broker- i opcjonalnie Alexa-Adapter.

Przejdź do swojej strony internetowej ioBroker (adres ip + port (8081), np. 192.168.178.188:8081 w moim przypadku).

Przejdź do „Adaptery” i wyszukaj „MQTT Broker/Client” i „Alexa2”.

Potrzebny jest adapter MQTT, Alexa jest opcjonalna.

Polecam zacząć od adaptera MQTT. Po instalacji otworzy się okno, w którym musisz skonfigurować swojego Brokera.

Wybierz opcje, jak pokazano na rysunku.

Możesz wybrać użytkownika i hasło MQTT, jak chcesz!

Jak zawsze, nie zapomnij zapisać swoich ustawień (lewy dolny róg).

Krok 6: Testowanie połączenia MQTT

Testowanie połączenia MQTT
Testowanie połączenia MQTT

Aby przetestować połączenie z ESP do brokera, musisz usunąć ESP z komputera i ponownie podłączyć go z wybranym normalnym trybem uruchamiania.

Poczekaj kilka sekund i sprawdź stan swoich "instancji" strony iobroker i spójrz na symbol "światła" adaptera MQTT. Jeśli twój ESP jest tam wymieniony, połączył się pomyślnie!

Foldery MQTT automatycznie pojawią się na stronie "Obiekty"!

Krok 7: Utwórz zmienną MQTT

Utwórz zmienną MQTT
Utwórz zmienną MQTT
Utwórz zmienną MQTT
Utwórz zmienną MQTT

Przejdź do zakładki „Obiekty” w ioBroker.

Otwórz folder mqtt.0/TwójTemat/cmnd.

Wewnątrz tego folderu cmnd (polecenia) musisz utworzyć nowy punkt danych. Możesz to zrobić, klikając symbol + (plus) na górze.

Nazwa: IRsend

typ: Punkt danych

typ punktu danych: ciąg

Btw przepraszam, że pokazana treść obrazu jest w języku niemieckim, ale nie wiem, jak przełączyć się na angielski dla tego pouczenia:/

Krok 8: Lutowanie i drukowanie

Lutowanie i drukowanie
Lutowanie i drukowanie
Lutowanie i drukowanie
Lutowanie i drukowanie
Lutowanie i drukowanie
Lutowanie i drukowanie

Oprogramowanie gotowe - lutowanie dalej!

Płytka powinna mieć okrągły kształt o średnicy 50mm.

Zlutuj wszystko razem, jak pokazano na załączonym schemacie. Upewnij się, że nie podłączasz emitera podczerwieni odwrotnie! Może LED tego nie przetrwa.

Użyłem małych 2-pinowych złączy dla diody IR-LED, Switcha i Micro-USB-Power-Board. Jeśli chcesz to zrobić, upewnij się, że zaznaczyłeś swoje połączenia + i - z boku złącza. Orientacja przełącznika nie ma znaczenia!

Jeśli masz pod ręką drukarkę 3d, możesz skorzystać z dostarczonych przeze mnie plików - jest to podstawowa obudowa o grubości 3 cm, która ładnie pasuje do wszystkich elementów!

W środku mieści się nawet niewielka bateria i płytka ładująca!

Wydrukowałem go moim Anycubic I3-Mega i Black Anycubic Filament:)

Skleiłem PCB, IR-LED, Switch i USB-Port wewnątrz za pomocą gorącego kleju. Ponadto przykleiłem obudowę za telewizor za pomocą dwustronnej taśmy. Działa dobrze!

Aby uruchomić urządzenie teraz, musisz nacisnąć przycisk podczas podłączania go przez kilka sekund. Przełącznik odłącza diodę IR-LED od GPIO-2 po naciśnięciu, aby ESP mógł się uruchomić. Tasmota obsługuje tylko GPIO-2 i GPIO-0 na ESP-01 dla IRSendera, więc musiałem to zrobić w ten sposób. Zwolnij przycisk po ok. 1 godz. 5 sekund…

Krok 9: Czas automatyzacji:)

Czas automatyzacji:)
Czas automatyzacji:)

Teraz wszystko na sprzęcie jest skończone.

Oprogramowanie do automatyzacji teraz:)

Aby wykonać kilka fajnych automatyzacji, musimy pobrać „Skrypty” adaptera w ioBroker. Po zainstalowaniu, po lewej stronie pojawi się nowe pole o nazwie "Skrypty". Otwórz go i utwórz nowy Blockly-Script - jest to sposób na bardzo proste programowanie przy użyciu funkcjonalnych bloków.

Aby sterować telewizorem, musisz znać jego kody IR. Możesz je łatwo znaleźć w Internecie - wyszukaj swój model + kody IR. Znalazłem też kody do mojego telewizora w Internecie. Ale możesz je łatwo odszyfrować za pomocą odbiornika podczerwieni i Arduino! Jeśli nie wiesz, jak to zrobić, poszukaj w Instructables;)

W moim przypadku sygnał do włączenia/wyłączenia telewizora to „0xE0E040BF”. Teraz potrzebna jest zmienna IRsend, którą stworzyliśmy wcześniej. Dostarczony przykładowy program zapisuje kod do zmiennej. Ale przed i po IRsend zostaje ustawiony na 0 z pewnymi opóźnieniami. Jest to bardzo ważne, ponieważ inaczej telewizor nic nie zrobi.

Musisz użyć tego formatu dla IRsend: {"Protocol":"NEC", "Bits":32, "Data": YourIRCode }

Wyzwalaczem włączenia telewizora może być dowolna zmienna w ioBrokerze. Jeśli chcesz to zrobić z Alexą, po prostu utwórz nową rutynę w aplikacji Alexa na smartfonie i nazwij ją np. „Włącz telewizor”.

Możesz znaleźć tę zmienną w folderze adaptera Alexa na karcie „Obiekty” w ioBroker. Tę zmienną należy wybrać jako zdarzenie wyzwalające w górnej części mojego przykładowego skryptu (warunek if).

Jeśli masz smart-TV, możesz również uruchomić na przykład Netflix, Amazon Prime, YouTube itp.

Musisz poruszać się po telewizorze krok po kroku, tak jakbyś to robił za pomocą pilota. Nie zapomnij ustawić IRsend na 0 między poleceniami z małym opóźnieniem. Opóźnienia powinny działać z wartościami od 500 do 1000 ms. Po prostu wypróbuj:)

Krok 10: Masz pytania?:)

Mam nadzieję, że rozumiesz wszystkie kroki potrzebne do zbudowania mojego inteligentnego kontrolera na podczerwień.

Jeśli masz jakieś pytania, śmiało pytaj mnie w komentarzach:) Mam nadzieję, że podoba Ci się mój projekt:D

Przy okazji przepraszam za mój zły angielski, jestem z Niemiec:p

Zalecana: