Мой сайт
Суббота, 27.04.2024, 21:29



Приветствую Вас Гость | RSS
[ Главная ] [ Миди клавиатура ] [ Регистрация ] [ Вход ]
Меню сайта

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Форма входа

Миди клавиатура             

Автор:    Темерев Максим Алексеевич 06.02.1012




Сама идея проекта такова:
Сделать активную(реагирующее на скорость нажатия) клавиатуру минимум на 72 клавиши на основе нерабочего синтезатора.

Сам принцип МИДИ прост. При нажатии на клавишу нужно по протоколу UART передать 3 байта с командой номером клавиши и громкости.
При отпускании соответствующую команду.
Также есть десяток команд для управления но это не здесь...

Вскоре после неудачных поисков нерабочего синтезатора решил использовать клавиатуру от реального фортепиано.

На мое объявление сразу ответили с фирмы которая занимается ремонтом и утилизацией.
Пришел и за 50 грн открутил нужные мне детали (как я их тащил через метро домой это уже другая история...)

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

Вначале все крепления сделаны предварительно.
Затем оказалось что все клавиши стоят неровно(хотя планка ровная), и сила натяжения везде разная.
Было решено сделать индивидуальные регулировки на каждую клавишу.

Но а пока вот:






Потом нужно было выбрать что использовать в качестве датчиков.
От механики я сразу отказался - в домашних условиях нормально не сделать.
Решил оптикой - один ИК диод и 2 ИК транзистора на клавишу.
А заслонка от клавиши с пластика легко отрежется и настроится как нужно.




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

Вот схема клавиатурной части:

Например для опроса первых 8-ми клавиш нужно на правый разъем первый вывод подать 0 (через транзистор).
Включатся 8 ИК диодов и в зависимости от нажатия с 2-х левых разъемов можно снять информацию(выводы подтянуты к "1")
Первый разъем - начало нажатия.
Второй разъем - конец нажатия.
Итак по 8 клавиш постепенно опрашивается вся клавиатура.
После подбора номиналов резисторов этот процесс был максимально разогнан (период опроса  примерно 0,5 мС ).

Датчики:

При пайке датчиков, соединителей у меня не один раз возникала мысль - "ЗАЧЕМ Я ЗА ЭТО ВЗЯЛСЯ!!! лучше бы купил готовый".
Очень нудная работа...







Клавиша когда нажимается то сначала заслоняет один фотодиод, затем при полном нажатии - второй.




На следующем фото одна клавиша нажата:



Когда датчики были установлены, у каждой клавиши были свое расстояние срабатывания.
Для этого все клавиши были извлечены и ножиком каждая заслонка подрезана до получения одинакового срабатывания.
Эта нудная процедура заняла больше 3-х часов.




Начинаю делать коробку:


Регулировки натяжения каждой клавиши:

Оно же:


Регулировка начального положения клавиш (только так можно было выставить клавиши вровень).


Коробка сделана.




Передняя панель готова.




Главное меню:
устанавливается канал миди, инструменты, можно делать разделение клавиатуры и многое другое.
Также переключение между внутренним генератором и внешним USB выходом для подключения к компьютеру.

Выбор инструмента из стандартного списка.


По 5-ти точкам можно построить характеристику нажатия (это заметно увеличило реалистичность игры)


Заставка))))


задняя панель:
питание 5В, педаль, аудио выход(внутренний генератор), usb выход.


В устройстве встроил аппаратный генератор MIDI - на микросхеме VS1003.
Она работает в режиме RealTimeMidi.
Звуки паршивые, особенно "фортепиано" не похоже на себя, но чтоб поиграться когда нет под рукой компьютера - пойдет.

Также в клавиатуре поддерживается педаль.

Для соединения с компьютером используется микросхема UART to USB - CP2103.
Скачал драйвера от Roland, тогда компьютер стал видеть COM порт как MIDI порт.
Сначала при подключении я разочаровался - была большая задержка, но порыскав по форумам это было устранено установкой специальных драйверов ASIO4ALL.

Изделием я доволен, хоть и потратил на него больше 3-х месяцев.
Полноценная миди клавиатура с реальным размером клавиш стоит от 5000.
Мне все обошлось 700 грн. (400 грн - фотодиоды и фототранзисторы, 50 грн - основа, и материалы)
Хоть в фирменных ощущение от игры возможно лучше (молоточковая система), но мне и так играть неплохо...

                               Автор:         Темерев Максим Алексеевич 06.02.1012

Поиск

Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz

  • Copyright MyCorp © 2024      Сделать бесплатный сайт с uCoz