Дело было вечером, делать было нечего. (с)
Дело было года 3 назад. Случайно наткнулся на одно видео
LED cube 8x8x8 demo и скажу честно, оно меня впечатлило. У меня на тот момент уже давно чесались руки что-нибудь сотворить «этакое». Тогда я ещё не знал что такое Arduino, да и вообще имел смутные понятия даже как правильно подключить светодиод. Набравшись храбрости, я отправился на просторы Интернета, где достаточно быстро нашёл идеи и схемы как собирают подобные кубики, и магазин, где можно купить компоненты. Выбрал кубик 4х4х4 как оптимальный вариант для первого опыта.
Немного теории и ход размышлений:
Как зажечь светодиод?
Подать напряжение и подключить землю. Питание 5В — нужен резистор.
Как зажечь 16 диодов с возможностью зажигать по отдельности?
Нужно 16 ключей для подачи напряжения.
Как зажигать любой диод из матрицы 4х4х4?
Раскладываем матрицу на «этажи» 4 на 4. Получаем 16 ключей на напряжение по «столбам» + 4 для открытия земли на «этаже».
Итого необходимо 20 управляемых выходов некого микроконтроллера.
Паять обвязку и программировать с нуля микроконтроллер без опыта я не решился и выбрал Arduino, точнее аналог Freeduino.
Freeduino Nano v5
Микроконтроллер: ATmega328
Цифровые порты ввода/вывода: 14 портов (из них 6 с ШИМ-сигналом)
Аналоговые порты ввода: 8 портов
22 программируемых входов/выходов с напряжением +5В при логической единице — то что надо.
Материалы:
Светодиоды 64шт.
Резисторы 20 шт.
Транзисторы биполярные 4 шт.
МК: Freeduino Nano v5
Проводки, выключатель, разъёмы, макетки и прочее.
Светодиоды и Freeduino были куплены в ближайшем магазине остальное выпаяно из ближайшего блока питания или найдено где-нибудь ещё.
Итак, приступаем:
Размечаем что-либо на квадраты со сторонами 5мм на 5мм — это длина короткой из ножек светодиода.
Загибаем катод на 90 градусов — их будем спаивать в цепочку, получая «этажи» и красиво выставляем на полученную ранее матрицу-шаблон.
Далее загибаем анод (длинная нога) под небольшим углом. Это требуется чтобы удобно было спаивать «этажи»
и спаиваем всё вместе.
Пришло время тестировать.
Т.к. светодиоды были синие, нашёл синий шлейф и распустил его.
Когда это всё заработало на макетке радости не было придела.
Собираем постамент.
Так уж получилось что купил я ровно 64 светодиода и один потерялся. Магазина где можно было купить по дороге у меня нет, а доставку из-за одного диода заказывать совсем уж странно. Выход нашёлся сам собой — поставить кубик на усечённую грань! И оригинально и внешний вид только выигрывает. Коробочка от болванок как раз подошла по размерам. В неё для надёжности и возможности отключения вплавил выключатель который перекрывает землю.
Далее идут фотографии уже обновлённой версии. Первый собранный кубик пал жертвой катаклизма локального масштаба и был безвозвратно утрачен кроме базы. Для сбора обновлённой версии я уже не сгибал ножки, т.к. они очень мягкие и плохо держат форму, я отрезал их почти под корень, а соединения делал из стальной проволоки 0,9 мм из строительного магазина. Возни получилось больше, зато результат намного лучше. Более ровные грани, да и жёсткость конструкции увеличилась. Диоды уже брал у китайцев и собрал полный 4х4х4 кубик.
То, что внутри:
И результат:
Питается от любого источника на 5В. Чаще всего подключен к USB порту. Для программирования необходимо выключать кубик, чтобы не светился. т.к. были использованы выходы 0 и 1, которые также используются для программирования контроллера. При включенной иллюминации и работе программы через выходы протекает ток, что ведёт в 90% случаев к сбоям при заливки нового скетча.
Писать про Arduino IDE
и приводить код не стал. Простые циклы — ничего интересного и примеров уже в Интернете очень много.
Если появится у кого-нибудь интерес, добавлю код и сниму видео.
Скетч ромбика
Led Romb
Спасибо за внимание.
З.Ы. Пересматривая перед публикацией статью увидел край подставки под кружки. Чую будут вопросы «что под кружкой?».
Вот:
Склеено клеевым пистолетом.