Трёхцветный светодиодный 3D-куб 8x8x8 с возможностью программирования через Arduino и вывода своих анимаций + Акриловый корпус к нему: Наборы для самостоятельной сборки

02 мая 2017

Светодиодные кубы никогда не потеряют свою популярность и привлекательность. На просторах интернета есть огромное множество проектов кубов 5х5 и меньше. Мы же сегодня построим куб 8х8х8 диодов.

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

Для работы над проектом достаточно обладать основными навыками пайки, иметь базовые знания электроники и быть знакомым с работой плат Arduino.

Led куб – что нужно для самостоятельной сборки

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

Давайте разберем как это работает на примере куба со стороной в 8 светодиодов. Такой куб может испугать начинающих, но если вы будете внимательным при изучении материалов – вы с лёгкостью освоите его.

Чтобы собрать led cube 8x8x8 вам понадобится:

Принцип работы схемы

Маленькие светодиоды типа 5 мм потребляют незначительный ток – 20 мА, но вы собираетесь зажигать их довольно много. Источник питания 12В и 2А прекрасно подойдет для этого.

Подключить все 512 светодиодов индивидуально у вас не выйдет потому, что вряд ли вы найдете микроконтроллер (МК) с таким количеством выводов. Чаще всего встречаются модели в корпусах с количеством ног от 8 до 64. Естественно вы можете найти варианты и с большим количеством ножек.

Как же подключить столько светодиодов? Элементарно! Сдвиговый регистр – микросхема которая может преобразовывать информацию из параллельного вида в последовательный и наоборот – из последовательного в параллельный. Преобразовав последовательный в параллельный вид, вы получите из одной сигнальной ножки 8 и более, в зависимости от разрядности регистра.

Ниже приведена диаграмма иллюстрирующая принцип работы сдвигового регистра.

Когда на последовательный вход Data вы подаете значение бита, а именно ноль или единицу, она по фронту тактового сигнала Clock передается на параллельный выход номер 0, не забывайте, что в цифровой электронике нумерация идёт с нуля).

Если в первый момент времени была единица, а затем в течении трёх тактовых импульсов на входе вы задали нулевой потенциал, в результате этого вы получите такое состояние входов «0001». Вы можете это наблюдать на диаграмме на строках Q0-Q3 – это четыре разряда параллельного выхода.

Как применить эти знания в построении LED куба? Дело в том, что можно применить не совсем обычный сдвиговый регистр, а специализированный драйвер для светодиодных экранов — STP16CPS05MTR. Он работает по такому же принципу.

Самая интересная часть: демонстрационные видео + моя наработка

Стандартные анимации (+видео)

Анализ музыкального спектра (+видео)

Реализация этой фичи как-то особо не впечатлила, ожидал большего. Клавиша
«0»
— перевод куба в этот режим. Клавиша
«1»
— возвращает куб к стандартному воспроизведению анимаций

Анимированный вывод на куб показаний c датчика температуры и влажности DHT22 (+видео)

Меня не столько привлекает возможность создания каких-то новых абстрактных анимаций, сколько вывод на куб какой-то действительно полезной информации. Например с датчика температуры и влажности DHT22. Но при этом согласен, статичное отображение мало интересно, поэтому простую анимацию я всё же реализовал — это пролёт букв и цифр с задней стенки куба на переднюю. В коде объявлено три массива типа
unsigned char
:
massBukov[56]
, содержащий буквы M, Y, S, K, U, B, T
massNumber[40]
, содержащий цифры от 0 до 9
massBUF[64]
, буферный массив, посылаемый в куб. Поскольку разрешение одной стороны куба 8×8, то выводить на неё мы можем максимум двухзначное число, которое будет формироваться в зависимости от показаний датчика. Перед выводом числовых показаний будет появляться буква, соответствующая типу показаний, например
«В»
— это влажность, а
«Т»
— температура. При запуске программы реализовал вывод названия многим знакомого ресурса, на котором этот обзор и выложен. После этого циклически выводится температура и влажность на куб. Для успешной компиляции этого скетча требуется наличие библиотеки DHT.

Скетч для вывода температуры и влажности на куб

// Вывод температуры и влажности с датчика DHT22 // Питание 5В, сигнальный вывод датчика подключается ко 2 выводу Ардуино и притягивается через 10К резистор к 5В #include «DHT.h» #define DELAYS 150 #define LAYER 8 #define COLUMN_COUNT 64 DHT dht(2, DHT22); // Вывод #2 для датчика void printMass(unsigned char *massP); void printNum(unsigned char number); void printMain(void); unsigned char des, ed, h, t; unsigned char massBUF[64]; unsigned char massBukov[56] = { 0xFF, 0xFF, 0x30, 0x1C, 0x1C, 0x30, 0xFF, 0xFF, // M 0xF0, 0xF8, 0x1C, 0x0F, 0x0F, 0x1C, 0xF8, 0xF0, // Y 0x4C, 0xDE, 0x9B, 0x99, 0x99, 0xD9, 0x7B, 0x32, // S 0x00, 0x81, 0xC3, 0x66, 0x3C, 0x18, 0xFF, 0xFF, // K 0xFC, 0xFE, 0x07, 0x03, 0x03, 0x07, 0xFE, 0xFC, // U 0x00, 0x00, 0x2C, 0x7E, 0x52, 0x7E, 0x7E, 0x00, // В 0x00, 0x60, 0x60, 0x7E, 0x7E, 0x60, 0x60, 0x00 // Т }; unsigned char massNumber[40] = { 0x00, 0x7C, 0x44, 0x7C, // 0 // 0 0x00, 0x00, 0x7C, 0x00, // 1 // 4 0x00, 0x74, 0x54, 0x5C, // 2 // 8 0x00, 0x7C, 0x54, 0x54, // 3 // 12 0x00, 0x7C, 0x10, 0x70, // 4 // 16 0x00, 0x5C, 0x54, 0x74, // 5 // 20 0x00, 0x5C, 0x54, 0x7C, // 6 // 24 0x00, 0x7C, 0x40, 0x40, // 7 // 28 0x00, 0x7C, 0x54, 0x7C, // 8 // 32 0x00, 0x7C, 0x54, 0x74 // 9 // 36 }; void setup(void) { dht.begin(); _delay_ms(DELAYS); Serial.begin(38400); Serial.write(0xAD); //команда кубу на работу от Ардуино printMass(massBukov,COLUMN_COUNT,LAYER); printMass(massBukov+8,COLUMN_COUNT,LAYER); printMass(massBukov+16,COLUMN_COUNT,LAYER); printMass(massBukov+24,COLUMN_COUNT,LAYER); printMass(massBukov+32,COLUMN_COUNT,LAYER); } void loop(void) { h = dht.readHumidity(); t = dht.readTemperature(); printNum(h); _delay_ms(500); printMass(massBukov+48,COLUMN_COUNT,LAYER); _delay_ms(600); printNum(t); _delay_ms(600); printMass(massBukov+40,COLUMN_COUNT,LAYER); _delay_ms(600); } void printMass(unsigned char *massP, int razmer, int sdv){ for(int z=0 ; z<8 ; z++) massBUF[z] = massP[z]; for(int y=0; y<8; y++){ printMain(); for (int i=razmer-1 ; i>=0 ; i—){ massBUF = i<4; i++){ massBUF[4+i] = massNumber[des*4+i];//десятки massBUF = massNumber[ed*4+i]; //единицы } printMass(massBUF,COLUMN_COUNT,LAYER); _delay_ms(DELAYS); }

[МЕНЮ]

Как соединять светодиоды?

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

Поэтому мы пойдём другим путём и объединим светодиоды в строки и столбцы, таким образом мы получим двухмерную матрицу. Лед куб же занимает все три оси. Доработав идею объединения светодиодного куба 8x8x8 у которого светодиоды объединены в группы, можно прийти к такому выводу:

Объединить слои светодиодов (этажи) в схемы с общим анодом (катодом), а столбцы в схемы с общим катодом (или анодом, если на этажах объединяли катоды).

Чтобы управлять такой конструкцией нужно 8 x 8 = 16 управляющих пинов на колонки, и по одной на каждый этаж, всего этажей тоже 8. Итого вам нужно 24 управляющих канала.

На колодку input подаются сигнал с трех ножек микроконтроллера.

Чтобы зажечь необходимый светодиод, например, расположенный на первом этаже, в первой строке третий по счету, вам нужно подать минус на столбец номер 3, а плюс на этаж номер 1. Это справедливо если вы собрали этажи с общим анодом, а столбцы – катодом. Если наоборот, соответственно и управляющие напряжения должны быть инвертированы.

Аппаратная часть: корпус

Я спроектировал корпус для куба сам, решив сделать его максимально простым. Размер получился 67мм3. Это единая деталь, которую можно напечатать на 3D-принтере. Платы же фиксируются в него за счет вытянутых краев.
Для печати я решил использовать процесс мультиструйной плавки (MJF) Shapeways. Получилось симпатично, хотя точность размеров оказалась ниже ожидаемой. Поначалу панели вставали в каркас чересчур свободно, что я легко исправил небольшим количеством суперклея, который нанес на его ребра и оставил высыхать на ночь.

3D-печатный каркас (1)

3D-печатный каркас (2)

Практические рекомендации для успешной сборки

Для того, чтобы вам было удобно спаивать куб из светодиодов вам нужно:

Для корректной работы куба из светодиодов нужно собрать его по слоям с общим катодом, а столбцы – анодом. Подключить к выводам Arduino то что на схеме обозначено, как input в такой последовательности:

№ вывода ArduinoНазвание цепи
2LE
3SDI
5CLK

Новогодний светящийся снеговик своими руками, пошагово с фото

Светящегося снеговика можно сделать не только из дюралайта, но и другим не менее интересным способом, используя одноразовые стаканчики:

  • Купите 300 одноразовых пластиковых стаканчиков белого цвета:
  • Возьмите 25 стаканчиков и скрепите их по кругу с помощью термопистолета или же степлера:
  • В шахматном порядке сверху первого ряда выложите стаканчики в 7 рядов, скрепляя их не только снизу и сбоку, но и сверху между собой, чтобы конструкция была прочной:

Сделайте еще одну такую конструкцию, внутрь каждой поместите светодиодные гирлянды, а затем скрепите их между собой степлером. Украсьте снеговика так, чтобы у него были пуговицы и нос. Можно использовать любые канцелярские принадлежности для этого и не только:

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

Что делать если у меня нет таких навыков?

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

Куб с размером грани 4 диода

Готовые наборы для сборки можно приобрести в магазинах с радиодеталями, а также их огромный выбор на aliexpress.

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

К сожалению, из-за особенностей языка программирования Arduino – sketch есть некие ограничения в плане быстродействия, но поверьте, что когда вы упретесь в потолок возможностей этой платформы, скорее всего освоение работы с «чистыми» МК у вас не вызовет существенных трудностей.

Источник

Альтернативы 8x8x8

Кратко прокомментирую альтернативные варианты, доступные для покупки. На выбор есть несколько модификаций кубов, с поддержкой карт памяти, с динамиками для воспроизведения музыки, однако из более дорогих версий интерес представляет модификация под номером 4
, умеющая посредством USB-TTL конвертера напрямую выводить графику, нарисованную в программе
3D8S
— эта модификация может быть интересна тем, кто не умеет программировать. Остальные возможности вроде карт памяти, динамиков, анализов спектра, пультов — лично по моему мнению просто переплата денег за ненужные фичи. Если умеете программировать, то рекомендую взять самую дешёвую версию с поддержкой Ардуино под номером
2
. На али стоимость дешевле, чем на ebay. Кроме того, каждой модификации существует несколько видов — трёхцветная (как в обзоре), и одноцветная, т.е. все светодиоды одного цвета, и этих цветов доступно всего пять: красный, белый, синий, зелёный и розовый. Только мне не понятно, почему розовая версия самая дорогая из них.

1)

Самая простая и дешёвая версия куба, без поддержки Ардуино
EBAY:Трёхцветный —
20$ + 2.5$ (доставка) ||
Одноцветный —
18.30-21.30$ + 2.5$ (доставка)
AliExpress:Трёхцветный —
17.48$ ||
Одноцветный —
16.28-18.68$

2)

C поддержкой работы от Ардуино
EBAY:Трёхцветный —
21$ + 2.5$ (доставка) ||
Одноцветный —
19$ + 2.5$ (доставка)
AliExpress:Трёхцветный —
18.67$ ||
Одноцветный —
17.71-20$

3)

Поддержка Ардуино + пульт ДУ + муз.спектр
EBAY:Трёхцветный —
24.23$ + 2.5$ (доставка) ||
Одноцветный —
23-27$ + 2.5$ (доставка)
AliExpress:Трёхцветный —
25.78$ ||
Одноцветный —
25.28-27.38$

4)

Поддержка Ардуино + пульт ДУ + муз.спектр + работа напрямую с ПК через программу 3D8S
EBAY:Трёхцветный —
28$ + 2.5$ (доставка) ||
Одноцветный —
27-30$ + 2.5$ (доставка)
AliExpress:Трёхцветный —
27.39$ ||
Одноцветный —
26-29$

5)

Муз.спектр + работа напрямую с ПК через программу 3D8S + слот для карт памяти
EBAY:Трёхцветный —
35.83$ + 2.5$ (доставка) ||
Одноцветный —
35.68-38$ + 2.5$ (доставка)
AliExpress:Трёхцветный —
29.34$ ||
Одноцветный —
28.5-30$

6)

Пульт ДУ + муз.спектр + работа напрямую с ПК через программу 3D8S + слот для карт памяти + динамик для воспроизведения музыки
EBAY:Трёхцветный —
30$ + 2.5$ (доставка) ||
Одноцветный —
29-30$ + 2.5$ (доставка)
AliExpress:Трёхцветный —
36$ ||
Одноцветный —
35-36$

Создаем большой LED куб

Светодиодные кубы никогда не потеряют свою популярность и привлекательность. На просторах интернета есть огромное множество проектов кубов 5х5 и меньше. Мы же сегодня построим куб 8х8х8 диодов.

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

Для работы над проектом достаточно обладать основными навыками пайки, иметь базовые знания электроники и быть знакомым с работой плат Arduino.

Расположение светодиодов

Сразу хочется отметить, что не следует выбирать большие светодиоды, так как они будут загораживать друг друга и дальние ряды будут плохо видны. Также не стоит использовать очень яркие диоды. Дабы свет каждого диода был точечным.

Для проекта мы будем использовать не очень яркие 3мм диффузные светодиоды с длинными ножками.

Для лучшего обзора каждого светодиода, мы будем использовать очень тонкие соединительные провода.

Между собой светодиоды будут соединяться при помощи своих ножек. Катоды с катодами, аноды с анодами. Для нашего куба нам понадобится 8 таких матриц.

Электронная схема

Создание восьми слоев из 64 диодов в каждом занимает достаточно много времени, но выполнить его достаточно просто.

Самый сложный момент – это построение схемы для управления светодиодным кубом и поиск неисправностей в цепи, если конечно таковые будут.

Для управления нашим кубом будет использоваться микросхема MAX7219. Изначально она предназначена для управления 7-сегментными светодиодными дисплеями. Используя данную микросхему, мы сведем количество элементов управления каждым слоем к минимуму.

Для управления каждым слоем из 64 диодов понадобится:

Для создания куба нам понадобится 8 комплектов вышеуказанных компонентов. Также стоит обратить внимание, что может понадобится другой резистор для конкретных светодиодов, которые вы будете использовать. Его роль в данной схеме – ограничить максимальное напряжение, которое будет выдавать микросхема MAX7219.

Для облегчения сборки куб был разбит на две части. По 4 слоя на каждой из них.

Куб может управляться извне любым микроконтроллером через интерфейс SPI. Для этого проекта мы будем использовать популярную плату Arduino (Nano). Для управления нашим кубом используя только 3 сигнальных провода (SPI) и 2 провода питания (5 В постоянного тока). Вы можете использовать более распространенную плату Arduino Uno вместо Nano. Они очень похожи (за исключением размера), так что проблем с подключением возникнуть не должно.

Также стоит обратить внимание на то, что все компоненты следует паять к нижней части печатной платы.

Для соединения плат вместе используются перемычки. Для соединения двух плат нужно 5 перемычек. Для создания одного блока из 4 слоев светодиодов понадобится 15 перемычек.

Большинство кубов цельные, в отличии от нашего. И при выходе из строя какого-либо светодиода в середине куба, добраться до него достаточно сложно. В нашем случае это не составит никакого труда.

Упаковка

Весь комплект был изначально плотно обёрнут в несколько слоёв поролона — с этим всё хорошо. Отложив стенки акрилового корпуса, в пакете с остальными компонентами увидел вложенную бумажку со ссылкой на инструкцию по сборке куба.

Комплектация
1)
Акриловый корпус — 6 стенок
2)
Основная материнская плата стеклотекстолитовая
3)
Стеклотекстолитовые 8-контактные стойки
4)
3 пакетика со светодиодами (256 красных, по 128 синих и зелёных)
5)
Микроконтроллер STC 15F2K60S2
6)
USB-кабель питания 3.5мм (Nokia)
7)
Кабель акустический 3.5мм (муж.-муж.)
8)
Пакетик с радиодеталями
9)
Пакетик с шурупами и гайками для акрилового корпуса
10)
Пульт дистанционного управления

Материнская плата изготовлена из стеклотекстолита и должен отметить, плотная и крепкая, на изгибы руками не поддаётся, ощущается хорошее качество. В ней просверлено 64 сквозных отверстий — это не спроста, поскольку именно эта плата и будет играть роль трафарета при спаивании светодиодной группы, поэтому пилить-сверлить свой трафарет уже не придётся, что плюс:

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

Три пакетика со светодиодами, с опознавательными кружочками соответствующего цвета. Красных светодиодов столько же, сколько зелёных и синих вместе взятых, т.е. 256шт. красных и по 128 — синих и зелёных. Однако на самом деле их должно быть побольше, потому что и покупатели, и продавцы понимают, что среди них могут оказаться бракованные или пользователь испортит некоторые во время пайки, поэтому признаком вежливости и хорошего тона является досыпка лишних светодиодов сверху:

Размер одного такого — 3мм

Микроконтроллер STC 15F2K60S2, 40-выводной, в DIP-корпусе. Все процессом управлять будет он один, хотя в других наборах по сборке кубов вдобавок обычно идёт несколько микросхем сдвигового регистра

Четыре стойки, из стеклотекстолита, 8-контактные, по 4 контакта с каждой плоской стороны. Тоже по ощущениям сделаны качественно:

Два кабеля, один — USB, для подключения питания к кубу, имеет круглый штекер 3.5мм, который использовался раньше в старых телефонах Nokia. Второй кабель аудио 3.5мм, для подключения источника звука к кубу:

Пульт дистанционного управления кубом, обычный, на верхнем торце находится инфракрасный передатчик, батарейки в комплекте нет, что минус:

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

Восемь пар винтов и гаек для скрепления стенок акрилового корпуса

[МЕНЮ]

Содержимое пакетика с радиодеталями
1)
Инфракрасный приёмник в экранирующем кожухе
2)
Четыре разноцветных светодиода
3)
Различные разъёмы:
— Два одинаковых круглых аудио разъёма 3.5 мм — Круглый разъём для подключения питания — UART-разъём 3S1P для приёма команд с Ардуино4)
64 цанговых контакта для светодиодной сетки
5)
Резистор 10кОм

[МЕНЮ]

Проверка куба

Лучше проверять куб до полной сборки, каждый слой по отдельности. Так будет проще исправить проблемы, если они конечно же будут.

Для тестирования по очереди подключаем каждый слой к плате Arduino Nano (заранее следует установить тестовую программу). Строки должны загораться поочередно сверху вниз.

Необходимо загрузить код на вашу плату, а затем подключить к готовому кубу.

На этом все. Остается только наслаждаться полученным устройством.

Источник

Собираем все в единое целое

Для начала готовим корпус – делаем сбоку или в крышке небольшое отверстие для 4-х проводов, которые будем присоединять к плюсам. Также в крышке размечаем сетку и просверливаем небольшие отверстия под минуса нижнего ряда куба. Когда все готово, заводим катодные ножки в подготовленные отверстия и закрепляем куб на крышке. Можно это сделать с помощью тех же ножек, но лучше использовать дополнительные крепежи, и можно переходить к следующему этапу – присоединению микроконтроллера к кубу.

Минус

Если посмотреть на крышку изнутри, то перед нами будет квадрат из 16 точек со сторонами 4х4, расположенными в местах выходов катодов. Для большей понятности разметим эту сетку как шахматную доску, где левый нижний угол А1, следующий в ряду Б1, а по вертикали А2 и в подобной последовательности аж до правого верхнего угла, который по логике получается Г4.

После разметки начинаем соединять контакты контроллера выходами минусов по такой схеме – А1 к контакту ТХ1, Б1 к D5, В1 – D9, Г1 – D13. Следующий ряд – А2 на RX0, Б2 – D4, В2 – D8, Г2 – D12. Третий ряд – А3 к А5, Б3 – D3, В3 – D7, Г3 – D11. Последний – А4 сетки соединяем с А4 контроллера, Б4 – D2, В4 с D6 и Г4 с D10.

Плюс

После того, как с минусом закончили, переходим к плюсу. Для начала выберем точки крепления на кубе – поворачиваем его в вертикальное положение (корпус снизу) и берем на заметку ближнее к большому (под 4 провода) отверстию вертикальное ребро. Точки пайки будут находиться на четырех горизонтальных слоях между диодами ребра и первым диодом в сторону (вправо или влево не имеет значения).

Теперь, припаиваем к этим точкам 4 отрезка провода, и через резисторы присоединяем их к следующим контактам микроконтроллера – верхний слой к А0, второй сверху к А1, третий к А2 и нижний к А3.

Последним шагом станет установка питания: плюс батареи соединяем с тумблером, а затем с контактом UIN; минус припаиваем к контакту GND. Прячем начинку в корпус, включаем и наслаждаемся игрой света…

Однако, если у вас нет времени на самостоятельное изготовление, вы всегда можете приобрести куб в магазине Лайтхаус!

Светодиодный куб 3х3х3 на Arduino Uno

На youtube.com можно найти достаточно много видеороликов, в которых демонстрируются красиво мигающие различные красочные светодиодные кубы, управляемые с помощью Arduino. Но доступ к технологии изготовления и программному коду этих устройств предлагается за деньги. Мы же в нашей статье рассмотрим создание простейшего подобного мигающего светодиодного куба 3х3х3 с простейшим алгоритмом мигания (проще для новичков), на основе которого вы потом можете запрограммировать свои образцы (паттерны) мигания (переключения) светодиодов этого куба. Причем все это будет для вас абсолютно бесплатно – наш сайт не требует никаких денег за чтение информации, размещенной на нем (если вы не собираетесь распространять ее потом где-нибудь – в этом случае это будет нарушение авторского права. Активные ссылки в интернете на статьи на нашем сайте разрешены).

Как показано на приведенном рисунке светодиодный куб 3*3*3 состоит из 27 светодиодов, упорядоченных по строкам и столбцам чтобы они образовывали форму куба.

Можно спроектировать много подобных кубов. Самым простым из них будет куб 3x3x3. Для проектирования куба 4*4*4 вам уже понадобится 64 светодиода. То есть с увеличением линейной размерности куба трудоемкость его изготовления возрастает многократно.

Светодиодный куб 3x3x3 является самым простым в изготовлении не только потому что в нем достаточно мало светодиодов, но еще и благодаря следующим условиям:

В большинстве случаев обычные светодиоды потребляют ток от 2 до 5 мА. Поэтому если мы используем светодиоды, потребляющие 2 мА, то управлять 9-ю такими светодиодами можно без проблем с одного контакта Arduino Uno, поскольку контакты Arduino Uno способны обеспечивать ток 20-30 мА.

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

Для управления этим кубом нам понадобится 12 контактов платы Arduino Uno.

Особенности, о которых стоит знать

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

Флюс

На протяжении всего процесса построения куба я использовал флюс KIngbo 218. Светодиоды боятся перегрева, но благодаря флюсу, касание их выводов нагретым жалом составляло где-то полсекунды. Флюс наносил шприцем с тонкой иглой, что экономило его. В итоге на всё про всё у меня израсходовалось где-то 1.5 кубика флюса. Поскольку работа предстоит объёмная, то пайкой лучше заниматься с вытяжкой наподобие как у меня.

Жало и температура

В основном использовалось жало типа «копытце» T12-BCM3 — для формирования светодиодных сеток и пайки радиодетатей к материнской плате. Для припаивания стеклотекстолитовых стоек применял жало T12-D16. Температура нагрева всегда оставалась 320 градусов.

Порядок расстановки групп светодиодов по цвету

Вовсе не обязательно следовать задумке продавца и паять светодиоды именно так (рис.1), когда каждый цвет представляет собой горизонтальный слой. Можно поступить иначе, когда например передняя панель полностью состоит из красных светодиодов, а задняя — зелёная, при этом синий остаётся посередине (рис.2):

Питание и замеры тока

Как и было выше сказано, есть два способа запитать куб током — это через круглый разъём на его левой стороне и через 4-контактный разъём на передней стороне. Номинальное напряжение 5В. Разумеется я померил ток потребления. Понятное дело, что если мы имеем дело с анимацией, то потребление тока будет колебаться. Со включенной нижней подсветкой (4 разноцветных светодиода) диапазон токопотребления составил
50-80мА
:

С отключенной нижней подсветкой этот диапазон значительно уменьшился до 25-47мА

Я бы сказал, это небольшое энергопотребление, поэтому этот куб без труда можно запитать от смартфона с поддержкой OTG через USB-OTG кабель:

[МЕНЮ]

Необходимые компоненты

Плата Arduino Uno, резистор 220 Ом (3 шт.), источник питания с напряжением 5 В.

Макетная плата, соединительные провода, 27 светодиодов.

Паяльник, припой и флюс (канифоль).


Батарейка SR2032, некоторые инструменты.

Пустая картонная коробка, карандаш, линейка и несколько перемычек (соединителей).

Конструирование светодиодного куба 3x3x3

Шаг 1.

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

Шаг 2.

Затем необходимо с соединительных проводов удалить изоляцию как показано на рисунке. Для создания куба можно использовать любые соединительные провода, но стоит отметить, что провода для макетной платы для этой цели подойдут отлично. Затем полученные оголенные провода необходимо нарезать на отрезки длиной 7 см – всего необходимо 6 таких отрезков. Эти отрезки проводов будут использоваться для скрепления слоев светодиодов между собой.

Шаг 3.

На этом шаге необходимо взять пустую картонную коробку и наклеить на ее верх белую бумагу как показано на рисунке. Белая бумага нужна будет для точного позиционирования точек.

После этого возьмите карандаш и линейку и отметьте 9 точек на бумаге через каждые 2 см таким образом формируя структуру куба как показано на рисунке.

Мы здесь используем расстояние 2 см потому что длина отрицательных контактов светодиодов составляет 2.5 см. То есть в данном случае у нас будет 5 мм для припаивания одного светодиода к другому. Если мы выберем большее расстояние, то пайка может уже составить проблему, при меньшем расстоянии куб будет выглядеть несколько неуклюже. Поэтому 2 см будет в данном случае наиболее подходящим расстоянием.

После этого возьмите любой заостренный предмет, например ручку или карандаш и проделайте отверстие в каждой точке. Отверстия должны быть такого размера, чтобы в них достаточно устойчиво держался светодиод – они не должны быть слишком маленькими (светодиод не будет влезать в них или у нас не будет возможности покачивать его во время пайки) или слишком большими (светодиод будет проваливаться в них). Поэтому каждое сделанное отверстие проверяйте с помощью светодиода.

Шаг 4.

После этого поместите один светодиод в отверстие и согните его положительный контакт как показано на рисунке ниже.

После этого согните положительный контакт светодиода еще раз чтобы он сформировал форму буквы ‘L’. При близком рассмотрении на контакте светодиода можно рассмотреть небольшую выемку в том месте, где его следует сгибать в форму буквы ‘L’. После этого согните отрицательный контакт светодиода вправо как показано на следующем рисунке.

Шаг 5.

Затем повторите все эти шаги для остальных двух светодиодов и упорядочите эти 3 светодиода в форме ряда как показано на рисунке. Этот шаблон будет использован для всех остальных светодиодов куба. Можно даже сначала согнуть выводы у всех 27 светодиодов куба, а только потом упорядочить их и спаять их концы.

Но для начала повторим описанную процедуру для 9 светодиодов, которые упорядочим в форму матрицы как показано на рисунке.

Шаг 6.

После этого спаяйте все отрицательные выводы светодиодов как показано на рисунке. Три светодиода будут образовывать ряд.

После этого возьмите два оголенных проводника длиной по 7 см (их мы заготовили ранее), поместите их как показано на рисунке и припаяйте 6 концов этих светодиодов чтобы сформировать полную матрицу.

Теперь все отрицательные выводы 9 светодиодов соединены друг с другом, то есть мы будем иметь 9 положительных выводов (CP1-CP9) и один отрицательный вывод (CN1). После того как мы вынем эту структуру из отверстий в картоне и обрежем выступающие концы мы получим один слой нашего светодиодного куба как показано на следующем рисунке.

Шаг 7.

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

Шаг 8.

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

После этого пристыкуем к получившейся структуре оставшийся 3-й слой и у нас получится полный куб. Припаивать 3-й слой будет немного сложнее чем 2-й к первому, поэтому старайтесь делать это осторожно чтобы не сломать структуру.

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

Навигация по обзору

1. Упаковка
— Комплектация — Содержимое пакетика с радиодеталями
2. Сборка. Последовательность
— Шаг 1: Подготовка светодиодов — Шаг 2: Спайка светодиодов — Шаг 3: Материнская плата — Шаг 4: Припаивание стеклотекстолитовых 8-контактных стоек — Шаг 5: Припаивание светодиодных сеток к стойке — Как выглядит полностью собранный куб — Габариты и вес полностью собранного куба
3. Как создать и вывести свои фигуры. Работа с массивами. Подключение к Arduino
— Немного вводной по массивам — Почему тип данных char? — Почему массив нужен на 64 элемента? — Синхронизация Ардуино и Куба. Процедура передачи массивов на куб — Рисование своей графики и преобразование её в массив символов
4. ✪ Самая интересная часть: демонстрационные видео + моя наработка
— Стандартные анимации (+видео) — Анализ музыкального спектра (+видео) — Анимированный вывод на куб показаний c датчика температуры и влажности DHT22 (+видео)
5. Особенности, о которых нужно знать
— Припой — Флюс — Жало и температура — Порядок расстановки групп светодиодов по цвету — Питание и замеры тока
6. Выводы и мысли. Плюсы и минусы
— Достоинства — Недостатки
7. Альтернативы 8x8x88. Ссылки на дополнительные материалы
[МЕНЮ]

Исходный код программы

В полученном кубе если мы хотим включить один светодиод, к примеру, светодиод во втором столбце первого слоя, нам будет необходимо запитать контакт CP2 и подать землю на контакт CN1. В соответствии со сделанными соединениями в схеме нам необходимо подать напряжение высокого уровня на контакт PIN3 платы Arduino (который подсоединен к CP2) и напряжение низкого уровня на контакт PIN A0 (который подсоединен к CN1).

Аналогичным образом мы можем зажечь любой другой светодиод. Далее в программе мы в бесконечном цикле будем зажигать поочередно все светодиоды в нашем кубе.

void setup() for (int i=0;i pinMode(i,OUTPUT); // контакты S0-10 устанавливаются в режим вывода данных > pinMode(A0,OUTPUT); //PIN A0 устанавливается на вывод данных pinMode(A1,OUTPUT); // PIN A1 устанавливается на вывод данных pinMode(A2,OUTPUT); // PIN A2 устанавливается на вывод данных

digitalWrite(A0,HIGH); //подаем логическую «1» на A0 pin digitalWrite(A1,HIGH); // подаем логическую «1» на A1 pin digitalWrite(A2,HIGH); // подаем логическую «1» на A2 pin /* add setup code here, setup code runs once when the processor starts */ > void loop() digitalWrite(A0,LOW); // на слой 1 куба подана земля for (int i=2;i digitalWrite(i,HIGH); // поочередно включаем каждый светодиод в слое 1 delay(200); delay(200); delay(200); digitalWrite(i,LOW); > digitalWrite(A0,HIGH); // на слой 1 куба подана логическая «1»

digitalWrite(A1,LOW); // на слой 2 куба подана земля for (int i=2;i digitalWrite(i,HIGH); // поочередно включаем каждый светодиод в слое 2 delay(200); delay(200); delay(200); digitalWrite(i,LOW); > digitalWrite(A1,HIGH); // на слой 2 куба подана логическая «1»

digitalWrite(A2,LOW); // на слой 3 куба подана земля for (int i=2;i digitalWrite(i,HIGH); // поочередно включаем каждый светодиод в слое 3 delay(200); delay(200); delay(200); digitalWrite(i,LOW); > digitalWrite(A2,HIGH); // на слой 3 куба подана логическая «1» >

Светодиодный куб 4x4x4

Представляю проект 3D светодиодного куба (LED Cube) с матрицей 4х4х4.

64 светодиода образуют куб со сторонами 4х4х4, который управляется микроконтроллером Atmel Atmega16. Каждый светодиод имеет свой виртуальный адрес и может управляться с микроконтроллера индивидуально, позволяя таким образом добиваться потрясающих эффектов.

Видео работы куба смотрите ниже:

Шаг 1. Что нам понадобится?

Первое, это терпение спаять все 64 светодиода вместе

Рейтинг
( 2 оценки, среднее 4.5 из 5 )
Понравилась статья? Поделиться с друзьями:
Для любых предложений по сайту: [email protected]