Revision 2015

Jak co roku w święto Wielkiej Nocy odbyło się demoscenowe party Revision. Jak zwykle przyciągnęło wielu utalentowanych twórców, którzy wyciskają ostatnie soki z różnych komputerów by pokazać swój kunszt programistyczny i artystyczny.

By było sprawiedliwie, produkcje podzielone są na kategorie. Tą, która najbardziej nas interesuje jest Wild. Trafiają tam dema nie mieszczące się w żadnej innej kategorii. Wraz z popularyzacją DIY i OpenHardware mamy tam coraz więcej przedstawicieli naszego hobby. Używają głównie płytek kontrolerów Arduino i Raspberry PI.

W tym roku wygrało świetne demo pc-10: Panda³ stworzone przez ludzi z Panda Cube.

Demem steruje płytka Arduino Mega 2560. Wszystko co widzisz opiera się na znanych z naszego sklepu Adresowanych Diodach LED
Ramka została wydrukowana na drukarce 3D, a reszta to akrylowe szybki, które rozświetlają LED-y.

Resztę produkcji z Revision 2015 znajdziesz na stronie Pouet.net

Jeśli chcesz stworzyć coś podobnego, mamy dla ciebie części:

Świąteczna ozdoba na choinkę

Dawno dawno temu, mój wujek robił wymyślne ozdoby choinkowe na choinkę babci. Najciekawszą była gwiazda na szczycie choinki, podświetlana małymi żarówkami. Mrugały one w dość losowy sposób. Sterował nimi zwykły starter od świetlówek podłączony szeregowo.

Dziś mamy nowocześniejsze czasy i dostęp do kontrolerów.

Mikołaj Sochacki opisał na swoim blogu ciekawy projekt nowoczesnej gwiazdki na szczyt. 

Zbudował ją w oparciu o Arduino Pro Mini oraz pierścień składający się ze znanych lampek LED sterowanych szeregowo.

Napisał też do nich program z wymyślną iluminacją świetlną.

Jeśli też chciałbyś zbudować podobną ozdobę choinkową, części do niej możesz kupić w Nettigo.pl

sprae

light_ws2812 – Nowa biblioteka do obsługi sterowanych szeregowo LED-ów

W Nettigo mamy dostępne LED-y RGB sterowane interfejsem szeregowym. Można za pomocą jednego cyfrowego pinu kontrolera sterować całym szeregiem takich diod i ustawiać każdej niezależnie kolor z 24 bitowej palety (17 mln barw).

image

Mamy też całą taśmę takich lampek LED. W jednym metrze mieści się ich 60. Taśma jest w osłonie wodoodpornej.

image

Myślę, że to fajny element zestawu majsterkowicza DIY do przyozdobienia domu lub choinki na święta z własnym niepowtarzalnym schematem świecenia.

Piszę o nich ponownie, gdyż pojawiła się nowa lepsza biblioteka do sterowania tymi lampkami. Nazywa się “light_ws2812” i dostępna jest w serwisie Github.

Biblioteka obsługuje procesory ARM, ATtiny oraz platformę Arduino.

Oto przykład jej zastosowania na platformie Arduino:

#include <WS2812.h>

WS2812 LED(1);
	
cRGB color;

void setup() {
  LED.setOutput(9);
}

void loop() {
  color.r = 255;
  color.g = 0;
  color.b = 0;
  LED.set_crgb_at(0, color);
  LED.sync();
  delay(500);
  
  color.r = 0;
  color.g = 255;
  color.b = 0;
  LED.set_crgb_at(0, color);
  LED.sync();
  delay(500);
  
  color.r = 0;
  color.g = 0;
  color.b = 255;
  LED.set_crgb_at(0, color);
  LED.sync();
  delay(500);
}

Na początku trzeba ustawić bibliotekę sterującą światełkami poprzez dyrektywę include:

#include <WS2812.h>

Potem tworzę obiekt o nazwie LED odpowiedzialny za sterowanie diodami:

WS2812 LED(1);

Jego pierwszy argument określa ilość LED-ów podłączonych w szeregu do wybranego pinu. Nadałem mu wartość 1 bo podłączyłem jedną diodę. 

Następnie tworzę zmienną o nazwie color typu cRGB:

cRGB color;

Służy ona do przechowywania wartości koloru składającej się z 3 barw podstawowych R – Red [czerwony], G – Green [zielony] i B- Blue [niebieski].

W funkcji setup za pomocą metody “setOutput” [ustaw wyjście] ustawiam pin do którego podłączyłem diody.

LED.setOutput(9);

Wybrałem pin cyfrowy 9.

W funkcji loop określiłem animację świecenia lampki. Polega ona na tym, że co pół sekundy zmienia się kolor pierwszej lampki na jeden z 3 podstawowych kolorów w pełnej jasności.

Najpierw ustawiam jasności poszczególnych składowych kolorów w zmiennej color:

color.r = 0;
color.g = 255;
color.b = 0;

W tym przypadku ustawiłem wartość g na 255, co daje maksymalną jasność dla koloru zielonego, natomiast inne składowe otrzymały najniższą wartość czyli 0. Możesz stosować dowolne kombinacje kolorów ustawiając odpowiednie wartości składowych jako liczby od 0 do 255.

Potem przypisuje ustawiony kolor do wybranej diody za pomocą metody “set_crgb_at”.

LED.set_crgb_at(0, color);

Jego pierwszy argument to numer diody w szeregu, której chcesz ustawić kolor. Drugim argumentem jest wartość koloru przechowywana w zmiennej color.

By wysłać dane o kolorze do lampki, trzeba użyć metody “sync”.

LED.sync();

I to tyle. Możesz teraz tworzyć własne unikalne animacje świetlne w prosty sposób.

O tym jak podłączyć diody do Arduino dowiesz się ze starszego wpisu:

Bibliotekę możesz ściągnąć z serwisu Github:

Diody w dwóch wersjach jak i wodoodporną taśmę kupisz w Nettigo.

sprae

Duże ilości na raz LED-ów

Niemiecka grupa Hackerspace FFM opublikowała ciekawy wpis o tym jak zasilać duże ilości lampek LED połączonych szeregowo.
Potrzebne im to było do podświetlania świątecznego wzorku wygrawerowanego w akrylu.

Wzorek podświetla 10 LED-ów połączonych szeregowo. By je zasilać potrzebne było napięcie około 30 V. Takie napięcie nie jest dziś łatwo dostępne.

Twórcy postanowili stworzyć od podstaw przetwornicę sterowaną za pomocą kontrolera ATtiny85.

imagePrzetwornica zasilająca 10 lampek LED – Zdjęcie pochodzi ze strony www.hackerspace-ffm.de

Przetwornice działają na zasadzie indukcji cewki. Zasilając cewkę w chwili odłączania zasilania oddaje ona część prądu o dużym napięciu.
Można tego doświadczyć podczas zabaw z przekaźnikiem lub transformatorem. Gdy odłączasz baterię od cewki i dotykasz jej wyprowadzeń, może cię kopnąć prąd o dużym napięciu.

To samo dzieje się tutaj. Tranzystor sterowany kontrolerem podłącza i odłącza zasilanie cewki wywołując indukcję, wynikiem której jest duże napięcie zasilające LED-y.
Kontroler steruje tranzystorem przez wyjście PWM, pozwalające na regulację parametrów pracy przetwornicy.
W ten sposób z napięcia zasilania 5 V powstaje 30 V do zasilania LED.

Kontroler cały czas mierzy prąd przepływający przez diody by ich nie przeciążyć prądem większym niż 20 mA.
Układ pomiarowy składa się z 2 rezystorów 10 Ohm i 1 kOhm oraz kondensatora filtrującego 100 uF, jego wyjście podłaczone jest do wejścia analogowego w nodze 2 kontrolera.

Wejście analogowe w nodze 3 wykorzystywane jest do podłączenia potencjometru sterującego jasnością świecenia.

Najfajniejsze jest to, że cały program został napisany w Arduino IDE, przez co łatwo go można modyfikować i dostosować do swoich potrzeb.

sprae

Wykrywanie ilości szeregowych lampek LED

Wcześniej opisywałem sterowane interfejsem szeregowym lampki LED

Tim na swoim blogu cpldcpu przedstawił świetną koncepcję na wykrywanie ile jest podłączonych lampek LED do Arduino.

Koncepcja jest prosta i genialna czyli hackerska ;-). Wszystko opiera się na tym, że im więcej lampek świeci na biało tym większy spadek napięcia zasilania procesora Arduino.

Mierzenie napięcia zasilającego procesor opisywałem już wcześniej.

Można zastosować 2 strategie.

  • Zapalasz kolejne lampki, aż napięcie przestanie spadać – znaczy to, że już więcej nie ma. Autor odkrył, że można tak zbadać do 16 lampek.
  • Zapalasz kolejne lampki, gasząc poprzednią tak długo, aż napięcie wróci do poziomu przed włączeniem.


Wykres pochodzi z bloga Tim-a

W ten sposób można wykrywać nie tylko ilość, ale też gdzie się przepaliła dioda, albo gdzie jest zerwane połączenie.

Pojedyncze szeregowe lampki LED, jak i cały łańcuch kupisz w Nettigo. Dobre do zrobienia ozdób choinkowych lub własnego efektu na świąteczne przystrojenie domu.

sprae

Diody RGB z interfejsem szeregowym

W Nettigo pojawił się nowy wynalazek. Diody RGB z interfejsem szeregowym.

image

Mają one 5 mm średnicy, a ich największą zaletą jest to, że do uzyskania każdej barwy wystarczy jeden pin. To nie wszystko. Tym samym jednym pinem można sterować większą ilością diod.

Diody podłącza się w taki sposób:

image

Od strony płaskiego ścięcia obudowy piny mają następujące znaczenie:

  • Data Out – Wyjście danych. Podłączasz do Data In kolejnych diod, którymi chcesz sterować.
  • Ground – Masa. Podłączasz do GND w Arduino.
  • +5V – Zasilanie. Podłączasz do 5V w Arduino.
  • Data In – Wejście danych. Tu podłączasz dowolny pin cyfrowy Arduino.

Dla każdej barwy RGB (Czerwony, Zielony, Niebieski) dioda ma 256 poziomów jasności. Co daje możliwość uzyskania 16,8 mln barw.

Bibliotekę do sterowania diodami napisali pracownicy Adafruit. Jest ona łątwa w użyciu. Do działania wymaga kontrolera opartego na AVR (Arduino UNO, Leonardo, YUN, Mini Pro, Teensy 2.0, ATtiny) i Arduio IDE.

#include <Adafruit_NeoPixel.h>

#define PIN 2

Adafruit_NeoPixel lamp = Adafruit_NeoPixel(1, PIN, NEO_RGB + NEO_KHZ800);

void setup() {
  lamp.begin();
  lamp.show();
}

void loop() {
  lamp.setPixelColor(0, 0, 0, 0);
  lamp.show();
  delay(1000);
  lamp.setPixelColor(0, 255, 0, 0);
  lamp.show();
  delay(1000);
  lamp.setPixelColor(0, 0, 255, 0);
  lamp.show();
  delay(1000);
  lamp.setPixelColor(0, 0, 0, 255);
  lamp.show();
  delay(1000);
}

Wejście danych “Data In” diody podłączyłem do pinu 2 Arduino.
Program co sekundę świeci innym kolorem diody (Czerwonym, Zielonym i Niebieskim).

Adafruit_NeoPixel lamp = Adafruit_NeoPixel(1, PIN, NEO_RGB + NEO_KHZ800);

Tworzy obiekt “lamp” do sterowania diodami.
Pierwszym argumentem jest ilość diod podłączonych w szereg do sterowania. U mnie jest jedna dioda, więc jest tam wartość 1.

Drugim argumentem jest pin, którym sterujesz diodami. W moim przypadku jest to pin nr 2.

Trzecim argumentem jest konfiguracja podłączonych diod.

lamp.begin();

Ta metoda aktywuje działanie obiektu lamp.

lamp.setPixelColor(0, 0, 0, 0);

Ustawia kolor wybranej diody.
Pierwszym argumentem jest numer diody, której chcesz ustawić kolor. 0 to pierwsza dioda.

Argumenty 2, 3, 4 to jasność składowych kolorów R, G, B. Przjmują one wartości od 0 do 255.

lamp.show();

Ta metoda wysyła dane o ustawionych kolorach do diod.

W Nettigo diody sprzedajemy w zestawach po 5 sztuk. Są one w 2 wersjach. Z przeźroczystą obudową (świecą promieniem do przodu) i dyfuzyjne z obudową w kolorze mlecznym, która się rozświetla.

sprae

Nowe produkty – diody LED, przewody montażowe

Zgodnie z zapowiedziami nadrabiamy zaległości w dodawaniu nowych produktów. I tak w ostatnich dwóch dniach przybyło w naszej ofercie całkiem sporo:

Lista produktów do dodanie jeszcze się nie opróżniła 🙂 będą kolejne