Как работает приёмник GPS в вашем устройстве

21.09.2017

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

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

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

Из чего состоит приёмник

Современный приёмник GPS является аналогово-цифровой системой. Схема приёмника включает в себя антенну, радиочастотный блок, синтезатор частот, аналого-цифровой преобразователь и цифровой вычислитель.

Начнем с антенны. Она должна принимать радиоволны на частоте системы GPS и полосу частот сигнала. Как правило это задается волновым сопротивлением. Практически все антенны приёмников GPS обеспечивают поглощение 90% сигнала в пределах полосы пропускания.

Радиочастотный блок нужен для усиления принятого сигнала, фильтрации полезного сигнала на фоне помех и шума, а также для понижения несущей частоты принятого сигнала до промежуточной, на которой работает аналого-цифровой преобразователь. Так как навигационные сигналы имеют очень малую мощность (С/А–код создает на входе приемника мощность порядка -130дБм), приемник должен обеспечить уровень сигнала, достаточный для обработки АЦП. Уровень полезного сигнала на входе приемника оказывается примерно на 19дБ меньше уровня теплового шума, и извлечь его из под шума помогает C/A–код.

Синтезатор частот формирует набор гармонических колебаний, необходимых для работы радиочастотного блока, шкалы времени приёмника, а также для формирования тактовых сигналов для АЦП и цифрового вычислителя.

АЦП преобразует аналоговый сигнал с выхода радиочастотного блока в цифровой сигнал, поступающий затем на вход цифрового вычислителя.

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

Процесс приёма сигнала

Как отмечалось ранее, созвездие спутников GPS состоит из 24 спутников, каждый из которых обладает собственным уникальным кодом. Так как исходное местоположение приемника в общем случае может быть произвольным, необходимо искать сигналы всех доступных спутников. Принятый сигнал является комбинацией сигналов от всех спутников, оказавшихся в зоне видимости (+ шум). Для сокращения времени поиска приоритет следует отдавать параллельным методам поиска.

При приеме сигнала i-го спутника, входящий сигнал s(t) умножается на дальномерный код, сгенерированный приёмником и соответствующий данному i-ому спутнику. Взаимная корреляция между кодами различных спутников подразумевает, что сигналы с других спутников фактически удаляются данной процедурой. Чтобы избежать удаления нужной информации, дальномерный код приёмника должен быть соответствующим образом синхронизирован по времени.

Генератор псевдослучайной последовательности воспроизводит последовательность, соответствующую конкретному спутнику. Генерированная последовательность имеет конкретный временной сдвиг кода в пределах о 0 до 1022 элементарных бит данных. Входной сигнал вначале умножается на эту последовательность. После умножения сигнал умножается на сгенерированную в приемнике несущую частоту системы GPS. В результате мы получаем синфазный сигнал I и квадратурный сигнал Q. Сигналы I и Q интегрируются на интервале времени, равном 1 миллисекунде, соответствующем длине одного С/А–кода, и затем возводятся в квадрат и суммируются. Выходом является величина корреляции между входящим сигналом и местным генерированным сигналом. Если заранее определенный порог превышен, то параметры частоты и временного сдвига кода являются правильными, и данные могут передаваться в алгоритмы сопровождения.Основной целью сопровождения является уточнение грубых величин временного сдвига кода и частоты. Сопровождение состоит из 2 основных частей: слежение за несущей частотой/фазой и слежение за дальномерным кодом.

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

Слежение за частотой ведется с помощью схемы частотной автоподстройки. Данная операция ведётся между поиском сигнала и режимом непрерывного слежения по фазе в некогерентном режиме работы (слежение по фазе ведется в когерентном режиме). Схема слежения за частотой состоит из частотного дискриминатора, сглаживающего фильтра и перестраиваемого генератора. Схема слежения за фазой, как и схема слежения за задержкой сигнала, состоит из фазового дискриминатора, сглаживающего фильтра и генератора опорного сигнала. Для лучшего понимания ниже представлена схема. Отсчеты y(t, x) поступают на вход дискриминатора, на второй вход которого идет опорный сигнал v(t, x’). На выходе дискриминатора сигнал u(бx) пропорционален рассогласованию между x и x’. Фильтр нужен для обеспечения требуемых динамических характеристик системы.

Демодуляция навигационных сообщений

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

Любой субкадр должен начинаться с преамбулы (10001011) в первом слове (длиной 30 бит). Во втором слове биты с двадцатого по двадцать второй определяют идентификатор субкадра, а биты 29–30 используются для контроля четности. Однако простой поиск этих данных не гарантирует обязательного успешного нахождения начала субкадра. Целесообразно искать сразу несколько субкадров. Если совпадения обнаруживаются для нескольких субкадров, вероятность правильной синхронизации увеличивается. Если совпадение не обнаружено, попытка обнаружения признается неудачной. Вероятность правильности синхронизации можно увеличить, проверяя несколько последовательных субкадров. Также можно осуществлять первичный поиск на произвольном интервале в 360 20–миллисекундных интервалов. В таком интервале должна быть, как минимум, одна преамбула. После обнаружения преамбулы идет проверка четности.

Надеюсь было интересно и статья помогла разобраться в принципах работы приёмников GPS. Не забываем подписываться)