Product Category:WS2812B light one meter 30/60/144 of 30/60/144 lights
Lamp beads Model:5050RGB
IC Part:SK6812/WS2812B
Operating Voltage:5V
Power:30LED/m(90W/M),60LED/m(18W/M),144LED/m(43.2W/M)
Plate width:10MM
Gradation display:256
Lamp beads:30/60/144light/m
IC number:30/60/144 IC/m
Operating temperature:-40℃-80℃
Working life:30KH
Board background color:Whiteboard/Blackboard
Light colors:Full color/controlled by the controller can achieve any effect of ang color
Data transfer rate:800K/s
TytuÅ‚ tego wpisu może być odrobinÄ™ mylÄ…cy, ale za kilka chwil powinienem wszystko wyjaÅ›nić. BÄ™dÄ…c bardzo dokÅ‚adnym, WS2812 jest inteligentnym sterownikiem LED z wbudowanym źródÅ‚em Å›wiatÅ‚a - tak przynajmniej nazywa to producent. Jednak jeÅ›li spojrzymy na to z drugiej strony, to jest nic innego jak dioda RGB 5050 z wbudowanym już sterownikiem WS2811 :) TrochÄ™ zakrÄ™cone prawda? Ale tak wÅ‚aÅ›nie jest.
JakiÅ› czas temu byÅ‚y dostÄ™pne różnego taÅ›my LED ze sterownikiem WS2801. SkÅ‚adaÅ‚y siÄ™ one oddzielnie z diody RGB oraz maÅ‚ego ukÅ‚adu SMD WS8201 peÅ‚niÄ…cego rolÄ™ sterownika. Tak wiÄ™c można Å›miaÅ‚o powiedzieć, że WS2812 jest kontynuacjÄ… tego produktu, jako krok w stronÄ™ miniaturyzacji sterowanego oÅ›wietlenia LED.
OgromnÄ… zaletÄ… tego ukÅ‚adu jest jego zdolność szeregowego Å‚Ä…czenia, a także możliwość sterowania praktycznie dowolnÄ… iloÅ›ciÄ… diod RGB tylko za pomocÄ… pojedynczego pinu cyfrowego mikrokontrolera za poÅ›rednictwem magistrali 1-Wire. Sposób poÅ‚Ä…czenia diody RGB z takim ukÅ‚adem wyglÄ…da nastÄ™pujÄ…co:
Tak więc widzisz już, że WS2812 to tak naprwdę sterownik WS2811 zamknięty w obudowie diody RGB:
Na rynku dostÄ™pna jest niezliczona ilość moduÅ‚ów, taÅ›m, linijek i shieldów wyposażonych w WS2182 - jednak to na co powinieneÅ› zwrócić uwagÄ™, to czy jest to odÅ›wieżona wersja oznaczona literÄ… "B". JeÅ›li nie jest to nigdzie napisane, bez problemu rozpoznasz jÄ… iloÅ›ci "nóżek". Standardowa wersja WS2812 posiada sześć nóżek, natomiast wersja "B" tylko cztery. Odmienna jest również struktura samej diody:
Po lewo WS2812 / Po prawo WS2812B
Dlaczego warto wybrać wersjÄ™ WS2812B? Po pierwsze - mniej lutowania :) Przy iloÅ›ci 100 diod na pewno to docenisz. Ale na poważnie - różnic jest znacznie wiÄ™cej. NajważniejszÄ… z nich jest zabezpieczenie przed odwrotnym podÅ‚Ä…czeniem zasilania diody, gdzie w przypadku standardowej wersji koÅ„czyÅ‚o siÄ™ to upaleniem elementu.
Nie bez znaczenia jest również fakt, że WS2812B sÄ… jaÅ›niejsze i zapewniajÄ… lepszÄ… powtarzalność kolorów - innymi sÅ‚owy, przy wiÄ™kszej iloÅ›ci diod, które Å›wiecÄ… tÄ… samÄ… ustawionÄ… barwÄ…, nie bÄ™dÄ… od siebie odbiegać. Udoskonaleniu ulegÅ‚a również sama struktura diody, którÄ… doskonale widać na zdjÄ™ciach powyżej - sterownik zostaÅ‚ oddzielony i odseparowany od części z diodami skÅ‚adowymi, zapewniajÄ…c chociażby lepsze odprowadzanie ciepÅ‚a, co przeÅ‚oży siÄ™ na dÅ‚uższÄ… żywotność.
ÅÄ…czenie ze sobÄ… WS2812B nie może być już bardziej proste. Wszystkie diody podÅ‚Ä…czamy do zasilania +5V i masy, gdzie dodatkowo równolegle dodajemy kondensator o pojemnoÅ›ci 100nF. Na pin DIN pierwszej diody podajemy sygnaÅ‚ z mikokontrolera, a wyjÅ›cie DOUT Å‚Ä…czymy z wejÅ›ciem DIN kolejnej diody.
To jednak nie wszystko :) Pomimo tego, że schemat aplikacyjny przewiduje tylko kondensator na zasilaniu, to bezwzglÄ™dnie należy pamiÄ™tać o kilku rzeczach, które pozwolÄ… uniknąć Ci sytuacji usmażenia pierwszej diody w Å‚aÅ„cuchu, gdzie nie pozostanie nic innego jak jej wymiana lub skrócenie taÅ›my. Dioda może być zasilana napiÄ™ciem z dość szerokiego przedziaÅ‚u 3.5 ÷ 5.3V, to należy pamiÄ™tać, że wejÅ›cie sterujÄ…ce DIN jest już maÅ‚o toleranycjne - wtrzyma tylko 0.5V wiÄ™cej niż zasilanie. Dlatego zadbać należy o kilka spraw:
Te kilka punktów sprawi, że bÄ™dziesz spaÅ‚ spokojnie i unikniesz frustracji np. przy koniecznoÅ›ci wyciÄ™cia diody z taÅ›my i przelutowania wtyczek - tym bardziej, jeÅ›li taÅ›ma jest w wodoszczelnej otulinie.
SzeorkÄ… ofertÄ™ z wszelkimi moduÅ‚ami i taÅ›mami wyposażonymi w diody WS2812/B znajdziecie w sklepie elty.pl, gdzie ceny sÄ… bardzo atrakcyjne. Poniżej przedstawiÄ™ tylko niektóre z nich, które osobiÅ›cie posiadam:
Wodoszczelna taśma 30 diod / 1 metr
Matryca 4 x 8 x 8
Shield dla Arduino
Diody SMD 5050
W sklepie Botland dostaniemy również moduÅ‚y z pojedynczÄ… diodÄ… lub w formie pierÅ›cieni, a także w "tradycyjnej" formie 5mm diody:
Aby nasze diody ożyły, polecam bardzo dobrą bibliotekę od Adafruit - NeoPixel Library, gdzie wystarczą nam praktycznie trzy funkcje:
Nasz program będzie wyglądał następująco:
#include
#define PIN 6
#define LICZBADIOD 16
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(LICZBADIOD, PIN, NEO_GRB + NEO_KHZ800);
void setup()
{
pixels.begin(); // Inicjalizacja biblioteki
}
void loop()
{
for(int i=0; i
{
pixels.setPixelColor(i, 255, 0, 0); // Dioda "i" oraz skladowe R=255 G=0 B=0
pixels.show(); // Wysylamy dane do lancucha
delay(500); // Opoznienie 500ms przed zaswieceniem kolejnej diody
}
}
W funkcji setPixelColor() oprócz numeru diody i skÅ‚adowych RGB, możemy podać również podać wartość koloru za zwracany przez funkcjÄ™ Color(). DziÄ™ki temu możemy przechować wartość koloru w jednej zmiennej uint32.
pixels.setPixelColor(i, pixels.Color(255, 0, 0));
Biblioteka NeoPixels oferuje jeszcze szereg innych przydatnych funkcji: