Задача позиционирования движущегося объекта по расстоянию до него

Труды Карельского научного центра РАН №8. 2016. С. 129-135

DOI: 10.17076/mat423

УДК 519.711:004.89

ЗАДАЧА ПОЗИЦИОНИРОВАНИЯ ДВИЖУЩЕГОСЯ ОБЪЕКТА ПО РАССТОЯНИЮ ДО НЕГО

Л. В. Щеголева, А. В. Жуков

Петрозаводский государственный университет

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

Ключевые слова: позиционирование; расстояние между точками; движущийся объект.

L. V. Shchegoleva, A. V. Zhukov. THE PROBLEM OF POSITIONING A MOVING OBJECT BY MEASURING THE DISTANCE TO IT

The article deals with the problem of determining the coordinates of a moving object in the base object's own frame of reference if we know only the distances between objects measured at successive time moments. An approach to solving this problem is described.

Keywords: positioning; distance between points; moving object.

Введение

Взаимодействие мобильных устройств опирается на систему позиционирования этих устройств на плоскости или в пространстве. При позиционировании и навигации устройств в качестве ключевого элемента используются карты, планы, схемы, которые имеют известную для всех мобильных устройств систему координат. Местоположение объекта определяется в рамках этой системы координат. Для позиционирования внутри помещений используются системы, основанные на телекоммуникационных технологиях (Wi-Fi [1], GSM, Bluetooth), для открытых пространств - системы глобального позиционирования (GPS,

ГЛОНАСС) [2]. И в тех, и в других системах используется механизм измерения расстояния между объектами на основе данных о времени прохождения радиосигнала. При этом устройства, являющиеся либо источниками, либо приемниками радиосигналов, имеют известные координаты, что и позволяет относительно них позиционировать другие устройства. Обзор современных систем позиционирования внутри помещений представлен в [3]. Таким образом, система координат для всех объектов является единой. Зная свои координаты и координаты другого объекта, можно проложить маршрут по направлению к другому объекту.

В некоторых ситуациях зафиксированные устройства с известными координатами в единой системе координат могут отсутствовать,

©

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

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

Авторами статьи предпринята попытка описать модель локации двух устройств относительно друг друга в случае отсутствия единой системы координат и наличия возможности измерить расстояние между объектами.

Задача для неподвижной точки

Рассмотрим первый случай, когда целевой объект неподвижен. Будем считать, что объекты являются точками на плоскости (рис. 1). Базовый объект в начальный момент времени находится в начале координат своей собственной системы координат (точка А). Направления осей координат в этой системе некоторым образом определены.

проводится из точки А, которая имеет координаты (0, 0). Расстояние до целевого объекта равно т\. Далее базовый объект смещается в рамках своей системы координат в точку с координатами (ш, 0), проводит второе измерение расстояния до целевого объекта - т2. Далее смещается в точку с координатами (ш, К) и проводит третье измерение - тз.

Координаты точки В рассчитываются следующим образом:

х = У =

2-;

Г

2-к

Рис. 1. Три измерения для неподвижной целевой точки

Для определения координат целевого объекта (точка В) потребуется выполнить три измерения расстояния до него из трех различных точек. На рисунке 1 первое измерение

Это задача классической геодезии (метод трилатерации).

Задача для движущейся точки

Постановка задачи

Рассмотрим второй случай: пусть целевой объект движется прямолинейно с постоянной скоростью. Это означает, что каждое следующее измерение даст расстояние до целевого объекта, находящегося в новой точке, но все эти точки лежат на одной прямой. Будем считать, что измерение расстояния происходит мгновенно, так, что целевой объект не успевает за это время изменить своего положения.

Первое измерение проводится в начальный момент времени, когда базовый объект находится в начале координат, а целевой объект находится в неизвестной точке с координатами (хо,уо). Пусть все измерения расстояний проводятся через одинаковые интервалы времени. Первые три измерения проводятся из начала координат. Четвертое измерение проводится из точки с координатами (0,ш), где ш - расстояние, которое базовый объект может пройти за время между последовательными измерениями. Пятое измерение проводится из точки с координатами (ш,ш).

Таким образом, исходными данными являются:

Т1 - величина первого измерения;

Т2 - величина второго измерения;

тз - величина третьего измерения;

Т4 - величина четвертого измерения;

Т5 - величина пятого измерения;

ш - смещение базового объекта для четвертого и пятого измерений.

Необходимо найти координаты точки, в которой находился целевой объект в момент последнего измерения, а также уравнение прямой, по которой он движется.

130

3

Решение задачи

Представим уравнение прямой, описывающей траекторию движения целевого объекта, в виде

( Х = Хо + Дж  г

| у = уо + Ау  г •

Будем считать, что измерения расстояний были выполнены при г = 0,1, 2, 3, 4. Для решения задачи можно построить систему уравнений с неизвестными х0, у0, Ах, Ау:

( 2 I 2

х0 + у0

г2

(Х0 + Ах)2 + (У0 + Ау )2 = г2 (Х0 + 2  Ах)2 + (у0 + 2  Ау)2 = г2 (Х0 + 3  Ах - ад)2 + (у0 + 3  Ау)2 = г| (Х0 + 4  Ах - ад)2 + (у0 + 4  Ау - ад)2 = г2

и попытаться решить ее аналитически. В статье предлагается другой подход к решению этой задачи - геометрический.

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

Проведем три окружности с центром в начале координат и радиусами, равными трем первым измерениям: п, Г2, гз (рис. 2). Пусть Г1 < г2 < г3 < г4 < г5. Пусть в процессе движения целевой объект на момент первого измерения находился в точке А, на момент второго измерения - в точке В, которая лежит на оси абсцисс, а в момент третьего измерения - в точке С. Тогда прямолинейное направление движения целевого объекта должно быть таким, чтобы, пересекая первую и третью окружности, расстояния от точки с координатами (г2, 0) до точек пересечения с окружностями были одинаковыми

(ав = ВС).

Рис. 2. Траектория движения целевого объекта по первым трем измерениям

Для определения координат точек А, В, С и параметров (х1, у1, ^Х, ^у) уравнения прямой, описывающей движение целевого объекта, составим систему уравнений:

' Х2 = Х1 + ^Х

у2 = у1 + ¿у

Хз уз

2 Х2

= Х1 +2  ^Х

= у1 + 2  ^у

+ у2 = г2 + у!

+ уз2

г22

Х2 = г2 у2 = 0

(Х1 - Х2)2 + (у1 - у2)2 = = (Хз - Х2)2 + (уз - у2)2

где (Х1,у1) - координаты точки пересечения прямой и окружности с радиусом г1 (точка А), (Х2,у2) - координаты точки пересечения прямой и окружности с радиусом г2 и осью абсцисс (точка В), (Х3,у3) - координаты точки пересечения прямой и окружности с радиусом гз (точка С). Первые четыре выражения в системе означают, что точки А, В, С лежат на прямой. Следующие три выражения означают, что точки лежат на соответствующих окружностях с центром в начале координат и радиусами г1, г2 и г3. Следующие два выражения означают, что точка В лежит на пересечении окружности с радиусом г2 и осью абсцисс. Последнее выражение означает, что длины отрезков АВ и ВС равны.

Эта система имеет два решения (3) и (4), отличающиеся знаком у1:

4-Т 2 г2 — Х2

Х1 = г2 + у(1) _

у1 = V '1 — Х1 ^Х = г2 — Х1

¿у

X

2

X

3

xi = Г2 +

4^r 2

< y() =

— \/Гл— xí

dx = r2 — x1

, dy(2) = —

Получились две прямые

x = x1 + dx  t fx = x1 + dx  t

y = y(1) + dy(1)  t I y = y(2) + dy(2)  t

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

Рис. 3. Поворот прямых до точки пересечения окружностей

Для расчета координат x4, y4 , y4 воспользуемся уравнениями (5) для t = 3.

Зная координаты точки D = (x4,y4), можно найти радиус окружности Г4: Г4 = л/(x4)2 + (y4)2, а также косинус и синус угла a: cos а = f4 и sin а = I4.

r4 r4

Рассмотрим точку D' = (x4 ,y4). Это точка пересечения двух окружностей. Первая окружность - с центром в точке (0, 0) и радиусом f4, а вторая - с центром в точке (0, w) и радиусом Г4. Составим систему уравнений:

2 i

2

3

rr

Для проведения четвертого измерения г4 переместим базовый объект из начала координат в точку с координатами (0,-ш). Новое измерение г 4 будет уже выполнено не из начала координат. Но можно рассчитать радиус окружности с центром в начале координат г 4 для следующего положения движущейся точки. Тогда эти две окружности пересекутся в двух точках, и можно будет найти для одной из точек пересечения два угла в - поворота каждой прямой, по которой может двигаться целевой объект (рис. 3).

x! + (y4 — w)2 = r| x2 + y2 = (^4)2

решив которую, получим координаты точки D':

= W2-(r4 )2 + (Г4)2

y4 = 2W

x4 = л/(Г4)2 — (y4 — w)2

Рассмотрим прямую (5) с положительным значением параметра dy. Угол а - это угол, образованный прямой и осью абсцисс. Этот угол известен. Угол в - угол, на который необходимо повернуть рассматриваемую прямую так, чтобы точка пересечения ее с окружностью (ж4,у/4) (точка Б) переместилась в точку пересечения окружностей (х4,у4) (точка Б').

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

Теперь, зная координаты точки Б' = (Ж4, у4), найдем синус и косинус угла в для первой прямой (5):

132

в1П

(1) а = С

г 4

(1)(а + в) = У44"

еов(а + в) = Х4 э1п(1) в = 4 = в1п(а + в)  еов а — еов(а + I

(1) л сов(а+в)+вт в-б1п(1) а

ео8(1) в =--— -

• вШ у а

у0) = у0)

^Ах — ^Ах

А

А

и для второй прямой (5):

в1П

(2) а = С

^4

Г 4

э1п(2) (а + в) = Ч-еов(а + в) = 14 э1п(2) в = 4 = в1п(а + в)  еов а — еов(а + 1

ео8(2) в = сов(а+в)+8шв-вш(2) а

в1П

а

Теперь необходимо каждую прямую повернуть на соответствующий угол в. Первая прямая будет иметь следующие значения параметров:

Рис. 4. Выбор одной прямой из четырех

х01) = еов

у01)

АУ1) = в1п(1) в  г2 —

Вторая прямая будет иметь следующие значения параметров:

в1п

х02) = еов

При этом прямые могут пересекать окружность и в отрицательной полуплоскости (рис. 4), следовательно, их необходимо отразить относительно оси ординат:

х

у0 )

у0Х)0

ах3) = —аХ1)

А

А

В итоге получились четыре прямые, по которым может двигаться целевой объект. На рисунках 4, 5, 6 сплошной линией нарисованы окружности с центром в начале координат и радиусами г1, г2, г3, г4. Пунктирной линией нарисована окружность с центром в точке (0,ад) и радиусом г4. Линией из точек нарисована окружность с центром в точке (ад, ад) и радиусом г5. Отрезками обозначены возможные траектории движения целевого объекта, сплошная линия соответствует реальному движению целевого объекта - решению задачи. Точками отмечены возможные положения целевого объекта в момент проведения пятого измерения. Точка с заливкой, лежащая на окружности, обозначенной линией из точек, позволяет выбрать правильную траекторию из четырех возможных.

Для выбора правильной прямой из полученных четырех выполним еще одно измерение, переместив базовый объект в точку с координатами (ад, ад). Рассчитаем, где будет находиться целевой объект в следующий момент времени, если будет двигаться по каждой из прямых (рис. 4). Получаем четыре точки (рис. 4): (х51),у(1)), (х52),у52)), (х53),у(3)),

(х54) ,у54)).

0

у

Из них выбираем такую точку (жб,Уб), которая лежит на окружности радиуса г5 с центром в точке с координатами (ад,ад), т. е.

Тогда соответствующая этой точке прямая описывает траекторию движения целевого объекта.

Замечания

Представленный метод не всегда дает единственное решение. Например, для траектории движения целевого объекта, описываемой

Г х = -4 + Ь уравнением , решением яв-

у = -7 + 2  Ь ляются три прямые, из которых правильная только одна (рис. 5). На рисунке 5 точечную окружность пересекают сразу три прямые в точках (х5,у5). Две прямые пересекают окружность в одной точке.

Рис. 6. Траектория движения целевого объекта проходит через начало координат

Для случая, когда ж3 = Дх и ж0 = r2 (см. (3) и (4)), получается, что Ж4 = 0. Это приводит к тому, что cos а = 0 (см. (8) и (9)) и cos в = те. В этом случае в Ж 4 записываем (2) п ется значение r2, а в y4 и y4 значение 0.

Т. е. искусственно траектория сдвигается на два интервала времени назад. Затем выполняются вычисления углов, как было описано в (8) и (9), а при составлении уравнений (10) и (11) выполняется сдвиг в обратную сторону.

Метод не работает, когда r2 = 0 (см. формулы (3) и (4)). Но в этом случае координаты целевого объекта в момент второго измерения становятся известными, и задача сводится к определению только направления движения, т. е. Дх и Ду. Это можно сделать на основе измерений расстояний Гз,Г4,Г5 по следующим формулам:

Дх Ду

6r|+3r|+w2-2rg 12w

Рис. 5. Случай нескольких решений

Представленный метод работает и в случаях, когда условие, указанное ранее, п < г2 < г3 < г4 < г5 не выполняется, т. е. метод работает при любых соотношениях получаемых измерений расстояний до целевого объекта. Даже в случае, если целевой объект проходит через начало координат, например, для траектории движения целевого объекта, описываемой х = -0, 5 + Ь у = -1 + 2  Ь

ЛУ _ 4w Тогда уравнение прямой будет

ж = —Дх + Дх  t

y = -Ду + Ду  t .

уравнением

(рис. 6).

Заключение

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

134

w — r2+4r2

случае пяти измерений оказывается достаточно для однозначного определения уравнения прямой, по которой движется целевой объект, и его координат в каждый момент времени, когда проводились измерения расстояния до целевого объекта (формулы (3)-(4), (7)-(13) и критерий (14)). Если целевой объект пересекает начало координат в момент второго измерения, то задача решается с помощью формул (15) и (16).

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

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

динат целевого объекта, при этом определение точности такого решения требует дополнительных исследований.

Работа выполнена при поддержке Программы стратегического развития ПетрГУ на 2012-2016 гг.

Литература

1. Cisco Systems, Inc. Wi-Fi Location-Based Services 4.1 Design Guide San Jose, USA: Cisco Systems, Inc. 2008. Online: http://www.cisco.com/en/US/docs/solutions/ Enterprise/Mobility/wifich2.html

2. Kaplan E.D., Hegarty Ch. J. Understanding GPS: principles and applications, 3rd ed. London, England: Artech House, 2006.

3. Щекотов М. С., Кашевник А. М. Сравнительный анализ систем позиционирования смартфонов в помещениях // Труды СПИИРАН. 2012. № 4(23). С. 459-471.

Поступила в редакцию 05.07.2016

References

1. Cisco Systems, Inc. Wi-Fi Location-Based Services 4.1 Design Guide San Jose, USA: Cisco Systems, Inc. 2008. Online: http://www.cisco.com/en/US/docs/solutions/Enter-prise/Mobility/wifich2.html (accessed: 9.05.2016).

2. Kaplan E. D., Hegarty Ch. J. Understanding GPS: principles and applications, 3rd ed. London, England: Artech House, 2006.

3. Shchyokotov M. S., Kashevnik A. M. Sravnitelnyj analiz sistem pozicionirovaniya smartfonov v pomeshcheniyah [Comparative analysis of indoor smartphone positioning systems]. Trudy-SPIIRAN. 2012. No. 4(23). C. 459-471.

Received July 05, 2016

СВЕДЕНИЯ ОБ АВТОРАХ:

Щ^еголева Людмила Владимировна

профессор, д. т. н.

Петрозаводский государственный университет пр. Ленина, 33, Петрозаводск, Республика Карелия, Россия, 185910

эл. почта: schegoleva@petrsu.ru тел.: (8142) 711068

CONTRIBUTORS:

Shchegoleva, Liudmila

Petrozavodsk State University

33 Lenin St., 185910 Petrozavodsk, Karelia, Russia

e-mail: schegoleva@petrsu.ru

tel.: (8142) 711068

Жуков Артем Владимирович

старший преподаватель, к. т. н.

Петрозаводский государственный университет

пр. Ленина, 33, Петрозаводск, Республика Карелия,

Россия, 185910

эл. почта: zhukov@sampo.ru

тел.: (8142) 711068

Zhukov, Artem

Petrozavodsk State University

33 Lenin St., 185910 Petrozavodsk, Karelia, Russia

e-mail: zhukov@sampo.ru

tel.: (8142) 711068