Spisu treści:

System Ambilight dla każdego wejścia podłączonego do telewizora. WS2812B Arduino UNO Raspberry Pi HDMI (aktualizacja 12.2019): 12 kroków (ze zdjęciami)
System Ambilight dla każdego wejścia podłączonego do telewizora. WS2812B Arduino UNO Raspberry Pi HDMI (aktualizacja 12.2019): 12 kroków (ze zdjęciami)

Wideo: System Ambilight dla każdego wejścia podłączonego do telewizora. WS2812B Arduino UNO Raspberry Pi HDMI (aktualizacja 12.2019): 12 kroków (ze zdjęciami)

Wideo: System Ambilight dla każdego wejścia podłączonego do telewizora. WS2812B Arduino UNO Raspberry Pi HDMI (aktualizacja 12.2019): 12 kroków (ze zdjęciami)
Wideo: Ambilight z arduino 2024, Lipiec
Anonim
Image
Image
System Ambilight dla każdego wejścia podłączonego do telewizora. WS2812B Arduino UNO Raspberry Pi HDMI (Aktualizacja 12.2019)
System Ambilight dla każdego wejścia podłączonego do telewizora. WS2812B Arduino UNO Raspberry Pi HDMI (Aktualizacja 12.2019)
System Ambilight dla każdego wejścia podłączonego do telewizora. WS2812B Arduino UNO Raspberry Pi HDMI (Aktualizacja 12.2019)
System Ambilight dla każdego wejścia podłączonego do telewizora. WS2812B Arduino UNO Raspberry Pi HDMI (Aktualizacja 12.2019)
System Ambilight dla każdego wejścia podłączonego do telewizora. WS2812B Arduino UNO Raspberry Pi HDMI (Aktualizacja 12.2019)
System Ambilight dla każdego wejścia podłączonego do telewizora. WS2812B Arduino UNO Raspberry Pi HDMI (Aktualizacja 12.2019)

Zawsze chciałem dodać ambilight do mojego telewizora. Wygląda tak fajnie! W końcu to zrobiłem i nie zawiodłem się!

Widziałem wiele filmów i wiele samouczków na temat tworzenia systemu Ambilight dla telewizora, ale nigdy nie znalazłem pełnego samouczka odpowiadającego moim konkretnym potrzebom.

Niezależnie od tego, czy system jest przeznaczony tylko dla jednego źródła (PS4 lub Xbox lub TV itp.), Czy nie używa tych samych diod LED, których chciałem użyć, więc postanowiłem stworzyć instrukcję i zebrać wszystkie informacje i doświadczenie zebrałem w jednym miejscu podczas realizacji tego projektu.

Zrobiony przeze mnie system można podłączyć do 5 różnych źródeł. Mam go tutaj skonfigurowany, aby działał z moim systemem PS4, moim kinem domowym / odtwarzaczem Blu-ray lub moim Foxtelem (australijska telewizja kablowa) lub moim komputerem i mam wolne wejście na coś innego. Wszystko to po prostu za naciśnięciem przycisku.

Dodałem ekran LCD do wyświetlania bieżącego źródła podłączonego do ambilight oraz przycisk ON/OFF dla systemu.

Jeśli chcesz, aby funkcja ambilight była dostępna dla wszystkich różnych wejść podłączonych do telewizora, chcesz użyć taśm ledowych typu WS2812, nie szukaj dalej, ten samouczek jest dla Ciebie

Wprowadziłem tę instrukcję do konkursu Raspberry PI 2016, więc jeśli Ci się spodoba, proszę o szybki głos! Bardzo docenione z góry.

Krok 1: Materiały potrzebne do zbudowania tego systemu

Materiały potrzebne do zbudowania tego systemu
Materiały potrzebne do zbudowania tego systemu
Materiał potrzebny do zbudowania tego systemu
Materiał potrzebny do zbudowania tego systemu
Materiały potrzebne do zbudowania tego systemu
Materiały potrzebne do zbudowania tego systemu
Materiały potrzebne do zbudowania tego systemu
Materiały potrzebne do zbudowania tego systemu

Nie wszystkie źródła mają wyjście HDMI, tak jak mój komputer jest nadal podłączony przez stare złącze VGA, a moja jednostka Foxtel jest nadal podłączona za pomocą kabli AV. Musiałem kupić kilka różnych adapterów, aby wszystko działało, ale w końcu wynik jest niesamowity i wart tego!

Nie wszystko tutaj będzie potrzebne w zależności od własnego systemu i tego, czy chcesz wyświetlacz LCD, czy nie. Oddzielę elementy opcjonalne.

  1. 1x 4-metrowy pasek WS2812B 30 diod/m. (to wystarczyło dla mojego 55-calowego telewizora) Kupiłem mój z Aliexpress. Pasek ledowy
  2. 1x płytka Arduino UNO.
  3. 1x Raspberry Pi model 2 lub 3.
  4. 1x karta SD. (8 GB jest dobre)
  5. 1x Video grabber typu STK1160. (uważaj przy wyborze chwytaka, niektóre modele nie będą działać!!) To jest ten, który otrzymałem i działa poprawnie. Grabber wideo
  6. 1x zasilacz 5 V 10 amperów. Znowu dostałem swoją z Aliexpress i działa dobrze. Zasilacz
  7. 1x rozdzielacz HDMI 1 x 2. rozdzielacz
  8. 1x przełącznik HDMI 5 w 1. przełącznik
  9. 1x konwerter HDMI na AV. przetwornik
  10. 1x kondensator elektrolityczny 10uF

kable i sprzęt:

  1. 4x 25cm kabel HDMI. kabel
  2. 2x HDMI żeńskie na żeńskie złącza obudowy. złącze
  3. 1x złącze wejściowe 220V (z bezpiecznikiem).
  4. 1x obudowa projektu (może być inna, to zależy od Ciebie, moja ma wymiary 424mm x 203mm x 86mm)
  5. Przewód jednożyłowy do podłączenia 5 V do różnych konwerterów itp.
  6. Kable wstążkowe lub rozszerzenia do podłączania wejść do przykładu Arduino

opcjonalne dodatki:

  1. 1x konwerter AV na HDMI. przetwornik
  2. 1x konwerter VGA na HDMI. przetwornik
  3. 2x 25cm kabel HDMI. kabel
  4. 1x wyświetlacz LCD 16 znaków x 2 linie. LCD
  5. 1x interfejs I2C dla LCD. berło
  6. 1x wentylator chłodzący do obudowy.

Krok 2: Jakie programy komputerowe będą wymagane

Jakie programy komputerowe będą wymagane
Jakie programy komputerowe będą wymagane
Jakie programy komputerowe będą wymagane
Jakie programy komputerowe będą wymagane
Jakie programy komputerowe będą wymagane
Jakie programy komputerowe będą wymagane

Do tego projektu będzie potrzebnych kilka różnych programów.

Musisz je pobrać i zainstalować (jeśli jeszcze go nie masz)

  • WinSCP można pobrać tutaj
  • Putty można pobrać tutaj (kliknij na link putty.exe na liście)
  • SDFormatter można pobrać tutaj
  • Win32DiskImager można pobrać tutaj
  • Arduino IDE można pobrać tutaj (użyłem wtedy wersji 1.8.10)
  • HyperCon można pobrać tutaj
  • Notepad++ (opcjonalnie) można pobrać tutaj

Będziesz musiał również pobrać obraz dysku Raspberry Pi. Wybierz plik o nazwie „OpenELEC 8.0.3 dla RPI2 / RPI3”, który możesz pobrać z dołu strony tutaj

Krok 3: Uruchomienie i uruchomienie Raspberry Pi

Uruchamianie i uruchamianie Raspberry Pi
Uruchamianie i uruchamianie Raspberry Pi
Uruchamianie i uruchamianie Raspberry Pi
Uruchamianie i uruchamianie Raspberry Pi
Uruchamianie i uruchamianie Raspberry Pi
Uruchamianie i uruchamianie Raspberry Pi

Zaczniemy od uruchomienia i uruchomienia Raspberry Pi

1) Zamierzamy zapisać openELEC na karcie SD.

  1. Rozpakuj obraz dysku Raspberry Pi.
  2. Podłącz kartę SD do komputera.
  3. Uruchom program SDFormatter.
  4. Wybierz literę napędu karty SD.
  5. Kliknij opcję i wybierz „regulacja rozmiaru” na WŁ.
  6. Kliknij OK.
  7. Kliknij Formatuj.
  8. Uruchom program Win32DiskImager.
  9. Wybierz obraz Raspberry Pi i literę dysku swojej karty SD.
  10. Wybierz opcję Napisz.

2) Wyjmij kartę SD z komputera i podłącz ją do Raspberry Pi.

Połączenia do wykonania na Pi:

  • Podłącz kabel Ethernet do swojego Pi z sieci.
  • Podłącz port HDMI swojego Pi do telewizora lub ekranu.
  • Podłącz klawiaturę i mysz do portów USB. (Używam kombinacji myszy bezprzewodowej i klawiatury i pozostawiłem klucz sprzętowy podłączony do Pi, w ten sposób, teraz, gdy Pi jest zapakowane, nie muszę go otwierać, jeśli chcę uzyskać dostęp do mojego Pi.)
  • Podłącz koniec USB wideo grabbera do swojego Pi.

3) Podłącz zasilacz 5 V do swojego Pi i postępuj zgodnie z informacjami wyświetlanymi na ekranie, aż się uruchomi. Powinieneś zobaczyć ekran jak na moim zdjęciu.

Teraz musimy sprawdzić Twoje połączenie internetowe. Podążaj ścieżką Ustawienia (koło zębate) - informacje o systemie - podsumowanie i zapisz swój adres IP, będzie potrzebny w przyszłości.

Upewnij się, że SSH jest włączone, podążaj ścieżką Ustawienia (koło zębate) - openELEC - usługi i sprawdź, czy "włącz SSH" jest włączone.

Teraz zainstalujemy HyperCon i sprawdzimy nasze połączenie wideo grabbera z Pi

Do tego użyjemy Putty. Aby to zadziałało, Twoje Pi musi być włączone i podłączone do sieci.

  • Wpisz adres IP, który zapisałeś tuż przed swoim Pi. jak na załączonym obrazku i kliknij Otwórz.
  • Powinieneś zostać poproszony o okno z prośbą o nazwę użytkownika zgodnie z załączonym zdjęciem. wpisz root i naciśnij enter.
  • zostaniesz poproszony o podanie hasła. (zauważ, że znaki nie pojawią się podczas wpisywania hasła, jest to normalne). Wpisz openelec i naciśnij enter.
  • Aby sprawdzić wszystkie porty USB, wpisz lsusb i naciśnij enter. Powinieneś znaleźć swój wideo grabber na liście, jak na załączonym zdjęciu.
  • Możesz teraz zamknąć połączenie.

To kończy konfigurację Raspberry PI. Wrócimy do tego później, aby przesłać plik konfiguracyjny naszych diod LED.

Krok 4: Hyperion i plik konfiguracyjny

Hyperion i plik konfiguracyjny
Hyperion i plik konfiguracyjny
Hyperion i plik konfiguracyjny
Hyperion i plik konfiguracyjny
Hyperion i plik konfiguracyjny
Hyperion i plik konfiguracyjny

Opakowanie twojego projektu będzie zależeć od ciebie. Próbowałem umieścić jak najwięcej komentarzy na zdjęciach, aby dać ci wyobrażenie o tym, jak składa się moja konfiguracja.

Jedną bardzo ważną rzeczą jest upewnienie się, że wejście grabbera wideo do Pi nie jest połączone z niczym innym, miałem błędy rozmiaru klatki i wiele innych dziwnych rzeczy, które działy się, gdy miałem coś innego podłączonego do innego portu USB. Musi osiągnąć limit przepustowości lub coś takiego, ale nie zadziała, gdy spróbuję podłączyć klucz WiFi do tego USB, a nawet kabel wyjściowy idący do Arduino

Zalecam umieszczenie wszystkich konwerterów itp. i rozpoczęcie od podłączenia zasilania do nich wszystkich. Większość z tych konwerterów była dostarczana z zasilaczem z wtyczką ścienną. Odciąłem kabel i użyłem tylko złącza po stronie konwertera i postanowiłem zbudować małą płytkę z dużą ilością połączeń +5V i GND do zasilania ich wszystkich. Oszczędziło to dużo miejsca.

Przykleiłem różne konwertery za pomocą dwuskładnikowego kleju i użyłem plastikowych podkładek, aby przykręcić Arduino. Dodałem trochę kleju z tyłu złącza IEC, aby uzyskać odrobinę dodatkowej sztywności. Moje złącze IEC ma wbudowany wyłącznik ON/OFF, którego mogę użyć do wyłączenia całego urządzenia. Ma również bezpiecznik, w którym umieściłem bezpiecznik 1,6 A / 250 V dla ochrony, gdyby coś musiało się popsuć z moim tanim zasilaczem.

Użyłem narzędzia dremel i kilku pilników, aby zrobić otwory w obudowie i nadać jej ładny wygląd. Z przodu obudowy nad wyświetlaczem LCD wyrzeźbiłem również otwór na czujnik podczerwieni.

Nie narysowałem odpowiedniego schematu okablowania do Arduino, daj mi znać, czy ktoś wolałby go mieć zamiast korzystać ze zdjęcia, które wymyśliłem.

W razie potrzeby nie wahaj się skomentować, a z przyjemnością odpowiem na pytania i zaktualizuję tę instrukcję, aby była pełniejsza lub łatwiejsza do zrozumienia.

Krok 9: Włamanie się do przełącznika HDMI (opcjonalnie)

Włamanie do przełącznika HDMI (opcjonalnie)
Włamanie do przełącznika HDMI (opcjonalnie)
Włamanie do przełącznika HDMI (opcjonalnie)
Włamanie do przełącznika HDMI (opcjonalnie)
Włamanie do przełącznika HDMI (opcjonalnie)
Włamanie do przełącznika HDMI (opcjonalnie)

Aby nasz Arduino mógł powiedzieć, które źródło faktycznie wyświetla przełącznik HDMI, potrzebujemy sposobu na przesłanie tych informacji z przełącznika do Arduino. Na szczęście przełącznik, w którym znajduje się przełącznik, ma 5 diod LED do wyświetlania źródeł od 1 do 5 po wybraniu i zamierzamy użyć tych sygnałów dla Arduino.

Wziąłem sygnał z 5 diod LED, ale później, kiedy pisałem kod Arduino, zdałem sobie sprawę, że nie potrzebuję sygnału z diody LED numer 1, jeśli przyjrzysz się bliżej połączeniu kabla taśmowego z Arduino, możesz to zobaczyć brązowy przewód po prawej stronie w rzeczywistości nie jest podłączony. Mamy tylko LED2 podłączone do A0, LED3 do A1, LED4 do A2 i LED5 do A3.

Podłączyłem je do wejść analogowych bez innych powodów niż wygoda okablowania w moim pudełku projektowym.

Jeśli zdecydujesz się zbudować ten projekt i nie chcesz mieć wyświetlacza LCD na panelu przednim, ten krok nie jest potrzebny i można go pominąć. Trudno będzie zorientować się, które źródło jest wybrane na przełączniku HDMI, jeśli diody LED na nim są poza zasięgiem wzroku, tak jak w moim projekcie, w którym przełącznik znajduje się wewnątrz obudowy.

Krok 10: Kod Arduino i Arduino

Kod Arduino i Arduino
Kod Arduino i Arduino
Kod Arduino i Arduino
Kod Arduino i Arduino
Kod Arduino i Arduino
Kod Arduino i Arduino

Pobierz szkic z poniższego linku. tutaj

Do poprawnego skompilowania szkicu Arduino potrzebne będą 2 biblioteki:

Adafruit_NeoPixel.h, który możesz pobrać tutaj

LiquidCrystal_I2C.h, który możesz pobrać tutaj (wersja 2.0)

Próbowałem dodać jak najwięcej komentarzy w kodzie. Jeśli coś jest niejasne, nie wahaj się zamieścić komentarza i zadawać pytania. Mogą pomóc wielu ludziom.

Przeglądanie kodu, który załączyłem do tego kroku.

Datapin to pin wybrany, w którym zostanie podłączony Din naszej taśmy LED

#define DATAPIN 5

Liczba diod LED to rzeczywista liczba diod LED w twoim systemie

#define LEDCOUNT 113

Szybkość transmisji nie może być zmieniana lub będzie musiała zostać zmieniona również w pliku konfiguracyjnym Hyperiona

#define BAUDRATE 500000

Jest to poziom jasności, na którym ma działać Twoja taśma LED. Testowanie wymagane w Twoim środowisku. Wybór od 0 do 100

#define JASNOŚĆ 100

Będziesz musiał zmodyfikować linię 24 własnym prefiksem.

Korzystając z załączonego pliku prefiksu, znajdź swoją liczbę diod LED i skopiuj wartości z pliku do linii prefiksu. Musisz otworzyć plik za pomocą czegoś takiego jak Notepad ++, aby był wyświetlany poprawnie.

Przykład dla 113 diod LED: prefiks znaku const = {0x41, 0x64, 0x61, 0x00, 0x70, 0x25};

Przykład dla 278 diod LED: prefiks znaku const = {0x41, 0x64, 0x61, 0x01, 0x15, 0x41};

Na końcu kodu, w procedurze check_source(), w tym miejscu możesz zmienić dla każdego źródła informacje, które będą wyświetlane na wyświetlaczu LCD po wybraniu źródła, takiego jak telewizor, PS4 lub komputer itp.

Możesz również ustawić kursor LCD, aby drukowana nazwa była drukowana na środku wyświetlacza LCD.

Gdy będziesz zadowolony ze swojego kodu, możesz przesłać go do swojego Arduino i sprawdzić, czy działa poprawnie przynajmniej na razie z wyświetlaczem LCD.

Po zaprogramowaniu Arduino dodaj kondensator 10uF między pinami GND i RESET. (Pin reset to + kondensatora).

Zapobiegnie to ponownemu uruchomieniu Arduino, gdy dane szeregowe przychodzą z Pi podczas uruchamiania systemu.

Jeśli musisz przeprogramować Arduino, wyjmij kondensator przed ręką i wymień go po zakończeniu.

Krok 11: Połącz wszystko razem i testowanie

Raspberry Pi i Arduino można teraz połączyć kablem USB.

Listwa LED została podłączona do obudowy oraz do Arduino.

Arduino i Raspberry są zaprogramowane.

Zasilanie 5V z zasilacza trafia do wszystkich konwerterów Arduino i Raspberry.

Po włączeniu zasilania do skrzynki projektowej, źródło LED przełącznika HDMI świeci się, kanał źródłowy można zmienić za pomocą pilota lub przycisku na przełączniku.

Wybierz źródło w telewizorze, do którego podłączyłeś główny kabel z wyjścia skrzynki projektu i sprawdź, czy otrzymujesz obraz na ekranie z dowolnego źródła wybranego w przełączniku.

Po kilku sekundach pasek LED powinien się stopniowo zaświecić, a wyłącznik się wyłączy. Oznacza to, że Arduino uruchomiło się i połączenie z paskiem LED jest dobre.

Niedługo potem pasek LED powinien zacząć wyświetlać kolory zgodnie z informacjami przekazanymi przez Raspberry.

Sukces!! Właśnie zakończyłeś swój projekt i możesz zacząć cieszyć się zabawnym pokazem świetlnym w telewizji

Krok 12: Kontroluj pasek LED z telefonu

Kontroluj pasek LED z telefonu
Kontroluj pasek LED z telefonu
Kontroluj pasek LED z telefonu
Kontroluj pasek LED z telefonu
Kontroluj pasek LED z telefonu
Kontroluj pasek LED z telefonu
Kontroluj pasek LED z telefonu
Kontroluj pasek LED z telefonu

Aby dodać do tego trochę zabawy, możesz pobrać aplikację na iPhone'a, jestem pewien, że musi być również dostępna dla innych urządzeń.

Bardzo łatwy w użyciu, po prostu upewnij się, że pasek Pi i LED są WŁĄCZONE i naciśnij przycisk Wykryj w lewym górnym rogu. Powinien wykryć serwer, który możesz nazwać tak, jak chcesz.

Wybierz go i gotowe, możesz wybrać kolory z koła kolorów, a pasek odpowiednio się zaświeci lub wybierz różne efekty do wyświetlenia.

Konkurs Raspberry Pi 2016
Konkurs Raspberry Pi 2016
Konkurs Raspberry Pi 2016
Konkurs Raspberry Pi 2016

II nagroda w konkursie Raspberry Pi 2016

Zalecana: