Реклама

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

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

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

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

Шаг 0: Введение

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

Полный код и необходимые библиотеки доступны для скачивания с это хранилище Github.

Шаг 1: вам понадобится

Как создать облачную лампу из звуковых реактивных источников света
  • Стренга WS2812B, как правило, по цене около 50 долларов за 5 метров. Не беспокойтесь, если у вас есть другой тип нитей Neopixel, он почти наверняка поддерживается FastLED интерфейс, но ваша проводка может отличаться (вам может потребоваться линия синхронизации в дополнение к сигналу, для пример).
  • 5В, 10А + блок питания - Я купил около 15А единиц за 11 долларов каждый. Они потребляют 120–240 В переменного тока и выдают здоровенный выход 5 В, которого будет достаточно для питания всех наших пикселей на полной яркости и Arduino.
  • Электрическая проводка, вилка и линейный выключатель
  • Приложение проекта
  • Два Ардуино. $ 10 клонов Funduino в порядке. Второй необходим для дистанционного управления, а первый управляет основной логикой и светодиодами.
  • Два резистора по 2,2 кОм (или около того) Ом - точное значение не имеет большого значения, должно работать от 1,5 до 47 кОм.
  • макетировать
  • ИК-приемник TSOP4838
  • ИК-пульт - я купил оптом по 2 доллара за штуку, но любой пульт должен работать с модификациями кода.
  • Большой микрофонный модуль
  • Отрежьте древесину МДФ, чтобы вырезать основание, и лобзик.
  • Полистирол упаковочный материал / коробочные вкладыши.
  • Набивка из полипропиленовой ваты. Я вытащил более чем достаточно из нескольких ужасных старых подушек. Если это не вариант, вы сможете купить что-то новое примерно за 10 долларов или использовать даже более дешевую вату. Я попробовал с обоими - вата нуждалась в большем количестве работы, чтобы дразнить ее и не была пушистой, но в крайнем случае, это будет работать.
  • Цепи и крючки для подвешивания облака - должны выдерживать более 5 кг.
  • Клеевой пистолет с низкой температурой
  • Распылить клей - с этим легче наклеить начинку на облако, но пистолет с клеем также может подойти.

Общая стоимость составляет около 100 долларов, не включая инструменты, но большую часть этого я искал со всего дома. Все компоненты электроники общедоступны; Микрофон можно найти в комплекте датчиков или купить отдельно.

Шаг 2: обрезать основание

Как создать облачную лампу со звуком Реактивная молния облачной лампы 1 рубка основания

Вырежьте грубую основу из куска лома МДФ с помощью лобзика - точная форма, очевидно, зависит от вас, но по какой-то причине у меня в голове образуется облако фасоли. Мы будем прикреплять к нему несколько крючков для подвешивания, но в остальном он просто создает прочную основу для дальнейшего развития. Центральная зона будет зарезервирована для электроники, блока питания и для передачи цепи, поэтому убедитесь, что у вас достаточно места, чтобы разместить по крайней мере ваш проектный корпус с несколькими крючками вокруг него.

Шаг 3: слой на полистироле

Как построить облачную лампу со звуковой реактивной молнией облачная лампа 2 слоя на полистироле

Это самый сложный и творческий шаг, но на самом деле мы просто создаем что-то твердое и любопытный Сорт в форме облака для приклеивания светодиодной ленты. Приклейте большие куски полистирольной упаковки к основанию (и под ним), используя низкую температуру на клеевом пистолете. Если у вас нет низких настроек, выключите тепловую пушку и дайте ей немного остыть, прежде чем пытаться клеить. Если температура слишком высокая, вы просто расплавитесь через упаковочный материал.

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

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

Шаг 4: Вырежьте трехмерную форму облака

Как создать облачную лампу со звуком Reactive Lightning cloud lamp 3, создающую облако

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

Шаг 5: исправить крючки, привести в порядок

Как построить облачную лампу со звуком Reactive Lightning Cloud Lamp 4 Spray White

Наконец, прикрепите три или четыре крючка к основанию MDF изнутри каждого угла полости облака. Вам нужно будет просверлить маленькое пилотное отверстие, так как МДФ трудно ввернуть прямо.

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

Шаг 6: клей светодиодные ленты

Как собрать облачную лампу со звуком Reactive Lightning Cloud Lamp 5 клей на светодиодные ленты

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

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

Я использовал в общей сложности 85 светодиодов, или чуть более 2,5 м, дважды обвив основной корпус, и использовал одну цепочку светодиодов на нижней стороне.

Шаг 7: Схема подключения

Как построить облачную лампу со звуковой реактивной молнией

Проводка сложная, но легко разбивается на секции.

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

ВАЖНЫЙ: при программировании и тестировании Arduino напряжение 5 В от вашего источника питания должно оставаться изолированным от Arduino ( Однако все GND подключены - это должно быть только питание светодиодной ленты, в то время как Arduino использует 5 В USB. Когда вы закончите программирование, USB должен быть отключен и больше не будет подавать 5 В на Arduino - в этот момент вы должны подключить 5 В от вашего источника питания к шине 5 В на левой стороне макетный.

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

Затем завершите раздел проводки I2C - это то, что позволяет нашим двум Arduinos общаться. Возьмите контакты А4 обоих Arduinos в один ряд на макете, затем подключите резистор 2,2 кОм из этого ряда к шине 5 В. Повторите эти действия для A5, подключив их в отдельном ряду, с другим резистором 2,2 кОм снова до 5 В.

Затем подключите ИК-приемник - проверьте конфигурацию контактов, если у вас есть другая модель, но в основном сигнальный контакт должен идти к D11 на одном Arduino. Загрузить thundercloud_ir_receiver.ino этюд к этому ардуино (весь код здесь), затем отключите USB, так как он нам больше не нужен.

На другом Arduino подключите Данные в сигнальный контакт от начала вашей светодиодной ленты до D6. Заземление ваших светодиодов должно быть общим для всех Arduinos, но в этот момент напряжение 5 В будет поступать непосредственно от блока питания.

Также на этом Arduino подключите модуль микрофона к A0. Загрузить другой thundercloud.ino набросок и держите USB подключенным пока вы будете отлаживать. Начните с изменения NUM_LEDS переменная соответственно.

Шаг 8: клей на фарше

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

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

Если вы использовали тот же пульт, что и я, кнопка STROBE переводит его в режим звуковой реактивной облачности; FLASH - режим тройного цвета, а FADE - цветовая лампа настроения с медленным угасанием.

Шаг 9: Объяснение кода

Как создать облачную лампу с демонстрацией Sound Reactive Lightning

Почему два Arduinos? Как программирование инфракрасного приемника, так и библиотека драйвера пикселей WS2818B очень чувствительны к синхронизации - если задержка задерживается, ИК-сигнал искажается. Предоставляя каждому каналу собственный микроконтроллер и позволяя им общаться по протоколу I2C, мы можем гарантировать, что синхронизация будет идеальной для каждого. Вы также можете найти отдельные ИК-модули со встроенным микроконтроллером, но мои исследования показали, что они стоят дороже, чем простой клон Arduino и ИК-светодиод. Thundercloud_ir_receiever не требует объяснений, хотя вы можете сначала прочитать основы I2C.

На главном контроллере грозового облака мы определяем различные режимы работы, такие как ВКЛ (эффекты молнии не являются звуковыми активирован), CLOUD (молния - только звуковая активация), ACID (облако показывает триповые цвета) или простой одноцветный режимы. Чтобы определить новый режим, добавьте в перечисление сначала откройте консоль и найдите кнопку дистанционного управления, чтобы сопоставить ее с каждым удаленным нажатием на строку отладки. в receiveEvent () метод, мы отображаем эти нажатия клавиш в режиме, поэтому добавьте туда дополнительный оператор switch. Наконец, в основном петля () метод, мы направляем эти выбор режима в различные функции дисплея

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

Шаг 10: Режимы молнии

Как создать облачную лампу с демонстрацией звука реактивной молнии

Молния отображает три разных типа молнии, чтобы достичь чего-то достаточно реалистичного или, по крайней мере, приятного для глаз. Первый тип трещина ()где каждый светодиод кратковременно включается на 10-100 мс. Второй тип прокатки () - где каждый светодиод имеет 10% -ную вероятность активации, и весь цикл повторяется 2-10 раз с задержкой 5-100 мс между каждым циклом. Третий тип thunderburst (), который выбирает две разные секции полосы, каждая из которых состоит из 10-20 светодиодов, кратко мигает эти секции от 3-6 раз. Изучите эти методы подробно, чтобы увидеть, как активируются отдельные светодиоды - повсюду используется цветовое колесо HSV (поэтому белый цвет - это H = 0, S = 0, V = 255). Я бы посоветовал вам настроить или написать новые молния, а затем поделиться ими в комментариях, если вы сделаете тот, который вам нравится.

Каждый раз, когда срабатывает молния или запускается петля, облако случайным образом выбирает три типа молнии. Наконец, сброс() Метод выключает все источники света, иначе они «запомнят» свое предыдущее состояние.

Вопросы или проблемы - пожалуйста, свяжитесь с нами в комментариях, и я сделаю все возможное, чтобы помочь. Если у вас есть учетная запись Github, не стесняйтесь отправлять сообщения об ошибках или трекер проблем вместо. Если вы внесли какие-либо изменения или написали некоторые новые функции освещения, поделитесь ссылкой на ваш код на Суть или Pastebin.

Джеймс имеет степень бакалавра в области искусственного интеллекта и сертифицирован CompTIA A + и Network +. Он является ведущим разработчиком MakeUseOf и проводит свое свободное время за игрой в VR-пейнтбол и настольные игры. Он строит компьютеры с детства.