113-Обновление программы Эффектор-12-схемы светомузыки и виртуальные светильники.

Автор: | 10.12.2014

Как я уже упоминал в предыдущей статье, готово обновление программы Эффектор-12 предназначенной для управления платой Эффектора (как старого варианта на ATtiny2313, так и нового на ATmega328 или Arduino).

Кто не знает этой программы можно посмотреть на процесс ее развития в следующих статьях:

063-12-ти канальный генератор эффектов на ATtiny2313.
066-Простой Ambilight на ATtiny2313 своими руками.
082-Автомат управления нагрузками (апдейт GCn_Effector_12).
083-Светильник-трансформер «Flexilight» на Эффекторе.
112-Arduffector-Эффектор за 5 минут без паяльника и программатора.

Общие фразы.

Программа Эффектор-12 умеет:
— управлять устройством эффектор в ручном режиме – менять уровни каналов, включать/отключать «железные» эффекты и т.д.;
— создавать и записывать EEPROM устройства 4 из 8 встроенных (работающих автономно) эффектов;
— создавать визуальные эффекты под музыку (светомузыка);
— создавать эффект Ambilight – подсветку рамки экрана при просмотре видео на мониторе;
— включать нагрузки или эффекты по расписанию;
— создавать виртуальные светильники на «рабочем столе» Windows.

Effector-12+.zip (286710 Загрузок)

Из нового.

Обновление в большей или меньшей степени коснулось всех вкладок программы. Я не буду описывать те вкладки, изменения которых были чисто косметическими (про них можно почитать в статьях, приведенных в начале) , но остановлюсь более подробно на кардинальных изменениях. А их немало!

Стабильность.

Была увеличена стабильность работы. Старая версия страдала периодическими «вылетами». В новой версии вылеты практически исключены (за исключением некоторых режимов). Для случая, когда нужно полностью исключить перебои в работе программы (зависания, вылеты, случайные закрытия и т.д.) была создана специальная утилита WatchDog+.exe, которая постоянно мониторит состояние программы и в случае аварийных ситуаций ее перезапускает.

Контекстное меню в трее.

Добавлено контекстное меню с основными функциями по правому клику иконки в трее. Кроме того, добавлены горячие клавиши на некоторые функции.

Мультиязычность.

Главным вдохновителем, движущей силой и генератором идей нововведений в программе являлся Юрис Перконс (Juris Perkons), проживающий в Латвии. Для него (и не только для него — несколько человек раньше на это обращали внимание) было проблемой использовать программу с Windows без установленного русского языка. Так как программа использует кодировку ASCII, то на форме вместо русских надписей появляются крякозябры. Теперь программа мультиязычна. Есть английский вариант (который будет работать при любых установленных/не_установленных языках в Windows) и русский. Можно добавить любой другой язык интерфейса.

Если у кого появится желание добавить свой родной язык – это делается очень легко! В папке «localization» возьмите файл русской локализации Russian (GetChiper).lng, скопируйте переименуйте его и замените внутри файла русские фразы на фразы своего языка (открывать файл нужно как обычный txt-файл). Ваши локализации оставляйте на форуме – я добавлю их в архив программы.

Виртуальные светильники.

В процессе построения каких либо светильников для светомузыки или для визуализации чего либо, встает вопрос – А как оно будет выглядеть «вживую»? На этот вопрос обычно получаешь ответ после того как сам светильник (или его прототип) уже собран и результат зачастую не тот который Вы ожидали. Для устранения таких «неожиданностей» и была добавлена в программу вкладка «Визуализация».

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

Светильник создается нажатием на соответствующую кнопку. Их можно создать произвольное количество. Светильник можно перетаскивать по рабочему столу, менять размер (для прямоугольника). Настройки светильника доступны по правому клику на нем. Каждому светильнику можно присвоить канал (или несколько), который он будет отображать (толи выбранным цветом, толи размером). Грубо говоря, виртуальный светильник – это RGB светодиод, к выводам которого Вы можете подключить любой из выводов Эффектора. Светильники будут отображать сигналы, формируемые для платы Эффектора любой из вкладок. Сама плата, подключенная к компьютеру, не нужна. Созданную «картинку» светильников можно сохранить, набрав имя в окошке выбора схем светильника и нажав кнопку сохранения. Любую схему впоследствии можно выбрать для отображения или запускать автоматически при запуске программы (соответствующая галочка во вкладке «Связь»).

Визуальные схемы сохраняются в папке «visualization» в виде файлов Panels.vsc. Интересные визуальные схемы оставляете в специальном топике форума!

Светомузыка и светомузыкальные схемы.

Самое большое обновление было сделано для вкладки «Музыка». Это даже не обновление – это новая вкладка со старым названием!

Читатели блога сформировали довольно приличный объем пожеланий по вкладке «Музыка» и, начав анализировать эти пожелания, я понял, что не получится все это реализовать в одной вкладке. Старая версия светомузыки имела довольно скромный функционал и, фактически, работала только в двух режимах – стандартный (раскладка спектра) по каналам и «зеркало» (зеркальное разложение спектра по каналам). Добавлять новые режимы работы было бы решением проблемы, но временной. Появятся новые идеи/пожелания и опять все переделывать? Поэтому решено было ввести возможность создавать варианты светомузыки (и не только) самому, при помощи внешнего файла-описания эффекта. Это значит, что Вы сами можете сделать такой вариант реализации светомузыки (или эффекта) какой нужен Вам.

Новая вкладка «Музыка» имеет такой вид:

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

Вкладка имеет следующие элементы управления и индикации (сверху вниз):
— кнопки пуск и стоп для запуска и остановки работы вкладки;
— выпадающий список выбора схемы эффекта (рядом кнопки для сохранения настроек ползунков в текущей схеме и обновления списка схем, если Вы добавили новый файл);
— графический эквалайзер для визуального наблюдения текущего состояния гармоник сигнала;
— окошки визуализации состояния каналов Эффектора A-L, Beat-значения и Act-значения;
— область ползунков регулировки параметров схемы;
— область описания текущей схемы;
— область выбора источника звука звуковой карты и его уровень;
— чекбоксы выбора вариантов воспроизведения списков схем (списки можно задавать в специальном файле list.ini в папке программы)

Для запуска светомузыки:
1 нажмите кнопку «Пуск» на вкладке «Музыка»
2 выберите в появившемся списке внизу источник звука звуковой карты
— это, чаще всего, «Wave», «What U hear», «Stereo Mix»
— в Win7,8 этого списка может не быть – читайте ниже, что делать в этом случае
3 включите на проигрывание музыкальный трек (в любом проигрывателе)
4 выберите в выпадающем списке вверху любую схему.

В Win7,8 выбор источника звука происходит иначе.
Заходим «Пуск — Панель управления – Звук”. В появившемся окне в любом свободном месте правый клик мыши и видим небольшое меню. Ставим галку напротив пункта «Показать отключенные устройства” и «Показать отсоединённые устройства”. Затем перейти на вкладку «Запись”. Вы попадете в раздел записывающих звук устройств Windows 7, среди устройств серым цветом будет обозначен «Стерео микшер”. Щёлкните на нем правой кнопкой мыши и выберите меню «Включить”. Теперь его нужно назначить устройством «по умолчанию». Если в системное трее (в нижнем правом углу) нажать на цветной динамик левой кнопкой мыши, выбрать вкладку «стерео микшер», то можно повысить громкость микшера или изменить другие настройки.

Создание схем светомузыки, эффектов.

Главным элементом, формирующим правила визуализации, является файл схемы.

Файл схемы должен иметь расширение lsc (Light SCheme), и располагаться в папке «schemes».

Имя файла будет отображаться в выпадающем списке, поэтому желательно называть файлы осмысленно (пример: Зеркало.lsc или House.lsc).

Файл схемы, по сути, является ini-файлом, поэтому если у Вас редактор поддерживает темы подсветки — выбирайте тему ini — будет гораздо легче работать с файлом.

Я не буду описывать правила создания схемы – все это подробно описано в файле schemes\light_scheme_rule_build_rus.txt (schemes\light_scheme_rule_build_eng.txt английский вариант).
Также есть работающий пример схемы с детальным описанием schemes\Standart_Scheme_rus.lsc (schemes\Standart_Scheme_eng.lsc английский вариант).
Еще я сделал определенное количество схем, где можно посмотреть, как все устроено.

Как и с визуальными схемами, оставляйте свои схемы светомузыки или эффектов на форуме – буду их добавлять в программу. Специальный топик форума!

Больше информации можно посмотреть в мануале программы — в верхнее меню «Помощь». Также читайте статьи по ссылкам вначале.

(Visited 13 776 times, 1 visits today)

113-Обновление программы Эффектор-12-схемы светомузыки и виртуальные светильники.: 45 комментариев

  1. Денис

    Да этот вариант более стабильный под W7 64, но только по шнурку …. блюпуп начинает работать и сразу отваливается …. потом виснет и прога вылетает.

  2. GetChiper Автор записи

    Должно и по блютузу

  3. Денис

    Попробуйте еще такой вариант

    в нем и по бдлютузу можно будет управлять, а не тольто через УСБ шнурок?

  4. Денис

    Добрый день. У меня программа постоянно вылетает на w7 64 (может поставить ей режим сивместимости с ХР). Есть более стабильная версия? Также пробовал подключать к ПК по блютуз свистку (есть H06 блютуз модуль для ардуино я так понимаю он коннектится по умолчанию по 9600 скорости) не получается подключиться — не проходит авторизация и все. Возможно нужно подправить код, для дружбы с блютуз. Можно подправить код программы и сбросить мне на почту dalva35@yandex.ru , чтобы можно было бы управлять эффектами по блютузу , а не усб проводу! Спасибо заранее.

  5. Роман

    Судя по отзывам, классный аппарат получился! Завтра буду пробовать… Спасибо!

  6. Jack

    @GetChiper
    Только сегодня их получил. Вроде работает, но эффекты выглядят странно. Завтра видео сделаю.

  7. GetChiper Автор записи

    Кстати, я так понял с ws2811 уже работает эффектор? Как это выглядит?

  8. Jack

    @GetChiper
    Система видит, родной прогой ардуино управляется.
    Один нюанс, плата самая дешевая китайская, там стоит CH340G и на него пришлось дрова поискать. Но мега правильная, 328P.

  9. GetChiper Автор записи

    А сама система видит появившийся виртуальный СОМ-порт созданный ардуино?
    А если запустить программу терминала — она увидит?

  10. Jack

    Здравствуйте! Программа не видит ком порты, вообще пустой выпадающий список. Плата ардуино уно, прошита под ws2811

  11. Bender

    Отличная программа спасибо огромное!!!

  12. GetChiper Автор записи

    Ответил на почту.

  13. Eugene

    Здраствуйте Ув. GetChiper подскажите пожалуйста на какой версии HiAsm вы писали Эффектор-12 и с помощью какого компилятора подключаемого к Hiasm_у . Я только начинаю познавать азы визуального проектирования . Хотелось бы попробовать собрать ваш исходник ,нужна робота с портом ПК и UART контролера . Возможно подскажите как можно в Hiasm_е быстро научиться . Спасибо за понимание .

  14. GetChiper Автор записи

    Выход из функции:
    return код_возврата;
    Код возврата зависит от типа функции.

    Выход из цикла:
    break;

  15. RV

    @GetChiper
    это понятно, но как сделать досрочный выход из эффекта? я уже не знаю что придумать, если можешь, подкажи

  16. GetChiper Автор записи

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

  17. RV

    @GetChiper
    Женя, смотри,Я создал переменную, при каждом нажатии кнопки переменная увеличивается, соответственно под каждым значением переменной свой эффект мигания должен быть. а как теперь сделать что б переключение эффектов сразу менялось при нажатии кнопки а не ждать пока первый эффект пройдет до конца а потом переключается на второй? Вот код ниже

    #include…
    int i;
    void wait(void)
    {
    TCNT1=0;
    while(TCNT1<750){};
    }
    interrupt [EXT_INT0] void ext_int0_isr(void)
    {
    i++;
    }
    void main(void)
    {
    #asm("sei")
    while (1)
    {
    while(i==1)
    {PORTA.2=0;
    PORTB.1=1;
    wait();
    PORTB.1=0;
    PORTB.2=1;
    wait();
    PORTB.2=0;
    PORTB.3=1;
    wait();
    PORTB.3=0;
    }
    if(i==2)
    {
    PORTB.2=1;
    wait();
    PORTB.2=0;
    wait();
    }
    if(i==3)
    {
    i=1;
    }
    };
    }

  18. GetChiper Автор записи

    Трудно что-то советовать не имея представления как планируются реализовываться эффекты. Может имеет смысл начать делать эффекты, а кнопочку приделать позже?

    На форуме есть топики где люди делятся различными алгоритмами (в том числе и опросами кнопок) — можно начать оттуда
    http://www.forum.getchip.net/viewforum.php?f=23

  19. RV

    @GetChiper
    Нет, не твое, это я сам решил сделать но что то не совсем получается, вот и решил к тебе обратиться за помощью как к опытному специалисту, или ты только по своим устройствам помогаешь?

  20. GetChiper Автор записи

    Это не мое устройство?

  21. RV

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

  22. GetChiper Автор записи

    Скинул по почте

  23. nikolyan2

    Здравствуйте.Очень понравилась затея с RGB, стоит развивать эту тему.Пусть будет 6 светодиодов мощных очень зрелищно.Собственно ни в этом вопрос.Не могу скачать обновленную программу.Грузится почти до конца и пишет-ошибка загрузки.Если не трудно отправьте прогу на почту.Предыдущей программой особо не пользовался.Если честно алгоритм не особо понравился.У меня все светодиоды белые и получалось невнятное моргание под музыку.

  24. GetChiper Автор записи

    Что за устройство?

  25. RV

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

  26. ssv63

    собрал -работает отлично!!!

  27. Mikulich

    Спасибо за оперативную помощь.

  28. GetChiper Автор записи

    Отправил на почту вариант со скоростью 38400

  29. Mikulich

    Огромное спасибо автору за проделанную работу! Все просто класс! Прошу выложить исходники — (113-Обновление программы Эффектор-12 – схемы светомузыки и виртуальные светильники). У меня фиксированная скорость Bluetooth модуля 38400 который подключен к эффектору нужно изменить этот параметр в программе, или отправьте на Email: victormikulich@gmail.com
    Заранее благодарю….

  30. GetChiper Автор записи

    WatchDog запускает другую программу — Effector12. Эти действия наверное и вызывают подозрения у антивируса.

  31. Juris

    Ну значит надо «познакомить» антивирус с этим файлом (или файлами), занести в список игнорируемых или пропускаемых, как уж они конкретно там у Аваста называютса. К слову, я уже долгое время обхожусь без постоянного антивируса. Просто не делаю сам глупостей, ну и время от времени на всякий случай сканнирую комп чем то одноразовым.

  32. Jack

    С включенным антивирусом программа запускается, а вот WatchDog+.exe нет. На него ругается Аваст

  33. Jack

    Антивирус AVAST ругается и не дает даже скачать.

  34. Juris

    Я бы такое попробовал: стираем все версии Эффекторов, а также находим все следы Эффекторов по регистру (реестру) и тоже всё стираем. Потом ставим новый Эффектор в папке с путём (path) какой не был до этого у Эффекторов (Я ставлю C:\Effector и под Windows XP, и под Win 7). Ну и тогда пробуем.

  35. Александр

    Старая версия работала очень хорошо.

  36. SVN

    У меня лицензионная Win 7, антивирус NOD32, — Запуск программы производится без всяких проблем.

  37. GetChiper Автор записи

    А со старой версией та-же ошибка?

  38. Александр

    Виндовс-от администратора.Кстати, старая версия работать перестала. До этого работала замечательно.

  39. GetChiper Автор записи

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

    Похоже при попытке делать эти записи система не дает доступа.
    Виндовс запущена от администратора? Все программы работают с реестром. Такая реакция есть на что-то другое?
    Антивирус тут вряд ли виноват.

  40. Александр

    Юрис, спасибо. К сожалению, не помогло.

  41. Juris

    Парочка быстрых идей попробовать:
    запускать как Администратор (run as Administrator);
    отключить антивирус, если есть (AVG конкретно был подозрителен на «Эффектор», вероятно из за доступа программы к портам).

  42. Александр

    Добрый день, Евгений!
    При попытке запустить программу (Win 7)выдаётся сообщение о том,что невозможно произвести запись в реестр. При этом погасить сообщение и выйти из программы можно только через Диспетчер задач. Чем это можно победить? Спасибо.

  43. Juris

    Огромнейшее Спасибо Автору! И за проделанную большую работу, и за то, что Автор внимательно прислушался к пожеланиям и идеям как от меня, так и других пользователей предыдущих версий «Эффектора». Очень хочетса надеятся, что свето-музыко-фанаты с хорошим художественно-математическим воображением подхватят идею и будут создавать свои интересные варианты светомузыкальных схем, которые потом станут доступны всем через форум.

Добавить комментарий