Spisu treści:

Jedna kontrola wielu taśm LED: 3 kroki
Jedna kontrola wielu taśm LED: 3 kroki

Wideo: Jedna kontrola wielu taśm LED: 3 kroki

Wideo: Jedna kontrola wielu taśm LED: 3 kroki
Wideo: WIELKI TEST GOTOWYCH PASKÓW LED! 2024, Listopad
Anonim
Image
Image
Jedna kontrola wielu taśm LED
Jedna kontrola wielu taśm LED
Jedna kontrola wielu taśm LED
Jedna kontrola wielu taśm LED
Jedna kontrola wielu taśm LED
Jedna kontrola wielu taśm LED

Mam 5 mebli, w których chciałem zamontować oświetlenie na taśmie LED.

Diody musiały być zdalnie sterowane z opcją włączania/wyłączania Alexy. WSZYSTKIE DIODY LED musiały włączać się i zmieniać kolor synchronicznie za pomocą tylko jednego naciśnięcia pilota zdalnego sterowania. Musieli także pamiętać ostatni wybrany kolor po wyłączeniu zasilania.

Opcjonalny Alexa ON/OFF jest sterowany przez ESP8266, zdalne sterowanie odbywa się za pomocą kontrolera na podczerwień, a informacje o kolorze są dystrybuowane za pomocą niezwykle taniego nadajnika i odbiorników 433 MHz.

Mam identyczną konfigurację oświetlenia podszafkowego w kuchni, ale użyłem nadajnika i odbiornika 315 MHz, ponieważ nie chciałem żadnej interakcji między nimi.

Krok 1: Komponenty

składniki
składniki
składniki
składniki
składniki
składniki

Jak na większość moich projektów liczba komponentów jest niewielka, a większość pracy wykonuje się w oprogramowaniu.

Do pilota dołączono tanią taśmę LED RGB (eBay).

Programowalne paski LED neopikselowe (NIE RGB)

Arduino pro mini (choć każdy Arduino to zrobi)

Odbiornik podczerwieni

Nadajnik 433 MHz

4 odbiorniki 433 MHz

OPCJONALNY ESP8266 tylko dla Alexa ON/OFF (NIE kontrola koloru)

Wszystkie urządzenia zasilane są standardowymi ładowarkami do telefonów.

ESP8266 jest zasilany przez regulator 5v do 3v zasilany przez standardową ładowarkę do telefonu.

Krok 2: Jak to działa

Jak to działa
Jak to działa
Jak to działa
Jak to działa

Ten projekt składa się z 3 części

1) Jednostka główna

2) Jednostki podrzędne

3) Opcjonalny przełącznik Alexa.

Jednostka główna składa się z Arduino, odbiornika podczerwieni, nadajnika 433MHz i paska LED

Kod na podczerwień jest odbierany i dekodowany przez Arduino, który z kolei kontroluje pasek led neopikselowy.

Gdy kolory są ustawione na jednostce głównej, informacje są następnie przesyłane do jednostek podrzędnych za pośrednictwem nadajnika 433 MHz.

Jednostki podrzędne składają się z Arduino, odbiornika 433 MHz i neopikselowej taśmy LED.

Gdy kod zostanie odebrany z jednostki głównej, paski LED na wszystkich urządzeniach podrzędnych są ustawione na ten sam kolor.

NOTATKA:

Miałem zamiar użyć taśm LED RGB ALE doszło do konfliktu z taśmami LED i odbiornikami 433MHz !

Było to spowodowane wewnętrznymi zegarami Arduinos. Problemem było używanie PWM na zbyt wielu pinach, gdy odbiornik był włączony, dlatego zdecydowałem się na programowalne paski LED - Dużo kontroli na jednym pinie PWM.

Opcjonalny przełącznik Alexa to po prostu ESP2866-12e z 3 przełącznikami i 2 wyjściami impulsowymi.

Więcej szczegółowych informacji można znaleźć w Kroku dotyczącym oprogramowania.

Mówiąc Alexa "Lights On" (programowalne przez użytkownika) pulsuje pin 10 Arduino HIGH, który wysyła ten sam kod, co przycisk włączania nadajników podczerwieni. Świeci zgaszone impulsy pin 11 HIGH wysyłając ten sam kod co przycisk OFF nadajnika IR. Przełącznik nie kontroluje kolorów !

WAŻNA UWAGA

Jeśli opcja Alexa nie jest używana, OBA piny 10 i 11 Arduino MUSZĄ być zwarte do masy, w przeciwnym razie diody LED będą po prostu migać !!

Krok 3: Oprogramowanie

Oprogramowanie
Oprogramowanie
Oprogramowanie
Oprogramowanie

Oprogramowanie składa się z 3 części.

1) Jednostka główna (leddir433-V2_RXTX.ino)

2) Jednostki podrzędne (IR_rxarduino_V2.ino)

3} Opcjonalne oprogramowanie przełącznika Alexa. Pozostałe 6 plików należy skopiować do jednego folderu przed przesłaniem do ESP8266.

Jednostka główna

Pin 2 na jednostce głównej jest podłączony do odbiornika podczerwieni.

Pin 6 jest podłączony do wejścia danych na pasku LED.

Pin 12 jest podłączony do nadajnika 433MHz.

Jest tablica, która przechowuje kod z odbiornika IR, poziomy RG & B (0 - 255, uruchamiam je tylko przy jasności około 20%) a ostatni parametr (1 lub 0) jest używany jako flaga do zapamiętać (1) lub zapomnieć (0) ostatni otrzymany kod. Dzieje się tak, gdy diody LED są włączone, używany jest ostatni wybrany kolor. Nie chcę pamiętać kodów przycisków ON i OFF, tylko kody kolorów.

UWAGA: Jeśli opcja Alexa nie jest używana, piny 10 i 11 Arduino MUSZĄ być podłączone do 0v.

Jednostki podrzędne

Pin odbiorczy odbiornika 433MHz jest podłączony do pinu 2 arduino.

Pasek LED jest podłączony do pinu 6.

Taśmy LED są ustawione na kolor otrzymanego kodu.

NOTATKA:

Dodałem nową taśmę LED za sofą, więc chciałem, aby diody były jaśniejsze niż te w szafkach.

Właśnie zmodyfikowałem pogrubioną linię, aby pomnożyć otrzymane wartości przez 2, *2 jest zwykle pomijane !

void settrip(int r, int g, int b){

for (int n=0;n < N_LEDS;n++)

{ // Serial.println(n);

strip.setPixelColor(n, r*2, g*2, b*2); // strip.setPixelColor(n, r, g, b);

}

strip.pokaż();

inString="";

msg=" ";

}

Przełącznik Alexa

Zrobiłem (i używam) 8 przełączników Alexa. Układ jest prosty, a cała praca wykonywana jest w oprogramowaniu.

Nie mogę przypisać sobie żadnej zasługi za kod, po prostu zmodyfikowałem wyjścia.

Jest to zwykła konfiguracja do programowania ESP8266 i jest mnóstwo „Jak to zrobić” w Internecie.

Przy pierwszym uruchomieniu ESP sprawdza, czy był wcześniej podłączony do punktu dostępowego. Jeśli nie ma lub poprzedni punkt dostępu nie jest już dostępny, sam ustawia się jako punkt dostępu ze stroną internetową, aby umożliwić wprowadzenie danych uwierzytelniających routera i frazy Alexa, np. „Światła otoczenia” lub „Tabela Lampa” itp.

Fraza Alexa MUSI kończyć się '*' np. Table Lamp*.

Pin 4 ESP idzie do pinu 10 Arduino

Pin 12 ESP idzie do Pin 11 Arduino

Pin 5 to opcjonalne wyjście dla diody LED z rezystorem, aby pokazać połączenie wifi (nie używam tego)

Jeśli pin 13 ESP jest uziemiony (0V) podczas włączania, fraza Alexa i ostatnie poświadczenia routera są usuwane.

Konfiguracja początkowa lub konfiguracja po uziemieniu pinu 13 (resetowanie parametrów)

Po zaprogramowaniu ESP8266 lub zresetowaniu parametrów, na monitorze szeregowym Arduino powinno być widoczne:-

*WM: Konfiguracja punktu dostępu… *WM: AutoConnectAP

*WM: adres IP punktu dostępu:

*WM: 192.168.4.1

*WM: serwer HTTP uruchomiony.

Teraz na komputerze lub urządzeniu mobilnym przejdź do ustawień Wi-Fi i wybierz AutoConnectAP

Otwórz przeglądarkę iw pasku adresu wpisz 192.168.4.1 (Zobacz zdjęcia)

Wybierz „Konfiguruj Wi-Fi”

Wybierz swój router z listy i wprowadź hasło oraz frazę Alexa - NIE zapomnij *

Teraz ZRESETUJ ESP.

Przejdź do aplikacji Alexa lub poproś ją o wykrycie urządzeń, nowe urządzenie powinno zostać wykryte.

Alexa może być teraz używana do włączania i wyłączania świateł.

Zalecana: