Skocz do zawartości

Kurs Arduino II - #2 - diody RGB (tradycyjne oraz WS2812)


Komentator

Pomocna odpowiedź

Czy tylko ja mam za krótkie śrubki, by przykręcić płytkę do podstawy z użyciem dystansów? Gdy użyje się dystansu, to długość śrubki nie wystarcza na nakręcenie nakrętki od spodu podstawki. 

IMG_4206.jpg

Edytowano przez ceiem
Link do komentarza
Share on other sites

Witam

Mam taki problem z diodą RGB,  że po wgraniu programu który miał płynnie zmieniać jej barwę tak się nie dzieje. Zamiast tego co jakieś 3 sekundy błyska ona na biało.

#define czerwona 3
#define zielona 5
#define niebieska 6

void setup() {
  pinMode(czerwona, OUTPUT);
  pinMode(zielona, OUTPUT); //Piny diody RGB jako wyjścia
  pinMode(niebieska, OUTPUT);

}

void loop() {
  byte zmiana= 0;

  for (zmiana = 0; zmiana < 255; zmiana++) { //Płynna zmiana kolorów
    digitalWrite(czerwona, 0);
    digitalWrite(zielona, zmiana);
    digitalWrite(niebieska, 255 - zmiana);
    delay(10);  //Krótkie opóźnienie, aby efekt był widoczny dla ludzkiego oka
  }

}

Co robię źle?

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

@Treker

Witam również. Dobrze tu być 😉 

Dołączam zdjęcie. Nie wiem czy mógłbym coś namieszać w tym układzie. Może to wina płytki? Nie jest to Arduino, po pierwszej części kursu stała się podstawą pewnego projektu. Uznałem, że ta również nada się do kontynuowania kursu.101403639_1178113002529934_4083762335053774848_n.thumb.jpg.9e9d069997de899bc8e503e82440e054.jpg

 

Link do komentarza
Share on other sites

digitalWrite(zielona, zmiana);
 

A co to za digitalWrite?

W tym wypadku masz do wyboru tylko dwa stany 1 i 0. 

Jeśli chcesz używać PWM powinieneś napisać tak:

analogWrite(zielona, zmiana);
 

Pozdrawiam

Edytowano przez jas123
  • Pomogłeś! 1
Link do komentarza
Share on other sites

Witam wszystkich czytelników 😃

Po dłuższym czasie mniejszej aktywności z elektroniką w końcu usiadłem na dłużej, żeby pokombinować coś z Arduino, akurat przyszła pora na programowalne RGB...
Chciałem zostawić tu, jak na tą porę, swoją opinię o serii kursów FORBOTA, a także powiedzieć parę słów o mojej przygodzie tą dziedziną nauki.

Ani Arduino, ani programowanie nie są dla mnie żadną nowością. Już w podstawówce uczęszczałem na koło informatyczne, gdzie wprowadzono mnie w pewne tajniki. Problem w tym, że przy pracy z Arduino bardziej skupialiśmy się na nim od strony programowania. Co prawda montowaliśmy różne elementy, od zwykłych LEDów, przez wyświetlacze LCD, aż po miernik odległości (co ciekawe, były to zestawy z nigdzie indziej jak te przygotowane przez FORBOTA i BOTLAND, więc już na pierwszy rzut oka rozpoznałem znajome komponenty), jednak nasz wkład w montaż polegał głównie na zmontowaniu układu na podstawie wydrukowanego rzutu z góry na płytkę stykową i mikrokontroler. Wszystko podane jak na tacy, o "elektrycznej" stronie elektroniki usłyszałem co najwyżej na lekcjach fizyki podczas omawiania prądu stałego. Wiedziałem, że pewne elementy należy podłączyć przez rezystor, a niektórym zapodać kondensator, jednak o celu tych działań nie miałem głębszego pojęcia (poza ogólnym konceptem, że rezystor chroni przed zbyt dużym prądem, a kondensator gromadzi energię).

Kilka lat po skończeniu gimnazjum (w liceum brak styczności z elektroniką) zdecydowałem się wrócić do "korzeni" i zrozumieć to, co wcześniej było nieporuszone. Wtedy pojawił się FORBOT, oferując serię elektroniki, Arduino i wiele innych. Po przekonaniu rodziców od razu zdecydowałem się kupić oba poziomy podstaw elektroniki i Arduino, a także Technikę Cyfrową. W ten sposób chciałem poniekąd zmusić się do zestawów poczuciem, że "jeżeli nie wykorzystam nawet pierwszego, to na co mi było marnować pieniądze na drugi, trzeci i czwarty?". Po kilku odcinkach nie było już takiej potrzeby. otrzymałem to, czego potrzebowałem:

  • Przemyślane kursy, które raz po raz tłumaczyły zastosowania konkretnych komponentów w elektronice, czasami włączając w to nawet ich budowę, czy zasady działania
  • Konsekwentne wprowadzanie coraz bardziej skomplikowanych zagadnień w sposób zrozumiały dla nawet i kompletnego laika, który ma wystarczająco zapału i chęci, żeby rzeczywiście usiąść i nauczyć się czegoś nowego
  • Porady, sztuczki techniczne i zasady przejrzystości oraz optymalizacji projektów (zarówno cable management, jak i wiedza przydatna przy programowaniu)
  • Błyskawiczną pomoc, bazę danych i miłą atmosferę na forum, gdzie czuć się dobrze może zarówno ekspert w swojej dziedzinie, jak i nowicjusz, który zawita tu z pytaniem "dlaczego po podłączeniu LEDów jeden za drugim, od pewnego momentu świecą już dużo ciemniej niż ten pierwszy"

Teraz zamiast zastanawiać się nad tym, czy na pewno użyłem wiersza 6 a nie 7 na płytce stykowej wiem, że nie ma to żadnego znaczenia, dopóki nie ma zwarcia między nóżkami, a w ogóle to równie dobrze mógłbym wszystko zlutować ze sobą na stałe, a płytka nie jest mi wcale potrzebna.

Może jest to dość przerysowany przykład, ale na ten moment nie są mi już groźne schematy ideowe (może z wyjątkiem tych "groźniejszych" 😅), +/- wiem czego będę potrzebować i czego mogę użyć, gdy najdzie mnie ochota złożyć jakiś własny, funkcjonalny projekt, wiem jak zrealizować go od strony "deweloperskiej", a w razie potrzeby wiem gdzie szukać potrzebnych informacji - włączając w to oczywiście artykuły i wpisy na FORBOCIE.

Wkrótce zaczynam studia na kierunku Elektronika i Telekomunikacja, myślę że znalazłem tu genialny suplement do tego, z czym przyjdzie mi się mierzyć, poza tym mam w głowie kilka projektów, które chciałbym zrealizować w najbliższej przyszłości (zarówno elektroniczne, jak i czysto programistyczne, czy inżynierskie), więc jestem otwarty na kontakt z każdym, kto może udzielić mi swojej ekspertyzy, posłużyć radą, czy nawet i czegoś nauczyć.

Zdecydowanie polecam i życzę wszystkim miłego dnia!

PS. Jedyna rzecz, do jakiej się mogę przyczepić to fakt, że w kursach czasami zdarzają się momenty, w których jakaś pomocna / kluczowa funkcja zostaje wprowadzona dopiero po pewnym czasie, albo po segmentach typu "Czy program działa? Nie. Dlaczego? ...", czego idea jest dla mnie zrozumiała, jednak dzisiaj doprowadziło mnie to do stworzenia własnej funkcji, która miałaby zresetować pamięć paska LED i wyłączyć go (LEDy dołączone w zestawie świecą całkiem mocno, a policyjny stroboskop nie pomagał w przyswajaniu artykułu)

void clearLED() { // Simple command to clear all patterns from LED's and turn them off
  int i = 0;

  for (i = 0; i < 8; i++) {
    LEDstripe.setPixelColor(i, LEDstripe.Color(0, 0, 0));
  }
  LEDstripe.show();

Tylko po to, żeby parę linijek po przescrollowaniu strony dowiedzieć się o istnieniu tego bad boya😝

LEDstripe.clear();

 

  • Lubię! 2
Link do komentarza
Share on other sites

@bujo2001 muszę przyznać, że trochę się rozpisałeś 😄 Ale to miło czytać taką wypowiedź, dziękujemy za opinię. Szczególnie spodobał mi się ten podpunkt:

9 godzin temu, bujo2001 napisał:

Błyskawiczną pomoc, bazę danych i miłą atmosferę na forum, gdzie czuć się dobrze może zarówno ekspert w swojej dziedzinie, jak i nowicjusz,

Na forum staramy się, żeby właśnie tak było, także bardzo dziękujemy! 

  • Lubię! 1
Link do komentarza
Share on other sites

Witam!

Bardzo dziękuję za kursy. Kawał świetnej roboty. Miał bym jednak pytanie, odnośnie adresowalnych diod RGB o których dowiedziałem się właśnie z Waszych kursów. Pytanie może trochę nie do końca na temat lecz chyba blisko.  Czy można gdzieś kupić "programowalne diody RGB bez diod", czyli same sterowniki? Moje rozumowanie jest następujące: skoro dioda RGB, to właściwie trzy diody w jednej bańce, to zamiast tych trzech diod można podłączyć trzy transoptory a do nich to już co kto chce. W takim przypadku jeden program - taki jak opisany w trakcie kursu -  mógł by sterować całym zestawem oświetlenia w mieszkaniu (i nie tylko).

Czy może są gdzieś do nabycia takie gotowe układy? Próbowałem zapytać o to "wujka Googla" ale mam problem z zadaniem pytania, i nie uzyskałem zrozumiałej dla mnie odpowiedzi, a pomysł "wydłubania" diod i "wlutowania się" do dużej diody nie wydaje mi się zbyt sensowny.

Jeszcze raz dziękuję za wspaniałe kursy.

Z poważaniem  Bogusław

 

Edytowano przez bjrk
korekta lierówek
  • Lubię! 1
Link do komentarza
Share on other sites

Oczywiście:

https://www.tme.eu/pl/katalog/uklady-scalone_100283/?s_order=desc&search=WS2811&s_field=1000011

EDIT: Pamiętaj jednak, że modulacja PWM wymaga szybkiego sterowania. Przy 400Hz okresu i 8-bitach rozdzielczości masz ok. 10us na LSB. Nie każdy transoptor i nie w każdej konfiguracji jest tak szybki (i wystarczająco symetryczny) by nie przekłamywać tego co wygeneruje ten scalak. W szczególności jeśli chcesz za pomocą takiej izolacji (nie wiem po co ona, ale niech będzie) sterować bramką jakiegoś MOSFETa by np. odpalić tym łańcuch zwykłych diod RGB, to będziesz musiał użyć albo dość specjalnego transoptora albo zregenerować i/lub wzmocnić sygnał z wychodzący ze zwyykłego, takiego z tranzystorem.

Edytowano przez marek1707
  • Lubię! 1
Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.