Rgb led cube 8x8x8 своими руками

Светодиодный куб 8x8x8 своими руками

ОБНОВЛЕНИЯ

30.10.18 CUBE_Gyver_v2: добавлена новая версия для нового видео

30.10.2018 обновлён архив проекта, добавлена новая версия!

ОПИСАНИЕ

  • Большой светодиодный куб на Arduino и сдвиговых регистрах. 512 светодиодов, 10 режимов анимации (можете дописать свои!).
  • Куб имеет две кнопки, обеспечивающие переключение режимов вперёд/назад, удержание кнопки увеличивает и уменьшает скорость текущей анимации.
  • Проект собран на печатной плате, что позволило уменьшить трудозатраты на соединение компонентов, а также уместить всё в компактный корпус!
  • Куб использует динамическую индикацию (послойная отрисовка) и потребляет всего около 0.5 А, когда светятся все 512 светодиодов.
  • Долгий и интересный процесс пайки самого куба показан на видео ниже. Использованы длинноногие светодиоды, куб спаян только их ногами. Края соединены и усилены железной проволокой (10 линий).
  • Добавлены игры: 3D змейка и туннель

ВИДЕО

КОМПОНЕНТЫ

Каталоги ссылок на Алиэкспресс на этом сайте:

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

Источник

LED Cube 8x8x8 на Arduino с RTC

Введение

LED Кубы появились уже давно, есть множество примеров их изготовления. На просторах интернета можно найти различные, начиная от 3х3х3 одноцветных, заканчивая большими объемными 3D LED экранами. Наиболее оптимальный размер с которого можно начать освоение их построения и программирования для начинающих это 8х8х8 (512 светодиодов), кубы меньших величин, не столь явно показывают световые эффекты, а кубы начиная уже с 16х16х16, довольно сложны в изготовлении начинающим.

В этой статье я хочу поведать создание LED Куба, размером 8х8х8, с использованием в качестве управляющего микроконтроллера, платы Arduino Pro Mini. Данная модель куба, может работать в двух режимах: световых эффектов и режим часов. Это стало возможным, благодаря интеграции в схему модуля RTC.

Принцип действия

Управление световым кубом из 512 светодиодов осуществляется посредством MOSFET-транзисторов, 64 транзистора отвечают за подачу положительного напряжения на столбцы, и 8 транзисторов за подачу отрицательного напряжения на слои. Ток (соответственно яркость) светодиода регулируется по средством 64 резисторов (R011-R641) стоящих после выхода транзисторов на столбцах. Открытие и закрытие транзисторов осуществляется при помощи сдвиговых регистров, которые в свою очередь управляются по двум линиям (отдельно столбцы и слои) платой Arduino.

Вся конструкция куба разделена на части:

  • Схема №1 или главная плата, на которой установлен сам микроконтроллер (плата Arduino), RTC модуль, SD модуль, сдвиговый регистр и MOSFET-транзисторов, отвечающие за слои;
  • Схема №2 или плата контактов, которая отвечает за крепления самого куба и открытия подачи положительного напряжения на столбцы;
  • Схема №3 или пульт, отвечает за кнопочные команды устройству;
  • Блок питания 5V (15A в данной конструкции применён такой, но поддержка такого тока не обязательна, всё зависит от тока светодиодов, смотрите ниже расчёт);
  • Сам Куб 8х8х8 из 512 светодиодов.
Читайте также:  Домашние красители своими руками

Блок питания подбирается из учёта питания светодиодов, так как одновременно возможно свечение только одного слоя, то есть это 64 светодиода. Если принять ток одного светодиода равным 30мА, то получаем: 30мА*64=1920мА, то есть будет достаточно 3А блока питания, для питания всей конструкции.

Схемотехника

И так, главная плата, представляет собой в основном коммутационный характер, сопряжение всех модулей и управление слоями. Для наглядности, разделим на две части: коммутационная и управление слоями.

Схема №1, главная управляющая плата:

Коммутационная часть, осуществляет ввод основного питания на устройство (J6). Для прошивки платы Arduino Pro Mini, служит модуль USB to TTL, который подключается через J6-1, контакты J6-J1 и J6-J2, служат для подключения питания на плату Arduino от модуля (данное питание необходимо для прошивки, если не используется блок питания). Разъем J4, служит для подключения SD карты, а J5 для подключения модуля RTC. Плата Arduino Pro Mini, подключается через, группу разъемов J1 (1-1, 1-3, 1-4). Группы разъемов J2 и J3, служат для подключения сигнальных линий для управления платами контроля питания столбцов (Схема 2), и подачи питания. Группа разъемов J7, служит для подключения клавиатуры (Схема 3). И наконец группа J8, отвечает за подключение второй части Схемы 1 (управление слоями):

Вторая часть Схемы 1, предельно проста: сдвиговый регистр, дает команды MOSFET-транзисторам ( 1-открыть транзистор, 0-закрыть), сдвиговый регистр, получает через линию данных команды от первой части Схемы 1.

Рассмотрим, Схему 2, она разделена на две одинаковые части, для контроля по 32 столбца каждая. Так как они абсолютно идентичны, рассмотрим только одну:

Так же как и в предыдущей схеме, сдвиговый регистр даёт команды (которые получает через линию данных от платы Arduino Pro Mini), MOSFET-транзисторам (за исключением теперь, 0-открывает транзистор, а 1-закрывает). Так же тут присутствуют на выходе с транзистора, резисторы по 250 Ом, они служат для контроля тока светодиода, и могут быть заменены на номинал более подходящий для не совсем яркого свечения (в зависимости от используемых светодиодов).

И завершающая, Схема 3, плата кнопок, где всё предельно просто:

Платы Схема 1 и Схема 2:

Проверка каждого слоя перед их спайкой:

Прошивка платы Arduino Pro Mini (sketch)

Скетч занимает более 500 строк, он будет приложен в конце статьи, а здесь постараюсь коротко его описать.

Есть две основные функции управления сдвиговыми регистрами («column» — заполнение столбцов и «layer_column» — выбор слоя и вызов функции «column»), обе они реализованы через функцию shiftOut. Это самый легкий способ управления регистрами, но возможно не самый быстрый. Следом идет основная функция закрашивания всего куба «cube», смысл функции заключается в том, что она последовательно и по циклу (цикл получается само собой) закрашивает каждый слой куба. В веду такой реализации происходит мерцание куба, оно ели заметное из-за быстрого микропроцессора.

Существует два режима работы куба: «Демонстрация световых эффектов» и «Отображение времени». Смена осуществляется при помощи кнопки «Mode». При первом режиме, происходит последовательное считывание с SD карты данных, далее передача выше указанным функциям. Второй режим реализован гораздо сложнее, так как все данные этого режима вшиты в микропроцессор (этим и объясняется количество строк кода). Если коротко, то данные с RTC модуля считываются и исходя из этого, опять же, выше указанным функциям отправляются соответствующие битовые переменные, для отображения на светодиодах. Так же реализована возможность настройки часов, при помощи кнопок управления, для этого достаточно в режиме часов нажать кнопку «Setup», далее при помощи кнопки «Change» менять режим (часы, минуты, дни и т.д.) и настраивать при помощи кнопок «Up» и «Down». В конце нажав на кнопку «Reset», можно сохранить настройки.

Читайте также:  Вент фасад частного дома своими руками

Расположение кнопок, согласно Схемы 3:

Программа создания световых эффектов (C++ Builder 6)

Чтобы создание эффектов сделать упрощенным и функциональным, а так же просмотреть заранее спроецированные эффекты, перед их записью на SD, было решено написать программу на C++, с использованием Open GL.

Исходный код для Borland C++ Builder 6, приложен к статье.

Заключение

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

Сам проект задумывался, для небольшой практики, работы с микроконтроллерами, в ходе реализации было выяснено:

  1. Электрическая часть, не представляет сложности в реализации;
  2. Спайка куба, освещена во многих других статьях, по этому я не останавливался на этом, но спаять могу сказать довольно не простое занятие (т.е. больше 1000 точек припоя);
  3. Внедрение RTC модуля, не оправдало мои ожидания, так как показ времени не совсем разборчив, это можно наблюдать на видео, единственное если сделать белый матовый корпус, тогда цифры хорошо отличимы.

Источник

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

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

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

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

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

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

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

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

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

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

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

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

Читайте также:  Как делают за коробочки своими руками

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

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

  • Микросхема MAX7219;
  • 10uF 16V электролитический конденсатор;
  • 0.1uF керамический конденсатор;
  • 12 кОм резистор (1/4W);
  • 24 pin DIP IC socket;
  • Плата Arduino Nano или Uno.

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

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

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

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

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

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

База для пайки светодиодов

Подойдет лист фанеры иди ДВП, в котором следует просверлить отверстия диаметром 3 мм на расстоянии 18 мм друг от друга.

Сборка

Часть 1

Основные шаги для создания одного слоя:

  1. Подготовить 8 светодиодов с обрезанными катодными ножками до 10 мм;
  2. Заполнить все отверстия базы светодиодами;
  3. Согнуть и спаять катодные ножки;
  4. Согнуть и спаять анодные ножки;
  5. Припаять провода к катодным ножкам и закрепить их.

Данную процедуру необходимо повторить 8 раз.

Сборку одного слоя куба можно посмотреть на видео:

Часть 2

  1. Подготовить 15 перемычек;
  2. Припаять перемычки на печатную плату;
  3. Припаять электронные компоненты к плате;
  4. Припаять 5-контактный угловой коннектор для первого слоя;
  5. Обрезать пятый анодный контакт;
  6. Вставить и припаять все анодные ножки к отверстиям G, F, E, D, C, B, A и DP;
  7. Вставить и припаять катодные провода в отверстия D0, D1, D2, D3, D4, D5, D6 и D7;
  8. Обрезать провода и ножки с обратной стороны платы.

Вторая часть сборки на видео:

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

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

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

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

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

Источник

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