Elektroda.pl
Elektroda.pl
X
TermoPasty.pl
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

LED CUBE 4x4x4 [Atmega16/32][C]

Zlata_n 06 Sty 2012 18:16 96738 149
  • LED CUBE 4x4x4 [Atmega16/32][C]

    Witam.

    Chciałem wam przedstawić mój najnowszy ukończony projekt jakim jest kostka LED 4x4x4. Niestety na forum jest mało takich projektów, a ja usilnie chciałem mieć taką kostkę, aby była bezpośrednio połączona z płytką. (bez plątaniny przewodów na płytce uniwersalnej). Trafiłem na stronę http://www.instructables.com/id/LED-Cube-4x4x4/, z której udało mi się zdobyć wiedzę, materiały i ogólną ideę do stworzenia takiej kostki.


    OGÓLNIE:
    LED CUBE został wykonany według scheamtu:
    LED CUBE 4x4x4 [Atmega16/32][C]

    Schemat ten różni się od oryginału, jest przystosowany do moich potrzeb,a mianowicie:
    - zmieniłem złączę programowania na listwę 7 goldpinową
    - dodałem nowe 3 przyciski (stop/start , switch i check)
    - dodałem włącznik on/off
    - usunąłem komunikację rs 232, ponieważ nie potrafię jej jeszcze używać (w przyszłości są plany na 8x8x8 i wtedy będzie już standard rs232 a także są plany na sterowanie pilotem w kodzie rc5)


    ZASADA DZIAŁANIA:
    Projekt składa się z 64 diod LED, połączonych w 4 warstwy po 16 diod, tworząc w ten sposób kostkę w 3 wymiarach. Diody w projekcie specjalnie zostały wybrane dyfuzyjne tak, aby rozpraszały jak najwięcej światła.
    Sercem układu jest mikroprocesor ATmega16, taktowany z zewnętrznego kwarcu o częstotliwości 14.7456 MHz. Steruje on przyciskami, tranzystorami, złączem programowym oraz diodami.
    ATmega 16 może w jednym momencie wypuścić prąd wielkości 200mA (nota katalogowa), z czego wynika wybór rezystorów o wartości 220Ω, co z kolei daje:
    200mA/16 diod = 12,5 mA na diodę. Powstał w ten sposób zadowalający efekt, szczególnie w nocy.

    Układ posiada 4 przyciski do komunikacji z użytkownikiem:
    ~ reset (resetowanie układu)
    ~ stop/start (zatrzymanie/uruchomienie wybranej sekwencji)
    ~ switch [wybór sekwencji]
    ~ sprawdzenie poprawnie wgranego kodu

    Anody diod doprowadzone są do nóżek mikroprocesora (8 nóżek na port A i 8 nóżek na port C]. W każdym punkcie lutowniczym 4 diody połączone są w pionie anodami. Katody natomiast są doprowadzone do 4 tranzystorów. Tranzystory sterują całymi warstwami (16 nóżek od każdej katody połączonych jest razem na warstwie). Poprzez zastosowanie "multipleksacji", za pomocą jednego przewodu (z tranzystora), mamy możliwość sterowania aż 16 diodami. Pozwala to nam na kontrole nad pojedyncza dioda bez konieczności stosowania aż 64 indywidualnych połączeń. Teraz już tylko za pomocą kodu możemy wymyślać i tworzyć dowolne sekwencje, jakie tylko możemy sobie wyobrazić





    Po uruchomieniu układu włącza się sekwencja startowa, ale zanim się aktywuje, 2 diody kontrolne (zielona i czerwona] sprawdzają czy program został poprawnie wgrany do mikroprocesora. Jeśli nie jesteśmy pewni poprawnej pracy procesora mamy mośliwosc jeszcze raz sprawdzić poprawność wgranego kodu przyciskiem „CHECK”. Gdy kostka się już świeci, możemy przejść do trybu wyboru sekwencji, w tym celu wciskami przycisk „STOP/START”. Przez chwile włącza się sekwencja „czyszczenia kostki” i teraz za pomocą przycisków SWITCH wybieramy dowolna sekwencje. W celu ułatwienia wyboru przy każdorazowym wciśnięciu zapala się dioda sygnalizując numer wybranej sekwencji.

    Spośród dostępnych (napisanych sekwencji) najbardziej funkcjonalna jest imitacja lampki nocnej (zapalone wszystkie diody).
    LED CUBE 4x4x4 [Atmega16/32][C]


    WYKONANIE:
    Jeżeli chodzi o płytkę to została ona zaprojektowana w programie Eagle i wyfrezowana dzięki uprzejmości mojej uczelni na profesjonalnej frezarce. W tym miejscu podziękowania dla Christophorus'a, Macias'a86 za pomoc w projektowaniu płytki, wiadomości można przeczytać na : https://www.elektroda.pl/rtvforum/viewtopic.php?t=2122466&highlight=)

    SCHEMAT PŁYTKI W EAGLE
    LED CUBE 4x4x4 [Atmega16/32][C]
    WIZUALIZACJA PŁYTKI W NAKŁADCE GRAFICZNEJ 3D (POV-Ray) PRZOD / TYŁ
    LED CUBE 4x4x4 [Atmega16/32][C] LED CUBE 4x4x4 [Atmega16/32][C]

    Matryca stanowiła kolejny problem, jednak sposób przedstawiony na stronie bazowej projektu spisał się w 100%, należy mieć płytę (np. drewnianą) o zaplanowanych wymiarach i wywiercić w niej otwory (ja skorzystałem z wiertła 5mm i odległości między diodami 2,5 cm, ponieważ nie chciałem się bawić w przycinanie każdej diody, co w sumie i tak nie udało by się do końca zrobić idealnie a dwa, że chciałem zastosować diody o średnicy 5mm). Lutowanie raczej nie sprawiało kłopotów, jedna warstwa to jakieś 15min spokojnej pracy, jednak gdy mamy już całość trzeba się trochę wygimnastykować aby lutować jedną warstwę na drugiej)
    LED CUBE 4x4x4 [Atmega16/32][C]


    PROGRAMOWANIE:
    Kolejna zaletą układu jest to, że posiada listwę programującą. Możemy wiec w każdej chwili podłączyć programator i zmienić istniejący kod według własnych potrzeb. Programator jaki użyłem do projektu to USBasp. Program napisany w języku C i skompilowany w środowisku Eclipse + Avrdude + WinAvr.


    ZASILANIE:
    Układ został zaprojektowany tak, ze można go zasilić napięciem zmiennym w przedziale od 0-35V, ponieważ posiada stabilizator napięcia +5V zbudowany na układzie 7805.


    WYKAZ ELEMENTÓW:
    ~ Atmel AVR Atmega16 + podstawka
    ~ 64 diody LED (dyfuzyjne – niebieskie) 5mm
    ~ 2 diody LED. 5mm (czerwona, zielona)
    ~ rezystor (220Ω) x16
    ~ rezystor (470Ω) x2
    ~ rezystor (10kΩ) x5
    ~ tranzystor BC338 NPN x4
    ~ kondensator 10uF x1
    ~ kondensator 1000uF x 1
    ~ ceramiczny kondensator 0.1uF x6
    ~ ceramiczny kondensator 22pF x2
    ~ rezonator kwarcowy 14.7456 MHz
    ~ 4 x micro-switch
    ~ gniazdo zasilania
    ~ srebrzanka do połączeń krzyżowych
    ~ dystansy metalowe
    ~ gumki na dystansy

    KOSZTORYS:
    ~ Atmega 16 + podstawka ( 14,60 zł )
    ~ 70 diod 5mm niebieskich dyfuzyjnych ( 35zł )
    ~ reszta elektroniki (część zapasy domowe + 26,30 zł)

    RAZEM = 75,90 zł
    RADOŚĆ Z PIERWSZEGO URUCHOMIENIA = BEZCENNA ;)



    EFEKT KOŃCOWY:

    LED CUBE 4x4x4 [Atmega16/32][C] LED CUBE 4x4x4 [Atmega16/32][C] LED CUBE 4x4x4 [Atmega16/32][C] LED CUBE 4x4x4 [Atmega16/32][C] LED CUBE 4x4x4 [Atmega16/32][C] LED CUBE 4x4x4 [Atmega16/32][C] LED CUBE 4x4x4 [Atmega16/32][C] LED CUBE 4x4x4 [Atmega16/32][C] LED CUBE 4x4x4 [Atmega16/32][C] LED CUBE 4x4x4 [Atmega16/32][C] LED CUBE 4x4x4 [Atmega16/32][C] LED CUBE 4x4x4 [Atmega16/32][C] LED CUBE 4x4x4 [Atmega16/32][C] LED CUBE 4x4x4 [Atmega16/32][C] LED CUBE 4x4x4 [Atmega16/32][C] LED CUBE 4x4x4 [Atmega16/32][C] LED CUBE 4x4x4 [Atmega16/32][C] LED CUBE 4x4x4 [Atmega16/32][C] LED CUBE 4x4x4 [Atmega16/32][C]


    FILMIK Z DZIAŁANIA KOSTKI:

    Link



    PLIKI
    ~HEX + kody pierwotne ze strony
    ~Schemat płytki w Eagle
    ~HEX do ATmega16

    dodane:
    ~HEX do ATmega32


    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.
  • TermoPasty.pl
  • #2 06 Sty 2012 20:35
    łuki_mar44
    Poziom 18  

    Witam!

    Muszę przyznać, że elegancko to koledze wyszło oraz samo wykonanie na 5+.
    Same sekwencje też są niczego sobie. Już od dawna zbierałem się do zaprojektowania takiej kosteczki lecz chyba sobie odpuszczę i po prostu zrealizuje ten właśnie projekt:)

    P.S. PCB zabezpieczone przed utlenianiem? Bo nie bardzo widać to na zdjęciach.

    pozdrawiam

  • TermoPasty.pl
  • #3 06 Sty 2012 20:49
    xtreme69
    Poziom 13  

    Witam

    Projekt bardzo ciekawy, wykonanie na wysokim poziomie.
    Brakuje jedynie zabezpieczenia płytki przed utlenianiem i jakiejś obudowy np. z plexi.
    Można by pomyśleć nad ledcube RGB 16x16x16, ale to już inny temat.

  • #5 06 Sty 2012 21:59
    djnatan
    Poziom 12  

    Witam :)
    xtreme69 Miło widzieć kogoś z okolicy :) Fakt diody RGB wyglądały by ślicznie i do tego ta paleta kolorów ale jak sb pomyślę ile to czasu i jak bardzo był by rozbudowany projekt to głowa boli :)
    Dla autora:bardzo fajne kombinacje,estetyka i wykonanie powalające na kolana :)
    Szkoda tylko że nie potrafię programować bo marzy mi się coś takiego
    Pozdrawiam :)

  • #6 06 Sty 2012 22:12
    michal54_87
    Poziom 17  

    Witam bardzo ladna konstrukcja nie to co moja :P też sie do tego przymierzałem ale jednak zrobiłem rgb. Djnatan jeżeli jest wsad to kup sobie na portalu ... programator nie jest drogi i sobie poradzisz.

  • #7 06 Sty 2012 22:33
    mlassota
    Poziom 18  

    Witam Kolegów

    Wykonanie ładne - podobne do naszego zaprezentowanego Tu z tym że nasze jest w RGB :) przez co plątanina troszkę wiesza.
    Zainspirował mnie kolega do zajrzenia w kod i dopisania jakichś animacji :)

    Nie bardzo widzę i rozumie potrzebę weryfikacji kodu... Z czym go porównuje?
    Sterownie bezpośredni z portu ma pewne ograniczenia - dajesz na diodę (220R) co ogranicza prąd do ok 7mA - nie jest to wiele...
    Efekt fajny - szczególnie animacje :)

    Gratulacje

    PS

    Nasza w RGB wygląda tak:

    LED CUBE 4x4x4 [Atmega16/32][C]

  • #8 07 Sty 2012 05:10
    prosim
    Poziom 12  

    Da rade żeby to grało razem z muzyką? ps. bardzo mi sie podoba

  • #9 07 Sty 2012 09:13
    xtreme69
    Poziom 13  

    Djnatan jak masz problemy z programowaniem i nie chciałbyś specjalnie kupować programatora to mogę Ci zaprogramować kość (jak by co to na PV).

    Do autora, czym kolega to zasila i ile to zjada prądu?
    O ile mnie wzrok nie myli czy płytka nie wyła czasem robiona na CNC ?
    Dosyć ciekawą opcją było by dołożenie gniazda USB i wrzucenia do megi Bootloader-a, wykluczyło by to potrzebę korzystania z programatora.

  • #10 07 Sty 2012 09:47
    syntetyczn dran
    Poziom 11  

    Na jakiej maszynce i jak była ta płytka frezowana??Jakie narzędzie itd?

  • #11 07 Sty 2012 09:52
    piotrva
    Moderator na urlopie...

    1. Ładne, staranne wykonanie, podoba mi się.
    2. Autor pisze o "wytrawianiu na frezarce" - chodzi chyba o wyfrezowanie na frezarce cnc, co z trawieniem nie ma nic wspólnego...
    3. Jaki jest sens i zasada działania tego sprawdzania wsadu? Do weryfikacji używa się chyba programatora.
    4. Moim zdaniem niepotrzebnie usunąłeś rs232 i mogłeś dać już odbiornik ir - jakbyś się nauczył programować takie rzeczy miałbyś tajną płytkę rozwojową, a nie tylko fajny, ale zamknięty projekt.

  • #12 07 Sty 2012 10:26
    galica7
    Poziom 26  

    Podobno trudno jest zrobić równy sześcian ale tobie się udało. :D
    Jestem ciekaw jak by wyglądała kostka 16x16x16 na żarówkach z odległości kilkudziesięciu lub kilkuset metrów

  • #14 07 Sty 2012 13:35
    ^Rachel
    Poziom 21  

    Nie podobają mi się te rezystory tylko, pewnie miałeś zastosować 1/8 W a miałeś 1/4 W i dlatego lub poprostu wybrałeś złe obudowy ?

  • #15 07 Sty 2012 13:44
    ryszard1955
    Poziom 19  

    Bardzo świetny projekt dający niesamowite efekty trójwymiarowe.

    Wydaje mi się, że w przyszłości dobrze byłoby zrobić jeszcze bardziej rozbudowany i z diodami RGB, trójwymiarowy wyświetlacz, którym można by tworzyć coś na wzór obrazów holograficznych, albo wyświetlać różne modele trójwymiarowe, np modele struktur chemicznych.

  • #16 07 Sty 2012 14:37
    piotrva
    Moderator na urlopie...

    ryszard1955 napisał:
    Wydaje mi się, że w przyszłości dobrze byłoby zrobić jeszcze bardziej rozbudowany i z diodami RGB, trójwymiarowy wyświetlacz, którym można by tworzyć coś na wzór obrazów holograficznych, albo wyświetlać różne modele trójwymiarowe, np modele struktur chemicznych.

    I jeszcze frytki do tego :D
    Jeśli coś takiego dałoby się zrobić (żeby można było wyświetlać jakiś sensowny obraz o dobrej rozdzielczości) na tego typu konstrukcji to takie urządzenia by już masowo powstawały, zatem dlaczego nie powstają?
    1. Koszty diod - dla kostki 4*4*4 diody RGB kosztują tylko ok. 100 zł a wyświetlić się na tym nic nie da. Nawet jakby zrobić 16*16*16 (co daje zaledwie 4096 diod i cenę ponad 6000 zł za same ledy) to i tak jaką strukturę chemiczną wyświetlisz na takim maleństwie? Metan albo etan? Taniej wyjdzie kupić za 1000 zł 2 komplety modeli chemicznych z prawie 400 elementami - dodatkowo można macać, łatwo obracać i szybko zmieniać struktury lub przeprowadzać "w rękach" reakcje...
    2. Przejrzystość - załóżmy że gdzieś znajdziemy diody RGB po 0,50 zł w ofercie hurtowej i damy za nie ~1000 zł (dalej to tylko 16*16*16) - jak zatem będzie widać Ledy w środku przy większym zagęszczeniu? Przecież nieświecące Ledy nie znikają w powietrzu
    3. Sterowanie, wgrywanie modeli - multipleksowanie 4096 diod RGB ze zmianami koloru (PWM dla każdej diody) to coś o parę poprzeczek wyżej niż zwykłą kostka LED. Dodatkowo trzeba jakoś wgrywać modele, mieć dużo pamięci RAM...
    Da się zrobić, ale lepiej (i chyba taniej) kupić dedykowany ekran 3D lub specjalny projektor z wirującym ekranem (swego czasu widziałem właśnie do wyświetlania modeli chemicznych i innych np. biologicznych - całość składała się z okrągłego wirującego w kuli ekranu i odpowiedniego projektora poniżej - efekt bardzo fajny)

  • #17 07 Sty 2012 14:37
    Zlata_n
    Poziom 14  

    Dziękuję wszystkim za opinie ;) Już odpowiadam na pytania:

    łuki_mar44 - > PCB zabezpieczone przed utlenianiem, jednak nie wiem czy wystarczająco, posmarowałem tylko raz obie strony rozpuszczoną kalafonią w alkoholu. Z tego co widać na płytce boki zaczynają mi lekko "czernieć" więc będę musiał coś wymyślić.

    xtreme69 -> Obudowa z plexi nie była brana pod uwagę, ale teraz już wiem że jednak by się przydała, strach przy tym że upadnie na bok, albo ktoś zrzuci :cry: jest wielki. 16x16x16 rgb to cudowny temat, jednak trzeba dużo pracy i na pewno pieniędzy żeby ruszyć z takim projektem.
    Póki co mam w planach powiększyć nieco rozmiary i zabrać się za 8x8x8 rgb, i na pewno będzie już w plexi.

    kataniak1994 -> Jasne, proszę bardzo, najistotniejszym elementem jest wyłączenie bitu JTAG na porcie C. Ustawienia wyglądają przy założeniu, że mikroprocesor pracuje na rezonatorze zewnętrznym 3-16MHz. Do ustawień fuse bitów używam nakładki na avr-dude, AVR Burn-O-Mat, bardzo przyjemna i prosta w obsłudze, więc też Tobie ją polecam:
    Ustawienia: (1=zaznaczone)
    SPIEN=1 CKOPT=1 BOOTSZ1=1 BOTSZ0=1 reszta bitów na 0 , można jeszcze sprawdzić czy na pewno ustawiły się bity hfuse=C9 i lfuse=FF. Jeśli będziesz miał jaki problem pisz, postaram się pomoc ;)


    djnatan -> jak już pisałem wyżej efekt rgb faktycznie byłby cudowny przy założeniu kostki 16x16x16 jednak jest to jak na moje warunki, mało "realne", ale jak najbardziej 8x8x8 rgb będzie już ślicznie wyglądać lub nawet 4x4x4 tyle że w rgb. djnatan nie przejmuj się jak nie umiesz programować, nauczysz się z czasem, a póki co jeśli tylko będziesz chciał zrobić taki projekt również mogę pomoc w zaprogramowaniu mikroprocesora i wysłać go do Ciebie ;)
    Jeżeli chodzi i programatory to osobiście polecam USBasp, wygodny, uniwersalny i tani (na allegro wersja smd kosztuje już około 30zł)

    mlassota -> jak najbardziej kojarzę Wasz projekt, gdy szukałem informacji to dłużej zatrzymałem się przy tej kostce, jednak stwierdziłem, że na początku nie rzucam się na głęboką wodę (czyt. rgb). Gratuluję wykonania waszej kostki, jest rownież imponująca.
    Co do przycisku "CHECK" jest on trochę niepraktyczny, jednakże przy projektowaniu miałem pomysł żeby w sytuacji gdy nie napiszę jeszcze żadnych animacji i nic się nie będzie wyświetlać to sprawdzę to na diodach czy wsad został poprawnie wgrany. Jednak przyznam się że było to dosyć "głupie" posunięcie, ponieważ jak wiemy już przy wgrywaniu wsadu z komputera, wyskoczy komunikat. Pomyślę jeszcze jakie mogę dodać inne działanie tego przycisku.
    Co do sterowania z portu, wiem że są ograniczenia i że w moim projekcie "ciągnę" prąd wielkości 7mA i jest to wystarczające. Gdy testowałem diody na płytce testowej między 7mA a 12mA nie ma zbyt dużej "wizualnej" różnicy, a posiadałem w domu akurat rezystory rzędu (220R). Oczywiście można to zmienić i zastosować nawet rezystory (120R) wtedy będziemy mieć prąd maksymalny jaki możemy uzyskać z portów (12,5 mA)

    ... -> Plastik w sprayu? Nie słyszałem o takim. Jak pisałem wcześniej pokryłem płytkę rozpuszczoną kalafonią, jednak to za mało?! Jeśli chodzi o ten plastik- to ile to kosztuje i czy mogę teraz spryskać taką gotową płytkę bez odlutowania elementów ?

    prosim -> Pewnie, że da radę, widziałem takie projekty na youtube i właśnie pod muzykę, jednak nie znalazłem jeszcze schematu do takiego urządzenia. Na pewno jest w jakimś stopniu trudniejszy od przedstawionego.


    xtreme69 -> zasilam to zasilaczem stabilizowanym 12V 1,5 A, bo taki mam w domu jednak układ spokojnie pójdzie na 500mA. Układ jest mało "prądożerny". Płytka wyfrezowana na maszynie CNC. Jeśli chodzi o USB/rs232/rc5/bootloader to wszystko będzie wykorzystane przy kolejnym projekcie, mianowicie 8x8x8, ten projekt był "testowy" chciałem sprawdzić czy będę w stanie go uruchomić i czy będą z nim jakieś problemy, chciałem się ograniczyć do przycisków,matrycy i gniazda programowania, więc założenia zostały spełnione. Oczywiście kolejny projekt będzie już rozbudowany, dzięki za propozycję ;)

    damian00771 - > niestety w tym przypadku "jest ryzyko, jest przyjemność", jeśli okazałoby się że spaliła się jedna dioda, będziemy mieli problem z pozostałymi połączeniami, trzeba wtedy kostkę budować od nowa. Jednak diody tak szybko się nie palą, mimo wszystko warto jest każdą po kolei sprawdzić przed lutowaniem.

    syntetyczn dran -> nie mam takich informacji, jednak jeśli bardzo Cię to interesuje to napisz, wtedy porozmawiam z moim prowadzącym na uczelni i dowiem się szczegółów.

    piotrva -> Dokładnie, chodziło o wyfrezowanie na CNC, wkradł się błąd z pośpiechu (już poprawione). Pytanie odnośnie sprawdzania wytłumaczyłem wyżej (pytanie mlessot'y). Co do zamkniętego projektu masz rację, jednak jak już pisałem wyżej założenia były proste - stworzyć prototyp kostki, ewaluacja przewidziana w przyszłości. Oczywiście mam na myśli: USB, rs232, rc5, bootloader.

    galica7 -> Moim zdaniem kostka 16x16x16 zrobiona na żarówkach jest trudna do realizacji, jednak pomysł wydaję się ciekawy ;)

  • #18 07 Sty 2012 16:01
    kasamiko
    Poziom 10  

    Hi,

    Nice project..sorry but I can't speak Polish...:(

    Anyway I'm interested to built this project but browsing the BOM found out that 14.7456 MHz xtal is not available in my place..

    Can I replaced it with standard values like 10,12,16 or 20 mhz xtal?

    Regards

  • #19 07 Sty 2012 16:27
    Zlata_n
    Poziom 14  

    ^Rachel -> tak jak napisałeś, można a nawet trzeba zastosować mniejsze rezystory (1/8W) ponieważ aż tak bardzo się nie grzeją, jednak w domowych zapasach miałem tylko (1/4W)

    kasamiko -> Of course that can change the XTAL to a different value, but you must then update the code. This is due to interrupt the microprocessor:
    Every 1024th cycle cpu, and the counter is incremented, counter every time that reaches 15, it is reset to 0, and the interrupt routine is executed.
    14745600/1024/15 = 960 times per second, there are 4 layers to update .. 14745600/1024/15/4 = 240 FPS == flicker free:)
    Please substitute the appropriate value and calculate the rest that there is no flicker.

  • #20 07 Sty 2012 19:03
    kasamiko
    Poziom 10  

    Hi,

    I found this.

    Kod: c
    Zaloguj się, aby zobaczyć kod



    But I really don't know which part I'm going to change..let say I'll be using a 16Mhz xtal, 16000000/1024/15?


    :(

  • #21 07 Sty 2012 19:09
    Sabre
    Poziom 18  

    Według mnie autor wybrał najgorszy kolor z możliwych. Do tego zbyt duża jasność, przez co tak naprawdę nie widać, że jest to 3D. Gdyby diody były innego koloru, bądź mniejszej jasności efekt byłby o niebo lepszy.

  • #22 07 Sty 2012 20:09
    Zlata_n
    Poziom 14  

    kasamiko napisał:
    Hi,

    I found this.

    Kod: c
    Zaloguj się, aby zobaczyć kod



    But I really don't know which part I'm going to change..let say I'll be using a 16Mhz xtal, 16000000/1024/15?


    :(


    16000000/1024/15/4 = 260 FPS so will be fine, no flickering.
    The system will shine a little faster than mine.
    In the code you just change the line
    Code:
     # define FOSC 14745600

    The value of BAUD and MYUBRR can be or can be removed because they are for communication or RS232 USART and I do not use it.
    Yours

    Dodano po 16 [minuty]:

    Sabre napisał:
    Według mnie autor wybrał najgorszy kolor z możliwych. Do tego zbyt duża jasność, przez co tak naprawdę nie widać, że jest to 3D. Gdyby diody były innego koloru, bądź mniejszej jasności efekt byłby o niebo lepszy.

    Niestety, nie zgodzę się z tobą, jasność diod jest dobrana specjalnie (około 7mA przy diodzie LED Dyfuzyjnej Blue daje wystarczający efekt, na pewno lepszy niż diody przeźroczystej). Nie ma sensu jeszcze zmniejszać jasności. Efekt naprawdę jest zadowalający, ale niestety nie da się tego uchwycić zwykłą kamerą albo na zdjęciach, tylko i wyłącznie wchodzi w grę zobaczenie "tego" na żywo ;). Efekt 3D jest widoczny dopiero przy odpowiednim kącie patrzenia na kostkę, na filmiku faktycznie jest słabo widoczne, ale kostkę mam tak ustawioną na półce że każdy kto na nią patrzy nie ma problemu z widokiem 3D.

    Co do koloru diod to raczej sprawa indywidualna, kwestia gustu a o tym się nie dyskutuje ;)

  • #23 07 Sty 2012 21:48
    Sabre
    Poziom 18  

    Zlata_n napisał:
    Co do koloru diod to raczej sprawa indywidualna, kwestia gustu a o tym się nie dyskutuje :wink:


    Nie chodzi o gust tylko o postrzeganie światła niebieskiego przez ludzkie oko. Nie pamiętam o co dokładnie chodzi, ale oko widzi światło niebieskie jako rozmazane i chyba nieostre, ale nie będę się wypowiadał. Ogólnie jestem pod wrażeniem konstrukcji i jeśli rzeczywiście przez diody płynie tylko 7mA to mogłeś w sumie jeszcze mniejszy prąd puścić przez nie bo świecą bardzo jasno :).

  • #24 07 Sty 2012 22:03
    Modecom601
    Poziom 13  

    Witam!
    Efekt końcowy jest super.
    Chciałbym tylko spytać, czy sterowanie taką kostką jest skomplikowane?


    Pozdrawiam

  • #25 08 Sty 2012 06:11
    kasamiko
    Poziom 10  

    Zlata_n napisał:
    ..
    16000000/1024/15/4 = 260 FPS so will be fine, no flickering.
    The system will shine a little faster than mine.
    In the code you just change the line
    Code:
     # define FOSC 14745600


    The value of BAUD and MYUBRR can be or can be removed because they are for communication or RS232 USART and I do not use it.
    Yours

    Dodano po 16 [minuty]:



    I hope I get it right..

    Kod: c
    Zaloguj się, aby zobaczyć kod



    Set the FOSC to used 16Mhz XTAL and disable MYUBRR.



    BR

  • #26 08 Sty 2012 14:59
    Zlata_n
    Poziom 14  

    kasamiko napisał:
    Zlata_n napisał:
    ..
    16000000/1024/15/4 = 260 FPS so will be fine, no flickering.
    The system will shine a little faster than mine.
    In the code you just change the line
    Code:
     # define FOSC 14745600


    The value of BAUD and MYUBRR can be or can be removed because they are for communication or RS232 USART and I do not use it.
    Yours

    Dodano po 16 [minuty]:



    I hope I get it right..

    Kod: c
    Zaloguj się, aby zobaczyć kod



    Set the FOSC to used 16Mhz XTAL and disable MYUBRR.



    BR

    FOSC is well but MYUBRR line must be active for this variable is later used in the code and will compile error. Better to leave this line unless you remove the code, all variables MYUBRR.
    Yours

    Dodano po 22 [minuty]:

    Modecom601 napisał:
    Chciałbym tylko spytać, czy sterowanie taką kostką jest skomplikowane?

    Sterowanie kostką nie jest aż tak trudne, mamy 3 zmienne które odpowiadają 3 płaszczyznom.
    Jest napisany plik draw.c w ktorych napisane są proste podstawowe funkcje ktore zapalają np. 1 diode, calą linijke (4diody), całą warstwe. Nastepnie w pliku effect.c sa pisane efekty ktore bazują już na tych funkcjach. Przykładowo zapalenie jednej diody to linijka:
    Code:
    void setvoxel(int x, int y, int z)

    gdzie x,y,z, to odpowiednie płaszczyzny, dajemy tam liczbe od 0 do 3 i pali nam się wskazana dioda ;) i tak dalej aż po funkcję które są naprawdę skompliownane np. efekt śruby ;)

  • #27 08 Sty 2012 22:30
    serwisant25
    Poziom 12  

    Witam.
    jestem początkujący, mam pytanie co do wsadu do atmegi.
    Programuję w Bascomie, przeglądając kody źródłowe widziałem że pliki się "zazębiają" gdzie mam je skopiować żeby wszystkie poprawnie się wgrały do układu?

  • #28 09 Sty 2012 10:06
    Modecom601
    Poziom 13  

    Witaj
    Dzięki za odp.
    Źle zrobiłem tą przykładową kostkę 3x3. PRzeglądając dokładniej zdjęcia schematu i boardu już wiem jaka jest zasada sterowania diodami ;)
    Jeszcze raz gratulację za wykonanie ;)
    Pozdrawiam

  • #29 09 Sty 2012 16:13
    Zlata_n
    Poziom 14  

    k.matras12 napisał:
    Programuję w Bascomie, przeglądając kody źródłowe widziałem że pliki się "zazębiają" gdzie mam je skopiować żeby wszystkie poprawnie się wgrały do układu?


    Pliki należy umieścić w jednym folderze, i w głównym pliku main należy je "dodać" dyrektywą
    Code:
    $include

    Dając polecenie
    Code:
    $include
    Bascom przeszukuje katalog z kompilowanym plikiem. Jeśli chcesz aby szukał w innym katalogu (np. katalogu wewnątrz katalogu z kompilowanym plikiem) to wpisujesz np.:
    Code:
    $include = "funkcje\funkcje.bas"

  • #30 14 Sty 2012 16:55
    RazoR253
    Poziom 9  

    Mógłbyś powiedzieć gdzie kupiłeś te diody? Bo nie mogę znaleźć tyle sztuk w cenie którą napisałeś, są wiele droższe.