Главная » Arduino
Призовой фонд
на сентябрь 2017 г.
1. 1000 руб
PCBWay
2. Осциллограф DSO138
Паяльник
3. Тестер компонентов MG328
Паяльник
4. 100 руб.
От пользователей

3x3x3 LED куб

3x3x3 LED куб

В данной статье я пошагово расскажу об изготовлении 3D LED куба, с размерностью 3х3х3. Управление LED осуществляется при помощи контроллера Arduino.

Отличительной особенностью данного проекта от других является:
1. Небольшое число дополнительных компонентов, подключается напрямую к Arduino без использования различных мультиплексоров и т.п.
2. Простая для повторения принципиальная схема с множеством фотографий и разьяснений.
3. Использование универсальной библиотеки, что значительно упрощает написание программы.

Итак, нам понадобится:
- макетная плата
- 3 NPN транзистора (2N2222, 2N3904, BC547 и т.п.)
- 12 резисторов (~220 Ом и 22 кОм)
- 13 коннекторов (папа или мама)
- 27 светодиодов (LED)
- соединительные провода

А сначала, немного видео работы устройства:

Итак, посмотрели видео? Ну а теперь поехали!

Шаг 1. Подготовка LED

Этот шаг практически ни чем не отличается от предыдущего проекта светодиодного куба 4x4x4, за исключением соответственно размерностью. Куб 4х4х4 более сложен, т.к. требует введения в схему дополнительный элементов. У нас же куб будет с 3 уровнями, по 9 LED в каждом.

В каждом наборе из 9-ти LED, все катоды соединены между собой, т.е. подключены по схеме с общим катодом (минус). Далее, наборы мы будем называть "уровнями". Каждый LED соединен анодом с LED другого уровня (нижестоящими или вышестоящими). Далее, по тексту я буду называть это колоннами, т.е. в одной колонне соединено 3 светодиода анодами, а на одном уровне соединено 9 LED катодами.

Шаблон для LED

Как видно на фото выше, для изготовления куба я использовал старый шаблон от проекта 4х4х4 светодиодного куба. Отверстия в дереве просверлены под головку светодиода, расстояние между отверстиями составляет приблизительно 15мм.

После того, как приспособа сделана, пора приступить к формовке выводов LED. Катоды всех светодиодов необходимо аккуратно согнуть на 90 градусов. Направление изгиба вывода должно быть одинаковым у всех LED. Как определить где катод, а где анод у светодиода читайте здесь или здесь.

Шаг 2. Сборка куба

Разместите первые девять светодиодов в деревянном приспособлении. С позиционируйте направление изогнутых ножек в одном направлении, скажем по часовой стрелке (или против часовой, это не принципиально).

Компоновка LED

При помощи "крокодилов" зафиксируйте ножки LED и спаяйте их вместе. В самом конце припаяйте центральный LED. После того, как один уровень закончен, можно проверить правильность подключений LED при помощи батарейки или мультиметра. Т.к. потом, что-либо отпаять будет очень сложно, особенно если это центральный LED.

Проверка LED

Таким образом сделайте все три уровня.

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

Куб готов. Теперь можно разместить его на макетной плате.

Готовый LED куб

Шаг 3. Схемотехника

Схема устройства простая. Каждая из девяти колонн подключена к выводам Arduino через токоограничительные резисторы. А все 3 уровня подключены к общему выводу через NPN -транзисторы, которые, в свою очередь подключаются к Arduino.

Схема подключения

Т.о. используется только 12 выводов Arduino. В один момент времени будет загораться LED только одного уровня, но за счет быстрого переключения между уровнями, будет казаться, что одновременно горят все уровни (в зависимости от программы).

Первым делом необходимо припаять 9 резисторов. Я использовал резисторы сопротивлением 220 Ом, которые ограничивают ток на уровне 22 мА. Номинал резисторов зависит от типа применяемых светодиодов, и варьируется от 135 до 470 Ом. Более точный расчет резистора для светодиода можно произвести здесь: LED калькулятор. Каждый вывод Arduino способен выдать до 40 мА.
Резисторы на плате, я припаял вертикально.

Установка 9-ти резисторов

После, я наклеил слой изоленты, чтобы не коротнуло с перемычками.

Слой изоленты

Следующим этапом будет монтаж радиоэлементов для управления уровнями. Здесь используется три NPN-транзистора. Базы транзисторов, через резистор 22 кОм подсоединяются к выводам Arduino. Т.о. контроллер открывает транзистор и весь уровень LED соединяется с "общим".

Конечный результат

Шаг 4. Софт

В интернете я нашел несколько примеров управления подобными LED кубами. Но во всех них требовался огромный начальный массив bin или hex данных. Я все решил написать свою программу управления.

Первой задачей было сделать доступное для понимания соответствие программы и железа. Я принял решение обращаться к уровням и колоннам, вместо использования RAW-данных порта или традиционных x, y, z. Второй задачей было сделать базовые функции куба, такие как включение/отключение отдельного светодиода и др.

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

Всю эту функциональность я сделал в виде классов и сделал библиотеку Arduino, которую можно использовать для других проектов и даже с другой размерностью куба.

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

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

Теги:

Колтыков А.В. Опубликована: 2011 г. 0 0
Я собрал 0 0
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 0 Проголосовало: 0 чел.

Комментарии (7) | Я собрал (0) | Подписаться

0
саша #
Какие светодиоды взяты? Они на 3 вольта?
Ответить
0
Дмитрий #
Брать можно абсолютно любые: на 3 мм или на 5 без разницы. Только если они красные или желтые, то резисторы нужны уже примерно на 260 - 300 Ом, а не на 220.
Ответить
0
Даниил #
То есть резисторы можно брать на 220 Ом если они например зеленые или синие, а если красные или желтые то больше, так?
Ответить
0
Uzer #
Можно ли использовать транзистор КТ315Б?
Ответить
0
Александр #
Можно.
Ответить
0
amator-75 #
А к каким ножкам ардуино подключать светодиоды?
Ответить
0
Артем #
Все круто... только компилятор ругается:
Arduino: 1.6.1 (Windows 8.1), Плата "Arduino Uno"

In file included from Cube.pde:1:0:

C:\Users\Spart\Documents\Arduino\libraries\LedCube/LedCube.h:10:22: fatal error: WProgram.h: No such file or directory

#include "WProgram.h"

^
compilation terminated.

Ошибка компиляции.
Все файлы из архива закинул как написано в readme.
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется электрическая мощность?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Модуль измерения тока на ACS712 (30А)
Модуль измерения тока на ACS712 (30А)
Набор для сборки - LED лампа Паяльная станция Hakko 936
вверх