Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Sześcian RGB z lustrem nieskończoności

kmmepl 24 Sep 2015 16:31 11337 3
phoenixcontact
  • Sześcian RGB z lustrem nieskończoności Czy marzyło Ci się kiedyś, zbudować świecącą kostkę, którą mógłbyś się chwalić wśród znajomych? Jeśli tak, to mam dla Ciebie dobrą wiadomość, bo w tym artykule zostanie opisana budowa sześcianu o wymiarach 8x8x8 składającego się z diod RGB. Urządzenie te jest zdolne do tworzenia piorunujących (dosłownie) efektów świetlnych, a dodanie lustra polepsza cały efekt.





    Założenia projektu

    Na początku planowano użyć dużej ilości jednobarwnych ledów. Jednak autor zrozumiał, że sześcian o wymiarach 16x16x16 oznacza, iż przy takiej konfiguracji całkowita liczba diod wyniesie 2048. Myśl o przetworzeniu tak dużej ilości ledów sprowadziła konstruktora na ziemię i zdecydował się na sześcian o wymiarach 8x8x8, co wcale nie jest prostym zadaniem zważywszy na to, że trzeba wykonać około 2200 lutów. Podczas poszukiwań informacji na temat tego projektu, autor wpadł na pomysł dodania lustra nieskończoności do swojej kostki. Dodanie go tworzy iluzję, która wmawia obserwatorowi, że diody ciągną się w nieskończoność.

    Każda z 512 diod RGB posiada 4 nóżki, trzy anody i wspólną katodę, by sterować tak dużą ilością ledów należy użyć techniki nazywanej multipleksingiem. Jej istotą jest sterowanie wieloma elementami za pomocą tych samych linii sygnałowych. W przypadku tak złożonej konstrukcji jak ta, multipleksing uzyskano dwoma różnymi sposobami (każdy dla innej części sześcianu).

    Metoda 1 – Przerzutniki typu D


    Za pomocą 24 szeregowo połączonych układów sekwencyjnych, możliwe jest stworzenie wystarczającej ilości sygnałów sterujących (192), by kontrolować każdą diodą w segmencie składającym się z 64 ledów (8x8). Jest to wykonalne dzięki temu, że informacja jest „przerzucana” z jednego przerzutnika do następnego poprzez sterowanie wejściem zegarowym i sygnałowym pierwszego flip-flopa (przerzutnika).

    Sześcian RGB z lustrem nieskończoności


    Autor skonstruował sterowniki oparte na przerzutnikach w sposób modułowy, by w razie potrzeby powiększenia lub zmniejszenia kostki, była możliwość dodania lub odjęcia kilku flip-flopów. Każda z płytek PCB składa się z 3 przerzutników (74LS273) zdolnych do kontroli nad jednym rządem diod RGB. Znajdują się na nim jeszcze 2 złącza, jedno podłączone do wejść flip-flopów, a drugie do wyjść, co pozwala na szeregowe łączenie opisywanych modułów. Dodano także kilka kondensatorów, aby usprawnić świecenie.

    To rozwiązanie pozwala na kontrole 1/8 sześcianu, by uzyskać pełne sterowanie potrzebna jest druga metoda.

    Sześcian RGB z lustrem nieskończoności



    Metoda 2 – tranzystory NPN


    By sterować wszystkimi segmentami połączono razem katody diod w każdym z nich. Następnie zwarte katody z poszczególnych segmentów poprowadzono do masy przez tranzystory NPN. To rozwiązanie pozwala na zgaszenie lub oświecenie każdej z części kostki za pomocą 8 pinów procesora. Jednak takie podejście sprawia, że w jednej chwili świeci się tylko 1/8 wszystkich diod, a poprzez bardzo szybkie przełączanie pomiędzy segmentami wydaje się, że cały sześcian stale świeci.

    Sześcian RGB z lustrem nieskończoności


    Budowa


    Podczas składania całej konstrukcji istnieją dwie najbardziej żmudne czynności. Pierwsza to zginanie nóżek ledów, a druga to lutowanie zgiętych diod. Każda z tych działalności wymagała budowy pomocniczych konstrukcji, które pozwoliły zachować jakość wykonania.

    Zginanie diod

    Na początku wywiercono 5mm dziurę w kawałku drewna i upewniono się, że ledy dobrze w niej pasują. Następnie narysowano linie pomocnicze widoczne na załączonym obrazku.
    Należy dodać, że bardzo pomocna przy zginaniu okazała się metalowa linijka.

    Sześcian RGB z lustrem nieskończoności Sześcian RGB z lustrem nieskończoności


    Krzywienie przebiegało według poniższego schematu:
    1. Umieścić diodę w uprzednio wywierconej dziurze jednocześnie upewniając się, że wszystkie piny są ułożone równolegle z linią (B), a katoda jest drugim pinem od prawej.
    2. Zgiąć katodę ku dolnej linii, a piny anody zgiąć ku górnej linii, równolegle z prostą (A).
    3. Używając metalowej linijki zgiąć katodę w lewo w taki sposób, aby była równolegle z linią (B).
    4. Przykładając linijkę do prostej (C) zgiąć anody tak, aby były prostopadle do podłoża.

    Proces ten powtarza się tylko 511 razy.

    Składanie sekcji 8x8


    Aby utrzymać w miejscu łączone ledy wykonano pewnego rodzaju stojak. Został on zrobiony pomocą drukarki 3D i bardzo pomaga w budowie. Podczas projektowania stojaka upewniono się, że odstępy pomiędzy diodami pozwalają na to, żeby końcówka jednej nóżki dotykała początku drugiej.
    Wszystkie anody i katody połączono tak jak na zdjęciu poniżej, a podczas lutowania upewniono się, że każde punkty lutownicze są idealne, gdyż jeden błąd mógłby zrujnować cały projekt.

    Sześcian RGB z lustrem nieskończoności


    Po połączeniu wszystkich diod przetestowano je w taki sposób, że zwarto wszystkie katody metalową linijką i podłączono do niej masę. Dzięki temu wystarczyło przyłożyć potencjał dodatni do poszczególnych anod. Gdy wszystkie ledy świeciły jak należy, po kolei uwalniano je z ich zacisków, a na końcu wyjęto gotowy segment 8x8.

    Sześcian RGB z lustrem nieskończoności



    Łączenie gotowych sekcji 8x8


    Po zagięciu wszystkich nóżek i polutowaniu 8 matryc o wymiarach 8x8, nadszedł czas na zbudowanie sześcianu. Najpierw położono pierwszy segment płasko na stole i przylutowano dwa proste druty do każdej z katod (jeden pod nóżki, a drugi nad).
    By uzyskać prosty przewód wykorzystano technikę trzymania jego końców za pomocą kombinerek i silnego rozciągania. Ważne jest, aby użyty drut był łatwy do prostowania, a jednocześnie wystarczająco twardy.
    Po umocnieniu jednego segmentu, nałożono drugą matrycę i powtórzono proces, a do oddzielenia matryc od siebie, użyto kilku paczek po zapałkach.


    Tworzenie podstawy


    Sam sześcian złożony z diod i drutów jest w miarę wytrzymały, jednak trochę siły przyłożonej w nieodpowiednie miejsce sprawi, że cały projekt będzie zrujnowany. Do zrobienia podstawki użyto płyty z MDFu i wywiercono w niej odpowiednie dziury oraz wyfrezowano rowki, przez które przejdą nóżki ledów. Na koniec wycięto rów o szerokości 6mm na szklaną obudowę.

    Sześcian RGB z lustrem nieskończoności Sześcian RGB z lustrem nieskończoności Sześcian RGB z lustrem nieskończoności


    Lustro nieskończoności


    Do stworzenia tego efektu rozchodzenia się światła w nieskończoność, wykorzystano hartowane szło o grubości 6mm. Na wewnętrzną stronę szyby przyklejono samochodową folię do przyciemniania.

    Sześcian RGB z lustrem nieskończoności


    Mózg


    Za wszystkie efekty świetlne odpowiedzialny jest 16 bitowy mikrokontroler z rodziny PIC (dsPIC33EP256MU806) zamontowany na gotowym module ECIO40P16. Kod stworzony przez autora będzie działał z większością tego typu procesorów (oprócz tych o architekturze 8 bitowej, jako że nie mogą mieć tablic większych niż 256 bitów). Cała elektronika sterująca (mikrokontroler i tranzystory NPN) została umieszczona na płytce prototypowej. Wszystko zostało zasilane z zasilacza 5V.

    Sześcian RGB z lustrem nieskończoności Sześcian RGB z lustrem nieskończoności


    Oprogramowanie


    Do stworzenia symulacji posłużono się środowiskiem Flowcode, które jest dostępne dla mikroprocesorów PIC, AVR (w tym Arduino) jak i ARM. Odznacza się ono tym, że program jest napisany za pomocą schematów blokowych. Takie rozwiązanie jest lepsze dla początkujących programistów i pozwala na szybsze stworzenie gotowego kodu.

    Sześcian RGB z lustrem nieskończoności


    Finalny efekt


    Za pomocą Flowcode udało się stworzyć efekty padającego deszczu z piorunami czy kuli ognia. Także jest możliwość wyświetlania tekstu czy wektorowych animacji. W przyszłości planuje się cyfrowe przetwarzanie sygnałów przy użyciu szybkiej transformacji Fouriera (FFT).

    Sześcian RGB z lustrem nieskończoności Sześcian RGB z lustrem nieskończoności Sześcian RGB z lustrem nieskończoności Sześcian RGB z lustrem nieskończoności


    źródło: http://www.instructables.com/id/Infinite-RGB-LED-Cube/?ALLSTEPS

    Cool? Ranking DIY
    Do you have a problem with Arduino? Ask question. Visit our forum Arduino.
    About Author
    kmmepl
    Level 13  
    Offline 
    kmmepl wrote 73 posts with rating 317, helped 7 times. Been with us since 2013 year.
  • phoenixcontact
  • phoenixcontact
  • #3
    Arek G.
    Level 14  
    Mam trzy pytania.

    Elektronikiem nie jestem ale czy zasilanie 5V jest wystarczające jeśli każda dioda RGB ciągnie około 30mA?
    Czy te tranzystory NPN nie są z opornikami i 12V do nich podłączone?

    "Dodano także kilka kondensatorów, aby usprawnić świecenie. "
    Co tutaj sprawiają kondensatory?
  • #4
    kmmepl
    Level 13  
    Arek G. wrote:

    Elektronikiem nie jestem ale czy zasilanie 5V jest wystarczajace jesli kazda dioda RGB ciagni okolo 30mA?

    W tym przypadku poprawne świecenie głównie zależy od tego czy dane źródło ma wystarczającą wydajność prądową. Napięcie musi być wyższe lub równe od napięcia przewodzenia diod i napięcia zasilania przerzutników, a czy jest ich 5 czy 500 nie ma znaczenia z punktu widzenia napięcia. W dodatku nie zapominajmy, że w jednej chwili świeci tylko 64 diod, jak wspomniano w tekście.

    Arek G. wrote:

    Czy te tranzystory NPN nie sa z opornikami i 12V do nich podlaczone?

    Te tranzystory są włączane przez mikroprocesor, który pracuje na logice 5V i tak, do poprawnej pracy wymagają rezystorów podłączonych do ich baz.

    Arek G. wrote:

    "Dodano także kilka kondensatorów, aby usprawnić świecenie. "
    Co tutaj sprawiaja kondensatory?


    Prawdopodobnie dodano je poprostu na wszelki wypadek, jakby zasilacz nie wyrabiał przy szybkim wyłączaniu i włączaniu ledów.