Spisu treści:
- Krok 1: Pozyskiwanie materiałów
- Krok 2: Moc
- Krok 7: Hurra! Jesteś skończony! (Przeczytaj dalej, aby uzyskać dodatkowe informacje o kodzie)
Wideo: Diody LED Bluetooth sterowane smartfonem (z synchronizacją muzyki na żywo): 7 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:30
Zawsze kochałem budowanie rzeczy, po tym, jak odkryłem, że mój nowy akademik ma okropne oświetlenie, postanowiłem go trochę urozmaicić.
***OSTRZEŻENIE*** Jeśli zbudujesz ten projekt na taką samą skalę jak moja konfiguracja, będziesz pracował z przyzwoitą ilością energii elektrycznej. BĄDŹ BEZPIECZNY, kieruj się zdrowym rozsądkiem, a jeśli nie jesteś pewien, ZAPYTAJ! Nie ryzykuj spalenia swojego domu.
Krok 1: Pozyskiwanie materiałów
Do tego projektu będziesz potrzebować:
- Adresowalne paski LED WS2812B. 5V jest zdecydowanie najpopularniejszym typem i bardzo preferowanym w tym projekcie. Ten projekt jest przeznaczony dla diod LED RGB, a nie RGBW. Gorąco polecam NeoPixels firmy Adafruit. (~25 USD za 60 diod LED)
- CurieNano (wciąż sprzedawany), Arduino 101 (wycofany, ale ten, którego używam) lub inny mikrokontroler, który może uzyskać dostęp do BLE. (~35 USD)
- Smartfon (działa zarówno Apple, jak i Android)
- Zasilacz. Większość adresowalnych diod LED na rynku to 5V. Wymagane natężenie prądu zależy od rozmiaru Twojej konfiguracji*. (~10-50 USD w zależności od konfiguracji)
- Okablowanie** (możesz również potrzebować odpowiednich 3-pinowych lub 2-pinowych złącz JST i pinów Arduino) (~20-30 USD)
- Złącza baryłkowe 2.1x5.5mm, znajdziesz je tutaj. (~5 USD)
- Mały śrubokręt krzyżakowy
- Lutownica i lut (~ 20 USD)
- Dwustronna taśma montażowa (szerokość 1/4 cala). Używam tego. (~10 USD)
- (Zalecane) Mikrofon do synchronizacji muzyki. (Aby mieć działającą synchronizację muzyki, musisz ją mieć) Możesz znaleźć jeden z Adafruit tutaj. (~7 USD)
- (Opcjonalnie) Obudowa Arduino, taka jak ta. (~10 USD)
- (Opcjonalnie) kondensator o pojemności co najmniej 10 μF (chroni to przed skokami napięcia podczas pierwszego włączania zasilacza. Zwróć uwagę, że niektóre większe, bardziej wyszukane zasilacze mogą już mieć wbudowaną ochronę.) (~ 5 USD)
Gorąco polecam trzymać się powiązanych materiałów na tej liście, ponieważ używałem ich przez większość dnia, każdego dnia, przez miesiące bez awarii – zwłaszcza diody LED. W przeciwnym razie możesz napotkać nieoczekiwane problemy lub stwierdzić, że brakuje Ci określonych materiałów lub narzędzi.
* W przypadku bardzo małych pasków (~30 pikseli lub mniej) lub Arduino ma wystarczającą moc, aby je uruchomić i nie potrzebujesz zasilacza. (NIE JEST TO ZALECANE W TYM PRZEWODNIKU. Istnieje wiele instrukcji dotyczących tworzenia małych, adresowalnych konfiguracji LED, które będą bardziej dostosowane do Twojej sytuacji.)
Jednak większość z was prawdopodobnie będzie potrzebować zasilacza. Obliczenie to (natężenie) = 0,075*(liczba pikseli). Dzieje się tak z wbudowanym marginesem bezpieczeństwa (przy pełnym poborze mocy twój zasilacz będzie działał z ~75% wydajności. Dzięki temu twój zasilacz będzie działał chłodno, a tym samym konsekwentnie przez długi czas). Idąc znacznie poniżej tej wartości, grozi przegrzaniem, a nawet pożarem. Niektóre zasilacze wymagają również podłączenia własnej wtyczki ściennej AC. W przypadku wyświetlaczy, które używają wielu pełnych bębnów led, bardzo polecam wstrzyknięcie zasilania. Zostanie to omówione w następnej sekcji.
** Odpowiednio zwymiaruj swój drut! BEZPIECZEŃSTWO PRZEDE WSZYSTKIM wydanie dodatkowych kilku dolarów może uratować Twój dom.
(Jeśli jesteś ciekawy, używam dwóch zasilaczy 5 V, każdy z dwoma wyjściami 30 A i przewodem głośnikowym o średnicy 12, co pozwala mi wstrzyknąć wystarczającą moc w czterech punktach wzdłuż mojej taśmy LED. Używam ~21 metrów z gęstością 60 diod LED /metr.)
Krok 2: Moc
"ładowanie="leniwe"
Istnieją dwa tryby, które wymagają podania liczby pikseli w punktach początkowych: tryb 2 (Color Wipe) i tryb 12 (Music Sync). Jeśli masz wiele diod LED, jest to ogromny ból liczenia do którego dokładnie piksela chcesz na początek, więc zbudowałem narzędzie. W ostatniej pozycji menu trybu w aplikacji BLYNK znajdziesz tryb o nazwie „Pixel Finder”. Aby z tego skorzystać, prawdopodobnie będziesz musiał zmodyfikować ustawienia widżetu.
- Najpierw upewnij się, że jesteś w trybie edycji
- Wybierz suwak
- Zmień wartości jasności, aby wyszukiwana liczba pikseli mieściła się w wprowadzonym zakresie jasności.
Podczas korzystania z tego trybu Pixel Finder liczba pikseli wartości jasności świeci na zielono. W ten sposób możesz szybko przewinąć do żądanej lokalizacji i odczytać liczbę pikseli z telefonu
Widać to na zdjęciach [5 i 6] oraz [7 i 8]. (Możesz zauważyć, że na tym zrzucie ekranu używam suwaków kolorów zamiast zeRGBra). Zwróć też uwagę, że indeks pierwszego piksela to 0, a nie 1.
Powinno to pomóc w ustawieniu wzorców tam, gdzie chcesz.
Jeszcze jedną rzeczą, o której powinienem wspomnieć, jest to, że „Jasność” w trybach Comet (tryb 10) i Music Sync (tryb 12) dostosowuje długość „ogonów”. W ten sposób kod powinien działać, ponieważ „Jasność” nie ma naprawdę sensu w tych trybach.
Krok 7: Hurra! Jesteś skończony! (Przeczytaj dalej, aby uzyskać dodatkowe informacje o kodzie)
Aby korzystać z diod LED:
- Bądź w zasięgu swojego Arduino
- Stuknij ikonę BLE
- Znajdź swoje urządzenie (odpowiedz na deviceName) i wybierz je
Teraz będziesz mógł korzystać z pilota.
Idź i ciesz się ciężką pracą!
*****************************Zaawansowane (o kodeksie)*************** *****************
Starałem się, aby kod był dobrze skomentowany, prawdopodobnie nie jest w żaden sposób zoptymalizowany, ale wiem, że uruchamia moje 1200+ świateł wystarczająco szybko. Spis treści zawiera kod oddzielony według numeru wiersza.
Części kodu zawierające tryby i interfejs użytkownika są dość oddzielone, technicznie można by zrezygnować z bluetooth i użyć przewodowej centrali lub prostego timera, który przełącza wszystkie tryby. Naprawdę wystarczy wypełnić tablicę cmdArr, aby uzyskać instrukcje.
- Index 0 przechowuje informacje o włączaniu/wyłączaniu paska,
- Indeks 1 przechowuje numer trybu z menu
- Indeksy 2, 3 i 4 przechowują odpowiednio wartości R, G i B z próbnika kolorów.
- Indeks 5 przechowuje procent jasności
- Inne indeksy są obecnie niewykorzystane
Wiele osób zauważyło, że w kodzie jest wiele wierszy, które brzmią „SetPixelColorAdj(…”, mimo że funkcja to po prostu „setPixelColor(…”). Dzieje się tak, ponieważ jest to trochę pozostałości kodu używanego do mapowania części paska LED. Na przykład, jeśli użyjesz jednego paska do wykonania dwóch pętli, trudno byłoby zająć się wzorami z przerwą, dopóki pętla nie połączy się z powrotem. Dzięki temu możesz sztucznie połączyć wewnętrzną cechę paska LED do końca a także połącz główną pętlę z powrotem, aby w kodzie praca była intuicyjna.
Wyjaśnię również, jak działają niektóre z bardziej skomplikowanych trybów. Niektóre z nich (Rainbow, Color Wipe i Fade [1, 2, 3]) są już w bibliotece NeoPixel jako przykładowy kod.
- Lava, Canopy, Ocean [4, 5, 6] - Te tryby wykorzystują wspomniane wcześniej punkty przewodnie, każdy punkt przewodni otrzymuje losowy kolor w ramach przypisanej mu krainy. Lawa jest głównie czerwona, Canopy jest głównie zielona, a Ocean jest głównie niebieski. Wzorzec zanikania [3] już zapewnia świetny algorytm zanikania liniowego. Jest to ponownie wykorzystywane do zanikania koloru jednego punktu odniesienia do następnego przy użyciu pikseli pomiędzy nimi, tworząc płynną fluktuację. Trzy tablice zanikania przechowują kroki zanikania czasu punktów prowadzących (stanów początkowych, przejściowych i końcowych). Gdy punkty prowadzące z czasem zanikają, piksele w ich pobliżu również aktualizują swoje kolory. Po zakończeniu cyklu czasowego właśnie osiągnięty punkt końcowy staje się nowym punktem początkowym. W ten sposób wzór pozostaje gładki w czasie.
- Color Wave [7] - Jest to podobne do poprzednich trybów, ale kolory dla punktów prowadzących są wybierane inaczej. Istnieje odchylenie przypisane do koloru podstawowego, który z czasem zanika wokół koła kolorów.
- Świetliki[8] - Tablica 2D przechowuje lokalizację i kierunek dla 90 wybranych świetlików. Decyduje na każdym kroku, czy świetlik poruszy się w lewo, w prawo, czy wcale. Ich ogólna jasność podąża za cyklem zanikania i zanikania.
- Confetti[9] - Nie możesz tutaj ponownie użyć części świetlika, chociaż wydają się one podobne - dzieje się tak, ponieważ wolisz ogólną stałą jasność, aby najlepiej zobaczyć zmianę koloru. Pomysł jednak nie różni się zbytnio. Udało mi się osiągnąć równomierne oświetlenie, przypisując 1/3 wszystkich iskier konfetti do 3 współokresowych funkcji sinusoidalnych oddzielonych przesunięciem o 1/3 okresu.
- Kometa[10] - bardzo podobna do skanera Adafruita, różnica polega na tym, że kierunek jest teraz generowany losowo za każdym razem i nie zmienia się, występuje niewielka zmiana koloru, gdy piksel się porusza, tworząc bardziej "ognisty" efekt na ogon. Wywołanie ściemniania każdej aktualizacji jest tym, co tworzy zanikanie lub „ogon” wzoru.
- Music Sync[12] - dwa parametry są obliczane na podstawie głośności (napięcie od A0): kolor i długość. Synchronizacja muzyki następnie zanika od koloru centralnego do obliczonego koloru, jednocześnie przechodząc do czerni na danej długości. Środkowy kolor płynnie zanika wokół koła kolorów, dzięki czemu uzyskujesz zarówno efektowne efekty, jak i gładkość, więc nie jest to nieprzyjemne.
Kredyty obrazkowe
cdn.shopify.com/s/files/1/0176/3274/produc…
store-cdn.arduino.cc/usa/catalog/product/c…
cdn.mos.cms.futurecdn.net/aSDvUGkMEbyuB9qo…
images-na.ssl-images-amazon.com/images/I/6…
www.amazon.com/Speaker-GearIT-Meters-Theat…
www.powerstream.com/z/adapter-2-1-to-śruba…
www.amazon.com/Hobbico-HCAR0776-Soldering-…
images-na.ssl-images-amazon.com/images/I/7…
cdn-shop.adafruit.com/970x728/1063-03.jpg
cdn-learn.adafruit.com/assets/assets/000/0…
www.adafruit.com/product/2561
www.adafruit.com/product/2964?length=1
cdn.sparkfun.com//assets/parts/4/6/8/4/102…
www.holidaycoro.com/v/vspfiles/assets/image…
www.circuitspecialists.eu/5-volt-enclosed-s…
d3vs3fai4o12t3.cloudfront.net/media/catalo…
Zalecana:
Synchronizacja ognia, muzyki i świateł: 10 kroków (ze zdjęciami)
Synchronizacja ognia, muzyki i świateł: wszyscy wiemy, że elektronika jest używana do wielu ważnych zadań w szpitalach, szkołach, fabrykach. Dlaczego by się z nimi nie bawić?
Kontroler Bluetooth do paska LED RGB V3 + synchronizacja muzyki + sterowanie oświetleniem otoczenia: 6 kroków (ze zdjęciami)
Kontroler taśmy LED RGB Bluetooth V3 + synchronizacja muzyki + sterowanie oświetleniem otoczenia: Ten projekt wykorzystuje arduino do sterowania taśmą LED RGB za pomocą telefonu przez bluetooth. Możesz zmienić kolor, zsynchronizować światła z muzyką lub sprawić, by automatycznie dostosowywały się do oświetlenia otoczenia
Próba muzyki wizualnej na żywo: 4 kroki
Próba stworzenia wizualnej muzyki na żywo: Witam i zapraszam na moją pierwszą próbę stworzenia wizualnej muzyki na żywo! Nazywam się Wesley Pena i jestem specjalistą od interaktywnej multimediów w College of New Jersey. Ta instrukcja jest częścią finału moich zajęć z interaktywnego programowania muzyki, gdzie
Tanie ramię sterowane smartfonem (+ pozycja zapisywania opcji): 5 kroków
Tanie ramię sterowane smartfonem (+ Option Saving Position): Projekt Napęd ramienia robota sterowanego smartfonem za pomocą urządzenia bluetooth. Bonus trybu: mamy przycisk, który pozwala arduino zapamiętać pozycję. Kiedy tylko chcemy, możemy przejść do tej zapisanej pozycji innym przyciskiem. FRLE PROJET Polecenie
Neopiksele sterowane smartfonem (taśma LED) z aplikacją Blynk przez WiFi: 6 kroków
Neopiksele sterowane smartfonem (taśma LED) z aplikacją Blynk przez WiFi: Stworzyłem ten projekt po tym, jak zainspirowałem się neopikselami sterowanymi smartfonem w domu znajomych, ale zostały kupione w sklepie. Pomyślałem: „jak trudno jest zrobić własne, byłoby też o wiele taniej!”. Oto jak. Uwaga: Zakładam, że jesteś fa