Как не надо делать MIDI-гитары |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
Как не надо делать MIDI-гитары |
![]()
Сообщение
#61
|
|
Сообщений: 0 Регистрация: 13.9.2004 ![]() |
С ходу могу (совершенно безвозмездно, хотя от вознаграждений не откажусь :)) предложить такую идею:
При сканировании струны/лады необходимо не просто считывать состояния замкнуто/разомкнуто но и прецинзионно измерять сопротивления цепи. После окончания цикла сканирования смотреть для каждой струны таблицу со значениями сопротивлений для каждого лада. "Правильным" ладом, при обнаружении одновременно замыкании на несколько ладов, считать лад с меньшим значение сопротивления цепи. Медные проводники, соединяющие лады с контроллером, обладают значительно меньшим сопротивлением, чем стальные струны. ( Ааааа...! пока писал вспомнил про навивку.... Ну будем считать это вариантом для MIDI-балалайки... )
Замерить сопротивление с точностью, необходимой для определения паразитного замыкания через другую струну, не просто, но вполне технически осуществимо. ИМХО во всяком случае проще, чем делать разрезные лады..
ЗЫ Но остаемся без подтяжек и вибрато... Вчера это было бы интересно. Но на данном уровне развития DSP и математики, имхо, тупиковое направление.
|
|
|
|
![]()
Сообщение
#62
|
|
Сообщений: 2 Регистрация: 2.3.2005 ![]() |
Появилась идея, как сделать порожки неразрезными! Но для этого они должны быть сделаны из материала с высоким удельным сопротивлением, но вместе с тем прочного на истирание (вязкого, не хрупкого). Нихром точно не годится - нужно сопротивление каждого порожка хотя бы порядка, наверное, килоома. Либо токопроводящий пластик, либо металлокерамика какая-нибудь. Тогда принцип такой, рисунок там: http://www.user.cityline.ru/~rattus/tryn/news.htm
В проверке участвует порожек и струна. Проверяется, прижата ли конкретная струна на конкретном порожке. Все остальные струны и остальные порожки при этом висят в воздухе, но через барре наша струна через другие струны может оказаться соединена с другими порожками. Вроде бы достаточно проверить разницу напряжений на концах порожка и сравнить с ожидаемой. Первая струна должна давать высокое напряжение на нижнем краю порожка и низкое на верхнем, шестая - наоборот, четвертая - сверху чуть больше, чем снизу (если сканирование идет единицей на струне). Если напряжение попадает на порожек через барре от другой струны, то это условие не выполнится.
|
|
|
![]()
Сообщение
#63
|
|
Сообщений: 0 Регистрация: 16.4.2004 ![]() |
Дурию маетесь. Элементарного матричного сканирования достатчно без всяких извращенческих ладов.
|
|
|
![]()
Сообщение
#64
|
|
Сообщений: 2 Регистрация: 2.3.2005 ![]() |
AZG
Поподробнее пожалуйста. См. весь топик выше.
|
|
|
![]()
Сообщение
#65
|
|
Сообщений: 0 Регистрация: 16.4.2004 ![]() |
сканирование каждой струны (это реально если изолировать на бридже) от лада с максимальным номером до минимального. Например от 24 до 0-го. Получается приоритет ладов, т.е. можно однозначно и быстро сказать какая струна на каком ладе зажата.
Сложнее с бендами и т.п.
|
|
|
![]()
Сообщение
#66
|
|
Сообщений: 4 Регистрация: 23.6.2005 Из: PENZA ![]() |
Народ поди лекций по "Организации ЭВМ" не слушал...Сканирование клавиатуры - типичный случай..
А здесь струны - столбцы, лады - строки.
|
|
|
![]()
Сообщение
#67
|
|
Сообщений: 0 Регистрация: 16.4.2004 ![]() |
Именно! Я и говорю про матрицу приоритетов. НИчего сложного, ПИК справится на раз.
|
|
|
![]()
Сообщение
#68
|
|
Сообщений: 2 Регистрация: 2.3.2005 ![]() |
Представь себе, что зажат аккорд A в варианте, когда малое баррэ на II ладу для 1-4 струн и 1 струна прижата на V ладу. Тогда ВСЕ струны с 1 по 4 имеют прямой электрический контакт с V ладом (через первую и II порожек). И никак ты не определишь, что они на самом деле прижаты на II. Говорю же - читай выше. Или подробно напиши, как именно должно работать сканирование в этом случае.
|
|
|
![]()
Сообщение
#69
|
|
Сообщений: 0 Регистрация: 16.4.2004 ![]() |
Определяется легко. Есть станшинство лада, т.е. начинать сканирование надо с 20-х ладов. Т.е. если система встречает что есть замыкание струны с 15-м ладом, то далее она эту струну более не сканирует и запоминает расположение. Этого достаточно. Что там далее зажато уже никого не интересует.
В чем проблема с пониманием?
Да, струны между собой изолированы. Это сделать в разы легче, чем разрезать лады :)
|
|
|
![]()
Сообщение
#70
|
|
Сообщений: 0 Регистрация: 9.1.2005 ![]() |
Блин за полгода проблема так и не решена... 8-)
Сканируйте по струнам с разнесением по времени.
|
|
|
![]()
Сообщение
#71
|
|
Сообщений: 0 Регистрация: 13.9.2004 ![]() |
Мда.... Пошли по второму кругу. Рисовать людям лень, все сразу представляют схемку клавы, и типа решают задачу... АЛГОРИТМИЧЕСКИ ЗАДАЧУ НЕ РЕШИТЬ! Бедолага boober, уже раз десять пытался объяснить проблему.
2boober. В инете мне уже неоднократно попадались алгоритмы быстрого определения частоты 1-й гармоники сложного сигнала. Для решения своей задачи ("медленный" демодулятор), мне хватило БПФ, но МИДИ-гитара, конечно, не тот случай. Можно для начала присмотреться к демодуляторам DTMF. ИМХО Это более перспективный путь.
|
|
|
![]()
Сообщение
#72
|
|
Сообщений: 4 Регистрация: 23.6.2005 Из: PENZA ![]() |
Извиняюсь за свой наезд по поводу прослушивания лекций....
Да действительно существует проблема сканирования аккордов с баррэшками. Именно из-за барэ при скане на контроллере получится целая область с неопределимыми нотами...
Выход тупой - играть без барэ???
|
|
|
![]()
Сообщение
#73
|
|
![]() Сообщений: 350 Регистрация: 21.6.2004 ![]() |
>Т.е. если система встречает что есть замыкание струны с 15-м ладом, то далее она эту струну более не сканирует и запоминает расположение
С аккордом А с баррэ - сканируем вторую струну от 20х ладов, добираемся до 5го лада - 2я струна через 2й лад и 1ю струну закорочена на 5 лад. Вывод - 2я струна прижата на 5 ладу, дальше не сканируем. А она прижата на 2м ладу. :)
|
|
|
![]()
Сообщение
#74
|
|
Сообщений: 0 Регистрация: 16.4.2004 ![]() |
Я уже сказал - струны между собой изолировать. Остается одна проблема - замыкания через соседние лады. Но это решить существенно проще, чем разрезные лады делать.
|
|
|
![]()
Сообщение
#75
|
|
![]() Сообщений: 350 Регистрация: 21.6.2004 ![]() |
Нет, проблема замыкания через один лад.
Когда баррэ прижато на нижних ладах, а на верхних прижато еще что-то на тех же струнах.
|
|
|
![]()
Сообщение
#76
|
|
![]() Сообщений: 350 Регистрация: 21.6.2004 ![]() |
Струны изолированы только на бридже. С аккордом А 1я и 2я струны замкнуты уже через второй лад, плюс первая замкнута на 5м - значит и 2я тоже замкнута на 5м.
|
|
|
![]()
Сообщение
#77
|
|
Сообщений: 0 Регистрация: 16.4.2004 ![]() |
Я понимаю про что ты говоришь. И уже ответил на этот счет.
|
|
|
![]()
Сообщение
#78
|
|
![]() Сообщений: 350 Регистрация: 21.6.2004 ![]() |
И как решить эту проблему? Изолировать струны друг от друга и при этом не изолировать их от лада - значит, замыкать их через лад. Либо не замыкать струну на лад - тогда ессно нельзя узнать, на каком ладу прижата.
Как решить проблему, оставаясь в рамках стандартных металлических ладов и струн и метода сканирования матрицы?
|
|
|
![]()
Сообщение
#79
|
|
Сообщений: 0 Регистрация: 16.4.2004 ![]() |
я уже сказал - изоляция ладов с обратной стороны. но это не решает проблему двойного прожатия. Надо подумать...
|
|
|
![]()
Сообщение
#80
|
|
Сообщений: 2 Регистрация: 2.3.2005 ![]() |
2msv
Хочется попроще, чтоп тупо, дешево, сердито, но играло :)
2AZG
Очень внимательно жду ответа. Просканируй мне "на пальцах" описанный мной аккорд A.
|
|
|
|
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 30.7.2025, 4:02 |