Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Рисунок динамического треугольника

Компоненты и расходные материалы

Программируемый светодиод RGB APA-106
× 45
луженая медная проволока 22 калибра
× 1
Arduino UNO
× 1
Фанерный треугольник со стороной 12 дюймов, 1/4 дюйма. толщина
× 1

Необходимые инструменты и машины

Паяльник (общий)
Пистолет для горячего клея (общий)
зажимы радиатора
Используйте их для защиты светодиодов от нагрева при пайке

Об этом проекте

Введение

В этом проекте используется 45 программируемых светодиодов APA-106, управляемых Arduino UNO. Эти светодиоды похожи на индивидуально программируемые светодиодные ленты, поэтому мы используем библиотеку Neo-pixel от Adafruit для управления ими. Один вывод на UNO программирует весь дисплей, так как одна линия данных идет ко всем светодиодам в цепочке.

Вдохновением для этого дизайна послужили два моих предыдущих проекта. В моем втором RGB-кубе 5x5x5 (еще один RGB-куб 5x5x5) использовались программируемые светодиоды APA-106, и у меня осталось около 75 дополнительных устройств. Я мог бы построить из них куб 4x4x4, но в последнее время я построил много кубов - время для чего-то другого. Мой проект Servo Motor Art был построен в виде треугольника, и этот треугольник создал много интересных узоров. Таким образом, в этом проекте используются 45 светодиодов APA-106, расположенных в виде треугольника, для дальнейшего изучения искусства треугольников.

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

Аппаратное обеспечение

Аппаратная часть состоит только из UNO и 45 светодиодов. Эти светодиоды безумно яркие при полной мощности, поэтому я установил яркость всего дисплея на 30 по шкале от 0 до 255. На этом уровне UNO и все светодиоды могут получать питание непосредственно от USB-входа UNO, поэтому источник питания 1 А - 5 В не является обязательным.

Первый шаг в строительстве - просверлить отверстия в куске фанеры толщиной 1/4 дюйма. Сама доска по 12 дюймов с каждого края. Светодиоды расположены на расстоянии 1 дюйма друг от друга в тщательно построенном равностороннем треугольнике. Светодиоды имеют диаметр 8 мм, поэтому я просверлил отверстия диаметром 8 мм, которые обеспечили плотное прилегание светодиодов - они вообще не двигались при вдавливании.

Вверху слева - светодиод APA-106. Длинный провод заземлен. Вывод данных - это вывод справа рядом с плоским краем упаковки. Первый вывод слева - это данные, а следующий вывод между данными и землей - + 5В. Эти 4 вывода изогнуты, как показано справа. У заземляющего провода на конце есть второй изгиб - его цель состоит только в том, чтобы идентифицировать заземляющий провод, так как его трудно увидеть, когда они все изогнуты.

На изображении выше показано, как плата подключена. Сначала обратите внимание на то, что синяя линия данных сдвигается назад, когда светодиоды соединяются вместе. Это означает, что в нечетных строках данные передаются слева направо, а в четных - справа налево. Это также приводит к тому, что шины питания для нечетных рядов отличаются от четных. Для нечетных рядов провод заземления поднимается вверх, а провод + 5 В опускается, а для четных рядов - наоборот.

На фото выше показана проводка. Все это делается с помощью неизолированного луженого медного провода калибра 22. Собрал заземляющие шины слева и + 5V справа. Вам следует сделать прямо противоположное. Каждое соединение линии передачи данных на моей плате должно было проходить через шину питания, но если вы переключите землю вправо и +5 В влево, линии передачи данных не должны будут ничего пересекать!

Выше - увеличенное изображение проводки. Обратите внимание, как линия данных справа пересекает верхнюю часть шины питания 5 В.

На фото выше изображена готовая доска. Я использовал небольшие кусочки пластика в качестве опор для UNO и прикрепил UNO к плате с помощью небольшого количества горячего клея.

На фото выше изображен треугольник в футляре. Это 3D-печать из файла .stl, включенного сюда. Вы также можете легко построить его из фанеры.

Программное обеспечение

Программное обеспечение довольно простое, благодаря неопиксельной библиотеке Adafruit. Он дает нам setPixelColor (# в цепочке, цвет) для определения цвета любого одного светодиода и show (), который обновляет весь дисплей до последних изменений. Библиотека использует 32-битное число без знака для представления цвета светодиода, сохраняя по 8 бит для интенсивности красного, зеленого и синего цветов. Я использовал эту схему непосредственно для осветления и затемнения основных цветов, но для всего остального я использовал свою простую схему управления цветом, заимствованную из моих светодиодных кубиков. Это простая схема, где числа от 1 до 42 представляют цветовую палитру радуги, добавляя 0 для черного (все выключено) и 43 для белого (все включено).

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

Почти все анимации и эффекты, которые вы видите в видео, управляются таблицами. В одной таблице рассказывается, как проводить подметание из верхнего угла. Две другие таблицы переносят этот эффект на два других угла. В другой таблице указаны светодиоды во внешнем треугольнике, затем в среднем, а затем во внутреннем треугольнике. Все эти различные таблицы хранятся в памяти программ, а не в ОЗУ. Изначально меня беспокоило, что все эти таблицы займут слишком много ценного места в программе. Но использование этого табличного подхода оказалось очень эффективным, и пространство для программы никогда не было проблемой.

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

На видео выше вы видите оригинальное шоу с 15 анимациями. Это длится около 3 минут перед повторением. Однако с тех пор я расширил шоу, включив в него несколько новых анимаций, которые вы можете увидеть на видео ниже.

Все анимации в приведенном выше видео выполняются с помощью вызовов одной подпрограммы, называемой вращением (). Треугольник состоит из внешнего треугольника из 24 светодиодов, среднего треугольника из 15 светодиодов и внутреннего треугольника из 6 светодиодов. Общий знаменатель этих трех чисел - 120. Таким образом, за 120 шагов мы можем повернуть содержимое всего треугольника на 360 градусов. Это то, что делает процедура rotate (). Измените начальные шаблоны, измените направление вращения, измените скорость вращения, и вы получите все эффекты, которые вы видите на видео выше.

Шоу в загрузке теперь включает исходное шоу, а также все приведенные выше анимации, создавая шоу с 26 анимациями, которое длится 5 минут перед повторением.

Код

  • Код Arduino для художественного треугольника
Код Arduino для художественного треугольника Arduino
Это zip-файл с процедурой тестирования, шоу с 26 анимациями и инструкциями по использованию библиотеки Neo-pixel
 Без предварительного просмотра (только загрузка). 

Изготовленные на заказ детали и корпуса

Файл .stl для вложения

Схема


Производственный процесс

  1. Тригонометрия прямоугольного треугольника
  2. Тригонометрия неправильного треугольника
  3. Программируемые логические контроллеры (ПЛК)
  4. C Динамическое выделение памяти
  5. Walabasquiat:интерактивная генеративная художественная установка!
  6. Динамическая память С++
  7. G.AL® C330 Динамический
  8. G.AL® C210 Динамический
  9. Горизонтальное фрезерование — искусство эффективного производства
  10. Разница между динамическим и поршневым насосом