Skip to content
Projekty klientów

Projekt Luma: Kino domowe

Luma to w pełni zautomatyzowane kino domowe, które zbudowałem z moim ojcem, łącząc jego umiejętności budowlane z moją wiedzą techniczną z zakresu inżynierii oprogramowania, z wykorzystaniem komponentów Shelly, własnego serwera i aplikacji.

Udostępnij ten artykuł
Projekt Luma: Kino domowe
smart home cinema project luma

Luma to samodzielnie zbudowane kino domowe, które jest w pełni zautomatyzowane i sterowane za pomocą własnoręcznie zaprogramowanej aplikacji oraz serwera. Zbudowaliśmy je razem z moim ojcem, przy czym ja zajmowałem się częścią techniczną, a on skupił się na konstrukcji. Inżynieria oprogramowania to moja pasja i mam w tej dziedzinie dyplom.

Użyłem komponentów Shelly, którymi serwer steruje przez sieć lokalną. Serwer uruchamia aplikację node.js z moją autorską frameworkową warstwą web socketów czasu rzeczywistego, aby utrzymywać synchronizację stanu między wieloma klientami. Front end to aplikacja react hostowana przez serwer, która łączy się z serwerem za pomocą web socketów. Serwer zarządza wszystkimi urządzeniami kina i obsługuje automatyzacje. Celem było to, aby całym kinem można było sterować z poziomu aplikacji. Dzięki temu można od razu rozpocząć seans bez konieczności włączania wielu urządzeń i ręcznego zarządzania temperaturą w pomieszczeniu i tak dalej.

Użyłem wielu komponentów, a wśród nich następujących produktów Shelly:


Automatyzacja jest podzielona na pięć kategorii: oświetlenie, klimat, dźwięk, media oraz ogólne uruchamianie/zamykanie.

Uruchamianie/Zamykanie:

W procesie uruchamiania i zamykania kina użyłem głównie Shelly Plus 1 / 1 PM oraz Plug S do włączania urządzeń w odpowiedniej kolejności. Pomaga to wyłączać większość urządzeń kinowych i unikać ciągłego trybu czuwania urządzeń (zostaje tylko kilka przekaźników i serwer). Po włączeniu urządzeń serwer steruje automatycznie elektrycznym ekranem, amplitunerem AV, projektorem, światłami, wzmacniaczami i inicjalizuje sterowanie klimatem. Podczas procesu zamykania niektóre przekaźniki pozostają aktywne jeszcze przez jakiś czas. Jest to niezbędne, aby projektor mógł się schłodzić lub aby światło pozostało włączone jeszcze przez chwilę, gdy opuszcza się kino.

Oświetlenie:

W części dotyczącej oświetlenia zaimplementowałem silnik świetlny, który wysyła wartości światła do Shelly RGBW2 (używanego do taśm LED w scenie i na tylnych panelach) oraz lamp Duo RGBW umieszczonych na bocznych ścianach kina, nad wejściem i na ścianie foyer. Aby szybciej przetwarzać wartości światła, opracowałem własny firmware dla urządzeń RGBW2 i lamp Duo. Ten firmware jest prosty i jedynie stosuje odebrane wartości światła. Został on wykorzystany do uruchamiania animacji świetlnych z serwera klatka po klatce.

W aplikacji użytkownik może wybierać spośród różnych trybów oświetlenia. Na przykład tryb Movie, w którym światła stopniowo wygasają od przodu do tyłu, światło sceny pozostaje przyciemnione, a światło w foyer zostaje wyłączone. Zaimplementowałem też tryb, w którym światło dopasowuje się do koloru ekranu, ale z uwzględnieniem pozycji. Na przykład lewe lampy Duo dopasowują się do lewej połowy ekranu. Ten tryb jest pokazany na końcu filmu. Mamy tu także wiele automatyzacji.

W połączeniu z czujnikiem otwarcia/zamknięcia drzwi wejściowych światło w foyer włącza się w trybie filmowym, gdy ktoś otworzy drzwi, i wyłącza się, gdy drzwi zostaną ponownie otwarte i zamknięte. (Na przykład, gdy ktoś wychodzi na chwilę do łazienki). Jeśli światło działa w trybie wyjścia, ponownie stopniowo się zapala, ale światło w foyer pozostaje wyłączone, dopóki nie zostaną otwarte drzwi wejściowe. Aplikacja ma znacznie więcej funkcji, trybów, profili oświetlenia (kolory, jasność sceny w trybie filmowym)...

Klimat:

Ta część przede wszystkim automatycznie steruje temperaturą w pomieszczeniu. Użytkownik może ustawić temperaturę docelową, a na podstawie aktualnej temperatury (mierzonej przez H&T) serwer podejmuje działania. Na przykład mamy zamontowane na suficie promienniki podczerwieni, które są aktywowane przez serwer (sterowane przekaźnikami Shelly), aby w razie potrzeby ogrzać pomieszczenie. Mamy też zautomatyzowane okno (sterowane przez Shelly 2PM) w tylnej ścianie z wentylatorem, które można wykorzystać do doprowadzenia świeżego powietrza lub do chłodzenia. Serwer używa go do chłodzenia tylko wtedy, gdy temperatura na zewnątrz (pobierana z API pogodowego) jest niższa niż aktualna temperatura w pomieszczeniu. Dzięki automatyzacjom bardzo łatwo jest uzyskać idealną temperaturę do oglądania filmu, ustawiając ją po prostu w aplikacji.

Dźwięk:

Wiele ustawień dźwięku jest sterowanych bezpośrednio z aplikacji przez amplituner AV. Zainstalowaliśmy też przetworniki drgań strukturalnych w fotelach, aby uzyskać dodatkowy efekt basu. Aby można było nimi sterować, użyłem Plus 1PM do kontrolowania wzmacniacza. W ten sposób użytkownik może po prostu aktywować lub dezaktywować je w aplikacji.

Media:

Możliwe jest przełączanie źródła wejścia lub ukrywanie obrazu bezpośrednio z poziomu aplikacji. Można też osobno wyłączyć projektor (jeśli chcesz tylko słuchać muzyki).

Fakty:

Kino ma system 7(2 pary surround na rząd siedzeń).4.4 i obsługuje Auro3D, Atmos oraz DTS:X. Zainstalowano projektor 4K i 3D, a wszystko wykonaliśmy samodzielnie. Pomieszczenie było nudnym, dużym piwnicznym pokojem, a teraz zostało podzielone na trzy pomieszczenia. Planowanie w 3D wykonałem jeszcze przed rozpoczęciem prac. Nawet techniczna półka jest własnej konstrukcji i obsługuje rozwiązanie chłodzenia wentylatorem sterowanym temperaturą.

Bez produktów Shelly realizacja mojego planu nie byłaby tak prosta. Bardzo się cieszę, że istnieje ten przyjazny dla programistów produkt, i z niecierpliwością czekam na nowe produkty Shelly. Miło też zobaczyć nowe światła, może takie, które jednocześnie obsługują RGB i biel :).

Projekt autorstwa: Luca Scaringella

Komentarze 0

Dołącz do rozmowy — konto nie jest potrzebne.

  1. Brak komentarzy — podziel się swoją opinią jako pierwszy.
← Powrót na stronę główną