Skocz do zawartości

Podłączenie 19 diod WS2812B do Arduino


Pomocna odpowiedź

Napisano

Witam

Połączyłem szeregowo 19 diod WS2812B (dokładnie tych).

Następnym krokiem będzie podłączenie ich do Arduino (UNO R3) w następujący sposób:

a) pomiędzy zasilaczem a zestawem podłączę kondensator 1000 uF

b) pomiędzy arduino a wejściem sygnałowym w diodach podłączę rezystor 400 Ohm

c) do zestawu podłączony też będzie fotorezystor

Zasilacz jakiego użyję dostarcza 5V (jak mniemam, zasilacz 12V - 2.5A to za dużo, czy tak?).

Sugerowałem się

materiałem.

Moje pytanie: czy całość jest należycie przygotowana?

Pytam, ponieważ diody przygotowałem w dość zawiłym schemacie i nie chciałbym, żeby coś (głównie diody) uległo tutaj uszkodzeniu, ponieważ wymiana byłaby dosyć problematyczna.

tribolonutus, teoretycznie mogłoby to działać, jeśli zasilisz całość z 5V (i nie podłączysz innego zasilania do Arduino), ale wszystko zależy od zasilacza. Jeśli nie jest zbyt dobry, to będziesz miał zakłócenia. Pobór prądu będzie zależny od tego jaki efekt będzie wyświetlany na diodach, więc ciężko przewidzieć jak się całość zachowa. Najlepiej byłoby zasilić Arduino np. z zasilacza 7-9V, a oprócz tego stabilizować osobno 5V tylko dla LEDów. Mniej więcej tak jak było to opisane w kursie Arduino z serwomechanizmem: Kurs Arduino - #5 - PWM, serwomechanizmy, biblioteki. Tylko oczywiście zamiast baterii 9V podłączyłbyś wtedy zasilacz.

Dzięki za odpowiedź!

Podłączyłem całość w następujący sposób:

Plus zasilacza 5V1A do pikseli, Minus do uziemienia Arduino.

Samo Arduino bierze swój prąd z zasilacza 12V 2.5A.

Mały problem powstał, gdy odłączałem całość od prądu - przypadkowo dotknąłem nóżek zasilacza 5V1A, kopnął mnie wtedy prąd. Nie było to mocne, jednak dosyć nieprzyjemne. Martwię się, że coś jednak zrobiłem źle i może np. usmażyć się Arduino (albo co gorsza, piksele - ich montaż i lutowanie w konstelacji było dosyć czasochłonne...) 🙁

tribolonutus, a dlaczego korzystasz teraz z dwóch zasilaczy? Nie lepiej dorobić jeden stabilizator i zasilać z niego diody? Wystarczy, że będziesz miał wtedy jeden zasilacz - ten 12V.

Jeśli martwisz się możliwością uszkodzenia led, zastosuj dodatkową jako bufor między Arduino a pierwszym pikselem i umieść ją tak, aby można było łatwo wymienić. Akurat te ledy stosunkowo łatwo jest uszkodzić (psuje się z reguły tylko pierwsza), a kosztem 1 PLN śpisz spokojnie...

Tak przy okazji: kondensator powinien być jak najbliżej pierwszej ledy, a nie kilometr dalej przy zasilaczu.

"przypadkowo dotknąłem nóżek zasilacza 5V1A"

Których nóżek? Wyjściowych czy wtyczki sieciowej? Typowy zasilacz ma wewnątrz kondensatory filtrujące, które ładują się do napięcia sieci. Normy przewidują jak szybko powinny się one rozładowywać by nie "kopać" ludzi dotykających bolców natychmiast po wyjęciu z gniazdka, ale producenci oszczędzają jak mogą i bardzo często nikt tego nie sprawdza. Dlatego może się zdarzyć, że możesz oberwać od wejścia zasilacza, szczególnie tego gorszej jakości (chińska wersja oszczędnościowa: dajemy tylko to co niezbędne by jakoś działał i nie wybuchł w ciągu pierwszych 5 minut pracy, normy? jakie normy?). Nie niesie to automatycznie żadnego zagrożenia dla Twoich diodek, oczywiście jeśli nie weźmiemy pod uwagę jakości: jeśli to jest skopane, to reszta może być nawet bardziej. To jednak już tylko przypuszczenia.

Natomiast jeśli oberwałeś prądem od wyjścia to przyczyn może być wiele. Najpoważniejsza (oprócz uszkodzenia zasilacza) to ta, że nie przestrzegasz zaleceń ESD przy pracy z półprzewodnikami. Np. masz suchy pokój z włączonym grzejnikiem, plastikową wykładzinę lub dywan i gumowe buty lub kapcie na plastiku. Każda z tych rzeczy może załatwić drogi element w pojedynkę, a razem stanowią mieszankę w zasadzie zapewniającą ciągłe problemy i awarie. Zastanów się czy chodząc po pokoju, wracając do biurka lub tylko poruszając się na krześle nie odczuwasz lekkich ukłuć przy dotykaniu do metalowej lampy, grzejnika czy obudowy komputera. Jeśli to się zdarza, zacznij od poczytania od ESD czyli wyładowaniach elektrostatycznych i ochronie przed nimi. To podstępny wróg - im milej w domku czy na stanowisku pracy tym jest groźniejszy. W ciągu 10us może zniszczyć LEDa przy pierwszym dotknięciu go, zanim jeszcze podłączysz jakikolwiek zasilacz.

Opornik szeregowy między procesorem a diodami jest elementem tłumiącym przekłamania sygnału (np. niedopasowanie wyjścia portu do impedancji kabelka) ale także i zakłócenia - również ESD. Moim zdaniem bufor byłby armatą na wróbla, bo natychmiast dochodzą problemy z miejscem jego umieszczenia (przy procesorze czy przy diodach), zasilaniem (jak pociągnięty plus i masa i gdzie dać mu obowiązkowy kondensator 100nF), odkłócaniem, dopasowaniem do linii transmisyjnej (kolejny opornik, może równolegle przy diodach?) itp - chyba więcej problemów niż korzyści. Takie rzeczy można proponować gdy ktoś robi własne PCB - wtedy kilka elementów więcej nie robi a można je dobrze posadzić, umasić, zasilić itp. Tutaj, przy konstrukcji z drutów każda dodatkowa rzecz to kłopot.

Kondensator 1000uF praktycznie nie istnieje w zakresie częstotliwości zakłóceń których spodziewamy się na linii zasilania diodek. To nie zasilacz 50Hz, żeby tysiące uF coś dawały. Listwa z diodkami ma już swoje 100nF pomiędzy strukturami (ma? widzisz to?) i to jest najważniejsze. Dodanie tuż przy listwie czegoś w granicach 22-47uF/25V może w czymś pomóc (jeśli będą problemy), ale to i tak dmuchanie na zimne. Gdybyś w tej aplikacji musiał wspierać zasilacz zewnętrznym klocem 1000uF to od razu możesz ten zasilacz wywalić (do odpowiednio oznaczonego pojemnika, oczywiście).

Te diody akurat mają kondensatorek na płytce.

Dioda buforowa nie musi świecić, albo wykorzystujesz ją w charakterze jakiejś kontrolki. Co do zasilania - musi być zasilana razem z resztą: pamiętaj, że te diody nie tolerują napięcia na wejściu wyższego niż 0.5V + Vcc, czyli w teorii padnięcie zasilania led może pierwszą uszkodzić.

Dziękuję za odpowiedzi! Dostosuję się do nich.

Pojawił się ciekawy problem: pierwsza dioda w konstelacji, gdy nie zostaje wywołana (zapalona), zaczyna świecić na delikatny zielony kolor. Mogę ją wciąż kontrolować i świeci bez problemu na wszystkie barwy (jakie w stanie są wyświetlić piksele za złotówkę...), jednak gdy ustawiam na wszystkich elementach kolory 0, 0, 0, ta pierwsza zaczyna świecić po swojemu. Bardzo mi to przeszkadza.

Czy to jest to, o czym pisał ethanak?

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...