Я уже писал, что для того, чтобы ощущения от игры на безголосом баяне были похожи на «настоящие», нужно ограничивать поток воздуха через клапаны. Те ограничители, которые я сделал в прошлый раз, работали неидеально. Потому что прилегание фанеры к металлической деке было неплотным и неравномерным, и некоторые ноты подсасывали воздух через щели.
Алексей, мастер, который делал капитальный ремонт моего баяна, посоветовал мне купить уплотнители. Я купил, приклеил, и в целом остался доволен. И басы, и выборка, и аккорды в левой руке теперь работают правдоподобно и одинаково по всему диапазону.
Единственное, пришлось и на эту фанерку наклеить ребро жесткости (см. рис. 1). Иначе середина вспучивалась при затягивании креплений.
Собственно, примерно так я вижу панель управления MIDI-баяном (см. рис. 1). Жёлтые квадратики там для понимания размеров и расстояний между элементами управления (всё-таки нарисовано в PowerPoint-е, а не в CAD-е).
С OLED экраном всё ясно. А по кнопкам так:
кнопки навигации по меню (вправо, влево, вверх, вниз, «ОК»)
кнопка вызова меню
программируемые кнопки F1 — F4. Наверняка я захочу чтобы была возможность быстро добраться до каких-то настроек. Заранее не могу сказать до каких именно. Поэтому проще сделать программируемые кнопки, которые пользователь сможет запрограммировать сам (я придумал как это сделать, это очень просто).
6 кнопок «пресетов» (как это назвать по-русски?). На каждую кнопку можно запрограммировать свой комплект всех-всех настроек для всех клавиатур. Эти кнопки — функциональный аналог регистровой машинки у многотембровых инструментов.
2 спец-кнопки
«синхронизация настроек с синтезатором»
включение/выключение датчика давления (чтобы можно было, по желанию, играть, не двигая мех)
4 кнопки управления «ритм машиной» (партией ударных)
Ну и минимум светодиодов:
индикатор выбранного пресета
индикатор состояния ритм-машины
индикатор активности MIDI-выхода
служебный индикатор для всякого
Можно это всё сравнить с панелью управления миди-системой Бутусова. По-моему, у меня всё существенно проще, логичней и интуитивно понятней. Это благодаря использованию OLED экранчика, на котором одновременно можно показать довольно много всего. Основная информация о состоянии миди-системы будет показываться там, а значит нет нужды в россыпи светодиодов, в которой чёрт ногу сломит.
И, раз уж зашла речь про систему Бутусова. Как я сегодня выяснил, она, оказывается, не может быть установлена на выборную клавиатуру. Даже если баян готово-выборный, они её ставят только на готовую часть. А у меня-то можно будет и на выборке играть. 🙂
Поскольку с изготовлением печатных плат происходит задержка, а приблизить светлый миг начала нормальной игры на МИДИ-баяне очень хочется, приходится заниматься тем, что откладывалось далеко «на потом».
Вообще, я до самого конца не был уверен, что в принципе буду делать возможность авто-аккомпанемента на ударных инструментах. В миди-системе Бутусова это есть, но мне это казалось делом очень второстепенным.
Однако, сейчас по основным работам я заблокирован внешними обстоятельствами, и могу продолжать только модифицировать прошивку. Ну и написал авто-аккомпанемент. Как оно работает — см. видео ниже.
По задумке, оно должно будет начинать играть либо по нажатию спец-кнопки на панели управления, либо при первом нажатии на любую басовую клавишу в левой клавиатуре. Для каждой «мелодии» задан темп по-умолчанию, который можно ускорять или замедлять (тоже показано на видео). Количество мелодий, которые можно добавить, практически не ограничено (свободной флэш-памяти сейчас имеется более 10 килобайт, а одна закодированная «мелодия» в среднем занимает порядка 40 байт).
Название проигрываемой мелодии и текущий темп показываются на экране в последней строке.
Теперь придётся чуть модифицировать схему панели управления, чтобы добавить туда кнопки управления партией ударных. И потом перекомпоновать и переразвести печатную плату.
Я долго думал, и решил, что возможность воспроизведения партии ударных инструментов моему баяну не повредит. Здесь речь о том, что будет автоматически проигрываться выбранный ритм (из фиксированного набора, ясное дело), под который можно будет играть.
Самое сложное здесь — это написать сам движок, воспроизводящий выбранный ритм. Причём написать его так, чтобы расход оперативной памяти был минимальным; мало её осталось, чуть больше 200 байт. В результате я израсходовал примерно 10 байт.
Оно сейчас может воспроизводить мелодии любой длины, лишь бы влезало в во flash-память (там ещё больше 10 килобайт свободно; можно ни в чём себе не отказывать). Для начала я реализовал простейший ритм — «метроном». Темп пока не настраивается, но это добавить проще простого. И, кстати, на приведенном ниже видео оно играет уже через мой новый синтезатор ATEMP.
И, пожалуй, это даже хорошо, что я не успел заказать печатные платы. Думаю, что в свете появления этой функции придётся пересмотреть набор кнопок на панели управления. Скорее всего придётся добавить набор кнопок для управления партией ударных.
Ну и надо будет теперь засесть за программу LMMS и насочинять себе комплект ритмов.
Я его, конечно, немедленно воткнул в комп и давай тестировать. Конечно, играть музыку на компьютерной клавиатуре — это такое себе удовольствие. Но всё равно забавно.
Могу сказать, что звуки эта коробочка издаёт весьма достойные. Поскольку меня больше всего интересуют органы, то прослушал их все. К органным звукам у меня никаких претензий.
Очень, очень нужно уже начинать делать платы для электронной начинки.
P.S. Питание +5 В эта коробочка сейчас принимает через разъём mini-USB. Как по мне — это самое наихудшее решение из возможных. На картинке на странице производителя показан ещё круглый разъём питания, которого у меня нет. Я снял крышку и на плате увидел этот разъём. Похоже, они просто не просверлили отверстие. Вместо этого блок питания прислали с разъёмом mini-USB. Попозже, скорее всего, я сам просверлю это отверстие, чтобы пользоваться нормальным разъёмом питания.
Сегодня я наклеил магниты на плоские рычаги левой клавиатуры (см. рис. 1).
Как объяснял ранее, наклеено в шахматном порядке: на концы рычагов либо на переходные пластины в середине рычага.
По ходу дела обнаружился интересный момент: в режиме выборной клавиатуры рычаги опускаются сильнее, чем в режиме аккомпанемента. «Сильнее» означает разницу в ходе конца рычага порядка 3-4 мм. Это заставило меня беспокоиться, т.к. датчики должны будут одинаково реагировать на оба варианта нажатия. Я тут же достал макетку с собранной схемой для проверки датчиков и посмотрел, в каком диапазоне срабатывает датчик. Вроде бы получается, что датчик должен нормально ловить оба варианта нажатия. Для этого нужно будет устанавливать датчики в среднее положение (между «полным» и «неполным» нажатиями). Поскольку каждый датчик всё равно нужно будет настраивать индивидуально, особой проблемы с этим я не вижу. Хотя, конечно, окончательно всё будет ясно только после того, как под рычаги будет установлена плата с датчиками.
Сегодня последний день отпуска, и я клею магниты. Пока наклеены только те магниты, которые расположены на промежуточных пластинах — см. рис. 1.
Что за промежуточные пластины? Это просто. Плоские рычаги имеют форму, показанную на рис. 2. В идеальном случае я бы клеил все магниты на концы этих рычагов. Но рычаги расположены весьма плотно, и датчики будут реагировать на магниты, расположенные не только на ближайших, но и на соседних рычагах.
Для того, чтобы этого избежать, я решил располагать магниты в шахматном порядке. Половина магнитов будет крепиться к концам рычагов (синий кружочек), а вторая половина — на 10 мм левее (красный кружочек). И для того, чтобы «красные» магниты можно было расположить в задуманном месте, нужны промежуточные пластины (из тонкого и немангитного материала). Их я сделал из листовой бронзы (есть у меня небольшой запас с незапамятных времён). Эти пластины потом будут приклеены к рычагам.
Такой подход позволит разнести магниты на расстояние, достаточно большое, чтобы датчики ловили только «свои» магниты.
Само собой, перед поклейкой я пометил маркером тот полюс магнитов, на который реагирует датчик Холла, чтобы приклеить магниты правильно. Иначе будет обидненько обнаружить, что какая-то часть датчиков не срабатывает.
Столярная часть работы над MIDI баяном закончена, и рабочее место подготовлено для продолжения работы над электроникой (см. рис. 1). Очень надеюсь, что больше пилить баян мне не придётся.
Хотя, придётся, конечно. Нужно будет выводить разъёмы (MIDI-out и питание) из герметичного объёма наружу.
И я никак не могу решить, куда эти разъёмы выводить. В этих ваших интернетах я видел, как народ выводит разъёмы строго вниз. Это нормально, если играть стоя; но я таким экстримом заниматься не собираюсь. А при игре сидя, как мне сейчас кажется, входные штекеры будут упираться в левую ногу (на которой стоит баян во время игры). И вряд ли это будет хорошо для разъёмов.
Безопасный вариант с этой точки зрения — это выводить разъёмы вперёд. Но такое может выглядеть нелепо. Короче говоря, надо изучать вопрос. Смотреть, как делают разные производители и самодельщики.
В принципе, можно сделать беспроводной баян. Докупить радиомодуль (а точнее 2 радиомодуля) и на второй Ардуинке сделать приёмник, который будет принимать сигнал от баяна и перенаправлять в MIDI-out порт. Ещё, правда, придётся покупать комплект литиевых аккумуляторов и модуль зарядки. Это всё реализуемо, но хлопотно. Я хочу как можно быстрее начать играть на этом всём.
Следующий этап — это тщательное снятие всех размеров с левой механики и разработка печатной платы датчиков левой клавиатуры.
P.S. В баяне Roland Fr 8xb разъёмы внизу (см. рис. 2). У своего баяна я в это место вывести разъемы смогу, хоть и не настолько близко к грифу. Но я сейчас прицепил к баяну ремни, надел его, как полагается, и всё проверил. Да, в это место можно вывести разъём. Пожалуй, это будет основной вариант, который и буду пытаться реализовать.
На рис. 1 показано то, ради чего всё затевалось: обеспечен лёгкий доступ к пространству под плоскими рычагами. Теперь там можно делать всё, что угодно, не опасаясь повредить механику. Эти самые плоские рычаги довольно чувствительны к повреждениям. Они не стальные, согнуть их легко, а выпрямлять их надо уметь (я не умею). Там, вообще, куча всяких тонкостей при работе с левой механикой.
Ну а дальше — надо, по возможности, сделать «как было».