реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> взаимное положение объектов в пространстве, элементная база и алгоритмы
Maverick
сообщение May 19 2016, 09:15
Сообщение #1


я только учусь...
******

Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839



Например есть в руках находится два предмета.
Как узнать что предмет находится слева/справа/снизу/сверху/сзади/спереди от другого предмета.
В каждый предмет заложены гироскоп и акселерометр и какое то передающее устройство для связи с ПК (не важно).
Возможно не хватает какого-то датчика...
Постоянно контролировать значения с датчиков не хочется, зная начальное положение. Хочется работать в определенные моменты времени.
Может есть какие то готовые варианты решения (не дорогие) ?
Может алгоритмы какие-то существуют?


--------------------
If it doesn't work in simulation, it won't work on the board.

"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
Go to the top of the page
 
+Quote Post
_pv
сообщение May 19 2016, 10:48
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954



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

можно посмотреть в сторону света/радио/ультразвука: времяпролётного, фазового с двумя приёмниками или просто по диаграмме направленности и RSSI, но не зная требуемых размеров, точностей, минимальных/максимальных расстояний и времени измерений сложно что-то конкретное посоветовать
Go to the top of the page
 
+Quote Post
Maverick
сообщение May 19 2016, 10:51
Сообщение #3


я только учусь...
******

Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839



Цитата(_pv @ May 19 2016, 13:48) *
любые гироскопы/акселерометры измеряют не координаты, а производные (первые и вторые) от них, и без периодической калибровки по абсолютному положению, шумы и ошибки будут копиться при интегрировании и рано или поздно показания расползуться на столько что станут бесполезными.

можно посмотреть в сторону света/радио/ультразвука: времяпролётного, фазового с двумя приёмниками или просто по диаграмме направленности и RSSI, но не зная требуемых размеров, точностей, минимальных/максимальных расстояний и времени измерений сложно что-то конкретное посоветовать

максимальное удаление предметов друг от друга 0 (соприкосновение между собой) - 1 метр
точность 1см или меньше
Размеры предметов от 3*3*3 см до 10*10*10 см или плоские с высотой 1-3 см
Предметов может быть до 9 штук.

В первом посте это был самый простой вариант.


--------------------
If it doesn't work in simulation, it won't work on the board.

"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
Go to the top of the page
 
+Quote Post
Serhiy_UA
сообщение May 19 2016, 11:02
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 721
Регистрация: 23-10-08
Из: next to Odessa
Пользователь №: 41 112



Цитата(Maverick @ May 19 2016, 13:51) *
максимальное удаление предметов друг от друга 1-2 метра
точность 1см или меньше

Возможно, поможет...
http://electronix.ru/forum/index.php?showt...132866&st=0
По мне, для таких условий, с ультразвуком было бы попроще.
Go to the top of the page
 
+Quote Post
_pv
сообщение May 19 2016, 11:47
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954



тогда пожалуй ультразвуком проще всего, утразвуковой gps, по углам расставить пищалки в предметах - приёмники.
можно даже немного упростить задачу добавив синхронизацию по радио (какой-нибудь nrf24l01 100-200нс обеспечит, да и связь с внешним миром всё равно нужна) чтобы не по разности времени распространения как в gps, а прямо измерять расстояния от излучателей по предметов.
либо наоборот в предметы пищалки, которые каждая на своей частоте периодически коротенько пищит и несколько синхронизированных приёмников микрофонов по углам, тогда в самом предмете никаких мозгов кроме пищалки и 555 таймера.
но вот насчёт 1см, особенно если предметы перекрывают друг друга и/или еще кто-нибудь встанет между предметом и приёмником, могут быть сложности.
Go to the top of the page
 
+Quote Post
Maverick
сообщение May 19 2016, 12:44
Сообщение #6


я только учусь...
******

Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839



Цитата(_pv @ May 19 2016, 14:47) *
тогда пожалуй ультразвуком проще всего, утразвуковой gps, по углам расставить пищалки в предметах - приёмники.
можно даже немного упростить задачу добавив синхронизацию по радио (какой-нибудь nrf24l01 100-200нс обеспечит, да и связь с внешним миром всё равно нужна) чтобы не по разности времени распространения как в gps, а прямо измерять расстояния от излучателей по предметов.
либо наоборот в предметы пищалки, которые каждая на своей частоте периодически коротенько пищит и несколько синхронизированных приёмников микрофонов по углам, тогда в самом предмете никаких мозгов кроме пищалки и 555 таймера.
но вот насчёт 1см, особенно если предметы перекрывают друг друга и/или еще кто-нибудь встанет между предметом и приёмником, могут быть сложности.

может посоветуете какие-то пищалки?


--------------------
If it doesn't work in simulation, it won't work on the board.

"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
Go to the top of the page
 
+Quote Post
Serhiy_UA
сообщение May 19 2016, 13:07
Сообщение #7


Знающий
****

Группа: Свой
Сообщений: 721
Регистрация: 23-10-08
Из: next to Odessa
Пользователь №: 41 112



Цитата(Maverick @ May 19 2016, 16:44) *
может посоветуете какие-то пищалки?

HC-SR04 с разбором:
http://robocraft.ru/blog/electronics/772.html
http://www.kosmodrom.com.ua/prodlist.php?name=distancesensor
Go to the top of the page
 
+Quote Post
yes
сообщение May 19 2016, 13:15
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 2 198
Регистрация: 23-12-04
Пользователь №: 1 640



по-моему, пищалки лучше в предметах. для внешних приемиков проще время синхронизовать, ну и вообще проще уравнения
Go to the top of the page
 
+Quote Post
Maverick
сообщение May 19 2016, 13:21
Сообщение #9


я только учусь...
******

Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839



Цитата(yes @ May 19 2016, 16:15) *
по-моему, пищалки лучше в предметах. для внешних приемиков проще время синхронизовать, ну и вообще проще уравнения

допустим их разложили на полу в один ряд (прямая линия) или в несколько рядов (образуя прямоугольник/квадрат)
как узнать их порядок?

по первой ссылке:
Цитата
— это я немного поводил рукой перед сенсором.
Последние значения показывают неспособность сенсора определить расстояние до объекта.

sm.gif


--------------------
If it doesn't work in simulation, it won't work on the board.

"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
Go to the top of the page
 
+Quote Post
_pv
сообщение May 19 2016, 13:32
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954



по времени распространения звука известно расстояние от объекта до каждого неподвижного приёмника с заранее известными координатами.
если построить сферу с приёмником в центре и намеренным расстоянием, то две таких сферы от двух разных приёмников в пересечении дадут окружность.
а если приёмников 3, то пересечение еще одной сферы с полученной окружностью - две точки, если приёмников 4 и больше то точка пересечения будет одна - искомое положение предмета.

Цитата
по первой ссылке:
Цитата
— это я немного поводил рукой перед сенсором.
Последние значения показывают неспособность сенсора определить расстояние до объекта.

HC-SR04 слишком направленные, надо что-нибудь вроде http://www.aliexpress.com/item/Hot-sale-El...2321322898.html только не такое китайское, чтобы хоть какой-нибудь даташит с ачх был.

ну и собственно если загородить чем-нибудь прямо около источника или приёмника требуемый 1см точности можно и не получить.
Go to the top of the page
 
+Quote Post
Maverick
сообщение May 19 2016, 13:40
Сообщение #11


я только учусь...
******

Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839



Цитата(_pv @ May 19 2016, 16:32) *
по времени распространения звука известно расстояние от объекта до каждого неподвижного приёмника с заранее известными координатами.
если построить сферу с приёмником в центре и намеренным расстоянием, то две таких сферы от двух разных приёмников в пересечении дадут окружность.
а если приёмников 3, то пересечение еще одной сферы с полученной окружностью - две точки, если приёмников 4 и больше то точка пересечения будет одна - искомое положение предмета.


HC-SR04 слишком направленные, надо что-нибудь вроде http://www.aliexpress.com/item/Hot-sale-El...2321322898.html только не такое китайское, чтобы хоть какой-нибудь даташит с ачх был.

Уравнений выходит многовато... Проще никак?
Мне надо знать взаимное положение 4 (максимум 9) предметов друг относительно друга, чтобы правильно управляющее устройство могло им передать данные для выполнения.

Например, изначально предметы размещались в ряд так: 1 2 3 4
Потом их переставили: 3 2 1 4
Или расставили в 2 ряда:
3 1
2 4

Цифрами обозначены предметы, чтобы не рисовать, показал схематически.
Как мне узнать где какой предмет?


--------------------
If it doesn't work in simulation, it won't work on the board.

"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
Go to the top of the page
 
+Quote Post
yes
сообщение May 19 2016, 14:23
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 2 198
Регистрация: 23-12-04
Пользователь №: 1 640



достаточно 4 приемника (в вершинах тетраэдра лучше всего)

каждый предмет должен пищать уникальным образом и иметь некий таймштамп/старт (то есть просто частота не годится) - ну я бы предложил что-то типа М-последовательностей, кодов Голда. но нужно смотреть, как модулировать пищалку - они все-таки резонансные и все-такое. как вариант лчм, с разными старт-стоп-скоростью (но тоже плохо из-за резонансов) - короче говоря, чтобы автокорреляция и взаимокорреляция были _хорошими_

так как расстояние небольшое, то задержка часть последовательности, целое число 0 (то есть все сильно проще, чем в ЖПСах)

ну и получается 4 уравнения для каждого предмета, для 4х неизвестных (x,y,z и некое t, относительно которого измерялись задержки максимумов корреляционных функций - ну если можем как-то синхронизировать старт передачи с предметов со временем приемника - то t не нужно)
а если все в плоскости - то 3

как-то так, по-моему


Go to the top of the page
 
+Quote Post
_pv
сообщение May 19 2016, 14:56
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954



Цитата(Maverick @ May 19 2016, 19:40) *
Уравнений выходит многовато... Проще никак?
Мне надо знать взаимное положение 4 (максимум 9) предметов друг относительно друга, чтобы правильно управляющее устройство могло им передать данные для выполнения.
...
Как мне узнать где какой предмет?

ну если это много уравнений, то не знаю.
Раскрасте их разными цветами (либо светодиоды с разной частотой моргающие) и повесте видеокамеру под потолок.
Go to the top of the page
 
+Quote Post
Maverick
сообщение May 19 2016, 20:04
Сообщение #14


я только учусь...
******

Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839




Камера не желательна.
Идея понятна.
Буду разбираться далее.
Спасибо за подсказку/помощь.


--------------------
If it doesn't work in simulation, it won't work on the board.

"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
Go to the top of the page
 
+Quote Post
lennen
сообщение May 25 2016, 16:02
Сообщение #15


Местный
***

Группа: Свой
Сообщений: 227
Регистрация: 1-10-15
Из: Москва
Пользователь №: 88 647



Расскажите о задаче подробнее. Вообще это обычная инерциальная навигация. Вы подключили компьютер в некоторый момент времени. Допустим, что в этот момент времени объекты с акселерометрами сведены в одну точку, от которой начинаем нашу систему координат. Ничто Вам не мешает сами объекты поместить на некоторое расстояние друг от друга, просто Вы должны добавить эти значения в компьютер в качестве корректировочных. Ну и судите сами, если одна деталька переместилась к другой и села на нее, например, то на микроконтроллере это будет выглядеть так, так будто один объект передвинулся относительно точки отчета на 20 см, например. Оказался слева, допустим. Но с учетом корректировки вы увидите на экране, что один объект оказался над другим. И теперь можете перемещать их, как хотите.

Расскажите подробнее, что требуется, потому что можно что-то и поинтереснее придумать...
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 15th June 2025 - 17:37
Рейтинг@Mail.ru


Страница сгенерированна за 0.01478 секунд с 7
ELECTRONIX ©2004-2016