История одного 3д-куба 10х10х10

[ Версия для печати ]
Добавить в Telegram Добавить в Twitter Добавить в Вконтакте Добавить в Одноклассники
Страницы: (4) [1] 2 3 ... Последняя »  К последнему непрочитанному [ ОТВЕТИТЬ ] [ НОВАЯ ТЕМА ]
VorAn 27 фев. 2016 г. в 15:07
Приколист  •  На сайте 13 лет
Сообщений: 379
357
В последнее время на портале появлялись статьи о создании светодиодных кубов. Это своего рода игрушки, которые могут формировать трёхмерную картинку, но сделать большое разрешение очень проблематично и трудоёмко. Большинство работ ограничивается форматом 3х3х3, или в лучшем случае 5х5х5. Спустя время я нашёл свой старый 10 “этажный” куб, немного восстановил его и решил написать о своём опыте создания устройства

15 частей

История одного 3д-куба 10х10х10
Yap 12.04.2026 - 14:21
Продам слона  •  На сайте 21 год
Первый куб я спаял где-то в 2012 году, на подарок, с разрешением 4x4x4, в нем использовалась готовая схемотехника и программа, найденная в интернете. Увлёкшись, решил сделать такой же себе, но, увеличив разрешение до 5x5x5. Схемотехнику, опираясь на готовое решение, сделал сам, полностью скопировав саму логику подачи напряжения на ноги светодиодов.
Надо сказать, в тех кубах на светодиоды напряжение шло полностью от выводов МК, поэтому мне пришлось взять МК с большим количеством ног, ведь их нужно было уже 25 только на столбцы, и 5 на строки. В разрыве между МК и светодиодом был только токоограничивающий резистор, а напряжение на «этажах» стекало через полевой транзистор на землю.

История одного 3д-куба 10х10х10
Затем с Ebay заказал 1000 диодов, и решил собрать совсем большой, по моим меркам, куб. Кстати, мои небольшие эксперименты привели к тому, что лучший выбор пал на диоды с большой диаграммой направленности. Они не вытянутые, как обычно, а образуют полусферу, их свечение видно почти со всех углов, найти их можно по запросу strawhat led. Стоят они дороже, зато светят намного эффектнее. Спаять куб— это ещё то испытание. Тут, как и с корпусом, мне помогал мой хороший друг, так как я тяжело приспособлен к такой кропотливой работе. Делали как и все, просверлив отверстия под шляпки диодов, и сделав матрицу 10х10. Затем паяем все этажи отдельно, и накладываем их друг на друга. Процесс занял около 3 дней, почти безвылазного сидения перед паяльником.

Это сообщение отредактировал VorAn - 27 фев. 2016 г. в 15:09

История одного 3д-куба 10х10х10
Корпус сделан из обычного оргстекла, которое нам любезно раскроили на лазерной резке. Клеили с помощью Cosmofen PMMA, вроде специальный клей для оргстекла, на деле же, обычный суперклей справляется не хуже, но требует большей аккуратности, потому что, если нанесёте лишнего, то смыть уже не будет возможности.

Это сообщение отредактировал VorAn - 27 фев. 2016 г. в 15:10

История одного 3д-куба 10х10х10
На нижней платформе, заранее на лазерной резке наметили 100 отверстий под светодиоды. Легко просверлив их шуруповёртом, аккуратно погружаем туда спаянный куб, и припаиваем снизу переходники.

История одного 3д-куба 10х10х10
Также, чтобы спрятать электронику, пришлось подогнать и окрасить низ куба. Эта задача была простой, главное, что мы уяснили из прошлого опыта покраски маленького куба — красить нужно под углом, желательно сверху-вниз, чтобы краска не проникала в склеенные промежутки граней, под действием силы тяжести.

История одного 3д-куба 10х10х10
Теперь оставалось придумать как закрепить куб с основанием в декоративный корпус. Нужно было платформу с отверстиями зафиксировать на стыке с окрашенной частью. Для этого были вырезаны маленькие квадратики из оргстекла с вкрученными винтами. Их пришлось сделать столь крошечными, чтобы сам куб из диодов смог “пролезть” на своё законное место. Квадратики усиленно залили суперклеем, держится отлично. На самой платформе также просверлили отверстия, и зафиксировали куб гайками.

История одного 3д-куба 10х10х10
Ах да, ещё нужно рассказать о том, как мы его чистили после припоя. Паяли куб с использованием ЛТИ 120, соответственно, все диоды были в жёлтом налёте от канифоли. Такой большой ультразвуковой ванны не было, а кисточкой даже вручную ничего не очищалось. Кстати от ацетона диоды немного мутнеют, что недопустимо. Решение было найдено неожиданно, путём проб и ошибок — аммиак. Загрузили его в ёмкость от бывшего очистителя стёкол — и пшикали на куб. Потом пять минут ожидания и смываем водой. Потом опять аммиак — так около четырёх подходов и куб засиял чистотой.

История одного 3д-куба 10х10х10
После окончательной сборки куб принял следующий вид:

История одного 3д-куба 10х10х10
К сожалению, к процессу проектирования электроники подошли не совсем вдумчиво и, в итоге, спаяли матрицу по аналогии со старыми кубами, на этажах был общий катод, а столбцы зажигались анодами диодов. Это решение не очень выгодно с точки зрения подачи большого тока на столбец, ведь если в 5 этажном кубе для хорошей яркости достаточно подать один ток, то в 10 этажном, как минимум, нужно в 2 раза больше.
Об этой проблеме я сильно не задумывался и первая плата была создана с помощью широко известных сдвиговых регистров 74hc595, так как уже имел опыт работы с ними. Задачу по коммутации исполнял МК AtMega128, а током на этажах управляли полевые транзисторы.

Это сообщение отредактировал VorAn - 27 фев. 2016 г. в 15:15

История одного 3д-куба 10х10х10
Запаяв все элементы и, использовав те же резисторы, я написал простую программу и был шокирован, что на куб можно с удовольствием смотреть только в темноте. Днём его яркость не устраивала и программными методами это никак не решалось. Вопрос не сложный — подумал я, и запаял резисторы меньшего номинала, рассчитав, чтобы на диоды шёл ток около 70ма. После включения разочарование ещё больше усилилось — куб почти ничего не показывал, зажигая редкие диоды, зато ярко. Открыв даташит на 74hc595 стало всё ясно — напряжения на выходах нормируются для токов не более 8 мА, а суммарный ток через выводы земли и питания не должен превышать 70 мА., что нам абсолютно не подходило.
Начал штудировать микросхемы, которые бы подошли для этой задачи. В нашей южной столице ничего почти не было в наличии, и ещё из всех даташитов микросхем, которые рассчитаны на большой ток, я начал замечать одну неприятность — они все на конечном каскаде содержат пару Дарлингтона, и по схемам в даташите соединяют выходной контакт с землёй. Для нашей конфигурации куба, где катод был на этажах, это никак не подходило. Посмотрев схему популярного uln2003 и, увидев аналоги на светодиодных матричных драйверах, я понял, что это решение никак не применить:

История одного 3д-куба 10х10х10
На мой взгляд, изучив потом конструкцию популярных мискросхем, решил, что проще подавать на этажи плюс, через мощный транзистор, а столбцы, с помощью ULN2003, скидывать на землю т.е. делать схему куба с общим анодом.
Отчаявшись искать решение, куб был отложен на неопределённый промежуток времени, как вдруг он резко понадобился для одного мероприятия. У нас было три дня, чтобы запустить его на нормальной яркости. Решение придумали простое — на каждый выход 74hc595 вешаем обычный транзисторный ключ, а в программе инвертируем биты. Была распакована пачка каких-то простых BC846B, давно валявшихся с EBAY, и быстро разведена плата.

История одного 3д-куба 10х10х10
Она получилась громоздкой, но из неё убрали микроконтроллер. Просто от старой платы провели три управляющих провода на новую, на случай, если в будущем перейдём на stm32, или другое схемотехническое решение. После подключения всех выводов, куб запустился и порадовал нас отличной картинкой.

Исходников подобных программ я тогда нигде не нашёл, а мои навыки написания программ были далеки от идеала. Но результат был достигнут, поэтому вкратце опишу алгоритм.
Программа была написана на тот момент в CodeVision, а эффекты подгружались отельным файлом в основной листинг. Изначально были написаны подпрограммы разбивки десятизначного бинарного числа на 10 отдельных переменных для каждого ряда, и отправки этих 100 переменных в сдвиговые регистры, обнуления, и задержек для формирования этажей. Всё это привели к такому формату, который описывал, что мы видим на конкретном этаже (единицы — зажжённые диоды):

a=0b1000000001;
b=0b0000000000;
c=0b0000000000;
d=0b0001111000;
e=0b0001111000;
f=0b0001111000;
g=0b0001111000;
h=0b0000000000;
i=0b0000000000;
j=0b1000000001;
addr();output_shift();
level1();


Разбивка числа, вида 0b0001111000 осуществлялась простым алгоритмом.

if (a>0b0111111111) {
out[1]=1;
a=a-0b1000000000;
}

if (a>0b0011111111) {
out[2]=1;
a=a-0b0100000000;
}

и т.д.

Это сообщение отредактировал VorAn - 27 фев. 2016 г. в 15:17

История одного 3д-куба 10х10х10
Проверяем старший бит на предмет нуля или единицы путём сравнения. Если больше, то выставляем переменную регистра в единицу и уменьшаем число на этот разряд. Проделываем эту операцию десять раз, чтобы выделить все 10 значений для одного ряда, и сохраняем их во временные переменные сдвигового регистра, которые мы потом разом отправим на отображение.
Процедуру работы со сдвиговым регистром описывать нет смысла, она разобрана на многих сайтах. Затем, после описания всех 10 уровней, всё это загоняется в подпрограмму динамической индикации, где весь этот цикл повторяется необходимое число раз (время каждого фрейма задаётся для каждого кадра) для обмана человеческого зрения. Конечно для масштабных кубов написание эффекта может превратиться в мучение, и нужно делать компьютерный интерфейс. Но для нашего я быстро составил несколько эффектов, и закинул это в МК avrmega128, заняв почти 20% флэш памяти.
Ну и конечно, какой 3д-куб без финального видео. К сожалению, у меня так и не получилось выставить на фотоаппарате настройки, чтобы передать красочность куба, то диоды сливаются между собой, то слишком тёмные, для эффектности чередовал съёмку с action-камерой.

Надеюсь, наш опыт создания куба и допустимые ошибки будут кому-то полезны, ведь делали мы его около двух лет назад и тогда информации, по такому роду устройств, было мало. Недавно я нашёл его в подвале, почистил и поставил в свой магазин, всем клиентам нравится, все спрашивают где купили, и почти всегда около пары минут смотрят эффекты.

На этом все, источник.

История одного 3д-куба 10х10х10
Все комментарии:
scrudge 27 фев. 2016 г. в 15:27
VFX creative director WB  •  На сайте 13 лет
17
Когда капельками свет падает - больше всего понравилось...
подольше бы на нем замутить додик и будет офигенный успокаивающий ночник wub.gif
Vanoexe 27 фев. 2016 г. в 15:28
Шутник  •  На сайте 13 лет
31
Крутой кубик!!! По тексту, ни чё не понятно. достаточно было выложить видео)
Осенило 27 фев. 2016 г. в 15:30
Шутник  •  На сайте 10 лет
7
Предвижу 3д мониторы, которые по такому принципу будут работать. Типа голограмма, только из светодиодов.
Copperfild 27 фев. 2016 г. в 15:31
Интеллигентное питерское быдло  •  На сайте 15 лет
3
Куборукожопу зачёт!
AZARKH 27 фев. 2016 г. в 15:32
Хохмач  •  На сайте 11 лет
0
Изумительно!
Классная работа!
Kigo 27 фев. 2016 г. в 15:32
Рязанское дезинфо  •  На сайте 13 лет
34
У меня бы усидки не хватило столько перепаять


Это сообщение отредактировал Kigo - 27 фев. 2016 г. в 15:33
starkoff 27 фев. 2016 г. в 15:36
Ярила  •  На сайте 12 лет
4
такую работу провести и бросить в подвал, ну как так?
kistanov 27 фев. 2016 г. в 15:37
оптихуист  •  На сайте 17 лет
0
хочу такой же собрать. китайцы недорага КИТы предлагают
djkjulf 27 фев. 2016 г. в 15:38
Хохмач  •  На сайте 11 лет
0
Тоже валяется китайский.8*8*8 Не могу понять,как паять эти чертовы светодиоды,отсюда и не начинаю.Кондуктор бы какой,для формирования выводов...
Dux 27 фев. 2016 г. в 15:41
Ярила  •  На сайте 14 лет
2
А если не силён в микросхемотехнике, только паяльник в руках держать умею - какие шансы собрать?
Понравился пост? Еще больше интересного в Телеграм-канале ЯПлакалъ!
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии. Авторизуйтесь, пожалуйста, или зарегистрируйтесь, если не зарегистрированы.
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) Просмотры темы: 39823
0 Пользователей:
Страницы: (4) [1] 2 3 ... Последняя » [ ОТВЕТИТЬ ] [ НОВАЯ ТЕМА ]

 
 



Активные темы






Наверх