Определение координат робота по расстояниям до маяков, измеренным с одинаковым отклонением — различия между версиями
=DeaD= (обсуждение | вклад) (→Решение численным методом Ньютона) |
=DeaD= (обсуждение | вклад) (→Решение численным методом Ньютона) |
||
Строка 12: | Строка 12: | ||
zi=sqrt((xi-x)^2+(yi-y)^2)+z | zi=sqrt((xi-x)^2+(yi-y)^2)+z | ||
+ | |||
+ | Продифференцировав это равенство получим: | ||
+ | |||
+ | dzi = ((xi-x)dx+(yi-y)dy)/sqrt((xi-x)^2+(yi-y)^2)+dz = ((xi-x)dx+(yi-y)dy)/(zi-z)+dz, умножив на (zi-z), получим: | ||
+ | |||
+ | (zi-z)dzi = (xi-x)dx + (yi-y)dy + (zi-z)dz | ||
Тут будет продолжение решения :) | Тут будет продолжение решения :) |
Версия 11:13, 22 января 2009
Постановка задачи
Имеем в плоскости 3 маяка с известными координатами (x1,y1), (x2,y2), (x3,y3) и замеренные расстояния до них (z1,z2,z3) известные с точностью до неизвестного одинакового отклонения (z). Требуется определить наиболее вероятные координаты робота (x,y) и соответственно одинаковое отклонение (z), зависящее от смещения часов робота относительно часов маяков.
Источник задачи - система локализации на базе (ультра)звуковых маяков, которые могут быть рассинхронизированы по часам с автономным роботом.
Решение численным методом Ньютона
Решенее предложил mandigit
Запишем уравнение для расстояния ri от i-го маяка до робота:
zi=sqrt((xi-x)^2+(yi-y)^2)+z
Продифференцировав это равенство получим:
dzi = ((xi-x)dx+(yi-y)dy)/sqrt((xi-x)^2+(yi-y)^2)+dz = ((xi-x)dx+(yi-y)dy)/(zi-z)+dz, умножив на (zi-z), получим:
(zi-z)dzi = (xi-x)dx + (yi-y)dy + (zi-z)dz
Тут будет продолжение решения :)
Решение аналитическим методом
Решенее предложил boez
Тут будет решение :)