Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Алгоритм вычисления координат места удара
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Математика и Физика
Димитрий
Приветствую всех.

Есть такая задача. Есть двухсторонний фольгированный стеклотекстолит, на котором размещены пять звуковых микрофонов типа сосна (четыре по углам и одлин в центре, координаты их известны). все сигналы подключены к некому блоку на выходе которого есть возможность измерять относительные времена между этими пяти сигналами. Собственно дальше сам вопрос
1. есть ли быстрый алгоритм вычисления координат точки удара основываясь на этих сигналах.
2. привильно ли здесь использовать звуковые датчики.
3. линейно ли распростроняется волна от места удара до датчиков, одинакова ли скорость распространения например при ударе в центре и ударе с краю.

Проблема в общем в том что все времена измеряются относительно первого сработавшего датчика, я использовал метод перебора для определения координат, но он оказался медленный и не особо точный.
rezident
ИМХО тут нужно исследовать упругий удар, волна от которого распространяется в самом текстолите.
По поводу звуковых датчиков. Если рассматривать распространение звуковой волны (скорость около 330м/с) в воздухе, то чтобы датчики, работающие в звуковом диапазоне (20Гц-20кГц), показали разницу фазы (с разрешением хотя бы 1/20кГц) расстояние между ними должно быть 330м/с*1/20кГц=6,6км. Чтобы осознать это вспомните задержку между вспышкой молнии и раскатами грома во время грозы. Конечно в текстолите скорость волн выше и расстояния будут немного меньше, но все равно использование датчиков звукового диапазона в данном случае неприемлимо.
AlexandrY
Алгоритм там приметивнейший, на методе наименьших квадратов.
Для него чем больше датчиков тем лучше.
Такие системы вовсю делаются гаражными фирмами для пневматических тиров.
Точность на доске 2 на 1 м получают около 5-7 мм. Применяют именно акустические микрофоны.
Пик сигнала находят автокорреляцией.
Димитрий
Цитата(AlexandrY @ Jul 28 2010, 10:18) *
Алгоритм там приметивнейший, на методе наименьших квадратов.
...

Здесь по все видимости как то он не стандартно применяется. В принципе мне нет необходимости строить пряму, а нужно найти координаты приближенные к истенным. Плюс мы знаем только относительное время срабатывания второго датчика, т.е. нам не известен момент времени удара и соответственно первый датчик (тот который сработал первым) у нас выпадает из расчетов.
Если знаете напрвте как можно применить данный метод зная координыта датчиков и время срабатывания остальных относительно первого.
Спасибо
MALLOY2
Цитата
датчиков звукового диапазона в данном случае неприемлимо.

У меня сейчас есть такой тир (какого то Московского гаражного исполнения ) , стит там 4 обычных пьезо пищалки, как для тира работает нормально. Точность еще не измеряли, но думаю через месяц другой до него дойдут руки.
rezident
Цитата(MALLOY2 @ Jul 28 2010, 13:47) *
стит там 4 обычных пьезо пищалки, как для тира работает нормально.

Звуковые пьезоизлучатели имеют резонансную частоту в звуковом диапазоне и параметры у них приводятся для звукового диапазона, но это не означает, что они имеют чувствительность к внешнему воздействию только вблизи резонанса.
AlexandrY, упоминая акустические микрофоны, к сожалению не уточнил их тип. Если конденсаторного типа (электретный), то вполне можно. А вот электродинамические или угольные навряд ли не подойдут.
Я в предыдущем своем сообщении не совсем правильные выводы сделал. В поставленной задаче не нужно регистрировать объект, сравнимый с длиной волны, а нужно лишь разницу фаз определять, поэтому расстояния в км ни при чем. Извиняюсь, если я этим ввел топикстартера в заблуждение.
Tanya
Цитата(Димитрий @ Jul 28 2010, 08:55) *
Приветствую всех.
Проблема в общем в том что все времена измеряются относительно первого сработавшего датчика, я использовал метод перебора для определения координат, но он оказался медленный и не особо точный.

Геометрическое место точек, абсолютное значение разности расстояний от двух точек до точек множества константа - гипербола.
Вы знаете разность времен для двух микрофонов. Эта разность пропорциональна разности расстояний. Можно построить для каждой пары микрофонов гиперболу. Их пересечения дадут гипотетические места удара. Потом усреднить - найти центр масс. Получится одна точка. При усреднении нужно (можно) учитывать веса точек. Для определения точек нужно анализировать погрешность, что не так просто...
blackfin
Цитата(Tanya @ Jul 28 2010, 13:16) *
Можно построить для каждой пары микрофонов гиперболу.

А как учесть звуковую волну отраженную от краев пластины? wink.gif
Tanya
Цитата(blackfin @ Jul 28 2010, 13:30) *
А как учесть звуковую волну отраженную от краев пластины? wink.gif

Никак, если сделать амплитудный дискриминатор. Иначе получатся зеркальные "источники". Много-много...
yakub_EZ
Вам станет не так одиноко после запроса в гугле "электронная мишень". Выпускают их многие, посмотрев их описания, например http://antaristp.com/pdf/boev_600x600.pdf можно нашпионить их принципов на своё устройство.
Только надо ли вам делать это, если уже есть отлаженные системы со своим ПО и проработанными "багами" ?
Лично знаю инженера, который лет десять назад участвовал в разработке подобного для спецслужб. Только там на экран проецировали фильм и по человечкам надо было стрелять. Датчики, кажется, были пъезо
Димитрий
Цитата(Tanya @ Jul 28 2010, 13:16) *
Геометрическое место точек, абсолютное значение разности расстояний от двух точек до точек множества константа - гипербола.
Вы знаете разность времен для двух микрофонов. Эта разность пропорциональна разности расстояний. Можно построить для каждой пары микрофонов гиперболу. Их пересечения дадут гипотетические места удара. Потом усреднить - найти центр масс. Получится одна точка. При усреднении нужно (можно) учитывать веса точек. Для определения точек нужно анализировать погрешность, что не так просто...


на рисунке показан схематически расположение датчиков и теоретическое распространение волн.
1,2,3,4,5 - места установки микрофонов
r1, r2, r3, r4, r5 - истинное время(растояние в данном случае предполагается линейно времени и не учитываются времена задержек вносимых схемой и самими датчиками)
r1`, r2`, r3`, r4` - времена которые мы можем определить используя устройство, отражение не учитывается (оно блокируется самим устройством, при этом полагая что прямой сигнал быстрее достигнет датчика чем отраженный)

Я правильно понял что вы предлагаете построить гиперболы для точек 1-2, 1-3, 1-4, 1-5; 2-3, 2-4, 2-5; 3-4, 3-5; 4-5. но их пересечение не как не даст место удара, или я не правильно понял какие гиперболы строить?

В общем то здесь вся проблема в том что не известно растояние r5, было бы оно известно вопросов в принципе то и не возник.
Tanya
Цитата(Димитрий @ Jul 28 2010, 19:13) *
Я правильно понял что вы предлагаете построить гиперболы для точек 1-2, 1-3, 1-4, 1-5; 2-3, 2-4, 2-5; 3-4, 3-5; 4-5. но их пересечение не как не даст место удара, или я не правильно понял какие гиперболы строить?

Рассмотрим прямую, на которой расположены три датчика. По ним мы не сможем определить с какой стороны от прямой произошел удар. Поэтому часть пересечений лишняя. Какая - узнаем, когда рассмотрим перпендикулярную прямую. А сколько строить гипербол... может, и не все...
e-serg
Такой тир кажись в журнале радио был описан ~ 70-80е годы. мишень стальная пластина, сенсоры четыре пьезоэлемента по сторонам пластины.
все устройсво на дискретной логике. алгорим: датчики образуют пары, пока сработал только один сенсор пары счетчик считает. два сработавших счет остановлен. направление по первому сработавшему, чем больше отклонение от центра тем больше насчитал. калибровался частотой опорного генератора.
MALLOY2
Вот есть открытый проект нечто похожего

http://instruct1.cit.cornell.edu/courses/e...bb226/index.htm
Solitonuz
Цитата(rezident @ Jul 28 2010, 10:02) *
ИМХО тут нужно исследовать упругий удар, волна от которого распространяется в самом текстолите.
По поводу звуковых датчиков. Если рассматривать распространение звуковой волны (скорость около 330м/с) в воздухе, то чтобы датчики, работающие в звуковом диапазоне (20Гц-20кГц), показали разницу фазы (с разрешением хотя бы 1/20кГц) расстояние между ними должно быть 330м/с*1/20кГц=6,6км. Чтобы осознать это вспомните задержку между вспышкой молнии и раскатами грома во время грозы. Конечно в текстолите скорость волн выше и расстояния будут немного меньше, но все равно использование датчиков звукового диапазона в данном случае неприемлимо.

Неправильно!
Для определения разности координат звукового источника например в один сантиметр необходимо иметь тактовую частоту съема информации в 33кГц. (330/0,01). Работать по фронту звукового импульса. Подходят любые звуковые датчики (пъезо, электромагнитные, конденсаторные, и т.д.) , определяющим параметром является: максимальная скорость нарастания фронта.
apofugei
В журнале радио (год не помню, лет 10-20) встречал статью об электронном тире для духового ружья. Мишень состоит из стальной плиты 20мм толщиной*500мм*500мм ширина, длина и электронного блока (по моему 155 или 564 серия). По торцам стоят пьезокристаллы и ни чего не излучают, тупо принимают импульс приходящий от пули, далее счетчики задержки и простой вычислитель, по разности времени (3 шт, один опорный импульс - 1ый пришедший импульс) определяет координаты. Зная скорость волны (в данном случае продольная - по моему так, 6000мм/мкс) можно время перевести в длину. Там очень хорошо описан алгоритм измерения координат и реализация изделия. Советую найти и прочесть.

Не советую делать на измерение звука, будет капризна в настройке и малая точность измерения координат - все решает длина волны, чем она меньше тем точность выше. Советую стальную пластину там точность выше, причем на 2 порядка. И самое главное есть такое понятие ближняя и дальняя зона излучения (Френеля и Фраунтгофера). При работе в ближней зоне сигнал от источника излучения по координате состоит из сплошных пиков и провалов (амплитуда отклика флуктуирует от координаты). При работе в дальней зоне затухание без флуктуаций равномерное (хоть и по экспоненте). При работе со звуком ты упираешься в ближнюю зону и это кирдык, работая со сталью (меряя координаты в стали) ты уходишь в дальнею зону.
Obsolete
Цитата(Solitonuz @ Aug 28 2010, 15:07) *
Неправильно!
Для определения разности координат звукового источника например в один сантиметр необходимо иметь тактовую частоту съема информации в 33кГц. (330/0,01). Работать по фронту звукового импульса. Подходят любые звуковые датчики (пъезо, электромагнитные, конденсаторные, и т.д.) , определяющим параметром является: максимальная скорость нарастания фронта.

При соответствующей цифровой обработке, а именно интерполяции и вычислении взаимнокорреляционной функции, вполне возможно получить ошибку определения координат менее 1 мм даже при частоте дискретизации 20 кГц и менее. Собственно, ошибка не зависит от частоты семплирования, а определяется внешними шумами в помещении и помехами от многолучевого распространения (отражения от краев пластины). Но это уже жесткая ЦОС порядка сотен MIPS.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.