roboforum.ru

Технический форум по робототехнике.
Текущее время: 30 ноя 2024, 15:13

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 142 ]  На страницу Пред.  1 ... 4, 5, 6, 7, 8, 9, 10  След.
Автор Сообщение
 Заголовок сообщения: Математика определения источника звука[RoboBus, звук]
СообщениеДобавлено: 14 май 2009, 15:00 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
Тема выделена оттуда: Проект звукового модуля под шину RoboBus.
<Digit>


Внимание!
Правила темы:
Все сообщения, отклоняющиеся от математического направления в общие принципы и прочие сопутствующие обсуждения считаются оффтопиком, т.е. ЗАПРЕЩЕНЫ!


Кто шарит в математике, помогите плиз

Вложение:
micro.png
micro.png [ 7.96 КиБ | Просмотров: 25067 ]


Есть 3 точи расположенных на окружности заданного радиуса LaTeX: R = \left|O-B\right| через 120°. Есть некая точка LaTeX: X, координаты которой неизвестны. A,B,C - это микрофоны, X - источник звука. Считаем, что микрофоны и источник звука лежат в одной плоскости (горизонтальной). Известны LaTeX: \left|X-B\right| - \left|X-A\right| и LaTeX: \left|X-B\right| - \left|X-C\right|.
  1. Надо найти LaTeX: \angle XOB и LaTeX: \left|X-O\right|
  2. Если перейти из плоскости в пространство, и допустить, что источник звука может находиться вне плоскости микрофонов, то будет ли формула из п.1 справедлива для LaTeX: \angle X'OB и LaTeX: \left|X'-O\right|, где LaTeX: X' - проекция точки LaTeX: X на плоскость микрофонов.
  3. Верно ли, что 3 микрофонов недостаточно, чтобы определить не только LaTeX: \angle X'OB (LaTeX: \angle XOB), но и угол возвышения источника звука? Похоже что это верно ...

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Последний раз редактировалось Digit 15 май 2009, 16:45, всего редактировалось 2 раз(а).
дорисовал правила этой темы


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Математика определения источника звука[RoboBus, звук]
СообщениеДобавлено: 16 май 2009, 19:34 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
Все уже придумано, ничего нового не придумать.

Я тут провел расчеты, заложил ограничения для помещения (расстояние до 10м, высота до 2.5м), получается очень большой диапазон решений. Из всего я делаю вывод : с 3 микрофонами имеет смысл только пытаться оценить направление с точностью +-30 градусов без учета высоты, гораздо проще и быстрее, а точность практически такая и получается.

Достаточно точно аналитически можно оценить направление только если известно на какой высоте расположен источник звука.

Подумаю над добавлением еще одного канала в звуковой модуль.

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Математика определения источника звука[RoboBus, звук]
СообщениеДобавлено: 16 май 2009, 19:37 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Очень большой диапазон решений - это +/- сколько градусов от центра робота?
Неужели вся хитровыдуманная аналитика не даёт улучшения решения хотя-бы до +/- 10 градусов?

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Математика определения источника звука[RoboBus, звук]
СообщениеДобавлено: 16 май 2009, 22:22 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
Чото я поленился сразу в градусах посчитать, смотрел на координаты. Посчитал в градусах, в общем не так уж и плохо получается, с большой вероятностью укладывается в +- 6 градусов :
Вложение:
Комментарий к файлу: Гистограмма вероятности ошибки, сделана по результатам 1000000 тестов
Screenshot-test - OpenOffice.org Calc -1.png
Screenshot-test - OpenOffice.org Calc -1.png [ 9.96 КиБ | Просмотров: 2004 ]

Большие ошибки возникают, когда угол между вектором направления и одной из осей X Y мал. Думаю можно будет избежать и таких ошибок, поменяв местами эти оси - но пока неясно как отловить такую ситуацию. Микрофоны расположены в углах равностороннего равнобедренного прямоугольного треугольника, прямой угол в начале координат.

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Математика определения источника звука[RoboBus, звук]
СообщениеДобавлено: 17 май 2009, 00:27 
Не в сети
Аватара пользователя

Зарегистрирован: 18 апр 2009, 22:18
Сообщения: 10668
еще чем ближе микрофоны будут, тем менее точно. удалять тоже в пределах разумного :oops: ну эт вы и так знаете, навсякий просто напоминаю.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Математика определения источника звука[RoboBus, звук]
СообщениеДобавлено: 17 май 2009, 04:03 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
На самом деле точность больше зависит от скорости АЦП, чем от расстояния между микрофонами.

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Математика определения источника звука[RoboBus, звук]
СообщениеДобавлено: 17 май 2009, 08:52 
Не в сети
Аватара пользователя

Зарегистрирован: 15 сен 2007, 13:03
Сообщения: 6338
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович
blindman, а что за трава дает равносторонние прямоугольные треугольники?

_________________
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Математика определения источника звука[RoboBus, звук]
СообщениеДобавлено: 17 май 2009, 10:35 
Не в сети

Зарегистрирован: 17 апр 2009, 15:09
Сообщения: 987
Откуда: Rostov-Don
Цитата:
точность больше зависит от скорости АЦП, чем от расстояния между микрофонами.

попсовые МК с оверклоком дают 200ksps, без потери качества.
Ловили импульс по фронту или произвольный звуковой сигнал?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Математика определения источника звука[RoboBus, звук]
СообщениеДобавлено: 17 май 2009, 11:53 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
Duhas писал(а):
blindman, а что за трава дает равносторонние прямоугольные треугольники?

Если до 5 часов уравнения решать, и не такое появится, причем без всякой травы :D

contr писал(а):
попсовые МК с оверклоком дают 200ksps, без потери качества.
Ловили импульс по фронту или произвольный звуковой сигнал?

С учетом времени переключения каналов, у меня будет думаю порядка 80ksps, хотя может и меньше, если точности АЦП на максимальной частоте не хватит. Сигнал - произвольный звук.

Добавлено спустя 1 час 38 секунд:
blindman писал(а):
Большие ошибки возникают, когда угол между вектором направления и одной из осей X Y мал. Думаю можно будет избежать и таких ошибок, поменяв местами эти оси - но пока неясно как отловить такую ситуацию.

Критерий оказывается очень простой - абсолютное значение разности расстояний до источника звука близко к расстоянию между микрофонами.

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Математика определения источника звука[RoboBus, звук]
СообщениеДобавлено: 17 май 2009, 13:09 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Duhas писал(а):
blindman, а что за трава дает равносторонние прямоугольные треугольники?

Не знаю что это за трава, но её первым её курнул еще Лобачевский :crazy:

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Математика определения источника звука[RoboBus, звук]
СообщениеДобавлено: 17 май 2009, 15:34 
Не в сети

Зарегистрирован: 17 апр 2009, 15:09
Сообщения: 987
Откуда: Rostov-Don
Цитата:
Сигнал - произвольный звук.

Спасибо! Теперь дошло, что сигнал может быть случайным. Алгоритм, видимо, такой:
два замера по любому микрофону – фронт/тыл,
разность в уровнях по каналам –углы на источник.

Если подрезать ВЧ составляющую звука, то избавимся от проблем связанных со скоростью оцифровки и точность станет выше.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Математика определения источника звука[RoboBus, звук]
СообщениеДобавлено: 17 май 2009, 15:59 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
При чем тут разность уровней? Уровень сигнала мало влияет на результат, учитывается только сдвиг во времени.

Смысла специально убирать ВЧ не вижу, снижение частоты сэмплирования само приведет к срезу ВЧ

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Математика определения источника звука[RoboBus, звук]
СообщениеДобавлено: 17 май 2009, 16:16 
Не в сети

Зарегистрирован: 17 апр 2009, 15:09
Сообщения: 987
Откуда: Rostov-Don
Уровень как раз и является параметром времени. Для нарастающего минимальный уровень будет на микрофоне, который ближе к источнику.
Измерить мы должны максимально быстро, т.е. именно в пределах полупериода сигнала. ВЧ составляющие попавшие только в один из каналов уродуют картинку.
А просто измерение среднего уровня вообще ничего не дает, поскольку затухание звука при нашей базе в 5..10см ничтожно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Математика определения источника звука[RoboBus, звук]
СообщениеДобавлено: 17 май 2009, 16:23 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
Для непрерывного сигнала уровень ни о чем не скажет. Ключевое понятие метода определения задержки - взаимная корреляция.

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Математика определения источника звука[RoboBus, звук]
СообщениеДобавлено: 17 май 2009, 16:32 
Не в сети

Зарегистрирован: 17 апр 2009, 15:09
Сообщения: 987
Откуда: Rostov-Don
Если сигнал периодический, то его действительно можно уровню засечь. Фаза прихода, а значит и уровень на разных каналах будет разный. Так древние УЗ детекторы движения работали, да и автомобильные "Мангусты".
Я случайным сигналом считаю речь или музыку.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Математика определения источника звука[RoboBus, звук]
СообщениеДобавлено: 17 май 2009, 16:38 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
contr писал(а):
Я случайным сигналом считаю речь или музыку.

Я тоже. А еще стуки, звоны бряки и прочая. И что? При чем тут уровень, что бы под этим ни понималось?

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 142 ]  На страницу Пред.  1 ... 4, 5, 6, 7, 8, 9, 10  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO