Система навигации с точностью +-2см

Обсуждаем рождающиеся мысли и результаты экспериментов.

Re: Система навигации с точностью +-2см

Сообщение Marvelmind » 08 апр 2015, 11:39

sned писал(а):У вас здесь http://marvelmind.com/pics/_IMG_6630_fu ... dgehog.jpg, кажется мобильный маяк, с одной "пищалкой" вместо четырех.Это просто опытный вариант или тоже возможно серийная плата?


Оба варианта мы выпускаем небольшими сериями. Маленький - до 10 метров в ультразвуке. Большой - до 50 метров в ультразвуке. По радио они одинаковые - до 100м в офисе.
Маленький и меньше в 2 раза по размеру и дешевле большого - 69 USD вместо 99 USD.
Аватара пользователя
Marvelmind
 
Сообщения: 29
Зарегистрирован: 29 мар 2015, 19:54
Откуда: Москва

Re: Система навигации с точностью +-2см

Сообщение sned » 08 апр 2015, 14:31

На "пищалке" металлический стаканчик вроде для получения узкой диаграммы направленности.Не пробовали его срезать для "расширения" излучения?
sned
 
Сообщения: 303
Зарегистрирован: 08 апр 2013, 08:09
Откуда: Екатеринбург
ФИО: Сергей

Re: Система навигации с точностью +-2см

Сообщение Marvelmind » 08 апр 2015, 15:09

sned писал(а):На "пищалке" металлический стаканчик вроде для получения узкой диаграммы направленности.Не пробовали его срезать для "расширения" излучения?


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

Кроме того, стаканчик, к сожалению, уменьшая ширину лепестка диаграммы, служит основному - защите сенсора от механического воздействие. Поэтому стаканчик нам, конечно, нужен.
Аватара пользователя
Marvelmind
 
Сообщения: 29
Зарегистрирован: 29 мар 2015, 19:54
Откуда: Москва

Re: Система навигации с точностью +-2см

Сообщение gandalvab » 02 дек 2015, 09:42

Ну просто на уровне идеи.
Ставим на робота 4 пьезоизлучателя(можно надергать из тех же hc-sr04) направленные в разные стороны. Фигачим пачки 40килогерц скажем с частотой 10 герц. На стены вешаем 3 приемника(в каждом приемнике по несколько пьезоприемников из тех же hc-sr04 и операционные усилители с микрухой(к примеру atmega8)). Как только приемник примет пачку он поднимает ногу в 1-ку например на 20мс. Все три приемника мы подключаем к одной микрухе к примеру atmega328. На 328-й мы ловим первую поднявшуюся ножку, затем начинаем считать время до следующих поднявшихся ножек. В итоге мы знаем 2 временных разницы прохождения звука до 3-х датчиков.

Что мы имеем
x1,y1,z1 - координаты датчика 1
x2,y2,z2 - координаты датчика 2
x3,y3,z3 - координаты датчика 3
zr - координата робота по высоте.
d1,d2 - разность расстояний от первого сработавшего датчика до 2-го и 3-го
Что нужно вычислить
d - расстояние до первого сработавшего датчика
xr,yr - координаты робота
После того как мега 328 вычислит координаты робота она может по сети отправить udp широковещательный пакет о текущих координатах или по http только тогда надо знать адрес и порт робота.
Мне кажется что система должна работать, поправьте если я не прав.
gandalvab
 
Сообщения: 13
Зарегистрирован: 12 апр 2013, 06:01
прог. языки: C# C

Re: Система навигации с точностью +-2см

Сообщение Scorpio » 02 дек 2015, 18:07

Примерно на таком принципе, только в 2D, работают электронные мишени. У них по углам установлены 4 пьезомикрофона.
Аватара пользователя
Scorpio
 
Сообщения: 2681
Зарегистрирован: 30 сен 2008, 18:49
Откуда: Где-то в Латинской Америке

Re: Система навигации с точностью +-2см

Сообщение gandalvab » 03 дек 2015, 14:05

Вот нашел, кто-то уже реализовал такую систему: тут
Только можно было сделать намного проще и с поддержкой нормальной сети LAN на 328-й меге. Плюсом легко можно сделать в такой системе поддержку нескольких роботов. Первый робот шлет по сети пакет мол давай определим мои координаты, система отвечает я готова или занята. Робот отправляет ультразвук, система его обрабатывает и вычисляет координаты, потом координаты отправляются роботу. Если скажем по квартире катается несколько роботов то каждому присваиваем уникальный идентификатор и при запросе они его указывают а система с координатами шлет и идентификатор того кому этот пакет.
gandalvab
 
Сообщения: 13
Зарегистрирован: 12 апр 2013, 06:01
прог. языки: C# C

Re: Система навигации с точностью +-2см

Сообщение Marvelmind » 03 дек 2015, 17:39

День добрый, коллеги,

BR,
gandalvab писал(а):Ну просто на уровне идеи.
Ставим на робота 4 пьезоизлучателя(можно надергать из тех же hc-sr04) направленные в разные стороны. Фигачим пачки 40килогерц скажем с частотой 10 герц. На стены вешаем 3 приемника(в каждом приемнике по несколько пьезоприемников из тех же hc-sr04 и операционные усилители с микрухой(к примеру atmega8)). Как только приемник примет пачку он поднимает ногу в 1-ку например на 20мс. Все три приемника мы подключаем к одной микрухе к примеру atmega328. На 328-й мы ловим первую поднявшуюся ножку, затем начинаем считать время до следующих поднявшихся ножек. В итоге мы знаем 2 временных разницы прохождения звука до 3-х датчиков.

Что мы имеем
x1,y1,z1 - координаты датчика 1
x2,y2,z2 - координаты датчика 2
x3,y3,z3 - координаты датчика 3
zr - координата робота по высоте.
d1,d2 - разность расстояний от первого сработавшего датчика до 2-го и 3-го
Что нужно вычислить
d - расстояние до первого сработавшего датчика
xr,yr - координаты робота
После того как мега 328 вычислит координаты робота она может по сети отправить udp широковещательный пакет о текущих координатах или по http только тогда надо знать адрес и порт робота.
Мне кажется что система должна работать, поправьте если я не прав.


Да, примерно, так мы и работаем.
Пара вопросов:
- А вы уже знаете координаты маяков на стенах?

Добавлено спустя 3 минуты 7 секунд:
gandalvab писал(а):Вот нашел, кто-то уже реализовал такую систему: тут
Только можно было сделать намного проще и с поддержкой нормальной сети LAN на 328-й меге. Плюсом легко можно сделать в такой системе поддержку нескольких роботов. Первый робот шлет по сети пакет мол давай определим мои координаты, система отвечает я готова или занята. Робот отправляет ультразвук, система его обрабатывает и вычисляет координаты, потом координаты отправляются роботу. Если скажем по квартире катается несколько роботов то каждому присваиваем уникальный идентификатор и при запросе они его указывают а система с координатами шлет и идентификатор того кому этот пакет.



Да, и так тоже мы делаем. Time division multiple access.

Из ссылки: Единственным способом устранения этого недостатка является увеличение расстояния между Приёмниками — при его увеличении в 4 раза, то есть до 2 м, область разброса уменьшится более чем в 4 раза. Проведем расчеты:
Именно поэтому мы отказались от множественных датчиков на роботе - расстояние между ними малое. И, даже, малые погрешности измерения расстояния приводили к относительно большим погрешностям вычисления положения. Чем больше база между приемниками или передатчиками - сенсорами - тем выше точность.

На точность влияет, конечно, очень много показателей.

Добавлено спустя 2 минуты 16 секунд:
Scorpio писал(а):Примерно на таком принципе, только в 2D, работают электронные мишени. У них по углам установлены 4 пьезомикрофона.


Здесь достигается высокая точность за счет того, что высчитывается положение внутри фигуры, описанной микрофонами. Если бы нужно было бы измерять далеко мне поля мишени, точность бы падала очень быстро.
Аватара пользователя
Marvelmind
 
Сообщения: 29
Зарегистрирован: 29 мар 2015, 19:54
Откуда: Москва

Пред.

Вернуться в Идеи

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

Сейчас этот форум просматривают: Bing [Bot], Yandex [Bot] и гости: 19