SantyagoSantyago
Avatar

Witaj!
Blog archiwalny. Już niebawem nowy serwis!

YouTube RSS Facebook GitHub

Arduino poradnik

Wstęp

Teoria

Biblioteki

Komponenty

Czujniki i sensory

Rozwiązania i algorytmy

Narzędzia

Mikrokontrolery i Arduino IDE

Arduino i klony

Poradniki wideo

Reklama na Blogu

Najnowsze poradniki

Ostatnie komentarze

Ostatnie fotografie

polskie-gorypolskie-gorypolskie-gorypolskie-gorypolskie-gorypolskie-gorypolskie-gorypolskie-gorypolskie-gorywieliczka-szyb-danilowicza

Diody LED ze sterownikem WS2811/WS2812

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.

Czym zatem jest sterownik WS2811 i co nam daje?

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:

Dwie wersje - WS2812 i WS2812B

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ść.

Sposób łączenia WS2812B

Łą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:

  • Nie przekraczaj napięcia zasilania powyżej 5V,
  • Dodaj kondensator elektrolityczny o pojemności od 100µF do 1000µF (np.: 6.3V lub wyższy) przy zasilaniu pierwszej diody,
  • Dodaj rezystor o wartości od 300Ω do 1kΩ pomiędzy mikrokontrolerem, a pierwszym pinem DIN. Rezystor ten umieść jak najbliżej diody,
  • Postaraj się możliwie skrócić odległość pomiędzy mikrokontrolerem, a pierwszą diodą,
  • Nie podłączaj diod przy włączonym zasilaniu. Jeśli już musisz, rób to w kolejności: masa, zasilanie, linia sterująca, a odłączaj w odwrotnej kolejności
  • Jeśli diody zasilasz z oddzielnego źródła zasilania, najpierw doprowadź zasilanie do diod, potem do mikrokontrolera,
  • Pamiętaj o zabezpieczeniu antystatycznym :) swetry, polary i inne ubiory łatwo gromadzące ładunek nie są wskazane

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.

Gotowe moduły i taśmy z WS2812B

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:

Program sterujący

Aby nasze diody ożyły, polecam bardzo dobrą bibliotekę od Adafruit - NeoPixel Library, gdzie wystarczą nam praktycznie trzy funkcje:

  • begin() - do inicjalizacji biblioteki NeoPixel,
  • setPixelColor() - do ustawienia koloru świecenia wybranej diody w łańcuchu,
  • show() - do wysłania danych do naszego łańcucha z diodami

Nasz program będzie wyglądał następująco:

  1. #include <Adafruit_NeoPixel.h>
  2.  
  3. #define PIN 6
  4. #define LICZBADIOD 16
  5.  
  6. Adafruit_NeoPixel pixels = Adafruit_NeoPixel(LICZBADIOD, PIN, NEO_GRB + NEO_KHZ800);
  7.  
  8. void setup()
  9. {
  10.   pixels.begin(); // Inicjalizacja biblioteki
  11. }
  12.  
  13. void loop()
  14. {
  15.   for(int i=0; i<LICZBADIOD; i++)
  16.   {
  17.     pixels.setPixelColor(i, 255, 0, 0); // Dioda "i" oraz skladowe R=255 G=0 B=0
  18.     pixels.show(); // Wysylamy dane do lancucha
  19.     delay(500); // Opoznienie 500ms przed zaswieceniem kolejnej diody
  20.   }
  21. }

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.

  1. pixels.setPixelColor(i, pixels.Color(255, 0, 0));

Biblioteka NeoPixels oferuje jeszcze szereg innych przydatnych funkcji:

  • setPin() - zmiana pinu sterującego,
  • setBrightness() - ustawienie jasności świecenia,
  • clear() - wygaszenie całego łańcucha,
  • getPixels() - pobranie wkaznika do danych, po 3 bajty dla każdej diody,
  • getBrightness() - pobranie ustawionej jasności świecenia,
  • numPixels() - pobranie ilości diod w łańcuchu,
  • getPixelColor() - pobranie koloru wybranej diody,
  • canShow() - zwraca wartość true, jesli mozliwe jest wyslanie danych

Uruchomienie

Materiał filmowy

Reklama

Komentarze Komentarze
Avatar 1
Sławek Windows 7 / Mozilla Firefox 35.0
04 February 2015 - 22:32 Brak informacji

Świetna sprawa te diody.Własnie zobaczyłem i zrobiłem na wzór innej lampkę na tych diodach.Jedynie to sam wlutowywałem 10szt. diod na płytkę.
link: .be

Avatar 1
Kamil Windows 7 / Safari 537.36
11 February 2015 - 18:50 Warszawa

Witaj :)
a czy jednym kodem mozna sterować diodami ws2812 i ws2812b ?

Avatar 2
Korneliusz Linux x86_64 / Mozilla Firefox 34.0
11 February 2015 - 22:43 Bytom

Pewnie można, transmisja jest ta sama, prędkości też te same (jeśli chcesz w szeregu).

Avatar 1
Sławek Windows 7 / Mozilla Firefox 35.0
13 February 2015 - 22:02 Brak informacji

Nie tylko jednym kodem,ale jednym przewodem możesz sterować każdą diodę z osobna bez względu na ilość w szeregu.
Zasilanie i przewód sterujący.

Avatar 1
Multimen Android 5.0 / Safari 537.36
01 February 2017 - 19:39 Brak informacji

Roznica jest w napieciu zasilania z literka B sa na 5V

Avatar 1
Kamil Windows 7 / Safari 537.36
23 March 2015 - 21:22 Warszawa

Witaj :)
wiesz moze czy ten kod uda się uruchomić na ws2812B ?
http://www.instructables.com/id/A-Multicolor-LED-Lamp/

szukam porównuję, i jeśli korzysta z tej samej biblioteki to raczej powinno się udać. prawda ?

Avatar 1
Efekt Fire w oknie zasłoniętym żaluzjami Windows 7 / Mozilla Firefox 36.0
31 March 2015 - 22:01 Brak informacji

Pasek 1m. led 2812B pionowo ustawiony z boku okna za żaluzjami.
Słaby film ,gdyż aparat ze starego telefonu.

Avatar 2
Korneliusz Linux x86_64 / Mozilla Firefox 34.0
01 April 2015 - 20:44 Bytom

Bardzo ładnie ;) gratuluję efektu!

Avatar 1
Mariusz M. Windows / Safari 537.36
14 May 2015 - 15:42 Brak informacji

Świetna robota!
Gratuluję kreatywności.
Skąd wziąłeś program (bibliotekę), który działa na Arduino z shield\'em oraz ten imitujący ogień?

Avatar 1
Sławek Windows 7 / Mozilla Firefox 38.0
21 May 2015 - 18:09 Brak informacji

#include

To jest biblioteka i program [fire] w sumie już starszy, ale lepszy niż:

#include

Właśnie robię Big Lampę z tego paska metrowego i mam już napisany program na ponad 13minut efektów.Lampa ma 1.20cm i 60szt.kostek plexi.
Programować nie umiem ,ale z nudów się trochę nauczyłem dla zrobienia kilku urządzeń i tych lamp.

Avatar 1
Sławek Windows 7 / Mozilla Firefox 38.0
21 May 2015 - 18:17 Brak informacji

Podaje bibliotekę ,gdyż poprzednio nie weszła.Nie pamiętam teraz, gdzie można ja znaleźć i ten program.Trzeba wpisać i szukać w internecie:

include FastLED.h

Adafruit jest słabszy ,jeżeli chodzi o efekt Fire.

Avatar 1
Sławek Windows 7 / Mozilla Firefox 39.0
13 July 2015 - 09:29 Brak informacji

Panie Korneliuszu chcę zapytać, gdzie i jak należy wpisać polecenie zmiany pinu sterującego setPin() na podstawie np: wyżej napisanego programu.Chcę np: sterować dwa komplety WS2812B z jednego programu tak ,aby jeden wykonywał program ,a następnie drugi wąż lub równocześnie.

Tam mamy #define PIN 6 ,więc dodamy #define PIN 5 ,czyli sterowanie jest na 2 węże równocześnie ,ale jak zrobić ,aby najpierw Pin 6 był sterowany ,a później to samo lub inne polecenie wykonał PIN 5.

Avatar 2
Korneliusz Linux Ubuntu / Mozilla Firefox 30.0
13 July 2015 - 13:51 Katowice

Trzeba wykorzystać dwie instancje

Adafruit_NeoPixel pixels1 = Adafruit_NeoPixel(LICZBADIOD1, PIN1, NEO_GRB + NEO_KHZ800);
Adafruit_NeoPixel pixels2 = Adafruit_NeoPixel(LICZBADIOD2, PIN2, NEO_GRB + NEO_KHZ800);

i analogicznie wywoływać np.: pixels1.begin() / pixels2.begin() i dla reszty funkcji to samo

Avatar 1
Sławek Windows 7 / Mozilla Firefox 39.0
13 July 2015 - 18:22 Brak informacji

Dziękuje za podpowiedź na razie nie mam na czym sprawdzić.
Filmu do Big lampy niestety nie mogę zrobić ,aby pokazać efekt pracy.
Lampa ma 120cm.wysokości 60 płytek plexi na diodach WS2812B[wąż].
Problem jest z oświetleniem,gdyż muszę daleko oddalić się od lampy aby ująć całą i wtedy jest zbyt mało światła do efektownego nagrania.Tu potrzebna dobra kamera,a światło ledów dałem na ok. 20% mocy i tak na zewnątrz widać jak mocną latarnię.Niestety telefon kamerka mam stary zbyt słaby.Efekty mam też dynamiczne na ponad 10\' np: biegnąca Flaga Polska w różnych kierunkach.

Właśnie myślałem na Cube 3D 8x8x8 ,ale wykorzystać te ledy :
http://allegro.pl/dioda-rgb-apa106-f5-jak-ws2812-neopixel-arduino-i5500394202.html

oraz Arduino Mega ,gdyż jest tam w sumie 69 wyjść i wtedy postawić 64 słupki ledów po 8szt.w pionie.Nie trzeba by było tych układów sterujących co poniżej link do zwykłych RGB:
http://www.instructables.com/id/8x8x8-RGB-LED-Cube-1/?ALLSTEPS

Jak Pan myśli, czy jest to możliwe? Na razie taki wpadł mi pomysł bo na tych WS mam gotowe programy[na zwykłych RGB zbyt dużo pracy z układami i na WS bardziej rozumiem kod i umiem coś tam sam zrobić lub zmienić] tylko trochę wprowadzić efektów w boki lewo i prawo,gdyż do góry i w dół te węże WS2812B pracują.

Avatar 1
Mateusz Mac OS X / Safari 600.1.4
20 July 2015 - 16:03 Brak informacji

Super poradnik :) może się ktoś orientuje jak spiąć diody 6 pinowe
Posiada ona dodatkowo pin VCC nie mam pojęcia po co.

Avatar 1
Sławek Windows 7 / Mozilla Firefox 39.0
03 August 2015 - 00:50 Brak informacji

Lampa na pasku led WS2812B 60 led.

-upload_owner

Avatar 1
Problem panel 60x5 Windows 7 / Mozilla Firefox 39.0
07 August 2015 - 13:34 Brak informacji

Witam, mam panel 60x5 zrobiony z 5m paska z led ws2812b i!
Chciał bym wyświetlić na tym napisy, ale kożystając z biblioteki :
#include
#include
#include

ucina mi literki gdyż powinno być minimum 7-8 lini.
Czy macie jakieś rozwiązanie inne niż dokupienie dodatkowych lini? Mniejsza czcionka itp?
Napisy mogą się wyświetlać w poziomie lub w pionie, bez różnicy.
aktualnie robię napisy wyświetlając pojedyńcze piksele ale jest do żenujące przy pierwszej lepszej zmianie napisu...(jedna litera to min. 15min klepania..)

Avatar 1
Ryszard Windows / Safari 537.36
10 August 2015 - 23:10 Brak informacji

Czy jest do wykonania w warunkach domowych taka kurtyna ? powiedzmy 20X20 rurek, w sumie 400 rurek no i w każdej z 20-30 diod. 12 tys diod razy 4 luty na każdej diodzie 48 tys lutów.

Avatar 1
Sławek Windows 7 / Mozilla Firefox 39.0
12 August 2015 - 11:02 Brak informacji

Wszystko jest do wykonania.Kasa robi swoje.Nic za darmo nie ma.
Takimi większymi projektami ręcznie ciężko zrobic program.Zbyt czasochłonne i wiedza oraz wyobraźnia potrzebna.

Tutaj z pomocą idą sterowniki fabryczne działające z programem do obsługi i to wszystko co sobie wymyślisz w programie na ekranie zapisujesz na kartę SD i już masz.Na przykład na matrycy WS2812B twoje zdjęcie i co sobie zapragniesz dowolne efekty.Podstawa to kasa ,bo tanie to nie jest nawet kupując w Chinach.Przykład działania sterowników:

Avatar 1
Sławek Windows 7 / Mozilla Firefox 39.0
11 August 2015 - 21:28 Brak informacji

Ciekawy efekt plonącej wieży.

.be

Avatar 1
Mateusz Windows 7 / Mozilla Firefox 39.0
13 August 2015 - 15:17 Warszawa

A jak zgrać projekt z jinx do arduino aby nie trzeba było na bierzącu wysyłać sygnału z komputera?

Avatar 1
Zdzisiek Windows 7 / Safari 537.36
20 October 2015 - 23:08 Warszawa

A jaki prąd pobiera jedna dioda ze sterownikiem ws2812B, w jaki sposób to określić/wyliczyć? W datasheecie nie ma, jest w datasheecie ws2812 że pobór jest 18mA.

Dziękuję za odpowiedź.

Avatar 2
Korneliusz Linux Ubuntu / Mozilla Firefox 41.0
24 October 2015 - 02:38 Bytom

To zależy :) zakładając że kanał w maksymalnej jasności pobiera 20mA, to zapalając dany piksel na biały kolor wyjdzie x3 = 60mA. 60mA * ilość diod.

Trzeba jednak założyć maksymalny próg, pomimo tego, gdy nie planujemy świecić wszystkimi jednocześnie na biało

Avatar 1
B3ta30k Android 4.4 / Safari 534.30
31 December 2015 - 13:45 Brak informacji

Witam

Takie pytanie jak by się wziąć za budowę układy który działa by podobnie ale pod dźwięk, bo powiem szczerze ogrania em trochę temat ale raczej spalił na panewce.
Dziękuję za jakiekolwiek info.

Avatar 1
zen Mac OS X / Safari 537.36
03 February 2016 - 23:03 Nowy Tomyśl

Ciekawy artykuł, ale "po lewo" i "po prawo" to się nie godzi ;)

Avatar 1
Kuba Windows / Mozilla Firefox 43.0
07 February 2016 - 06:29 Brak informacji

Witam serdecznie.
Zakupilem niedawno arduino nano ( a raczej jego klon ) oraz diody w tradycyjnej formie 8mm. chcę zbudować coś takiego jak tu . Jednak na początek w celu nauki połączyłem jedynie pięć takich diodek, po włączeniu zasilania wszystko prawidłowoświeci jednostajnym kolorem niebieskim, co niby ma oznaczać ze podłączenie jest prawidłowe. Problemy zaczynają się na etapie jakiego kolwiek zaprogramowania tego wszystkiego, nic z tego nie rozumiem, jak się do tego zabrać ? często mi wyskakuję błąd kopiowania , kompilacji. jak ożywić moje diody ???

Avatar 1
gro Windows 7 / Safari 537.36
10 April 2016 - 12:13 Brak informacji

Polaryzacja. pewnie już sobie z tym poradziłeś, ale być może ktoś nowy będzie czytać wątek. Prosta sprawa - obróć +5V i GND na wejściu i od razu zacznie działać jak trzeba

Avatar 1
Stef Mac OS X / Safari 537.86.4
10 April 2016 - 21:54 Warszawa

Witam. Mam problem, posiadam diody APA106 i przy starcie zanim zacznie dzialać program na arduino wszystkie swiaca na niebiesko bardzo jasno, dopiero po sekundzie, dwoch, diody gasna gdy w kodzie wywalana zostanie komenda pixels.begin(). czy mozna cos z tym zrobic?

Avatar 1
art Mac OS X / Safari 601.1.46
08 May 2016 - 15:03 Poznań

A jak radzicie sobie z zasilaniem - taki 5m pasek to 10A - 50W.. i przy 5V prądy spore są.. jakieś pomysły?

Avatar 1
Xennon Windows XP / Mozilla Firefox 45.0
21 May 2016 - 14:27 Brak informacji

No właśnie, również jestem ciekaw z racji tego, że sam potrzebuję zasilić prawie 60m diód (4500szt) WS2812B, i w sumie nie wiem jak się za to zabrać, a do tego sterowanie sam arduino pewnie sobie z tym nie poradzi.

Avatar 1
DJ First Aid Mac OS X / Safari 601.7.7
18 August 2016 - 19:35 Brak informacji

Witam,
w zależności od fizycznej konfiguracji i budowy punktów świetlnych ( paski led, ledy osobne) podzielić na sekcje, paski zasilić w kilku miejscach aby poradzić sobie ze spadkami napięć na odcinkach, w przypadku kilku zasilaczy wszystkie obwody obwody połączyć wraz ze sterownikiem wspólnym minusem ( powinno to wyeliminować zakłócenie). NIE ZASILAĆ 1-go OBWODU 2-ma ZASILACZAMI !!!

Avatar 1
DJ First Aid Mac OS X / Safari 601.7.7
18 August 2016 - 19:39 Brak informacji

Witam,
Pytanie programowe - kodowanie.
Jak napisać kod:
Aby po przyciśnięciu (impuls) start programu nr 1,
po kolejnym naciśnięciu ( impuls) start program 2?
Ktoś podpowie.
Sterownik - Andurino Nano
Led WS2812B szt 30 - 144

Avatar 1
deny Windows 7 / Safari 537.36
01 September 2016 - 14:07 Brak informacji

Witam,
Mam problem i nie wiem czy mój "neoring" nadaje się do śmieci.

Po podłączeniu świeci tylko jedna, pierwsza dioda, reszta nie działa.
Choć przy jednym z podłączeń zewnętrznego zasilania zaświeciły się wszystkie na raz.

Co zrobić?

Avatar 2
Korneliusz Linux Ubuntu / Mozilla Firefox 49.0
23 September 2016 - 19:55 Bytom

Prawdopodobnie padła druga dioda. Możesz to sprawdzić poprzez doprowadzenia wyjścia Dout pierszej diody na Din trzeciej

Avatar 1
Luki Android 5.1 / Safari 537.36
02 October 2016 - 18:10 Jasło

Witam mam arduino uno i czy zasili pasek o długości 50cm na 30diod na metr ?

Avatar 2
Korneliusz Linux Ubuntu / Mozilla Firefox 49.0
02 October 2016 - 22:10 Bytom

Jedna dioda może maksymalnie pobrać 60mA + 18mA = 78mA. Jeśli pomnożysz to przez 15, wyjdzie Ci 1.17A. To oczywiście, jeśli zapalisz wszystkie diody na biało.

Zalecane obciążenia linii 5V w Arduino UNO to

~450mA przy zasilaniu z USB
~650mA przy zasilaniu z wtyczki

Avatar 1
Rothank Windows / Mozilla Firefox 49.0
14 November 2016 - 10:27 Warszawa

~450mA przy zasilaniu z USB
~650mA przy zasilaniu z wtyczki

Kompletnie się na tym nie znam, jednak te zalecane obciążenia wydają się bardzo niskie. Mam więc pytanie: jak (o ile to możliwe), zasilić pasek 60 diod / 1 metr?

Avatar 1
YyyBrzuszek Windows / Safari 537.36
16 October 2016 - 17:29 Brak informacji

Witam szukam czegoś co pomoże mi sterować Led\'ami z pętli switch ale zawsze mam tan sam problem że nie mogę przerwać pętli do puki delay(); nie doleci do końca jak to zmienić. Wiem że muszę użyć millis() ale nie wiem jak dodać aby ledy zachowały swój wygląd pętli.

Avatar 1
expertup Windows / Mozilla Firefox 49.0
04 November 2016 - 23:59 Brak informacji

Witam,

nie rozumiem jednej rzeczy, jak dam:

strip.setPixelColor(0, strip.Color(255,255,255));

to dioda nie zapala się, a jak dam:

strip.setPixelColor(0, strip.Color(255,254,253));
to \'świeci\' na biało, z czego to wynika? Mam Arduino NANO i WS2812B? Zasilanie? Jakoś mało prawdopodobne.

Avatar 1
noname Windows 7 / Safari 537.36
12 January 2017 - 22:46 Suwałki

Które Arduino wybrać aby zasilić pierscień 24 diody WS2812B?

Avatar 1
Przemek Windows 7 / Safari 537.36
12 May 2017 - 14:36 Brak informacji

Witam serdecznie,

Jaki jest najmnieszy kontroler, ktory jest w stanie sterowac max 16 diodami WS1812B? Chce zrobic micro sterownik do LEDow do modelu latajacego. Czy biblioteki Adafruit_NeoPixel uruchomia sie na procesorach Attiny?

Pozdrawiam,
Przemek

Avatar 1
Grzegorz Windows / Mozilla Firefox 53.0
02 June 2017 - 19:54 Warszawa

Hej, ja zrobiłem tasiemkę na czapkę aby w czasie biegów nocnych trochę urozmaicić otoczenie :). Projekt na attiny 841 ale na wszystkie, które działają na 8 MHz powinno to działać. Tutaj masz link do projektu na atmel studio 7.0. Samo miganie jest mojego projektu a obsługa tasiemki ściągnięta z neta ale nie pamięta skąd. U mnie ta tasiemka była przyklejona na czapkę nad daszkiem a bateria w postaci 3 paluszków AAA w pojemniku przymocowana daszku pod spodem. Efekt super. Pozdrawiam
https://drive.google.com/open?id=0B6f8e2A-7S2KM09adHczdW1pR2s

Avatar 1
Zbyszek Windows / Safari 537.36
30 August 2017 - 12:37 Warszawa

Panie Jarzębski,

Mam pytanie odnoście zdalnego sterowania takimi diodami LED.
Ostatnio skonstruowałem taką matrycę LED o wielkości 175 cm na 100 cm, dokupiłem do tego sterownik T 300-k (normalny mikrokontroler nie dałby rady obsługiwać tyle diod). I wszystko działa jak należy, podłączam sterownik do komputera i steruje diodami przez program LedEdit.
Chciałbym jednak zdalnie sterować taką matrycą, czy miałby Pan pomysł jak to rozwiązać?
Z góry dziękuje za odpowiedź,
Pozdrawiam,
Zbyszek

Avatar 1
Piotr Windows / Safari 537.36
25 September 2017 - 19:10 Warszawa

Witam nie znam się na tym aż tak dobrze i chciałem zapytać czy przy zasilaniu 5m takiej taśmy led opornik(rezystor) 300 Ω wystarczy jeżeli tak to będzie on miał oznaczenia 300Ω 0,25w ?

Avatar 1
Irek Leniwy Windows / Safari 537.36
29 September 2017 - 17:46 Brak informacji

Witam panie Korneliuszu.
Czy mógłby pan nagrac filmik o sterowaniu tymi diodami ws2811, ale w bardziej rozbudowany sposób? Tzn. np. jak podłączyc do niego przyciski aby zmieniały one po naciśnięciu program z efektem swiecenia na nastepny efekt... Oraz jakie efekty mozna taką tasmą wykonac.

Avatar 1
Jarken Windows 7 / Safari 537.36
22 October 2017 - 12:37 Brak informacji

Witam,
mam dość duży problem z tymi diodami. Użyłem WS2812B w wersji 5mm, czyli tak zwanych PL9823. Zasada sterowania oczywiście ta sama. Zbudowałem urządzenie, zadbałem o filtrowanie zasilania, o rezystor przy pierwszej diodzie jak i kondensator. Użyłem również kondensatorów 100nF przy każdej jednej. Łącznie jest ich 14. Problem polega na tym, że raz na jakiś czas, nie z powodu programowych zaczyna im "odwalać". Świecą, jak mi się wydaje przypadkowo szybko pulsując. Czy ktoś miał już podobny problem?

Avatar 1
Demon Windows / Safari 537.36
23 February 2018 - 17:28 Brak informacji

Też mam taki problem, coś jest nie tak z przesyłem danych, bo jak zapale jedna diode to po jakimś czasie diody "wariują" za chwile się znowu swieci tylko ta jedna moja dioda i jak odłączę kabel od danych to nie ma żadnych "odchyleń" :/

Avatar 1
Jack Windows / Safari 537.36
19 April 2018 - 21:36 Ostrów Wielkopolski

Panowie, a gdybym chciał zrobić sterowanie przez bluetooth tzn przykładowo z laptopa wysyłam sygnał do odbiornika bluetooth który przekazuje sygnał do mikrokontrolera (jaki polecacie?) i uruchamia ledy.

Avatar 1
Piotr Windows / Safari 537.36
14 October 2018 - 21:56 Warszawa

Czy mogę założyć kondensator 100uf 50V ?

Avatar 1
ff Windows / Safari 537.36
20 November 2018 - 08:41 Brak informacji

Chcę zbudować baner reklamowy i znalazłem takie pojedyncze diody https://elty.pl/pl/p/PCB-z-WS2812-10sztuk/767
Polutuję je w kształt loga firmy, dla której będzie ten baner, ale nie wiem wszystkiego. Czy to są już gotowe moduły, czy coś potrzebuję jeszcze? No i kondensator i rezystor przy pierwszej diodzie jest potrzebny? Zakładam że tak. No i jak z odległościami pomiędzy diodami, jakiego maksimum nie przekraczać? U mnie to będzie nieregularny układ. Wiem, kontroler jak najbliżej pierwszej, ale co dalej? Czy powinienem zachować jakąś regularność pomiędzy diodami, czy to nie ma znaczenia?

Avatar 1
Dawid Linux Ubuntu / Mozilla Firefox 63.0
23 November 2018 - 15:56 Warszawa

Czy jest jakieś ograniczenie co do długości takiej taśmy ledowej (przykładowo wspomniana https://botland.com.pl/pl/paski-led-adresowane/5449-pasek-led-rgb-ws2811-cyfrowy-adresowany-ip65-30-ledm-72wm-12v-5m.html)? Chciałbym na takiej taśmie zrealizować oświetlenie schodów - 15 stopni, każdy po około metr szerokości. Zatem 15 metrów taśmy w odcinkach po 1m połączonych szeregowo przewodami (typowym przewodem oświetleniowym 3x1.5). Między każdym odcinkiem byłyby około 50cm tego przewodu w celu połączenia kolejnych stopni. Zasilacz 12V 150W. To co chcę osiągnąć to różne kolory, płynne gaszenie i zapalnie, zapalnie co drugiej diody w stopniu, zapalanie wybranych stopni. Od strony programistycznej zadanie jest proste. Ale od strony elektrycznej zastanawiam się, co na to spadki napięć dla takich długości i prądów.

Avatar 1
Grzegorz Windows / Mozilla Firefox 64.0
03 February 2019 - 15:46 Rybnik

Zakupiłem diody SK6812. Testując biblioteke Adafruit mam problem z ilością diod. Działa tylko do ilości około 220 diod. Czasami zadziała 225, a czasami mniej. Dając w programie deklaracje wiekszej ilosci diod powoduje ze diody nie reaguja na rozkazy (ani jedna). Program działa więc na pewno nie wina programu. Wg katalogu SK6812 ma krótsze czasy więc to nie powinien być problem. Skrócenie kabla miedzy sterownikiem, a diodami tez nic nie dało. Wydajność zasilania 5V jest wystarczająca. Proszę o podpowiedź czego nie wziąłem pod uwagę?