Съдържание:

LED куб 4x4x4: 11 стъпки (със снимки)
LED куб 4x4x4: 11 стъпки (със снимки)

Видео: LED куб 4x4x4: 11 стъпки (със снимки)

Видео: LED куб 4x4x4: 11 стъпки (със снимки)
Видео: Artık Herkes TürkDuino UNO R4 V2 Üretebilecek 2024, Юли
Anonim
LED куб 4x4x4
LED куб 4x4x4
LED куб 4x4x4
LED куб 4x4x4
LED куб 4x4x4
LED куб 4x4x4

Невероятен триизмерен LED дисплей. 64 светодиода съставляват този куб 4 на 4 на 4, управляван от микроконтролер Atmel Atmega16. Всеки светодиод може да бъде адресиран индивидуално в софтуера, което му позволява да показва невероятни 3D анимации! 8x8x8 LED куб вече е наличен, от популярното търсене:

Стъпка 1: Какво ви трябва

От какво имаш нужда
От какво имаш нужда

Първо, имате нужда от доста време, за да споите 64 светодиода;) Списък на знанията:

  • Основни умения за електроника и запояване
  • Знайте как да програмирате AVR микроконтролер - няма да обхващам това в тази инструкция.

Списък на компонентите:

  • Protoboard. Типът с медни кръгове.
  • Микроконтролер Atmel AVR Atmega16
  • Програмист за програмиране на Atmega16
  • 64 светодиода
  • 2 светодиода за състоянието. Използвах червено и зелено. (по избор)
  • Max232 rs-232 чип или еквивалент.
  • 16 резистора за светодиоди. (100-400ohms) ще се върнем към това.
  • 2x резистор 470 ома. за светодиоди за състоянието
  • 1x резистор 10k
  • 4x резистор 2.2k
  • 4x NPN транзистор BC338 (или друг транзистор, който може да превключва 250-ish mA)
  • 1x 10uF кондензатор
  • 1x 1000uF кондензатор
  • 6x 0,1uF керамичен кондензатор
  • 2x 22pF керамичен кондензатор
  • 1x кристал 14.7456 MHz
  • 2x тактилен бутон
  • опционален превключвател pwr
  • конектор за захранване 12v
  • допълнителен конектор за 5v захранване

Стъпка 2: Мултиплексиране

Мултиплексиране
Мултиплексиране
Мултиплексиране
Мултиплексиране

Как да управляваме 64 светодиода, без да използваме 64 отделни проводника? Мултиплексиране!

Прокарването на проводник към анода на всеки светодиод очевидно би било непрактично и би изглеждало наистина лошо. Един от начините да заобиколите това е да разделите куба на 4 слоя от 16x16 светодиода. Всички светодиоди, подравнени във вертикална колона, споделят общ анод (+). Всички светодиоди на хоризонтален слой споделят общ катод (-). Сега, ако искам да запаля светодиода в горния ляв ъгъл отзад (0, 0, 3), просто подавам GND (-) към горния слой и VCC (+) към колоната в левия ъгъл. Ако искам да осветя само един светодиод наведнъж или само повече от един слой едновременно.. това работи добре. Ако обаче искам и да осветя долния десен ъгъл отпред (3, 3, 0), срещам проблеми. Когато подавам GND към долния слой и VCC към предната лява колона, също осветявам горния десен светодиод отпред (3, 3, 3) и долния ляв светодиод отзад (0, 0, 0). Този ефект на призраци е невъзможно да се заобиколи без добавяне на 64 отделни проводника. Начинът да заобиколите това е да осветявате само един слой наведнъж, но да го правите толкова бързо, че окото да не разпознава, че само един слой свети по всяко време. Това разчита на явление, наречено Устойчивост на зрението. Всеки слой е 4х4 (16) изображение. Ако мигаме 4 16 LED изображения едно по едно, наистина бързо, получаваме 4x4x4 3d изображение!

Стъпка 3: Изработка на куб, шаблон

Изработване на куба, шаблон
Изработване на куба, шаблон
Изработване на куба, шаблон
Изработване на куба, шаблон
Изработване на куба, шаблон
Изработване на куба, шаблон

Запояването на решетките от 4x4 светодиоди от ръка би изглеждало ужасно! За да получим 4 перфектни 4x4 решетки от светодиоди, използваме шаблон, за да ги държим на място. Исках да направя куба възможно най -лесен, затова избрах да използвам светодиодите собствените си крака, доколкото е възможно. Разстоянието между линиите в мрежата се определя от дължината на LED краката. Открих, че 25 мм (около инч) е оптималното разстояние между всеки проводник (между центъра на всеки светодиод, което е!), За да се даде възможност за запояване без добавяне или рязане на тел.

  • Намерете парче дърво, достатъчно голямо, за да направите 4x4 решетка от 2,5 см.
  • Начертайте 4x4 мрежа от линии.
  • Направете вдлъбнатини във всички кръстовища с централен удар.
  • Намерете свредло, което прави отворите достатъчно малки, така че проводникът да остане здраво на мястото си и достатъчно голям, за да може лесно да се извади (без огъване на проводниците..).
  • Пробийте 16 дупки.
  • Вашият шаблон за ledcube е готов.

Стъпка 4: Изработка на куба, запояване на слоевете

Изработване на куба, запояване на слоевете
Изработване на куба, запояване на слоевете
Изработване на куба, запояване на слоевете
Изработване на куба, запояване на слоевете
Изработване на куба, запояване на слоевете
Изработване на куба, запояване на слоевете

Ние правим куба на 4 слоя с 4x4 светодиоди, след което ги запояваме заедно. Създайте слой:

  • Поставете светодиодите по гърба и от едната страна и ги запоявайте заедно
  • Поставете друг ред светодиоди и ги запоявайте заедно. Правете един по един ред, за да оставите място за поялника!
  • Повторете горната стъпка още 2 пъти.
  • добавете кръстосани скоби отпред, където светодиодните редове не са свързани.
  • Повторете 4 пъти.

Стъпка 5: Създаване на куба, свързване на слоевете

Изработване на куба, свързване на слоевете
Изработване на куба, свързване на слоевете
Изработване на куба, свързване на слоевете
Изработване на куба, свързване на слоевете
Изработване на куба, свързване на слоевете
Изработване на куба, свързване на слоевете

Сега, когато имаме тези 4 слоя, всичко, което трябва да направим, е да ги спойкаме заедно.

Върнете един слой обратно в шаблона. Това ще бъде най -горният слой, така че изберете най -красивия:) Поставете друг слой отгоре и подравнете един от ъглите точно на 25 мм (или каквото и разстояние да използвате в мрежата) над първия слой. Това е разстоянието между катодните проводници. Задръжте ъгъла на място с ръка за помощ и запоявайте ъгловия анод на първия слой към ъгловия анод на втория слой. Направете това за всички ъгли. Проверете дали слоевете са перфектно подравнени във всички измерения. Ако не се огъне малко, за да се регулира. Или повторно запояване на разстояние от височината, което е изключено. Когато са перфектно подравнени, запоявайте останалите 12 анода заедно. Повторете 3 пъти.

Стъпка 6: Избор на стойности на резистора

Избор на стойности на резистора
Избор на стойности на резистора
Избор на стойности на резистора
Избор на стойности на резистора

Има две неща, които трябва да имате предвид, когато избирате стойност на резистора за вашите светодиоди.

1) Светодиодите 2) AVR AVR има максимален комбиниран токов ток от 200 mA. Това ни дава 12mA за работа с всеки светодиод. Също така не искате да надвишавате максималния ток, на който са оценени вашите светодиоди. Използвах 220 ома резистори на куба си. Това ми даде около 12mA на светодиод.

Стъпка 7: Контролерът

Контролерът
Контролерът
Контролерът
Контролерът
Контролерът
Контролерът

Схемите, управляващи светодиодния куб, са описани в приложеното схематично изображение.

Интерфейсът RS-232 не е задължителен. и могат да бъдат пропуснати. Това е IC2 и всички компоненти, свързани към него. Бъдещите фърмуери ще позволят комуникация с компютър. Започнете с поставянето на всички компоненти на вашата платка в оформление, което позволява на всички компоненти да се свързват с минимално количество проводници. Ако всичко е подходящо, запоявайте веригата. Няма да давам повече инструкции по този въпрос, тъй като схемата вероятно ще изглежда много различно от куб до куб, в зависимост от размера на платката и др. Информация за това как да свържете куба към веригата на контролера е в следващия стъпка.

Стъпка 8: Свържете куба

Свържете куба
Свържете куба
Свържете куба
Свържете куба
Свържете куба
Свържете куба

Снимките обясняват това по -добре от думите. Моля, вижте снимките.

Стъпка 9: Компилиране и програмиране

Вече имате светодиоден куб. За да го използвам, се нуждае от софтуер. Направих драйвер за изобразяване на 3D пространство за данни на куба и функции за показване на някои готини визуални ефекти върху куба. Можете да използвате моя код, да напишете свой собствен или да надградите моя код и направете повече ефекти. Ако направите свои собствени ефекти, моля, изпратете ми кода. Нямам търпение да видя какво правите! За да съставя програмата. Просто отворете командния ред, въведете директорията с кода на източника „make“в командния ред. Ако искате да използвате ATMega32 вместо ATMega16, просто променете настройката на mcu в Makefile и прекомпилирайте (въведете make). Ако използвате m32 и не правите тази стъпка, кубът няма да се стартира правилно (червените и зелените светлини ще продължават да мигат вечно). Сега трябва да имате файл с име main.hex в директорията източник. Следващата стъпка ще ви покаже как да получите този код във вашия куб.

Стъпка 10: Програмирайте микроконтролера

Програмирайте микроконтролера
Програмирайте микроконтролера
Програмирайте микроконтролера
Програмирайте микроконтролера
Програмирайте микроконтролера
Програмирайте микроконтролера

Ако имате проблеми със скоростта и/или някои светодиоди не светят. Моля, прочетете внимателно тази стъпка. За да програмирате микроконтролера, използвам avrdude и програмиста USBTinyISP.

  • https://savannah.nongnu.org/projects/avrdude/
  • https://www.ladyada.net/make/usbtinyisp/
  • https://www.adafruit.com/index.php?main_page=index&cPath=16

Моите примери ще бъдат на Ubuntu Linux система. Процедурата трябва да е почти идентична в Windows, но не мога да ви помогна с това. Ако използвате друг програмист, прочетете ръководството за този програмист и avrdude. Първо, нека просто да видим дали можем да осъществим контакт с AVR. Свържете програмиста с вашия куб и вашия компютър. Командата е "avrdude -c usbtiny -p m16 ", където -c определя програмиста, и -p AVR модела. Можете да видите изхода на изображенията по -долу. Сега качете фърмуера: "avrdude -c usbtiny -p m16 -U flash: w: main.hex". Досега кубът трябва да се рестартира и да започне да прави неща. Той ще работи на 1mhz (много бавно), като използва своя вътрешен осцилатор. И някои от светодиодите няма да работят, тъй като някои GPIO портове се използват за JTAG по подразбиране. За да активираме външния осцилатор и да деактивираме JTAG, трябва да програмираме байтовете на предпазителя: run "avrdude -c usbtiny -p m16 -U lfuse: w: 0xef: m "и" avrdude -c usbtiny -p m16 -U hfuse: w: 0xc9: m ". Бъдете внимателни, когато правите тази стъпка! Ако сбъркате, можете да унищожите завинаги вашия микроконтролер! Ако използвате друг микроконтролер от ATMega16, не забравяйте да прочетете внимателно листа с данни, преди да смените байтовете на предпазителя! След като напишете правилните байтове на предпазителя, кубът трябва да се рестартира и да започне да работи с нормална скорост с всички работещи светодиоди. Насладете се на новия си куб: д

Стъпка 11: Отидете голям - 8x8x8

Go Large - 8x8x8
Go Large - 8x8x8
Go Large - 8x8x8
Go Large - 8x8x8
Go Large - 8x8x8
Go Large - 8x8x8
Go Large - 8x8x8
Go Large - 8x8x8

След като направих този доста фантастичен куб 4х4х4, направих и огромен куб 8х8х8. Ще направя инструкции за това, когато имам време. Междувременно вижте снимки:-)

Можете да намерите версията 8x8x8 тук: https://www.instructables.com/id/Led-Cube-8x8x8/ Моля, оценете тази инструкция, ако ви харесва!:)

Препоръчано: