Светодиодный куб 5х5х5

В этой статье описана сборка светодиодного куба 5 х 5 х 5, который управляется при помощи Arduino и вся конструкция располагается на печатной плате.

Видео работы светодиодного куба:

Разработка куба и материалы

Я видел много проектов светодиодных кубов, и основной их проблемой является управление большим количеством светодиодов при помощи маленького количества контактов. Во многих проектах для этой цели использовались сдвиговые регистры. Основной их проблемой является время, требуемое на сдвиг всех битов и проблемы возникающие из-за него. Мне это не понравилось, и я решил нарисовать свою схему.

Я использую 5 дешифраторов по 3-8 линии на каждый (также они известны как демультиплексоры), чтобы преобразовывать  двоичный сигнал с 5-битного параллельного входа  в 25-битный параллельный выход, который управляет светодиодами. Особенностью этих дешифраторов является то, что высокий уровень сигнала может быть одновременно лишь на одной из 25 линий. Если на пяти контактах Arduino 01010 (10 в двоичной системе), дешифраторы принимают этот сигнал и выводят его на свой 10 контакт. Всего их 25 с номерами 0-24.

В схеме также используются NPN транзисторы, на катодах каждой плоскости куба.
Куб собран на специальной печатной плате изготовленной на заводе, что позволило избежать большего количества проводов. Всего проект обошелся в $100.

Предварительно удостоверьтесь, что ваши дешифраторы дают высокий уровень сигнала на один из выводов, а на все остальные низкий, т.к. есть микросхемы, которые дают низкий уровень сигнала на один вывод, а высокий на все остальные.

Посмотреть предварительные наброски схемы и таблицу

Сборка куба

Первый шаг — это изготовления куба из светодиодов. Я купил дешевые светодиоды с очень короткими выводами, и мне пришлось использовать дополнительный провод.

Я просверлил в доске отверстия  5мм с расстоянием между ним 2.5 см. Светодиоды вставляются в эти отверстия  и соединяются вместе. Таким образом делается 5 слоев.

Когда все 5 слоев готовы, их надо соединить. Расстояние между слоями должно быть 2.5 см, чтобы куб не был сплющенным или растянутым.  От катода каждого слоя приведите вниз куба по проводу, который далее будет впаян в плату. Всего такой куб насчитывает около 300 точек пайки.

Макет схемы

Для подключения куба я использовал кабель CAT5, т.к. он дешев и доступен. Я собрал схему на макетной плате. Выберите угол куба который будет считаться точкой начала отчета и подключите к его аноду вывод 0 дешифратора. Следующим анодом считается ближайший анод по оси X, а когда они закончатся, используйте аноды по оси Y. Я использовал резисторы по 150 Ом между дешифратором и столбцом.

Для подключения катодов используется NPN транзистор. Используйте резистор между базой транзистора и Arduino. Подключаете 1вывод транзистора к GND,  2 к Arduino, 3 к катоду.

Программа для Arduino

После того, как куб подключен к прототипу схемы, необходимо напивать программу.

Код разбит на 4 основных части:

LEDs.h:
Содержит номера всех контактов и массивов.
DisplayBasics.pde:
Содержит несколько основных «формы» в кубе, для использования в модели.
Patterns.pde:
Содержит образцы программ отображения, которые можно увидеть на видео в начале статьи.
LEDCubePCB.pde:
Это окончательный вариант моего кода. Номер исполняемой программы изменяется в зависимости от положения потенциометра.

Расширение функциональности

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

Печатная плата

Я разработал эту схему и печатную плату в Eagle. К статье прилагаются исходники в формате Eagle, которые можно редактировать. При проектировании печатной платы обратите внимание на размер отверстий, особое внимание уделите проводам.

Плата была изготовлена на заводе на заказ. Если вы не можете изготовить плату на заводе, вы можете сделать её при помощи ЛУТа или фоторезиста.

Производство и сборка печатной платы

Чтобы отправить проект на производство, необходимы файл сверловки и Gerber файлы. Я не умею их делать, но следуя инструкциям в интернете смог сделать и их. Эти файлы прилагаются к статье. Обратите внимание, что перемычки теперь подключены к GND и работают за счёт внутренних подтягивающих резисторов Arduino.

Начните сборку с резисторов и панелек, а сам куб паяйте в последнюю очередь. Все компоненты использованы в обычном выводном корпусе, поэтому монтаж достаточно пост. Паяйте плату чистым жалом, соблюдайте температурный режим и не перегревайте компоненты. Я использовал разъемы для всех микросхем.

Готово!

После сборки платы загрузите программу в Arduino и проверите её. Если схема работает неправильно, перепроверите правильность подключения и сборки куба.

В архиве ниже прилагаются файлы Eagle, Gerber и исходники ПО

Список радиоэлементовОбозначение
Тип
Номинал
Количество
ПримечаниеМагазинМой блокнот

U$1
Плата ArduinoArduino Duemilanove1
V1-V5
Кодер, декодерCD74HC2385
T1-T5
Биполярный транзистор2N44015

СветодиодСиний125
5 ммR1-R25, R27-R31
Резистор150 Ом30
R26
Подстроечный резистор10 кОм1
SV1, RESET
Джампер6
SV2
Разьем6 выводов1
JP1-JP25
Одиночный разьем25
Добавить все

Скачать список элементов (PDF)

Оригинал статьи

Прикрепленные файлы:

Добавить комментарий

Ваш адрес email не будет опубликован.