elmot писал(а):Уже где-то тут терли не раз. Все плохо. Просто не выходит. На инфракарасных маяках совсем все плохо. Оч сложно расстояние померять - задержки-то пикосекундные. Ультразвук как минимум.
Неее! Не по задержке... По углу на маяки.
Конструктивно сам локатор на роботе может быть выполнен как ТСОП c трубкой, для узкой диаграммы направленности, вращаемый шаговиком в горизональной плоскости, либо ТСОП направлен вертикально вверх, а ИК излучение попадает в него с помощью вращаемого зеркала, наклоненного под Пи/4.
Идея в том - чтобы получить углы 1 и 2. Зная базы а и б - можно однозначно рассчитать свое положение. Геометрию (пример расчета) привести?
Добавлено спустя 13 минут 16 секунд:
Начал думать - рисовать окружности - решил погуглить. Первая ж ссылка: http://www.raai.org/about/persons/karpo ... doopr2.htm
(c) Карпов В.ЭВычисления местоположения робота по маякам
Пусть на плоскости (в ограниченной области) расположены N маяков с известными координатами. Там же находится робот, оборудованный вращающимся локатором. Локатор позволяет определять углы между собственным направлением робота (осью ориентации) и направлением на каждый из видимых маяков. Измерения производятся с некоторой погрешностью и могут быть не только неточны, но даже полностью неверны (например, из-за помех, перекрытий области видимости и т.п.). Требуется с максимальной точностью и в кратчайшее время определить местоположение робота – его координаты и направление (ориентацию).
Метод окружностей
Рассмотрим для начала метод «точного» решения задачи определения местоположения робота по маякам (А. Лоскутов, а также [3]). Пусть робот видит три маяка с заданными декартовыми координатами T1(x1,y1), T2(x2,y2), T3(x3,y3) соответственно. Локатор определяет направления на маяки относительно оси робота. Измеренные углы видимости маяков обозначим как a1, a2, a3. Будем считать, что робот определяет угол между маяками. Например, угол a12 между маяками T1 и T2 (a12=a1-a2), а угол между T2 и T3 - a23 (рис. 1).