Нате вот,взято с 4pda,если кому интересны подробности работы
http://4pda.ru/forum/index.php?showtopic=51317
Система Глобального Позиционирования (GPS или Global Positioning System) является спутниковой и работает под управлением Министерства Обороны США. Система является глобальной, всепогодной и обеспечивает возможность получения точных координат и времени 24 часа в сутки.
Как работает GPS
Основы системы GPS можно разбить на пять основных подпунктов:
Спутниковая трилатерация - основа системы
Спутниковая дальнометрия – измерение расстояний до спутников
Точная временная привязка – зачем нужно согласовывать часы в приёмнике и на спутнике и для чего требуется 4-й космический аппарат
Расположение спутников – определение точного положения спутников в космосе
Коррекция ошибок – учёт ошибок вносимых задержками в тропосфере и ионосфере
Спутниковая трилатерация
Точные координаты могут быть вычислены для места на поверхности Земли по измерениям расстояний от группы спутников (если их положение в космосе известно). В этом случае спутники являются пунктами с известными координатами. Предположим, что расстояние от одного спутника известно и мы можем описать сферу заданного радиуса вокруг него.
Если мы знаем также расстояние и до второго спутника, то определяемое местоположение будет расположено где-то в круге, задаваемом пересечением двух сфер.
Третий спутник определяет две точки на окружности.
Теперь остаётся только выбрать правильную точку. Однако одна из точек всегда может быть отброшена, так как она имеет высокую скорость перемещения или находится на или под поверхностью Земли. Таким образом, зная расстояние до трёх спутников, можно вычислить координаты определяемой точки.
Спутниковая дальнометрия
Расстояние до спутников определяется по измерениям времени прохождения радиосигнала от космического аппарата до приёмника умноженным на скорость света. Для того, чтобы определить время распространения сигнала нам необходимо знать когда он покинул спутник.
Для этого на спутнике и в приёмнике одновременно генерируется одинаковый Псевдослучайный Код*
* - Каждый спутник GPS передаёт два радиосигнала: на частоте L1=1575.42 МГц и L2=1227.60 МГц. Сигнал L1 имеет два дальномерных кода с псевдослучайным шумом (PRN), P-код и C/A код. “Точный” или P-код может быть зашифрован для военных целей. “Грубый” или C/A код не зашифрован. Сигнал L2 модулируется только с P-кодом. Большинство гражданских пользователей используют C/A код при работе с GPS системами. Некоторые приёмники Trimble геодезического класса работают с P-кодом.
Приёмник проверяет входящий сигнал со спутника и определяет когда он генерировал такой же код. Полученная разница, умноженная на скорость света (~ 300000 км/с) даёт искомое расстояние.
Использование кода позволяет приёмнику определить временную задержку в любое время. Кроме того, спутники могут излучать сигнал на одной и той же частоте, так как каждый спутник идентифицируется по своему Псевдослучайному коду (PRN или PseudoRandom Number code).
Точная временная привязка
Как видно из сказанного выше, вычисления напрямую зависят от точности хода часов. Код должен генерироваться на спутнике и приёмнике в одно и то же время. На спутниках установлены атомные часы имеющие точность около одной наносекунды. Однако это слишком дорого, чтобы устанавливать такие часы в каждый GPS приёмник, поэтому измерения от четвёртого спутника используются для устранения ошибок хода часов приёмника.
Эти измерения можно использовать для устранения ошибок, которые возникают если часы на спутнике и в приёмнике не синхронизированы. Для наглядности, иллюстрации приведённые ниже рассматривают ситуацию на плоскости, так как только три спутника необходимо для вычисления местоположения объекта.
Если часы на спутнике и в приёмнике имеют одинаковую точность хода, то точное местоположение может быть найдено по измерениям расстояния до двух спутников.
Если получены измерения с трёх спутников и все часы точные, то круг описанный радиус-вектором от третьего спутника будет пересекаться как показано на рисунке.
Однако, если часы в приёмнике спешат на 1 секунду, то картина будет выглядеть следующим образом.
Если сделать замер до третьего спутника, то полученный радиус-вектор не пересечётся с двумя другими как показано на рисунке.
Когда GPS приёмник получает серию измерений которые не пересекаются в одной точке, то компьютер в приёмнике начинает вычитать (или добавлять) время методом последовательных итерации до тех пор, пока не сведёт все измерения к одной точке. После этого вычисляется поправка и делается соответствующее уравнивание.
Если вам требуется третье измерение, то необходим четвёртый спутник для устранения ошибок хода часов в приёмнике. Таким образом, при работе в поле вам необходимо иметь минимум четыре спутника, чтобы определить трёхмерные координаты объекта.
Расположение спутников
Система NAVSTAR имеет 24 рабочих спутника с орбитальным периодом в 12 часов на высоте примерно 20200 км от поверхности Земли. В шести различных плоскостях имеющих наклон к экватору в 55° , расположено по 4 спутника. Указанная высота необходима для обеспечения стабильности орбитального движения спутников и уменьшения фактора влияния сопротивления атмосферы.
Министерство Обороны США (DoD) осуществляет непрерывное слежение за спутниками. На каждом спутнике расположено несколько высокоточных атомных часов и они непрерывно передают радиосигналы с собственным уникальным идентификационным кодом*. МО США имеет 4 станции слежения за спутниками, три станции связи и центр осуществляющий контроль и управление за всем наземным сегментом системы. Станции слежения непрерывно отслеживают спутники и передают данные в центр управления. В центре управления вычисляются уточнённые элементы
спутниковых орбит и коэффициенты поправок спутниковых шкал времени, после чего эти данные передаются по каналам станций связи на спутники по крайней мере один раз в сутки.
* - Каждый спутник GPS передаёт два радиосигнала: на частоте L1=1575.42 МГц и L2=1227.60 МГц. Сигнал L1 имеет два дальномерных кода с псевдослучайным шумом (PRN), P-код и C/A код. “Точный” или P-код может быть зашифрован для военных целей. “Грубый” или C/A код не зашифрован. Сигнал L2 модулируется только с P-кодом. Большинство гражданских пользователей используют C/A код при работе с GPS системами. Некоторые приёмники Trimble геодезического класса работают с P-кодом.
Коррекция ошибок
Некоторые источники ошибок возникающих при работе GPS являются трудноустранимыми. Вычисления предполагают, что сигнал распространяется с непрерывной скоростью, которая равна скорости света. Однако в реальности всё гораздо сложнее. Скорость света является константой только в вакууме. Когда сигнал проходит через ионосферу (слой заряженных частиц на высоте 130-290 км) и тропосферу, его скорость распространения уменьшается, что приводит к ошибкам в измерения дальности. В современных GPS приёмниках используют всевозможные алгоритмы устранения этих задержек.
Иногда возникают ошибки в ходе атомных часов и орбитах спутников, но они обычно незначительны и тщательно отслеживаются со станций слежения.
Многолучёвая интерференция также вносит ошибки в определение местоположения с помощью GPS. Это происходит, когда сигнал отражается от объектов расположенных на земной поверхности, что создаёт заметную интерференцию с сигналами приходящими непосредственно со спутников. Специальная техника обработки сигнала и продуманная конструкция антенн позволяет свести к минимуму этот источник ошибок.
Раньше существовал ещё один источник ошибок – это Избирательный Доступ (Selective Availability или S/A), искусственное снижение точности спутникового сигнала вводимое МО США. Это приводило к тому, что точность полученных координат с помощью GPS снижалась до 100 метров. Однако 1 мая 2000 года по решению президента США "Избирательный Доступ" был отключен. Кроме того, S/A можно исключить, применяя технику дифференциальной коррекции.