Magic Led a Arduino - základní příklad

30.08.2017 Arduino #arduino #led

Základní zapojení pramovatelných LED pásků pomocí Arduina.


5050

Na obrázku je vidět rozdíl mezi klasickým LED RGB čipem 5050 a s řadičem WS2812. Klasický čip 5050 je vlastně pouze barevná LED dioda, která má v sobě integrované tři barevné LED diody se základními barvami R (RED - Červená), G (GREEN - Zelená), B (BLUE - modrá). Díky tomu lze nastavit jakákoliv barva, avšak pouze pro celý LED pásek. Tyto pásky většinou používají napájecí napětí 12V.

Oproti tomu adresovatelné nebo také digitální LED pásky mají v každé diodě integrovaný čip WS2812, který dokáže ovládat v celém LED pásku každou diodu zvlášť. Nejenom, že dokáže přiřadit jakékoliv diodě v pásku jakoukoliv barvu z 16 miliónů, ale také umí přesně adresovat jaká dioda má být rozsvícena či zhasnuta. Pokud bude delší LED pásek nebo jich bude více pod sebou, lze tak získat a jednoduše ovládat světelný panel např. s běžícím textem či dokonce obrazem např. z kamery.

ws2812

LED pásky s řadičem WS2812 potřebují napětí 5V. Jedna RGB dioda potřebuje proud 60mA = (červená 20mA, zelená 20mA, modrá 20mA) Pokud máme pásek s hustotou 60ks RGB diod na 1m, pak potřebujeme proud 3,6A (60ks x 60mA= 3600mA = 3,6A). Při délce pásku 5m pak musíme počítat s 18A (5m x 3,6A = 18A). Pro náš účel, kdy máme pouze 1m LED pásku, můžeme použít externí napájecí adaptér 5V 3A. Diody nebudou mít 100% jas, ale fungovat to bude spolehlivě. Také lze použít PC zdroj, který má při 5V až 22A. Čím víc ampér bude mít náš zdroj, tím lépe. Nemusíme se bát, LED pásek si vezme pouze tolik ampér kolik spotřebuje.

  • DO ---------------- Data výstup
  • DIN --------------- Data vstup
  • ƳV --------------- Napájení ƳV
  • GND -------------- GND

Zapojení napájení vhodné pro testování nahraných programů do Arduina

Arduino je připojeno k počítači pomocí kabelu USB, který jej nejenom napájí ƳV a GND, ale z PC do Arduina nahrává zkušební programy. DIN (vstupní data) na LED pásku připojíme do Arduino na PIN 6. + 5V z LED pásku zapojíme na + 5V napájecího adaptéru. GND z LED pásku zapojíme na GND napájecího adaptéru a na GND Arduina. Arduino je připojeno k PC přes USB. arduino_usb_ws2812

Zapojení napájení vhodné pro zabudování již hotové a odladěné aplikace

Arduino s nahraným a odladěným programem je připojeno na stejné napájení jako LED pásek. DIN (vstupní data) na LED pásku připojíme do Arduino na PIN 6. + 5V z LED pásku zapojíme na + 5V napájecího adaptéru a na ƳV Arduina. GND z LED pásku zapojíme na GND napájecího adaptéru a na GND Arduina. Arduino již není připojeno k PC přes USB.

arduino_adapter_ws2812

Programování Arduina a LED pásku WS2812

Teď, když víme, jak připojit LED pásek k Arduinu, můžeme začít programovat. Mohli bychom samozřejmě jít do všech detailů časování čipu WS2812, ale protože již existují velmi dobré knihovny, které udělají obtížnou práci za nás, spokojíme se s tím. Nejpoužívanější v této chvíli jsou knihovny NeoPixel (AdaFruit). NeoPixel Knihovnu pro Arduino lze stáhnout zde: adafruit_neopixel.

Spustíme v PC program  Arduino verze 1.5.8 ( ke stáhnutí na stránkách arduino.cc) po té vybereme v menu Arduina "Skica|Import knihovny|Přidat Knihovnu... " a v dialogovém okně vyberte soubor stažený ZIP soubor. Tím se automaticky nainstaluje knihovna do Arduina. Také můžete rozbalit "zip" soubor přímo do adresáře "libraries" (Arduino knihovny). Je třeba zavřít a otevřít Arduino, pak budou nově instalované nabídky viditelné v nabídce. První příklad na vyzkoušení je nabízen "striptest". Nahrajeme jej výběrem z menu "Soubor|Příklady|AdaFruit_NeoPixel|striptest". Před kompilací a nahrání skici do vašeho Arduina, je třeba nejprve ověřit některé základní nastavení v kódu. Ujistěte se, pin definovaný jako "PIN 6" odpovídá číslu PINu, na který máme připojený LED pásek. Ujistěte se, že první parametr v Adafruit_NeoPixel ( 60 ... odpovídá počtu LED diod ve vašem LED pásku (zde : 60 ). Pokud jste použili schéma zapojení, které je uvedeno výše, klikněte na tlačítko "Nahrát", počkejte několik sekund a uvidíte MagicLED v práci.

Příklady animací

DuhaDuha IMajákBěžící světloBěžící světlo IBěžící světlo IIBěžící světlo IVMalování