roboforum.ru

Технический форум по робототехнике.

LPS (Локальная Система Позиционирования)

Правила форума
В этом форуме новые темы не создаются, однако обсуждение допустимо.

Re: LPS (Локальная Система Позиционирования)

boez » 21 янв 2009, 12:29

mandigit писал(а):
Нельзя-же такое под вечер писать :o

На первый взгляд - интересное решение. Если дозавершить описание алгоритма и проверить на нескольких примерах - можно брать в копилку алгоритмов.
Остается так-же неясным, каково будет поведение алгоритма с учетом ошибки измерения.


Да вроде как довольно просто вышло. Да, а ошибки измерения - будут давать ошибки в координатах. Причем совершенно однозначные, так как решение одно. То есть мы будем получать координаты той точки, которая находится от маяков на расстояниях, соответствующих измеренным временам. Единственная проблема - на граничных зонах, когда ошибка приводит к неразрешимой задаче (если такие существуют)

Виталий писал(а):Все бы хорошо, но во-первых d - не одинаковое, а во вторых - неизвестно.


Так d - оно неизвестно строго в соответствии с планом :) У нас 3 уравнения и 3 неизвестных. Решаем, находим. Единственный вопрос - что там за второе решение.

=DeaD= писал(а):D=A1*B2-A2*B1=4*(x1-x2)*(y1-y3)-4*(x1-x3)*(y1-y2) - не ноль, т.к. маяки не на 1 прямой.


Это понятно. Там интереснее что за корни квадратного уравнения.

Re: LPS (Локальная Система Позиционирования)

=DeaD= » 22 янв 2009, 16:38

Выложил в вику оба метода:
[[Определение координат робота по расстояниям до маяков, измеренным с одинаковым отклонением]]

Добавлено спустя 3 минуты:
boez писал(а):
=DeaD= писал(а):D=A1*B2-A2*B1=4*(x1-x2)*(y1-y3)-4*(x1-x3)*(y1-y2) - не ноль, т.к. маяки не на 1 прямой.


Это понятно. Там интереснее что за корни квадратного уравнения.

Я думаю там второй корень - это недопустимое решение при ri<0, мы же понимаем что каждое ri должно быть >0?

Добавлено спустя 1 минуту 58 секунд:
Мы же ведь вместо задачи поиска точки пересечения верхних полуконусов решали задачу пересечения полных конусов, а у них по моим прикидкам еще снизу есть точка пересечения (при отрицательных ri).

Добавлено спустя 8 минут 23 секунды:
PS: Я вот думаю, как бы не получилось, что нет решения среди найденных двух, в котором все ri положительные :unknown:

Re: LPS (Локальная Система Позиционирования)

blindman » 22 янв 2009, 16:53

mandigit писал(а):2Blindman
Предлагаете дополнить модуль приемника еще одним каналом связи для целей первичного ввода информации? Учитывая, что система развертывается однажды - это не видется оправданным.

Я может не до конца понял, я ни разу не математик, но вроде у тебя в системе учитывается ошибка часов. При наличии канала с пренебрежимо малой (или просто известной и достаточно стабильной) задержкой - синхронизация часов не нужна. ИМХО это увеличит точность и скорость измерений.

Re: LPS (Локальная Система Позиционирования)

=DeaD= » 22 янв 2009, 16:56

2blindman: Короче ты предлагаешь маякам звук излучать только по запросу, коим является посылка с робота, например, через ИК, соответствующей команды - так?

Re: LPS (Локальная Система Позиционирования)

blindman » 22 янв 2009, 17:00

Именно так.

Re: LPS (Локальная Система Позиционирования)

mandigit » 22 янв 2009, 20:50

blindman писал(а):Я может не до конца понял, я ни разу не математик, но вроде у тебя в системе учитывается ошибка часов. При наличии канала с пренебрежимо малой (или просто известной и достаточно стабильной) задержкой - синхронизация часов не нужна. ИМХО это увеличит точность и скорость измерений.

Увы, это не уменьшит ошибку :cry: . Отклонение времени между системой передатчиков и приемников за период измерения составляет ничтожную долю от итоговой ошибки. Основная проблема - неточность определения момента прихода импульса - здесь вся собака зарыта.

Re: LPS (Локальная Система Позиционирования)

=DeaD= » 22 янв 2009, 20:59

mandigit писал(а):Увы, это не уменьшит ошибку :cry: . Отклонение времени между системой передатчиков и приемников за период измерения составляет ничтожную долю от итоговой ошибки. Основная проблема - неточность определения момента прихода импульса - здесь вся собака зарыта.

Почему это не уменьшит? По идее лишнее измерение будет - лишняя инфа для статистики.

А товарищи по ссылке, которые 1см точность получили - они как определяют этот момент? :oops:

Re: LPS (Локальная Система Позиционирования)

mandigit » 22 янв 2009, 21:52

=DeaD= писал(а):Почему это не уменьшит? По идее лишнее измерение будет - лишняя инфа для статистики.
А товарищи по ссылке, которые 1см точность получили - они как определяют этот момент? :oops:


А в чем состоит лишнее измерение?

Теоретическая точность может быть очень высокой (если мы умеем правильно измерить приход первого импульса, да еще и фазу сумеем померить) - можно и до мм добраться (правда практически это воплотить - непросто :)

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

Re: LPS (Локальная Система Позиционирования)

=DeaD= » 23 янв 2009, 09:56

mandigit писал(а):А в чем состоит лишнее измерение?

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

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

Ну то есть у этих парней принципиально задачи определения момента прихода импульса с высокой точностью тоже не решены?

Re: LPS (Локальная Система Позиционирования)

mandigit » 23 янв 2009, 11:53

=DeaD= писал(а):В том, что если есть стробирование, тогда информация о расстоянии с 3 маяков получаем при всего 2 неизвестных, а значит у нас появляется проверочное уравнение, которое по идее значительно снижает среднюю ошибку.

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

=DeaD= писал(а):Ну то есть у этих парней принципиально задачи определения момента прихода импульса с высокой точностью тоже не решены?

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

Re: LPS (Локальная Система Позиционирования)

=DeaD= » 23 янв 2009, 12:25

mandigit писал(а):Стробирование уберет (очень условно, поскольку при стробировании мы то-же получим неточность) задачу определения отклонения часов, но поскольку это отклонение одинаково для всех пар приемник-передатчик и представляет из себя отклонение часов (а кварцы в нашем случае обладают точностью выше, чем ошибка измерения строба) за период измерения - мы скорее добавим элемент, потенциально обладающий меньшей точностью.

ИМХО ничего подобного - мы сейчас имеем систему из 3 уравнений с 3 неизвестными, при этом учитывая структуру системы мы получаем решение приблизительно одинаково по всем 3 искомым переменным, я считаю, что если мы сможем одну из переменных вычислить с более высокой точностью (т.е. использование стробирования даст точность времени большую, чем звук успевает проходить за 10см), тогда мы сможем повысить точность двух оставшихся переменных, потому что из 3 уравнений мы сможем даже в самом тупом случае вычислить 3 пары таких точек и взять от них среднюю, а значит повысим точность искомых координат (при накоплении статистики погрешность имеет свойство снижаться).

Re: LPS (Локальная Система Позиционирования)

mandigit » 23 янв 2009, 13:12

=DeaD= писал(а):ИМХО ничего подобного - мы сейчас имеем систему из 3 уравнений с 3 неизвестными, при этом учитывая структуру системы мы получаем решение приблизительно одинаково по всем 3 искомым переменным, я считаю, что если мы сможем одну из переменных вычислить с более высокой точностью (т.е. использование стробирования даст точность времени большую, чем звук успевает проходить за 10см), тогда мы сможем повысить точность двух оставшихся переменных, потому что из 3 уравнений мы сможем даже в самом тупом случае вычислить 3 пары таких точек и взять от них среднюю, а значит повысим точность искомых координат (при накоплении статистики погрешность имеет свойство снижаться).


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

Re: LPS (Локальная Система Позиционирования)

=DeaD= » 23 янв 2009, 13:24

mandigit писал(а):основная ошибка возникает в каждом из уравнений при измерении момента прихода импульса

Если эта ошибка не имеет очень экзотического распределения по вероятности, тогда увеличение количества измерений и усреднение результата всегда увеличивает точность, я не прав?

А у нас получается как раз лишнее измерение в этом случае.

Вечером накидаю примеры по этой теме в 1-мерном пространстве, чтобы не мутить со сложными вычислениями.

Re: LPS (Локальная Система Позиционирования)

mandigit » 23 янв 2009, 15:18

=DeaD= писал(а):Если эта ошибка не имеет очень экзотического распределения по вероятности, тогда увеличение количества измерений и усреднение результата всегда увеличивает точность, я не прав?


Не совсем. Эта ошибка носит неслучайный характер - она зависит от угла между осями приемника и передатчика, от расстояния (фактически - от мощности принимаемого сигнала). Статистическая обработка уберет статистические шумы (не знаю, какую долю от общей ошибки они составляют)

Re: LPS (Локальная Система Позиционирования)

=DeaD= » 23 янв 2009, 15:23

mandigit писал(а):Эта ошибка носит неслучайный характер - она зависит от угла между осями приемника и передатчика, от расстояния (фактически - от мощности принимаемого сигнала).

Тогда если она имеет неслучайный характер - это не ошибка, а функция, просто её нужно определить и включить в систему уравнений :crazy: ну это если в лоб пойти :)


Rambler\'s Top100 Mail.ru counter