Меню Закрыть

История проетка

Содержание

Вступление

Приветствую, меня зовут Сергей. Я из города Минск – столица Республики Беларусь. Ни программирование, ни радиотехника не является моим профильным занятием  это всего лишь хобби. Но кто бы мог подумать, что, подхватив проект, существовавший много лет, его получится развить своими силами до такого состояния. 

Ниже я постараюсь вкратце описать этапы развития проекта по созданию 8-и канальной цветомузыки, построенной на базе светодиодов (пикселей) ws2812b (Neopixel). Надеюсь, мои труды принесут пользу, а может кого-то смогут вдохновить.

Предистория

В далеком 2005 году на своем сайте японский энтузиаст, известный под псевдонимом ChaN, опубликовал на своей странице проект по созданию анализатора спектра аудио сигнала. Данное устройство визуализировало спектр частот при помощи LCD дисплея и было построено на базе микроконтроллера AVR ATmega8. В основе данного устройства лежала библиотека FFT (fast Fourier transform – быстрое преобразование Фурье) написанная на ассемблере и адаптированная им же для использования в микроконтроллерах AVR. Анализатор спектра – это, конечно, здорово, но раз есть аудио сигнал и механизм разложения его по частотам, то рано или поздно должна была появиться цветомузыка, основанная на данном механизме.

В 2009 году одним немецким энтузиастом Lötlackl (Gast) на одном из форумов, посвященных поделкам на различных микроконтроллерах, появилась публикация 6-и канальной цветомузыки для микроконтроллеров AVR ATmega8/32/644 . Данное устройство разошлось по многочисленным сайтам и форумам, посвященным радиотехническому делу. Теперь каждый без труда мог собрать компактное, не дорогое и эффектное 6-и канальное цветомузыкальное устройство из небольшого количества доступных деталей. Устройство не нуждалось в какой-нибудь предварительной настройке и регулировке, т.е. если устройство собрано без ошибок, то начинало работать сразу. Не исключением был и я. Повторив устройство и вдоволь наигравшись, отложил его в долгий ящик…

Зарождение интереса

Спустя некоторое количество лет, блуждая по интернету в поисках для сборки новых интересных радиоэлектронных схем, наткнулся на один очень интересный сайт – портал светоэффектов Lightportal. Данный сайт посвящён всевозможным радиолюбительским поделкам в области световых эффектов: цветомузыкальных установок, бегущих огней и других световых эффектов. На нем я наткнулся на статью 8-и канальной цветомузыки, которая еще обладала некоторыми кнопками, каналом паузы и регулировкой скорости затухания каналов. Примечательно, что схематически это была все та же 6-и канальная цветомузыка, которая валялась уже долгое время на полке. По сути, берем старое устройство, заливаем прошивку, приделываем кнопку – и вуаля: без каких-либо значимых трудозатрат перед нами новое, более функциональное устройство.

Осознав, что предел для модификации программной части устройства еще далеко не достигнут, созрела идея попробовать разобраться в исходном коде и добавить что-то новое, что-то свое. Ведь кто-то же нашел способ расширить функционал. Чем же я хуже? Вооружившись технической документацией на микропроцессоры Atmel и информацией, широко представленной на просторах интернета, начал разбираться в программировании микроконтроллеров. Строчка за строчкой анализировался код, отдельные логические кирпичики начинали складываться в цельную картину. Дополнительно начинал проявлять активность в профильной теме, посвященной данной цветомузыке.

Отступление и благодарности

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

Поэтому всем нам особенно стоит поблагодарить администрацию портала светоэффектов Lightportal в лице Radan’а за организацию площадки для любителей светомузыкальных устройств, а так же Юрис’а – амбициозного идейного вдохновителя из города Риги (Латвия), известного на многих порталах светоэффектов.

Первые модификации

В 2015 году на портале светоэффектов Lightportal за моим авторством была опубликована статья от 17.03.2015 по созданию 8-и канальной цветомузыки на RGB-светодиодах. Это было личное достижение, веха данного проекта. Наконец я решился поделиться с людьми своими идеями, своим виденьем работы устройства. Статья была представлена как история создания устройства с нуля и включала в себя все необходимое для повторения: и новый вариант разводки платы, и прошивки с исходными кодами, и видео демонстрации работы. Правда потенциал RGB-светодиодов не раскрывался в данной конструкции. Они использовались для получения ровной цветовой гаммы. Каждый из них светил лишь одним определенным цветом на свой канал. Зато этот каждый цвет или его оттенок можно было настроить как захочется, подобрав правильно номиналы резисторов. Это отвязывало от использования обычных светодиодов, цветовое разнообразие которых крайне скудно.

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

Со временем появились люди, которые косвенно зарабатывали на данном некоммерческом проекте. Работы над прошивкой всегда велась с оглядкой на совместимость со старыми железными версиями. Поэтому залив самую последнюю прошивку в самую первую версию цветомузыки все будет отлично работать, но функционал, конечно, будет не полный. В продаже появились наборы для самостоятельной сборки (конструкторы) как старого 6-и канального варианта, так и нового. Можно только позавидовать их цепкой коммерческой хватке. В описании к устройствам красовался когда-то написанный мной текст, введенные мной формулировки, да еще в добавок и ссылки были на прошивки на “нужном”, сайте на “нужную” статью. Для меня получение какой-либо материальной выгоды с самого начала не являлось целью, поэтому данный факт меня как-то не беспокоит. Данная политика актуальна и по сей день. Как по мне, это даже принесло определенную пользу – дополнительная возможность популяризировать устройство. Теперь люди могли стать его обладателями, собрав купленный конструктор. Без каких-либо заморочек с изготовлением печатных плат и поиском радиоэлектронных компонентов.

Последние мои обновления данного варианта цветомузыки датированы началом 2017 года. Как раз в конце 2016 года все больше интереса я испытывал к реализации всего наработанного “хозяйства” на светодиодной ленте, построенной на базе светодиодов (пикселей) ws2812b (Neopixel). Работа этих светодиодов кардинально отличается от работы обычных RGB-светодиодов. Ведь каждый из них обладает собственным драйвером (ws2811), осуществляющим управление цветом и яркостью каждого конкретного светодиода. Поэтому было понятно сразу, что для реализации задумки придется изучить принципы работы данных светодиодов и сделать соответствующую адаптацию исходного кода цветомузыки. Ведь старые алгоритмы были абсолютно непригодны для достижения этой цели.

Развитие проекта

Снова вооружившись технической документацией, но уже на светодиоды ws2812b, начал разбираться как они работают. Ведь управление всей лентой происходит по одному единственному проводку. Каждый светодиод в определенный момент времени знает каким цветом ему светиться и с какой яркостью. Надо было понять, как работает шина передачи данных, как кодируется и доводится данная информация до каждого светодиода на ленте. Потрудившись на славу, в начале 2017 года на портале светоэффектов Lightportal за моим авторством была опубликована вторая статья от 04.02.2017. Это стало вторым моим личным достижением, и очередной вехой данного проекта. Статья содержала информацию по созданию 8-и канальной цветомузыки на светодиодах ws2812b и опять была представлена как история создания нового устройства и включала в себя все необходимое для повторения: и новый вариант разводки платы, и прошивки с исходными кодами, и видео демонстрации работы. Именно этот вариант цветомузыки представлен на данном сайте. По традиции работа над новой версией устройства велась с оглядкой на совместимость с предыдущими версиями устройства. Это давало возможность владельцем цветомузыки на обычных светодиодах получить новый функционал на базе старой аппаратной части путем прошивки микроконтроллера.  Так же сохранялась возможность откатиться обратно на старую версию цветомузыки при необходимости. Новое аппаратно-программное исполнение цветомузыки также нашло своих единомышленников, которые собирали устройство, тестировали, высказывали свои предложения по улучшению работы устройства. В течении года прошивка дорабатывалась и оптимизировалась. Опять же руками энтузиастов реализовывались новые варианты схематического исполнения устройства: и пульты управления на радиоканале прикручивали, и придумывали варианты использования плат Arduino, и даже разрабатывали свои уникальные устройства с LCD дисплеем, аппаратно-совместимые с программной частью моей версии устройства.

Что в итоге?

Что в итоге получилось? А получилось замечательное, красочное и динамичное устройство! Тут Вам и различные варианты визуализации музыкального сопровождения, и различные световые эффекты при отсутствии аудио сигнала. Напичкано функционалом на столько, что пришлось писать руководство пользователя. Состоит из минимально необходимого количества деталей, где основная стоимость будет составлять цену за саму ленту на светодиодах ws2812b.

Конечно, есть и увесистое “НО”… Устройство не блещет точностью визуализации аудио сигнала и частенько дает “осечки”. От части это связано с особенностями реализации быстрого преобразования Хартли для микроконтроллеров, где вычисления не производятся на прямую (микроконтроллер просто не сможет работать с вещественными числами достаточно быстро), а берутся ближайшие из таблиц с заранее рассчитанными значениями. Хотя в большей степени сказывается то, что устройство работает на пределе своих вычислительных возможностей и просто не поспевает за аудио сигналом, делая пропуски. Ведь кроме выполнения быстрого преобразования Хартли, что само по себе довольно долго, необходимо сформировать необходимую битовую последовательность и, соблюдая тайминги, отправить ее на светодиоды ws2812b.

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

Будущее проекта

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

Так что же, проект заброшен? Нет, не заброшен. Просто все глобальные цели выполнены, а интереса в реализации отдельных малозначимых идей никакого нет. Просто пришло время для переосмысления того, что уже сделано, и поиска новых идей. На 2018-2019 год уже есть некоторые задумки и их я постараюсь реализовать.

Translate »