ARDUINO LED CUBE 8x8x8

Внимание! 01.03.2018 обновлён архив проекта, исправлены баги! Просьба перекачать!

Большой светодиодный куб на Arduino и сдвиговых регистрах. 512 светодиодов, 10 режимов анимации (можете дописать свои!).

Куб имеет две кнопки, обеспечивающие переключение режимов вперёд/назад, удержание кнопки увеличивает и уменьшает скорость текущей анимации.

Проект собран на печатной плате, что позволило уменьшить трудозатраты на соединение компонентов, а также уместить всё в компактный корпус!

Куб использует динамическую индикацию (послойная отрисовка) и потребляет всего около 0.5 А, когда светятся все 512 светодиодов.

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

ПОДРОБНОЕ ВИДЕО ПО ПРОЕКТУ

  • В данном видео показан полный и максимально подробный процесс разработки и изготовления устройства, а также обзор его возможностей и функций, всё это с приятным монтажиком, музычкой и комментариями. В общем, приятного просмотра!
поддержать автора
канал на youtube
страничка на github
группа вконтакте

СХЕМЫ, ПЕЧАТНЫЕ ПЛАТЫ

Схема 1

страница на easyeda

МАТЕРИАЛЫ И КОМПОНЕНТЫ

Ссылки на магазины, с которых я закупаюсь уже не один год

Вам скорее всего пригодится:

всё для пайки
аккумуляторы и модули
все arduino модули
мультиметры
инструменты
бп и преобразователи

ПРОШИВКА И НАСТРОЙКА

Содержимое папок в архиве

  • libraries – библиотеки проекта. Заменить имеющиеся версии
  • CUBE_Gyver – прошивка для Arduino, файл в папке открыть в Arduino IDE (инструкция)
  • schemes – схемы и печатки
скачать архив
страница на github

Как прошить?

  • ЕСЛИ ЭТО ПЕРВЫЙ ОПЫТ РАБОТЫ С ARDUINO – посмотреть ВИДЕО о платформе с целью ознакомления, далее скачать, установить и настроить необходимые для работы программы согласно СУПЕР ПОДРОБНОЙ ИНСТРУКЦИИ (там даже видео версия есть!).
  • Скачать архив с проектом напрямую, или с GitHub (кнопки чуть выше)
  • Установить библиотеки (папка Libraries) в
    C:\Program Files (x86)\Arduino\libraries\ (Windows x64)
    C:\Program Files\Arduino\libraries\ (Windows x86)

  • Подключить Ардуино к компьютеру при помощи Data-кабеля
  • Открыть файл прошивки желаемой версии (файлы прошивок .ino лежат в одноимённых папках)
  • Настроить Arduino IDE (COM порт, куда подключена плата; подключенная модель Arduino, как в статье из первого пункта)
  • Настроить что нужно в прошивке, нажать загрузить
  • Если происходит ошибка компиляции или ошибка загрузки, читать 5-ый пункт в ЭТОЙ СТАТЬЕ

Настройки в прошивке

#define INVERT_Y 1    // инвертировать по вертикали (если дождь идёт вверх)
#define INVERT_X 0    // инвертировать по горизонтали (если текст не читается)

// текст для режима текста
String disp_text = "AlexGyver xyz";

Дополнительно

  • Транзисторы любые NPN с коэффициентом усиления больше 40 (я проверял TIP41C и bd241c)

  • Светодиоды берите на желаемый цвет =)

АЛГОРИТМ РАБОТЫ

// основная магия происходит здесь, где массив данных cube 
// отправляется на сдвиговые регистры
void renderCube() {
  for (uint8_t i = 0; i < 8; i++) {
    digitalWrite(SS, LOW);
    if (INVERT_Y) SPI.transfer(0x01 << (7 - i));  // это слои, инвертированные
    else SPI.transfer(0x01 << i);                 // слои
    for (uint8_t j = 0; j < 8; j++) {
      if (INVERT_X) SPI.transfer(cube[7 - i][j]);  // а вот тут уже колонны
      else SPI.transfer(cube[i][j]);
    }
    digitalWrite(SS, HIGH);
  }
}

2018-03-01T19:00:23+00:00