Спутниковая навигация

Пред­став­ле­ние о том, что ваш GPS- или ГЛО­НАСС-при­ём­ник полу­чает ваши же коор­ди­наты от нахо­дящихся на орбите спут­ни­ков, — оши­бочно. Во‐пер­вых, спут­ники их про­сто не знают, во‐в­то­рых, свои сообще­ния спут­ники не пер­со­нифици­руют и отправ­ляют «в про­стран­ство», сразу всем, а не только вашему при­ём­нику. Как же тогда навига­тор опре­де­ляет ваши коор­ди­наты?

В спут­ни­ко­вой навигаци­он­ной системе можно выде­лить два основ­ных сег­мента: кос­ми­че­ский и управ­лен­че­ский. Кос­ми­че­ский сег­мент — созвез­дие спут­ни­ков, рав­но­мерно рас­по­ложен­ных вокруг Земли. Управ­лен­че­ский сег­мент, нахо­дящийся на Земле, обес­пе­чи­вает, в част­но­сти, син­хро­ни­за­цию на всех спут­ни­ках «обще­си­стем­ного» времени и исполь­зо­ва­ние еди­ной системы коор­ди­нат.

Каж­дый спут­ник посто­янно пере­даёт навигаци­он­ные сообще­ния, содержащие, в част­но­сти, коор­ди­наты спут­ника в момент отправки сообще­ния и время отправки.

При­ём­ник, полу­чивший такое сообще­ние, может рас­счи­тать рас­сто­я­ние до спут­ника: $d=(t^{\mathrm{(пр)}}-t^{\mathrm{(отпр)}})c$.

В этой формуле время про­хож­де­ния сиг­нала (от времени отправки $t^{\mathrm{(отпр)}}$ до времени при­ёма $t^{\mathrm{(пр)}}$) умножа­ется на ско­рость рас­про­стра­не­ния радио­сиг­нала, т. е. ско­рость света $c$.

С дру­гой сто­роны, если в прямо­уголь­ной декар­то­вой системе коор­ди­нат ваши коор­ди­наты равны $(x;y;z)$, а коор­ди­наты спут­ника в момент отправки сообще­ния были равны $(x_1;y_1;z_1)$, то квад­рат рас­сто­я­ния $d_1$ равен $(x-x_1)^2+(y-y_1)^2+(z-z_1)^2$.

Если при­ём­ник одно­временно полу­чит навигаци­он­ные сообще­ния ещё от двух спут­ни­ков, то сможет найти ваши коор­ди­наты $(x;y;z)$, решив систему из трёх урав­не­ний $$ \begin{cases}(x-x_1)^2+(y-y_1)^2+(z-z_1)^2=d_1^2, \\ (x-x_2)^2+(y-y_2)^2+(z-z_2)^2=d_2^2, \\ (x-x_3)^2+(y-y_3)^2+(z-z_3)^2=d_3^2, \end{cases}$$

где $(x_i;y_i;z_i)$ — коор­ди­наты $i$‐го спут­ника, а $d_i$ — рас­сто­я­ние до него.

Геомет­ри­че­ская интер­пре­тация этой системы такова. Сообще­ние от одного спут­ника выде­ляет часть про­стран­ства, в кото­рой вы нахо­ди­тесь, — сферу, опре­де­ля­емую её цен­тром-спут­ни­ком и ради­у­сом. Информация от вто­рого спут­ника — ещё одна сфера. Пере­се­че­ние этих двух сфер, вообще говоря, — окруж­ность. Сообще­ние от тре­тьего спут­ника добав­ляет ещё одно огра­ни­че­ние — ещё одну сферу — и уже одно­значно опре­де­ляет ваши коор­ди­наты. То, что все три сферы имеют общую точку, сле­дует из самого состав­ле­ния системы. Из двух «формаль­ных» реше­ний (пере­се­че­ние окруж­но­сти и тре­тьей сферы) одно — неправ­допо­добно, вто­рое — ваши коор­ди­наты.

Спутниковая навигация // Математическая составляющая

Опи­сан­ная схема спут­ни­ко­вой навигаци­он­ной системы — упрощён­ная, реаль­ность застав­ляет исполь­зо­вать более слож­ную модель. Напри­мер, рас­смот­рен­ная схема очень чув­стви­тельна к погреш­но­стям, одна из глав­ных про­блем — вли­я­ние точ­но­сти хода часов навига­тора, кото­рый не имеет возмож­но­сти свя­зы­ваться с назем­ными станци­ями навигаци­он­ной системы для кор­рек­ти­ровки времени. Пред­ставьте что часы отстали от обще­си­стем­ного времени на $0,001$ с. Ско­рость света равна $с=300 000$ км/с, таким обра­зом, в опре­де­ле­нии рас­сто­я­ний до спут­ни­ков (ради­у­сов сфер) полу­чится ошибка в 300 км! Выпи­сан­ная система, если и будет иметь реше­ние, то не отно­сяще­еся к вашему местопо­ложе­нию…

К сча­стью, подоб­ная про­блема пре­одо­лима, при­чём даже в том слу­чае, когда точ­ность хода часов нам неиз­вестна. Допу­стим, что часы при­ём­ника отстают от обще­си­стем­ного времени на (неиз­вест­ную нам) вели­чину $\delta$, и их пока­за­ния в момент полу­че­ния сообще­ния — $t^{\mathrm{(пр)}}$. Навига­тор будет «счи­тать», что рас­сто­я­ние до спут­ника равно $d=(t^{\mathrm{(пр)}}-t^{\mathrm{(отпр)}})c$, что меньше истин­ного рас­сто­я­ния $d+\delta c$.

Чтобы найти коор­ди­наты $(x;y;z)$ и новую неиз­вест­ную $r=\delta c$, необ­хо­димо ещё одно урав­не­ние, оно появится, если есть дан­ные от четырёх спут­ни­ков:

$$ \begin{cases}(x-x_1)^2+(y-y_1)^2+(z-z_1)^2=(d_1+r)^2,\\ (x-x_2)^2+(y-y_2)^2+(z-z_2)^2=(d_2+r)^2,\\ (x-x_3)^2+(y-y_3)^2+(z-z_3)^2=(d_3+r)^2,\\ (x-x_4)^2+(y-y_4)^2+(z-z_4)^2=(d_4+r)^2. \end{cases}$$

Геомет­ри­че­ская интер­пре­тация реше­ния задачи такова. При­ём­ник явля­ется цен­тром сферы ради­уса $r$, кото­рая внеш­ним обра­зом (так как часы отста­вали) каса­ется четырёх сфер ради­у­сов $d_i$, цен­тры кото­рых — спут­ники. Такая сфера суще­ствует, а её центр — ваше местопо­ложе­ние. (На рисунке изоб­ражён двумер­ный вари­ант этой задачи: окруж­ность ради­уса $r$ внеш­ним обра­зом каса­ется трёх окруж­но­стей.)

Спутниковая навигация // Математическая составляющая

Вычис­лив коор­ди­наты по этой системе, навига­тор в каче­стве допол­ни­тель­ного «бонуса» полу­чает зна­че­ние обще­си­стем­ного времени, кор­рек­ти­рует свои часы и сообщает вам точ­ное время!

Разворот книги

Книга «Математическая составляющая»
Книга «Математическая составляющая»

Лите­ра­тура

Яцен­ков В. С. Основы спут­ни­ко­вой навигации: системы GPS-NAVSTAR и ГЛО­НАСС. — М.: Горя­чая линия—Теле­ком, 2005.

Hofmann-Wellenhof B., Lichtenegger H., Wasle E. GNSS — Global Navigation Satellite Systems. — Wien—N.Y.: Springer, 2008.