Страница 1 из 2

Новый год и MegaD

Добавлено: 29 ноя 2017, 19:08
MSapogov
В предверии Нового года захотелось иллюминации...
Товарищи, давайте представим, что к MegaD или какой другой подсоединили 5 линий гирлянд к выходам PWM.

У кого есть наработки для разных спецэффектов на 5 PWM каналов? Думаю, что это будет php скрипт.
Или какие идеи у кого есть на этот счет. Очень хочется заставить ёлочку красиво светится...

Re: Новый год и MegaD

Добавлено: 06 дек 2017, 20:56
empenoso
Это что-то вроде вот такого: https://ab-log.ru/smart-house/ethernet/ ... s-ethernet

Re: Новый год и MegaD

Добавлено: 07 дек 2017, 05:59
MSapogov
empenoso писал(а):Это что-то вроде вот такого: https://ab-log.ru/smart-house/ethernet/ ... s-ethernet
Спасибо, но это я уже давно видел.
Хочется без участия музыки... как в обычных "китайских" гирляндах...
Режимов эдак 5-10 с различными эффектами.

PS: Нашел программу в которой можно генерировать спецэфекты - http://www.juras-projects.org/rus/projects.php#jplamps1

Re: Новый год и MegaD

Добавлено: 23 дек 2017, 22:09
Andrey_B
Еще можно так.

Re: Новый год и MegaD

Добавлено: 24 дек 2017, 17:51
Alex_Jet
Andrey_B писал(а):Еще можно так.
Круто!!! Буду ждать реализации выбора количества микросхем.

Re: Новый год и MegaD

Добавлено: 27 дек 2017, 21:12
Andrey_B
4.21b2

- В качестве значения параметра "ws" для управления лентой WS2818 можно передавать более 600 байт, что делает возможным управлять всеми элементами 100-чиповой ленты индивидуально. Максимум в данный момент 133 шестибайтовых "RGB-наборов". Можно управлять лентами и большей длины, но тогда код будет повторяться.
- Добавлен параметр "chip" для указания количества чипов в ленте (по умолчанию 100). Если в запросе "ws" передается полный пакет данных, точно соответствующий количеству чипов в ленте, то параметр "chip" необязателен.
// Зажигаем 10 первых чипов красным
http://192.168.0.14/sec/?pt=35&ws=FF0000&chip=10

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

Re: Новый год и MegaD

Добавлено: 30 дек 2017, 13:27
Alex_Jet
Andrey_B писал(а):- В качестве значения параметра "ws" для управления лентой WS2818 можно передавать более 600 байт, что делает возможным управлять всеми элементами 100-чиповой ленты индивидуально. Максимум в данный момент 133 шестибайтовых "RGB-наборов". Можно управлять лентами и большей длины, но тогда код будет повторяться.
- Добавлен параметр "chip" для указания количества чипов в ленте (по умолчанию 100).
Ни на форуме, ни в статье нет информации как должен быть сконфигурирован порт? В новой прошивке никакого выбора "WS281x" не увидел. По идее такой тип должен быть в DSEN.

PS: Собрал на макетке схемку с микросхемой WS2811, порт в NC - все работает! Уровни на светодиодах меняются. Недалека моя мечта о RGBW люстре:)

Re: Новый год и MegaD

Добавлено: 30 дек 2017, 14:07
Andrey_B
Какая-то специальная настройка порта в данном случае никакой функции кроме справочной нести не будет, поэтому можно оставить просто NC.

Re: Новый год и MegaD

Добавлено: 30 дек 2017, 14:36
Alex_Jet
Справочная функция - это тоже очень хорошо! Зашел на веб-интерфейс и понял что все порты заняты, а так - вроде бы 2 шт., например, в состоянии NC...
Я бы в своей прошивке уже давно всем портам имена задал - "DS18B20_guest", "Lamp_guest" и т.д. Если бы не хватало памяти, то хотя бы менял состояние портов в соответствии с их назначением - "IN P", "IN P&R", "OUT", "OUT SW", "OUT SW LINK", "OUT DS2413", "DHT11", "DHT22", "1W", "1WBUS", "iB", "W26" ну и т.д. согласно текущего интерфейса контроллера.

Re: Новый год и MegaD

Добавлено: 30 дек 2017, 18:33
empenoso
Andrey_B писал(а): - Добавлен параметр "chip" для указания количества чипов в ленте (по умолчанию 100). Если в запросе "ws" передается полный пакет данных, точно соответствующий количеству чипов в ленте, то параметр "chip" необязателен.
С такой лентой будет работать? 5M WS2818 pixel rgb led strip light 30leds/m 60leds/m 12v smd 5050 http://s.aliexpress.com/BBfqeEBb

Re: Новый год и MegaD

Добавлено: 30 дек 2017, 21:17
Andrey_B
empenoso, да, будет работать. У меня именно такая (60 leds/m, 5m).
С этой лентой есть два момента. Перепутаны местами зеленый и синий (в даташите на WS2818B указана последовательность RGB, а фактически RBG). И иногда на высоких значениях яркости бывают сбои в трансляции данных (некоторые сегменты моргают, происходит это редко). Пока не могу сказать, с чем это связано. Может быть, 3.3В - слишком низкий уровень, может быть, из-за неполного соответствия требованиям по таймингам, а может, просто такой экземпляр ленты. Но при использовании в качестве гирлянды эти нюансы значения не имеют никакого. Заказал еще парочку от других производителей/продавцов - проверю.

Re: Новый год и MegaD

Добавлено: 21 янв 2018, 19:13
int144
Увидев реализацию поддержки в MegaD-2561 лент с пиксельной адресацией (ws2818, ws2811) решил проверить работоспособность лент и на других чипах, куски которых валялись дома. А вдруг... Первым был опробован светодиод с встроенным контроллером ws2812. Как не странно светодиод заработал от MegaD, включался, выключался, менял яркость, даже скрипты, примеры которых Андрей привел в статье работали. Вторым был фрагмент светодиодной ленты с чипом 1804. Как не странно, он тоже заработал. Однако, когда к первому и второму светодиоду подключались еще фрагменты (диоды), работал по прежнему только первый светодиод. К сожалению информация дальше первого светодиода не проходила. В даташите на ws2812 написано, что между RGB посылками для разных пикселей (светодиодов) в ленте должен быть интервал примерно 50 мкс, а пауза больше воспринимается как конец передачи. Возможно, реализованные в контроллере MegaD для лент ws2818 имеют длительность больше 50 мкс и воспринимаются светодиодом ws2812 как конец посылки.
Andrey_B, нет ли возможности реализовать тайминги и под ws2812 с возможностью выбора: ws2818(2811) или ws2812?

Re: Новый год и MegaD

Добавлено: 21 янв 2018, 20:43
Andrey_B
Боюсь, что при текущей реализации обеспечить более короткие тайминги не получится. И у меня нет под рукой WS2812. Проверить не могу.

Re: Новый год и MegaD

Добавлено: 29 янв 2018, 10:11
empenoso
А Ambilight подсветка - получается ведь тоже в этой теме? https://www.google.ru/search?q=Ambilight+подсветка

Re: Новый год и MegaD

Добавлено: 27 дек 2018, 15:06
gambl4
Andrey_B писал(а):
21 янв 2018, 20:43
Боюсь, что при текущей реализации обеспечить более короткие тайминги не получится. И у меня нет под рукой WS2812. Проверить не могу.
Доброго!
приехали китайские ленточки. На чипах скромно написано WS2811, однако при подключении загорается только первый "пиксель" :-(
С чем может быть связано такое поведение чипов? тайминги? Можно как-то убедить их работать с MegaD?

Re: Новый год и MegaD

Добавлено: 27 дек 2018, 15:15
Andrey_B
Использую ленту на чипах WS2811 с MegaD-2561. Проблем никаких нет. Один нюанс - при подаче питания (при подключения блока питания к сети) загораются все диоды. Лента на чипах WS2818 в этой ситуации не загорается.
В остальном работает хорошо.

Re: Новый год и MegaD

Добавлено: 10 мар 2019, 11:37
Коля
Андрей подскажите). Прочитал про ленты и в форуме и на сайте. Не могу понять про ограничение количества чипов. Я хочу в одной из комнат сделать типа дискотечно танцевально праздничную. Обычными лентами хорошую цветомузыку не сделать как я понял. Хочу адресной. По всему периметру потолка. Длинна я думаю метров 30 то будет. То есть используя Ваш файлик с образцами цветомузык для длины 30 метров как то не будет работать? Еще вопрос по питанию: управление будет один провод, а питание дополнительно подпоять через каждые 5 метров?

Re: Новый год и MegaD

Добавлено: 10 мар 2019, 12:31
Andrey_B
Адресное управление возможно пока только для 133 чипов. Максимальный размер буфера 800 байт. 800 / 6 =~ 133. Один байт кодируется двумя символами для передачи через HTTP GET-запрос.
В лентах WS2811 1 чип - 3 светодиода. Плотность светодиодов может быть 60 на метр, а может быть и 30. То есть, в ленте 5 метров с плотностью 60 светодиодов на метр - 100 чипов WS2811.
Не адресное управление, когда загорается лента целиком, возможно для 256 чипов (параметр "chip" - 8 битный, но его как раз проще всего увеличить до 16 бит).
Питание - да, для плотности 60 светодиодов на метр через каждые 5 метров. Иначе яркость ленты на определенных сегментах может падать, а чипы WS2811 могут зависать.

Re: Новый год и MegaD

Добавлено: 24 ноя 2019, 10:22
Alex_Jet
Андрей, чем отличается MegaD-2561 ver.1.0 от ver.2.0 в части портов 30-35? Суть вот в чем - подключил ленту WS2818 (лента как у Вас в статье) к порту 35 MegaD-2561 ver.2.0 - даю команды и ни одна не коррелирует с тем что должно быть! - загораются совершенно произвольные цвета! Лента не отключается при 0 байте...
Подключил ленту к порту 34 MegaD-2561 ver.1.0 - и о чудо! Все работает как надо!!!

И второй вопрос - просьба: приведите пример скрипта на PHP чтобы можно было get запросом активировать цикл while или выйти из него (mod_ws2818.php?play=0/1). Вчера пытался сделать, но видно навык уже растратил... Или, что будет ещё удобнее - отобразить в вебе кнопку On/Off, по нажатию которой будет происходить включение/выключение иллюминации.

Re: Новый год и MegaD

Добавлено: 24 ноя 2019, 11:09
Andrey_B
Alex_Jet писал(а):
24 ноя 2019, 10:22
Андрей, чем отличается MegaD-2561 ver.1.0 от ver.2.0 в части портов 30-35? Суть вот в чем - подключил ленту WS2818 (лента как у Вас в статье) к порту 35 MegaD-2561 ver.2.0 - даю команды и ни одна не коррелирует с тем что должно быть! - загораются совершенно произвольные цвета! Лента не отключается при 0 байте...
Подключил ленту к порту 34 MegaD-2561 ver.1.0 - и о чудо! Все работает как надо!!!
И как это у вас получается чудеса генерировать? ;)
Версии "1" и "2" мало чем отличаются. Кнопки Reset и Erase EEPROM добавились. Незначительные изменения в плате, никак не влияющие на функциональные возможности.
В части подключения ленты WS2818 - ничем не отличается. Да, прямо сейчас (и уже 3-й год подряд) лентой WS2818 у меня управляет именно Ver 2.

Alex_Jet писал(а):
24 ноя 2019, 10:22
И второй вопрос - просьба: приведите пример скрипта на PHP чтобы можно было get запросом активировать цикл while или выйти из него (mod_ws2818.php?play=0/1). Вчера пытался сделать, но видно навык уже растратил... Или, что будет ещё удобнее - отобразить в вебе кнопку On/Off, по нажатию которой будет происходить включение/выключение иллюминации.
Я лично делаю так.
Для запуска из скрипта, который работает с командами от Web-интерфейса:

Код: Выделить всё

exec("nohup php /var/www/ws2818/ng.php 1> /dev/null 2> /dev/null &");
Для остановки. Команда от Web-интерфейса:

Код: Выделить всё

touch("/var/www/ws2818/ng-exit.tmp");
В самом скрипте ng.php внутри бесконечного цикла

Код: Выделить всё

if ( file_exists("/var/www/ws2818/ng-exit.tmp") )
{
	file_get_contents($url."000000");
	unlink("/var/www/ws2818/ng-exit.tmp");
	exit();
}
Очевидное и, наверное, самое простое решение.