Основы ГНСС для разработчиков ПО

advertisement
И.Ю.САМКОВ
Московское конструкторское бюро ”Компас”
ПРОГРАММНЫЕ МОДУЛИ ДЛЯ СПУТНИКОВОЙ
НАВИГАЦИИ
Рассматриваются особенности применения программных навигационных
модулей ГНСС, предлагаются методы оптимизации функционирования системы при
использовании программных навигационных модулей.
В настоящее время задача определения координат и прокладки
маршрутов с использованием глобальных навигационных спутниковых
систем (ГНСС), включая GPS, ГЛОНАСС и Gallileo, является актуальной
для множества устройств потребительской электроники. Применение ГНСС
давно уже не ограничено использованием в транспорте, в геодезической
оснастке, судоходстве или в дорогостоящих системах позиционирования –
всё больше становится на рынке электронных систем с поддержкой ГНСС,
таких как телефоны, PDA (Personal Digital Assistant), PND (Personal
Navigation Devices), фотоаппараты и наручные часы.
Аппаратные ГНСС-модули являются достаточно дорогостоящими. Т.к. в
большинстве изделий широкого потребления спутниковая навигация
является не основной, а дополнительной функцией, то высокая стоимость в
этом случае не удовлетворяет интересам рынка. При использовании
программного
ГНСС-модуля
становится
возможным
наделять
навигационными способностями широкий круг изделий, включая
мобильные телефоны и плееры. К тому же практически все эти устройства
уже содержат цветной ЖК-дисплей, который удобно использовать для
вывода навигационной информации.
При чисто-программной обработке сигналов ГНСС есть множество
архитектурных и детальных решений, которые сильно влияют на
чувствительность, быстродействие, точность позиционирования и
мощность потребления. Выгода гибкости архитектуры ПО заключается в
том, что можно достичь более высокого уровня технических характеристик
(например повышенной точности позиционирования при малом количестве
спутников) за меньшую цену, чем при использовании аппаратных модулей.
По причинам цены и быстродействия большая часть алгоритмов
обработки сигнала приёмника традиционно осуществляется ГНСС
коррелятором, используя или реальный коррелятор, или ядро цифрового
сигнального процессора (DSP), эмулирующее функции параллельного
коррелятора. Поворот к внедрению ГНСС в продукты потребительской
электроники меняет уравнение рентабельности инвестиций в сторону
выбора наиболее эффективного метода внедрения ГНСС.
В программной архитектуре (см. рис.1) задача обработки сигнала
переносится на главный процессор (аналогично программному модему,
повсеместно используемому в ПК).
NAND
flash
Малошумящий
Генератор
TXCO
усилитель
Приёмник
ГЛОНАСС/
GPS
с цифровым
выходом
Навигационные
данные
SPI
Управление
PDA/PND контроллер
(СнК)
SDRAM
Flash
media
Цветной
ЖК
дисплей
Аудио
Клавиатура
SD-card
Рис.2. Архитектура с программным навигационным модулем.
Обработку ГНСС сигналов в исключительно навигационных
устройствах выполняет обычно не главный процессор, т.к. цена
процессорных циклов значительно выше цены эквивалентного числа
вентилей, используемых в заказной БИС (ASIC) для ГНСС-обработки. Но в
современных телефонах мощный хост-процессор уже является частью
большой архитектуры и должен удовлетворять увеличению спроса на
мультимедиа-сервисы; такой процессор должен иметь достаточную
производительность
для
декодирования
потоковой
аудиои
видеоинформации. К тому же когда эти сервисы не используются,
процессор переходит в спящий режим, и готов для выполнения других
задач.
До недавнего времени производительности главного процессора в
подобных устройствах не хватало для осуществления программного ГНССмодуля. Однако сейчас хост-процессор уже способен поддерживать
обработку сигналов ГНСС, что снижает стоимость введения этой функции в
широкий спектр потребительских электронных устройств. В перспективе,
программно-реализованные навигационные модули будут добавлять к
стоимости основной системы примерно $3 (в два раза меньше, чем
аппаратные модули) [1].
Т.к. программные ГНСС-модули используют незадействованные
другими приложениями процессорные циклы, то это накладывает на
разработчиков ПО задачу оптимизации ВЧ-обработки. От инженеров-
программистов не требуется обязательно заново изобретать алгоритмы
обработки сигналов, на рынке присутствует уже готовый и отлаженный
софт для сигнальной ГНСС обработки (особенно это актуально для GPS).
Основная задача оптимизатора – суметь наилучшим образом внедрить
программный ГНСС-модуль в конкретную разработку. Главным образом
оптимизация направлена на обеспечение производительности и точности
при наихудших условиях, минимизацию потребляемой мощности и
сохранение архитектурной гибкости.
Вместо того чтобы постоянно поддерживать высокую точность на
фиксированном значении (как при непрерывной навигации), можно
использовать несколько рекомендаций, которые помогают снизить общую
нагрузку на процессор:
 Ограничение количества спутников в режиме сопровождения (чем
меньше спутников, тем меньше циклов процессора требуется на
сопровождение).
 Усреднение и фильтрация данных (уменьшает количество ошибок).
 Уменьшение интенсивности определения местоположения (для многих
носимых устройств вместо стандартной скорости фиксации положения
1раз/с достаточно скорости 1раз/10с).
 Использование незадействованных циклов процессора для повышения
точности.
 Выбор приёмника, который способен выдавать данные в виде
квадратурных составляющих I и Q (что облегчает работу процессора).
 Применение алгоритмов экстраполяции и интерполяции (создание
инерциальных систем помогает при потере сигнала, но полезно для
случаев, где маловероятно отклонение от траектории).
 Использование высокопроизводительных процессоров.
Стоит отметить, что $3 это лишь стартовая цена программных ГНССмодулей, и значит максимальная. Если ПО уже однажды разработано, оно
больше не требует вложения капитала. При низкой цене ГНСС станет
функцией, которая может быть внедрена практически в любое электронное
изделие.
Список литературы:
[1]. M.Lomer “Reviewing GNSS Basics For Software Engineers”,
Microwave&RF, May 2008.
[2]. “Get the picture?”, GPS World, March 2008.
[3]. D.Manandhar, R.Shibasaki, "Software-based GPS receiver a research and
simulation tool for global navigation satellite system”, Center for Spatial
Information Science, The University of Tokyo, 2004
Download