Проект "ТРЫНДЕЛКА"

MIDI-гитара своими руками

Главная
Протокол MIDI
Принцип действия
Звукосниматель
Лады и струны
Питание
Аналоговая часть
Контроллер PIC16x74
COM-порт
MIDI-порт
Управление и индикация
Алгоритм детектирования нот

Фотоальбом
MIDI-файлы

Об авторе

Принцип действия

Общий принцип работы "Трынделки" можно сформулировать следующим образом:

  • Для определения того, звучит ли струна, обрабатывается сигнал, поступающий от звукоснимателя этой струны. Сигнал усиливается, выпрямляется, детектируется (берется огибающая) и направляется на вход АЦП микроконтроллера.
  • Для определения того, на каком порожке прижата струна, используется принцип сканирования, применяемый в матрицах кнопок. Попеременно на каждую струну выдается активный уровень напряжения (логическая единица), после чего с каждого порожка, начиная с последнего (у меня - 17-й), считывается сигнал и проверяется, единица ли там. Где впервые получится единица - там и прижата сейчас струна.

Вообще же, если верить информации из единственной статьи, целиком и по частям растиражированной во всем Рунете, существует два принципиально разных подхода к принципу действия MIDI-гитар:

А.

Wired frets - "порожки с проводами". Высота ноты определяется тем, на каком порожке прижата струна. Эту информацию обеспечивают датчики, расположенные под порожками. Громкость звучания и сам факт звучания нот определяется по амплитуде колебаний струн, которую выдает полифонический звукосниматель (имеющий отдельный канал на каждую струну).

Достоинства: принцип действия достаточно прост и понятен, высота ноты определяется мгновенно и однозначно, настройка струн при использовании в качестве MIDI-контроллера не важна вообще - можно, в частности, сделать и 35 порожков вместо традиционных 19-22, не удлинняя гриф.

Недостатки: по крайней мере гриф подвергается радикальной переделке, принципиально невозможно использовать приемы игры, основанные на изменении натяжения струн, а также флажолеты.

B.

Различные варианты "гитарных синтезаторов", как совмещенных с гитарным корпусом, так и выполненных в виде отдельного блока. Полифонический звукосниматель снимает сигнал с каждой струны и передает его на сигнальный процессор. По этому сигналу определяется не только амплитуда, но и частота колебаний и, соответственно, высота ноты.

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

Недостатки: известные модели вносят ощутимую задержку при распознавании нот, особенно басовых (проблема вроде бы решается с использованием новейших алгоритмов на базе нейросетей, когда частота определяется по образцу сигнала длительностью меньше, чем его период); при самостоятельной разработке - надо иметь хорошую подготовку в области цифровой обработки сигналов.

Устройства обоих типов в принцие можно использовать как обычные электрогитары.

Существует третий вариант - нечто, напоминающее гитару, но с кнопками вместо струн или с разными струнами под левую и правую руку. На таких устройствах затруднительно или вовсе невозможно играть с использованием традиционной гитарной техники, однако они удобны для нетрадиционных способов игры "двумя руками".

В проекте "Трынделка" использован подход А, поскольку сделать подобное устройство самому мне показалось проще. Я не работал с DSP, а опыт работы с обычными микроконтроллерами уже был, и что как делать было в принципе понятно. Кроме того, устройства второго типа от Roland'а есть у нас в продаже по приемлемым ценам (от 400 у.е., если верить той же статье), и по мне его однозначно проще купить, чем делать самому.  К радости моей оказалось, что у меня на работе есть все необходимое для программирования Микрочиповских контроллеров и сами микроконтроллеры PIC16x74B "в неограниченном количестве", у которых на борту  - куча портов,  выдающих до 20 мА, асинхронный последовательный приемопередатчик и восемь программируемых аналоговых входов, коммутируемых со встроенным АЦП.

<<< Назад   |   Вперед >>>