Самодельная MIDI система для баяна или гармони

Больше
7 года 2 мес. назад #40239 от Андрей Воронин
Андрей Воронин ответил в теме Самодельная MIDI система для баяна или гармони
Я ножки датчиков слегка раздвинул в стороны и согнул ступенчато на приспособлении из уголка рис.4, чтобы каждый встал на свою дорожку и не было замыкания. Сначала припаял по месту установки все датчики за длинный вывод, затем снял платы и допаял остальные выводы у датчиков.
Проверял работу всех датчиков по схеме рис.5, только вместо вольтметра припаял светодиод. Пришлось регулировать только 2 датчика, о которых я писал выше, которые никак не регулировались, их пришлось просто заменить. Они срабатывали, только когда магнит практически шаркал по датчику, остальные датчики срабатывают четко, когда магнит находится на расстоянии примерно 1мм и даже больше.
Вложения:

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
7 года 2 мес. назад #40287 от Степан
Спасибо, Александр. Подскажите, как в этом случае можно будет программировать правую и левую клавиатуру? Или он будет понимать только одну?

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
7 года 2 мес. назад #40300 от Александр
Степан, там всё очень просто.
Этот модуль - полноценный синтезатор с полифонией, который может играть несколько каналов одновременно.
Крайняя версия программы для баяна умеет работать с тремя каналами, это: Бас левый, Аккорд левый, Правая клавиатура.
Звуковой модуль при включении задаёт настройки по умолчанию. Максимальная громкость для всех каналов и крайний выбранный инструмент.
Чтобы вручную заменить инструмент и его громкость на определённом канале нужно:
1 - нажать и отпустить кнопку, привязанную к этому каналу
2 - нажать program на модуле и выбрать колесом инструмент
3 - нажать Volume, колесом установить громкость
4 - нажать Program
При этом изменится инструмент и его громкость только на том канале, на котором была нажата кнопка.

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

Думаю многим будет интересно ещё одна идея:
Программа Synthesia поддерживает подсветку клавиш. Для этого она отправляет определённую команду на выделенный под подсветку канал (задаётся в настройках программы).
Если добавить к MIDI системе вход, то можно принимать эту команду и включать светодиод под нужной кнопкой, подсвечивая её. Для заучивания мелодий это очень пригодится.
Но чтобы добавить эту функцию нужен контроллер больше чем Arduino Nano. Для светодиодов нужно будет столько же линий данных, сколько и для кнопок.
Вполне достаточно будет добавить 8 линий LED_D0 .. LED_D7 для передачи состояния светодиодов. А выбор строк оставить те же L0-L9 которые используются для клавиатуры. То есть можно будет одновременно опрашивать кнопки и зажигать/гасить их светодиоды.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
7 года 2 мес. назад #40310 от Андрей Воронин
Андрей Воронин ответил в теме Самодельная MIDI система для баяна или гармони
Здравствуйте Александр. Собрал вчера миди баян. Все работает, кое- какие датчики немного подрегулировал остальное нормально.
Вопрос. Наблюдается эффект подглушивания когда ноты совпадают в мелодии и аккорде. Как думаете, если раскоментировать по миди каналам, как вы пишете в скече клавиатуру мелодии, аккордов и баса поможет ли это устранить данный эфект.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
7 года 2 мес. назад #40323 от Александр
Андрей, можете раскоментировать разделение по каналам. Это поможет разделить мелодию и аккорд.

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

Объяснение проблемы заглушивания нот:
Например, мы нажимаем аккорд "До мажор", потом где-то в середине аккорда нажимаем "До" на мелодии и через некоторое время отпускаем аккорд. Что видит MIDI синтезатор:
1 Играть До, Играть Ми, Играть Соль
2 Некоторая пауза
3 Играть До (Нота уже играет, значит синтезатор ничего не делает)
4 Некоторая пауза
5 Стоп До (нота прекращает играть совсем. Мелодия прекратила звучание, осталась часть аккорда: Ми и Соль)
6 Некоторая пауза
7 Стоп До, Стоп Ми, Стоп Соль. (Ми и Соль остановлены, До уже остановлена)

Это же наблюдается когда играешь легато бас-аккорд-басс-аккорд-... получается каша. А всё из-за того что бас состоит из двух нот из разных октав, одна из них находится в аккорде. Это пункт 3.

Можно дописать программу. Если нота в этом канале уже играет, то остановить её и запустить снова. Нужно ввести отслеживание нот. Это исправит пункт 3.
А чтобы сделать пункт 5 нужно блокировать остановку ноты, если остаётся нажатой хотя бы одна клавиша к ней привязанная.

Буду думать, как это красиво сделать программно.
Спасибо сказали: Андрей Воронин

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
7 года 2 мес. назад #40336 от Андрей Воронин
Андрей Воронин ответил в теме Самодельная MIDI система для баяна или гармони
Здравствуйте Александр. После раскоментирования эффект исчез.
Сейчас мелодия, бас и аккорд идут по разным каналам, просмотрел в MIDI-OX. Там же в программе пробовал играть, никакой задержки и подглушиваний нет. Все играет четко.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Время создания страницы: 0.886 секунд
Работает на Kunena форум