Arduino – Ambient Light

Ambilight w tym wypadku wykorzystałem Arduino oraz tanie diody RGB WS2811 ze zintegrowanymi kontrolerami. Po stronie PC wykorzystałem Ambibox (działa niestety tylko z Windows) oraz biblioteki FastLED na Arduino.

Funkcja Ambilight jest całkowicie DIY i łatwo jasne na tyle, że nie jest potrzebna innym świetle. Ekran jest zamontowany na ścianie i wypłukuje z tabeli. (Więc nie Ambilight na dole).

Wykaz komponentów:
– Ambibox oprogramowania na PC Download
– Arduino w moim przypadku nano
– 33 RGB LED WS2811
– Zasilacz 12V / 2A
– Biblioteka FastLED

Kody Arduino tłumaczyć raczej nie trzeba należy pamiętać aby zedytować do swoich potrzeb

#define NUM_LEDS 33  // ilość diod LED
#define DATA_PIN 6 // Pin w Arduino

Kod Arduino:

#include „FastLED.h”
#define NUM_LEDS 33
#define DATA_PIN 6
#define serialRate 500000
statycznego const uint8_t prefix [] = { ‚a’, ‚d’, ‚a’};
// Określ szereg diod LED
CRGB led [NUM_LEDS];
void setup () {
FastLED. addLeds <WS2811, DATA_PIN, RGB> (diody, NUM_LEDS);
Seryjny. begin (serialRate);
Seryjny. print ( „Ada \ n”);
}
void loop () {
for (int i = 0; i <sizeof (prefix); ++ i) {
while (seryjny dostępny (!).);
if (prefix [i]! = seryjny. read ())
return;
}
while (seryjny dostępny () <3.);
int highByte = seryjny. read ();
int bajt niski = seryjny. read ();
int suma kontrolna = seryjny. read ();
if (suma kontrolna! = (highByte ^ bajt niski ^ 0x55)) {
return; }
uint16_t ledCount = ((highByte & 0x00FF) << 8 | (bajt niski i 0x00FF)) + 1;
if (ledCount> NUM_LEDS) {
ledCount = NUM_LEDS; }
for (int i = 0; i <ledCount; i ++) {
while (seryjny dostępny () <3.);
Diody [I]. r = seryjny. read ();
Diody [I]. g = seryjny. read ();
Diody [I]. b = seryjny. read (); }
FastLED. show ();
}

ambientlight

Ambibox konfiguracja programu:

Po zainstalowaniu Ambibox trzeba przejść do katalogu w którymym został zainstalowany i zmienić w następujący pliku SerialPortConfig.ini szybkość transmisji Adalight do 50000, taką samą jak użyta w skrypcie Arduino. Zapisz plik i uruchom ponownie Ambibox. Domyślne miejsce instalacji to : C:\Program Files (x86) \AmbiBox
[Adalight] BaudRate = 500000

Główne ustawienia programu Ambibox

Po pierwsze, trzeba kliknąć przycisk „Więcej ustawień” na dole po prawej stronie.
Najważniejsze ustawienia znajdują się na dole. Urządzenie należy wybrać „Adalight” , następnie należy wybrać port COM na którym pracuje nasze Arduino. Należy ustawić kolejność kolorów na swojej taśmie RGB, domyślnie jest to RGB, jednak w moim WS2811 jest GBR. W ostatnim polu,należy określić liczbę diod LED, liczba ta powinna być zgodna z tą zapisaną w kodzie Arduino.
Inne ustawienia:
– F11 jest mój Skrót do włączania / wyłączania Ambientlight
– Ustaw opóźnienie min. i fps max, w celu zminimalizowania opóźniania.

Po tym, można ustawić go na ekranie wychwytywania i wybierz „Windows 8” jako metodę przechwytywania. To działa bardzo dobrze na Windows 7 do 10. Jednak na 1 z moich komputerów działa tylko na ustawieniach DirectDraw SRAM on Aero.

Ustawianie kolorów:

To są moje ustawienia korekcji kolorów, jasności itp Możesz je skopiować lub spróbować własnych.

Post Author: swistak

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Potwierdz, że nie jesteś botem. *