СПУТНИКОВЫЙ НАВИГАЦИОННЫЙ ГЛОНАСС/GPS/GALILEO-ПРИЕМНИК С КОРРЕЛЯТОРАМИ, АСИНХРОННО УПРАВЛЯЕМЫМИ ВНЕШНИМ ПРОЦЕССОРОМ
GLONASS/GPS/GALILEO SATELLITE NAVIGATION RECEIVER WITH CORRELATORS, ASYNCHRONOUSLY CONTROLLED BY PERIPHERAL PROCESSOR

Область техники, к которой относится изобретение
Изобретение относится к области радиоэлектроники и может быть использовано для приема навигационных сигналов ГЛОНАСС, GPS и GALILEO. Изобретение также может быть использовано для других спутниковых навигационных систем, работающих по аналогичным принципам.
Уровень техники
Приемники навигационных систем ГЛОНАСС, GPS и GALILEO могут быть выполнены в виде аппаратного модуля, выполняющего все необходимые аналоговые и цифровые операции (процессы) обработки навигационного сигнала и предоставляющего на выход уже готовое навигационное решение в виде географических координат (долгота, широта, высота), скорость и время. Такие приемники, как правило, содержат аналоговую часть, включающую усилитель навигационного сигнала и преобразователь частоты, аналого-цифровой преобразователь, набор корреляторов, узел согласования с навигационными сигналами и процессор, выполняющий все необходимые вычисления для получения готового навигационного решения. Пример такого приемника навигационных сигналов приведен в патенте [1]. Данный приемник содержит антенный разъем, малошумящий усилитель, полосовой фильтр, делитель мощности, радиочастотные модули ГЛОНАСС и GPS/GALILEO, генератор опорного колебания, блоки корреляторов ГЛОНАСС и GPS/GALILEO, принимающие оцифрованные отсчеты сигнала с выхода радиочастотных модулей, преобразователь интерфейса, процессор, принимающий данные от блоков корреляторов, решающий навигационную задачу и передающий результаты ее решения вовне через преобразователь интерфейса. Приемник может быть собран из отдельных дискретных элементов или выполнен интегрально в виде набора микросхем или даже одной микросхемы.
Такой способ реализации приемника следует считать наиболее типовым, так как он позволяет приемнику работать автономно, не опираясь на поддержку сторонних электронных модулей и вспомогательных сервисов. К недостаткам реализации такого приемника следует отнести наличие собственного мощного процессора, необходимого для решения навигационной задачи и для выполнения большого количества операций, связанных с поиском и сопровождением спутников. В частности, реализация более сложных и ресурсоемких алгоритмов обработки результатов корреляций, необходимых для повышения чувствительности приемника в случае построения приемника подобным способом, требует и более высокопроизводительного процессора (более высокое быстродействие, большая память), что, соответственно, повышает энергопотребление приемника и его стоимость.
Альтернативный подход заключается в максимальном упрощении аппаратного модуля навигационного приемника, при котором сохраняется аналоговая часть, аналого-цифровой преобразователь и интерфейс для передачи данных, а вся необходимая обработка навигационных сигналов осуществляется с помощью внешнего компьютера, который параллельно с этим может выполнять какие-либо другие программы. Пример такого приемника навигационных сигналов приведен в патенте [2]. Данный приемник содержит антенный разъем, малошумящий усилитель, радиочастотные модули ГЛОНАСС и GPS, генератор опорного колебания, микроконтроллер, обеспечивающий управление радиочастотными модулями, принимающий оцифрованные отсчеты входного сигнала и передающий их по интерфейсу USB через выходной разъем на компьютер. Недостаток такого способа построения приемника заключается в повышении загрузки внешнего компьютера вплоть до невозможности использовать его для выполнения на нем других программ.
Третий подход является промежуточным и заключается в.том, что вся необходимая обработка навигационных сигналов разделяется между аппаратным модулем, который выполняет высокоскоростную обработку в реальном времени, и внешним компьютером (host computer), который используется для получения окончательного решения навигационной задачи. В литературе приемники, построенные согласно такому принципу, обычно называют "host-based" приемниками GPS [3]. На примере патента [3] видно, что помимо вынесенных на "хост" навигационных алгоритмов верхнего уровня на том же процессоре могут быть запущены пользовательские приложения, работающие под управлением наиболее распространенных операционных систем. При этом возникает проблема эффективного разделения операций между аппаратным модулем и внешним компьютером. Использование внешнего компьютера позволяет наряду с решением навигационной задачи решать и другие задачи, как связанные с навигацией, например использование и загрузка карт или использование службы, основанной на местоположении (LBS - Location-based service), так и не имеющие отношения к навигации. Также использование внешнего компьютера позволяет снизить массогабаритные показатели, энергопотребление и стоимость аппаратного модуля. Традиционный способ разделения функций между аппаратным модулем и внешним компьютером (host computer) заключается в том, что аппаратный модуль выполняет первичную аналоговую обработку навигационного сигнала, его преобразование в цифровую форму, выполнение корреляций с образцами навигационного сигнала (репликами), определение «сырых данных», а также частотную и фазовую автоподстройки с помощью петель обратной связи. При этом на внешний компьютер возлагается решение навигационной задачи, которое не требуется выполнять очень быстро, но которое требует высокой точности вычислений, в частности использования арифметики с плавающей точкой. Возможны и другие варианты. Так в патенте [4] разделение осуществляется таким образом, что на аппаратный модуль (measurement unit в терминологии [4]) возлагается вычисление результатов корреляций и определение по ним для каждого из сопровождаемых спутников ряда параметров, на основе которых затем формируются «сырые данные». К таким параметрам следует отнести момент времени, соответствующий началу новой эпохи сигнала (1 - либо 4-мс часть сигнала, соответствующая длине гражданского кода ГЛОНАСС, GPS и GALILEO), фазу сигнала, доплеровское смещение. При этом все операции, необходимые для автоподстройки частоты и фазы спутниковых сигналов, а также механизм поиска новых спутников, осуществляются в аппаратном модуле. Внешний компьютер (user unit в терминологии [4]) осуществляет дальнейшую обработку, не связанную с необходимостью жестко выдерживать время, затрачиваемое на обработку результатов корреляций, и не воздействует на настройки позиции и частоты, в соответствии с которыми работает блок корреляторов. Иными словами, внешний компьютер не выполняет операций, связанных с реальным временем. Результаты, полученные во внешнем компьютере, обратно в аппаратный модуль не передаются и не используются для улучшения результатов его работы, то есть обратная связь между внешним компьютером и аппаратным модулем отсутствует. Тем самым данный подход ограничивает возможности по расширению функциональных возможностей приемника в целом. Так, перенос на внешний компьютер других функций, не связанных с реальным временем, (при условии, что он обладает требуемыми вычислительными ресурсами), позволяет добиться дальнейшего упрощения аппаратного модуля, а также применить более сложные алгоритмы обработки навигационных сигналов, обеспечивающие повышение чувствительности приемника за счет большей вычислительной мощности внешнего компьютера.
Для более надежной работы приемника в условиях электромагнитных помех различного происхождения в состав приемника могут быть введены дополнительные модули, предназначенные для определения, удаления или компенсации узкополосных периодических помех. Актуальность борьбы с узкополосными помехами возрастает по мере увеличения чувствительности, так как линейчатые спектры навигационных сигналов, в первую очередь С/А кода GPS и кода стандартной точности ГЛОНАСС, не обеспечивают достаточной степени подавления частотно селективных помех, источником которых может служить окружающая электронное оборудование и собственный радиочастотный модуль. Принципы построения приемников с функцией подавления узкополосных помех приведены в патентах [5, 6]. Эти принципы основаны на определении и удалении сигнала помехи до ее попадания на вход корреляторов либо на компенсации тональной помехи на выходе корреляторов, для чего требуется точное определение параметров (амплитуды, частоты, фазы) каждой помехи и оперативное слежение за ними при помощи ФАПЧ, либо на определении степени опасности помехи для каждого сопровождаемого спутника и принятии решения о временной блокировке спутника помехой, то есть о выключении его из навигации.
Для определения и устранения узкополосных помех в патенте [5] вводится специальный процессор, в основе работы которого может лежать быстрое преобразование Фурье (БПФ), однако предполагаются и другие способы. В патентах [5, 6] также предлагается выявлять пульсирующие помехи, создаваемые периодически работающими радиопередатчиками, и блокировать работу приемника на время активной фазы таких помех. Как "компромиссный" вариант определение помех может быть организовано без участия специального процессора, на основе анализа сигналов с выходов корреляторов [6]. Оценивание и подавление помех до их попадания в корреляторы является самым надежным и одновременно самым дорогим способом борьбы с помехами. Компенсация помех на выходе корреляторов или в процессе формирования «сырых данных» существенно уступает первому методу по надежности, но позволяет удешевить приемник и снизить энергопотребление. В случае построения приемника по принципу "host-based", то есть с участием стороннего вычислительного устройства [4], компенсация помех на выходе корреляторов может быть поручена пользовательскому процессору. Однако для полноценной борьбы с помехами все операции, связанные с их определением и устранением, должны выполняться в аппаратном модуле, что также является недостатком принципов построения приемника, описанных в патенте [4]. Приемник, описанный в патенте [4], наиболее близок к предлагаемому и выбран в качестве прототипа
Раскрытие изобретения
Предлагаемым изобретением решаются задачи создания приемника сигналов навигационных систем ГЛОНАСС и GPS/GALILEO, который позволяет осуществлять прием навигационных сигналов ГЛОНАСС и GPS (или GALILEO вместо GPS) одновременно, причем с целью снижения габаритов, стоимости и энергопотребления устройства, а также в целях достижения максимальной чувствительности в различных режимах для выполнения части операций, необходимых для обработки принятых сигналов, используется внешний компьютер, не входящий в состав приемника. В качестве внешнего компьютера может выступать специализированное устройство, ориентированное на решение навигационных задач, а также настольный компьютер, ноутбук, планшетный компьютер, смартфон или другое мобильное устройство.
Другой задачей, решаемой предлагаемым изобретением, является построение такой структурной схемы приемника, которая позволит максимально использовать вычислительные ресурсы внешнего компьютера вне зависимости от запущенной на нем операционной системы и той степени оперативности, с которой программа на внешнем компьютере способна осуществлять управление критичными ко времени операциями, выполняемыми приемником. В дополнение к сказанному, настоящим изобретением предлагается новый способ организации схемы подавления узкополосных помех (anti-jamming), позволяющий при минимальном усложнении аппаратной части достичь такого же эффективного подавления помех, как при классической реализации подавления помех в отдельном электронном модуле.
Перечисленные выше задачи решаются настоящим изобретением в предположении, что динамика объекта, на котором установлен приемник, не слишком высока, а предельная чувствительность обеспечивается лишь в статическом режиме. В этом случае распределение узкополосных помех по спектру можно считать относительно постоянным, а ускорение приемника и производную от ускорения при его перемещении в пространстве - незначительными. Последнее обстоятельство дает возможность управлять корреляторами с большими временными интервалами, практически не ухудшая при этом соотношения сигнал/шум на выходе корреляторов и не снижая общего качества сопровождения спутников. Управление корреляторами в таком режиме с точки зрения следящих систем ведется обычным образом, однако сигналы ошибки, вырабатываемые дискриминаторами следящих систем, вычисляются исходя из той позиции и того доплеровского смещения, которые должны были быть заложены в коррелятор при традиционном «моментальном» и регулярном управлении корреляторами. Для пересчета реальных данных, выдаваемых корреляторами, управляемыми с большими задержками и в общем случае асинхронно, в те данные, которые были бы получены с идеально управляемых корреляторов, используется специальная схема синхронизации.
Относительная стационарность помех также позволяет управлять схемой подавления помех с большими временными интервалами. В предлагаемом изобретении функция подавления помех реализована непосредственно в корреляторах, а анализ помеховой обстановки, как и выработка сигналов управления корреляторами, осуществляется в процессоре внешнего компьютера.
Сущность предлагаемого изобретения заключается в следующем.
Предлагаемое устройство, представляющее собой ГЛОНАСС/GPS/GALILEO приемник, содержит радиочастотный модуль, выполняющий усиление и фильтрацию сигналов ГЛОНАСС, GPS и GALILEO, их перенос на промежуточную частоту и преобразование в цифровую форму, блоки корреляторов, вычисляющих корреляции сигналов ГЛОНАСС, GPS и GALILEO за одну эпоху, блок определения узкополосных помех, анализирующий спектр в полосе частот GPS, ГЛОНАСС и GALILEO, и интерфейс, при помощи которого данные с других блоков передаются внешнему компьютеру и данные с внешнего компьютера передаются блокам, которым они адресованы.
Вход радиочастотного модуля является входом всего приемника и подключается к антенне, рассчитанной на работу в диапазоне частот систем ГЛОНАСС/GPS/GALILEO. Радиочастотный модуль включает в себя малошумящий усилитель, выход которого соединен с входом полосового фильтра, полоса пропускания которого охватывает спектры сигналов ГЛОНАСС и GPS, выход полосового фильтра соединен со входом делителя мощности входного сигнала, при этом первый выход делителя мощности входного сигнала соединен с входом преобразователя частоты сигнала GPS/GALILEO, а второй выход делителя мощности входного сигнала соединен с входом преобразователя частоты сигнала ГЛОНАСС. Преобразователь частоты выполняет перенос спектра входного сигнала с несущей частоты навигационного сигнала ГЛОНАСС и GPS или GALILEO на нулевую частоту и формирование квадратурных составляющих сигнала, которые поступают на входы аналого-цифровых преобразователей. Данные преобразователи преобразуют квадратурные составляющие сигнала в поток оцифрованных отсчетов. Частота оцифровки потока отсчетов формируется генератором опорных колебаний радиочастотных модулей. Выходы аналого-цифровых преобразователей являются выходами радиочастотного модуля.
Один выход радиочастотного модуля соединен с блоком корреляторов GPS/GALILEO, a другой выход радиочастотного модуля соединен с блоком корреляторов ГЛОНАСС. Блоки корреляторов реализованы аппаратно для ускорения работы. Также оба выхода радиочастотного модуля соединены с входом блока определения узкополосных помех, предназначенным для расчета значений частот, на которых присутствуют узкополосные помехи, способные помешать приему навигационных сигналов. Выходы блоков корреляторов GPS/GALILEO и ГЛОНАСС, блока определения узкополосных помех, а также выходы радиочастотных модулей соединены со входом преобразователя интерфейса, а выход преобразователя интерфейса соединен с внешним компьютером. Преобразователь интерфейса предназначен для преобразования разрозненных и в общем случае неравномерно формируемых данных с различных блоков приемника в набор структурированных (собранных в кадры) данных и их последовательной передачи внешнему устройству. Со стороны внешнего компьютера в преобразователь интерфейса поступают команды управления различными блоками приемника. Сформированные кадры передаются внешнему компьютеру с равными временными интервалами, в то время как передача команд управления со стороны компьютера осуществляется в общем случае асинхронно (с неопределенной величиной временной задержки, которая зависит от степени загрузки внешнего компьютера). Блоки корреляторов, определения узкополосных помех и преобразователь интерфейса могут быть реализованы на основе программируемой логической интегральной схемы (ПЛИС/FPGA) или в виде заказной интегральной схемы.
Блоки корреляторов ГЛОНАСС и GPS/GALILEO включают в себя корреляторы двух типов.
Блок корреляторов первого типа содержит один или несколько массивов корреляторов, обеспечивающих параллельное вычисление корреляций для группы смежных позиций возможного начала эпохи определенного спутника при заданном доплеровском смещении. Корреляции вычисляются для задаваемого диапазона позиций, отстоящих друг от друга на фиксированный шаг
Блок корреляторов второго типа содержит набор корреляторов, обеспечивающих параллельное вычисление корреляций для произвольных позиций и доплеровских смещений одного или нескольких спутников.
Особенностью корреляторов в предлагаемом устройстве является возможность загрузки в них модифицированных образцов навигационного сигнала (реплик). Размер реплик соответствует длительности повторяемого псевдослучайного кода (эпохи), равной одной миллисекунде для сигналов GPS и ГЛОНАСС и четырем миллисекундам для сигнала GALILEO. Каждый коррелятор второго типа имеет дополнительную ячейку памяти для идентификации своего состояния (StateID). StateID загружается в коррелятор одновременно с изменением других параметров, каковыми являются реплика и специальным образом задаваемый момент начала корреляции. Загружаемая реплика формируется внешним компьютером с учетом доплеровского смещения и информации с блока определения узкополосных помех. StateID передается из коррелятора обратно во внешний компьютер месте с результатами работы коррелятора. С его помощью программа на внешнем компьютере определяет настройки коррелятора, в соответствии с которыми были получены результаты работы данного коррелятора. Разрядность StateID выбирается таким образом, чтобы программа на внешнем компьютере могла однозначно идентифицировать порядковый номер конфигурации коррелятора.
Массив корреляторов первого типа также предполагает загрузку реплики извне, однако вычисление массива корреляций в этом блоке производится с использованием одной и той же реплики. Если массивов корреляторов в блоке корреляторов первого типа несколько, каждый массив корреляторов хранит свою версию реплики, что позволяет параллельно считать корреляции для разных доплеровских смещений.
Корреляторы первого типа предназначены для поиска новых спутников, корреляторы второго типа - для сопровождения найденных спутников. Загрузка модифицированной реплики позволяет бороться с узкополосными помехами за счет обнуления соответствующих частот в спектре реплики. Наличие StateID в управляющих командах и в возвращаемых результатах корреляторов второго типа позволяет согласовать работу корреляторов и адаптивных систем управления корреляторами, которые в предлагаемом устройстве реализуются на стороне внешнего компьютера. Согласование работы корреляторов и адаптивных систем заключается в определении фактического времени прихода на коррелятор управляющих команд с новой позицией и доплеровским смещением, посылаемых внешним компьютером коррелятору. Информация о времени фактического прихода управляющей команды коррелятору позволяет скорректировать результаты корреляций таким образом, как если бы они были получены при моментальном поступлении команды на коррелятор.
Блок определения узкополосных помех представляет собой схему БПФ с количеством точек, равным или превышающим длину псевдослучайного кода GPS, ГЛОНАСС или GALILEO, а также буфер входных отсчетов и схему предобработки отсчетов, позволяющую снизить длину БПФ в зависимости от того, сигнал какой системы подвергается анализу. Буфер входных отсчетов и схема предобработки содержит набор последовательно соединенных элементов задержки и сумматоров, на вход которых подается сигнал с выхода радиочастотного модуля GPS/GALILEO или ГЛОНАСС, а выходы которых соединены с входом блока БПФ, выход которого соединен с преобразователем интерфейса.
Вся остальная обработка сигналов выполняется внешним компьютером на основе результатов, полученных блоком корреляторов GPS/GALILEO и ГЛОНАСС, блоком определения узкополосных помех, а также отсчетов в цифровой форме непосредственно с радиочастотного модуля. Внешний компьютер обеспечивает подстройку частоты и фазы корреляторов, путем формирования соответствующей реплики, оценивает величину доплеровского смещения, положение корреляционного пика, определяет границы информационных бит в сигнале, выделяет из сигнала преамбулу, декодирует данные (если это необходимо), формирует «сырые данные», оценивает наличие узкополосных помех, решает навигационную задачу и осуществляет управление режимом работы радиочастотного модуля и корреляторов.
Для обеспечения должной синхронизации между программой на внешнем компьютере и блоками корреляторов подаваемые на коррелятор команды содержат дополнительные управляющие параметры. Полный набор параметров, подаваемых на коррелятор второго типа, включает в себя изменение позиции начала корреляции относительно текущей позиции, приращение позиции начала корреляции за одну эпоху, реплику, сформированную с учетом определенного доплеровского смещения и помех, выделенных блоком определения помех, а также новый StateID. Помимо этого на коррелятор могут поступать команды включения и выключения коррелятора. В качестве результата работы с коррелятора на внешний компьютер передается комплексное значение корреляции, а также соответствующий StateID. Набор параметров, передаваемых коррелятору первого типа, включает в себя реплику, границы диапазона позиций начала корреляций, приращение позиции начала корреляции за одну эпоху, а также команды включения или выключения работы корреляторов. От корреляторов первого типа передаются только результаты корреляций.
С блока определения узкополосных помех на внешний компьютер передаются результаты выполнения БПФ. Со стороны внешнего компьютера блоку определения помех поступают команды включения, выключения и периодичности работы для каждого из типов навигационных сигналов: GPS, ГЛОНАСС и GALILEO.
Команды с внешнего компьютера на радиочастотный модуль управляют настройками радиочастотного модуля, его включением/выключением, а также разрешают либо запрещают выдачу оцифрованных отсчетов на внешний компьютер и ее периодичность. Радиотракты GPS/ GALILEO и ГЛОНАСС могут управляться как независимо друг от друга, так и единым образом.
Преобразователь интерфейса с равными интервалами времени формирует собранную с перечисленных выше модулей и блоков информацию и передает ее внешнему компьютеру в виде форматированного потока кадров. Преобразователь интерфейса получает от внешнего компьютера сформированный внешним компьютером форматированный поток кадров, выделяет из него управляющие команды, адресованные различным модулям и блокам, и обеспечивает передачу принятых команд модулям-адресатам.
Программа, работающая на стороне внешнего компьютера, содержит драйвер, обеспечивающий буферированный прием и передачу данных и команд между компьютером и приемником. В задачу драйвера также входит управление потоком команд с целью недопущения их слишком быстрой доставки приемнику. Если в буфере команд оказывается несколько однотипных команд, адресованных одному исполнительному устройству, например это могут быть новые параметры, предназначенные одному и тому же коррелятору (либо массиву корреляторов) первого или второго типа, приемнику посылается только самая последняя команда. Остальные команды в этом случае из буфера команд удаляются.
Краткое описание чертежей
На фиг.1 приведена общая структурная схема предлагаемого изобретения. ГЛОНАСС/GPS/GALILEO приемник содержит радиочастотный модуль 101, блок определения узкополосных помех 102, блок корреляторов GPS/GALILEO 103, блок корреляторов ГЛОНАСС 104, преобразователь интерфейса 105.
На фиг.2 приведена структурная схема радиочастотного модуля, который содержит антенный разъем 201, малошумящий усилитель 202, полосовой фильтр 203, делитель мощности входного сигнала 204, генератор опорных колебаний 205, преобразователь частоты GPS/GALILEO 206, преобразователь частоты ГЛОНАСС 207, аналого-цифровые преобразователи 208 и 209.
На фиг.3 приведена структурная схема блока определения узкополосных помех, который содержит блок предобработки сигнала ГЛОНАСС 301, включающий в себя КИХ-фильтр 303 и формирователь импульсной характеристики (ИХ) для спутников ГЛОНАСС 304 блок предобработки сигнала GPS/GALILEO 301, включающий в себя КИХ-фильтр 305 и формирователь импульсной характеристики для сигналов спутников GPS/GALILEO 306, блоки БПФ 307 и 308.
На фиг.4а приведена структурная схема блока корреляторов первого типа, который содержит блок задания позиции реплики и ее сдвига за одну эпоху 401, блок памяти для реплики 402, блок предобработки 403, массив исполнительных устройств корреляторов 404, линию задержки для предобработанного сигнала 405.
На фиг.4б приведена структурная схема другого варианта блока корреляторов первого типа, которая содержит блок задания позиции реплики и ее сдвига за одну эпоху 401, блок памяти для реплики 402, блок предобработки 403, линию задержки для реплики 406, массив исполнительных устройств корреляторов 404.
На фиг.5 приведена структурная схема коррелятора второго типа, который содержит блок задания позиции реплики и ее сдвига за одну эпоху 501, блок памяти для реплики 502, ячейку памяти для StateID 503, блок предобработки 504, исполнительное устройство коррелятора 505.
На фиг.6 приведена структурная схема взаимодействия ГЛОНАСС/GPS/GALILEO приемника и внешнего компьютера, которая содержит ГЛОНАСС/GPS/GALILEO приемник 601, менеджер конфликтующих команд 602, выходное FIFO 603, входное FIFO 604, блок навигации 605, блок формирования «сырых данных» 606, блок поиска и сопровождения спутников 607, блок определения параметров корреляторов по StateID 608, драйвер 609, программу управления приемником и навигации 610.
Осуществление изобретения
Структурная схема приемника ГЛОНАСС/GPS/GALILEO, представленная на фиг.1, содержит радиочастотный модуль (101), блок определения узкополосных помех (102), блок корреляторов GPS/GALILEO (103), блок корреляторов ГЛОНАСС (104), преобразователь интерфейса (105).
Приемник работает следующим образом.
Входной навигационный сигнал через антенный разъем (201) радиочастотного модуля, изображенного на фиг.2, поступает на малошумящий усилитель (202), где усиливается, затем поступает на полосовой фильтр (203), который подавляет помехи, лежащие за пределами частотных полос сигналов GPS/GALILEO и ГЛОНАСС, после чего сигнал поступает на делитель мощности (204), где разделяется на два сигнала. Каждый из сигналов поступает на вход радиочастотного модуля (206, 207), в котором осуществляется формирование квадратурного сигнала и его усиление. Усиленный сигнал подается на вход двухканального аналого-цифрового преобразователя (208, 209), на выходе которого получаются два потока оцифрованных отсчетов, соответствующих квадратурным компонентам сигнала. Формирование опорных частот для преобразования и оцифровки сигналов GPS, ГЛОНАСС и GALILEO осуществляется генератором опорных колебаний (205). Выходные данные радиочастотного модуля ГЛОНАСС передаются в блок корреляторов ГЛОНАСС, а выходные данные радиочастотного модуля GPS/GALILEO передаются в блок корреляторов GPS/GALILEO. Также выходные данные радиочастотного модуля ГЛОНАСС и радиочастотного модуля GPS/GALILEO передаются в блок определения узкополосных помех. Выходные данные блоков корреляторов и блока определения узкополосных помех передаются в преобразователь интерфейса, где преобразуются в последовательный формат. После преобразования данные передаются для дальнейшей обработки во внешний компьютер.
В блок определения узкополосных помех, представленный на фиг.3, поступают сигналы с радиочастотных модулей ГЛОНАСС и GPS/GALILEO. Сигнал с радиочастотного модуля ГЛОНАСС направляется в блок предобработки сигнала ГЛОНАСС (301), реализующий функцию короткого КИХ-фильтра (303), характеристика которого согласованна с фрагментом сигнала одного из спутников ГЛОНАСС, а ее длительность не превышает двух микросекунд. Профильтрованный в блоке предобработки сигнал ГЛОНАСС подается на блок БПФ (304), а выход БПФ является выходом всего блока предобработки. В КИХ-фильтр блока предобработки сигнала ГЛОНАСС периодически загружается импульсная характеристика, соответствующая разным спутникам ГЛОНАСС, что, в конечном счете, обеспечивает анализ помех в полосе всех спутников. Загрузка новых коэффициентов КИХ-фильтра осуществляется формирователем импульсных характеристик спутников ГЛОНАСС (304). Сигнал с радиочастотного модуля GPS/GALILEO поступает в аналогичный блок предобработки сигналов GPS/GALILEO (302) и далее в блок БПФ (308), выход которого является выходом всего определителя узкополосных помех. В блоке предобработки также реализован КИХ-фильтр (305), параметры которого загружаются формирователем импульсной характеристики для сигнала GPS и GALILEO (306). Результаты БПФ передаются через преобразователь интерфейса во внешний компьютер.
Сигнал с радиочастотного модуля ГЛОНАСС, поступивший в блок корреляторов первого и второго типа ГЛОНАСС, разветвляется на все имеющиеся корреляторы ГЛОНАСС. Сигнал с радиочастотного модуля GPS/GALILEO, поступивший в блок корреляторов первого и второго типа GPS/GALILEO, разветвляется на все имеющиеся корреляторы GPS/GALILEO. Оцифрованные сигналы ГЛОНАСС и GPS/GALILEO также поступают в преобразователь интерфейса.
Блок корреляторов первого типа (один или несколько) представлен на фиг.4а и 4б. Он содержит элементы памяти, хранящие текущий диапазон коррелируемых позиций, приращение коррелируемой позиции за одну эпоху (401) и образец (реплику) навигационного сигнала (402). Данный образец сигнала может быть соответствующим образом предыскажен в зависимости от ожидаемой величины доплеровского смещения сигнала, наличия узкополосных помех в сигнале и других факторов. Загрузка перечисленных параметров производится из внешнего компьютера через преобразователь интерфейса. В состав блока корреляторов первого типа также входит массив исполнительных устройств (404), выполняющих операцию свертки входного сигнала с хранимой в корреляторе репликой. Сформированный таким образом массив вычисленных корреляций поступает на выход блока корреляторов первого типа, который подсоединен к преобразователю интерфейса. На один из входов каждого исполнительного устройства корреляторов (далее - первый вход) подается навигационный сигнал (х), на другой вход - реплика (h). Для параллельного вычисления корреляций, соответствующих разным позициям из требуемого диапазона позиций, навигационный сигнал с входа блока корреляторов поступает в линию задержки с отводами (405), охватывающую требуемый диапазон позиций, а отводы от элементов задержки подсоединены к первым входам исполнительных устройств корреляторов. Альтернативным способом реализации того же принципа является подача на вход линии задержки с отводами (406) хранимой в блоке корреляторов реплики (402) и подсоединение отводов от элементов задержки ко вторым входам исполнительных устройств корреляторов (404).
Блок корреляторов второго типа состоит из массива независимо конфигурируемых корреляторов, представленных на фиг.5. Каждый коррелятор второго типа содержит элементы памяти, хранящие позицию начала корреляции, приращение позиции начала корреляции за одну эпоху (501), образец (реплику) навигационного сигнала (502), а также StateID (503). Загрузка новых параметров и StateID осуществляется таким образом, что все параметры вступают в силу одновременно. При этом каждый раз коррелятору передается новый StateID. Навигационный сигнал, поступающий на вход коррелятора, подается на блок предобработки (504), принцип действия которого схож с блоком предобработки корреляторов первого типа. Выход блока предобработки соединен с входом исполнительного устройства (505), на другой вход которого подается реплика. Выход исполнительного устройства коррелятора второго типа соединен с преобразователем интерфейса. Вместе с результатами корреляций на выход корреляторов также передается StateID.
Результаты работы корреляторов вместе с соответствующим StateID через преобразователь интерфейса передаются во внешний компьютер и используются для реализации функций поиска, слежения, декодирования и расчета навигационных данных. Перед отправкой эти данные собираются в кадры. Интервал следования кадров фиксирован, что позволяет компьютеру по порядковому номеру кадра определять время его создания и, следовательно, определять время, к которому относятся передаваемые в кадре данные. В обратном направлении - с внешнего компьютера на преобразователь интерфейса и далее в корреляторы передаются новые параметры, но в отличие от кадров с результатами работы корреляторов процесс передачи новых параметров корреляторам не периодичен и не синхронизирован с передачей кадров, содержащих результаты работы корреляторов. Обмен StateID между внешним компьютером и корреляторами позволяет реализовать петли слежения за доплеровским сдвигом с учетом задержек поступления новых параметров на корреляторы второго типа, за счет чего решается проблема синхронизации корреляторов и управляющей программы на внешнем компьютере.
Во время фазы поиска новых спутников используются корреляторы первого типа. Поиск осуществляется последовательно от спутника к спутнику. Наличие нескольких блоков корреляторов первого типа позволяет одновременно вычислять корреляции не только для разных позиций, но и для нескольких доплеровских смещений, так как в каждый блок корреляторов первого типа может быть загружена своя реплика. Корреляторы второго типа используются на завершающей стадии поиска и во время сопровождения спутников.
Исполнительные устройства корреляторов первого и второго типа устроены одинаково. В них выполняется простая операция свертки входного сигнала, поступающего на первый вход исполнительных устройств, с репликой, поступающей на второй вход исполнительных устройств. Длина свертки соответствует одной эпохе. После вычисления корреляции в блоке корреляторов первого типа или в корреляторах второго типа позиция начала корреляции увеличивается на хранимое в корреляторах приращение. Если со стороны внешнего компьютера коррелятору (блоку корреляторов) поступила команда с новыми параметрами, эти параметры записываются в память коррелятора и вступают в силу при расчете следующей корреляции. Новые параметры коррелятору включают в себя позицию либо ее изменение относительно предыдущей позиции, приращение позиции за одну эпоху, реплику и StateID.
Команды корреляторам формируются программой на внешнем компьютере, работающей под управлением любой операционной системы на любом универсальном процессоре, при этом никаких специальных требований по обеспечению режима реального времени к операционной системе не предъявляется. Структурная схема взаимодействия приемника ГЛОНСС/GPS/GALILEO и внешнего компьютера представлена на фиг.6. Сформированные программой навигации и управления приемником (610) команды поступают в драйвер устройства (609) и далее по физическому интерфейсу, тип которого не имеет принципиального значения, передаются в преобразователь интерфейса приемника (601). Драйвер устройства содержит FIFO для хранения команд корреляторам и другим блокам приемника (603), причем в случае наличия в FIFO нескольких команд, предназначенных одному и тому же исполнительному устройству, часть этих команд может быть удалена либо изменена с учетом информации из удаляемых команд. Команды, предназначенные одному и тому же исполнительному устройству приемника, считаются конфликтующими. Возникновение конфликтующих команд объясняется ограниченной пропускной способностью интерфейса приемника и неравномерной скоростью работы программы на внешнем компьютере. В случае конфликта приоритет отдается последней по времени команде, при этом прежние конфликтующие команды из FIFO удаляются, а содержание последней по времени команды изменяется с учетом параметров из удаленных команд. Для реализации описанного алгоритма в драйвере устройства предусмотрен специальный менеджер конфликтующих команд (602). Информация об изменении состава команд и формируемых драйвером StateID, передается назад в программу.
Помимо FIFO команд драйвер устройства (приемника) содержит FIFO принимаемых из приемника кадров (604), содержащих результаты работы корреляторов, данные с блока определения узкополосных помех и оцифрованный сигнал с выхода радиочастотного модуля. С выхода FIFO эти кадры поступают в программу навигации и управления приемником, которая анализирует содержащуюся в них информацию, определяет на основе ее, а также из перечня сохраненных в драйвере переданных приемнику команд фактические настройки корреляторов, для которых были получены результаты корреляций, и на базе совокупности этих данных формирует команды различным исполнительным устройствам приемника. Помимо этого программа навигации и управления приемником формирует "сырые данные", решает навигационную задачу и передает ее результат пользовательским приложениям, запущенным на том же универсальном процессоре.
Информация об изменении состава команд и формируемых драйвером StateID из драйвера устройства (приемника) поступает в блок определения параметров корреляторов по StateID. В этот же блок поступают кадры из входного FIFO драйвера (604). Далее по номеру кадра и StateID в блоке определения параметров корреляторов по StateID (608) определяются момент времени и настройки коррелятора, в соответствии с которыми были получен результаты корреляций. Задержка в доставке управляющих команд корреляторам приводит к тому, что настройки корреляторов, в соответствии с которыми определялись корреляции, соответствуют более ранним командам. Для компенсации этого эффекта в процедуре поиска и сопровождения спутников (607) фактические результаты работы корреляторов пересчитываются в новый набор данных, который соответствует последним командам, посланным корреляторам. Пересчитанные результаты корреляций используются для выработки сигнала ошибки и подстройки следящих систем сопровождения спутников, а также для формирования "сырых данных". При этом способ пересчета может варьироваться в зависимости от используемых следящими системами алгоритмов определения сигнала ошибки и подстройки. В частности, вместо пересчета результатов корреляций в новую позицию, соответствующую текущим параметрам следящей системы, разница в позициях может быть учтена при вычислении сигнала ошибки. Блок формирования "сырых данных" (606) вычисляет псевдоизмерения (псевдодальности и псевдоскорости). Блок навигации (605) вычисляет позицию и скорость пользователя. Важно отметить, что синхронизированными с генератором опорных колебаний приемника (611), каковым чаще всего служит ТСХО, являются только сам приемник (601) и входное FIFO драйвера (604). Остальные модули драйвера и управляющей программы работают по отношению к приемнику в асинхронном режиме.
Источники информации
1. RU 83342. ГЛОНАСС/GPS/GALILEO ПРИЕМНИК.
2. RU 81806. ПРОГРАММНО-АППАРАТНЫЙ ГЛОНАСС/GPS ПРИЕМНИК
3. US 2002/6430503. DISTRIBUTED GPS NAVIGATION SYSTEM.
4. US 2004/003535. HOST BASED SATELLITE POSITIONING METHOD AND SYSTEMS
5. US 2003/0054755. WIRELESS RECEIVER WITH ANTI-JAMMING.
6. WO 2004/109315. DETECTION AND REDUCTION OF PERIODIC JAMMING SIGNALS IN GPS RECEIVERS AND METHODS THEREFOR.