Модель окружения алгоритма оценивания отношения сигнал-шум — различия между версиями

Материал из SRNS
Перейти к: навигация, поиск
(Ключевые элементы архитектуры)
 
(не показаны 4 промежуточные версии 1 участника)
Строка 14: Строка 14:
 
|repository    = [http://code.google.com/p/gnss-qcno-estimator/ Google Code]
 
|repository    = [http://code.google.com/p/gnss-qcno-estimator/ Google Code]
 
|category1    = Коррелятор  
 
|category1    = Коррелятор  
|category2    = Сигнал-шум
+
|category2    = НИИ КП
|category3    = НИИ КП
+
|category3    = Оценивание сигнал/шум
 
|category4    =  
 
|category4    =  
 
|category5    =  
 
|category5    =  
Строка 100: Строка 100:
  
 
== Пример исполнения ==
 
== Пример исполнения ==
 +
 +
=== В прошивке [[НИИ КП]] ===
 +
 +
[[File:20120128_qcno1.png|thumb|800px|center|Работа алгоритма в боевой прошивке НИИ КП (модель) при линейном снижении с/ш; артефакты при низком SNR - намечающийся срыв слежения; режим без учета ЦИ с 1мс когерентным накоплением]]
 +
 +
[[File:20120128_qcno2.png|thumb|800px|center|Те же условия, но 22 дБГц]]
  
 
== См. также ==
 
== См. также ==

Текущая версия на 15:07, 25 апреля 2013

Список всех моделей
Crystal Clear action run.png
Модель окружения алгоритма оценивания отношения сигнал-шум
20111122 SNR1.png
Описание Тестбенч для алгоритма оценивания сигнал/шум + реализация алгоритма на Си
Автор(ы) Korogodin (Korogodinобсуждение)
Последняя версия 1.0 (11.10.2011)
Загрузить no link
Хранилище Google Code
Категории Коррелятор, НИИ КП, Оценивание сигнал/шум


Содержание

[править] Описание модели

Уже несколько лет с переменной интенсивностью разрабатывается алгоритм оценивания сигнал-шум. К нему переодически предъявляются новые требования, выдвигаются идеи по улучшению и доработки.

Возникла идея написать алгоритм, имитирующий внешнюю среду, в которой бы исполнялся алгоритм оценивания сигнал/шум.

На модель возлагаются следующие функции:

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

Алгоритм блока измерения отношения сигнал/шум предлагается максимально унифицировать.

Для этого:

  • Выделить блок установки режима и параметров
  • Выделить блок когерентного накопления
  • Выделить блок некогерентного накопления
  • Выделить блок расчета необходимых параметров и управления (платформозависимый).

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

[править] Ключевые элементы архитектуры

  • Скрипт scen_gen.m запускает генерацию указанных в нем сценариев. Генераторы сценариев представляют представляют собой отдельные скрипты, лежащие в каталоге scen_gen_cores. Результатом работы генератора сценариев становятся .mat-файлы, содержащие выборки квадратурных компонент и набор прочих полезных векторов:
    • Вектор I размера 1xK;
    • Вектор Q размера 1xK;
    • Параметр K - размер векторов;
    • InSync - флаг наличия синхронизации для каждого k-го такта;
    • FirstSync - импульс символьной синхронизации на первом такте символа;
    • LastSync - импульс символьной синхронизации на последнем такте символа;
    • Параметр SyncTemp - длительность одного символа в тактах;
    • Description - текст описания сценария;
    • qcno_ist - вектор отношения сигнал/шум, при которых производилось моделирование;
    • EpsW - вектор ошибок по частоте;
    • A_IQ - вектор значение амплитуды квадратур без учета рассогласований по параметрам;
    • A_IQ_eff - вектор значение амплитуды квадратур с учетом рассогласований по параметрам;
    • stdn_IQ - СКО шума квадратур;
    • Tc - интервал накопления в корреляторе;
    • Tf - интервал работы фильтра;
    • H - полоса СС за доплером.
  • Скрипт testbench.m запускает форму-интерфейс, в которой можно выбрать требуемый сценарий и передать его на выполнение в алгоритм оценивания отношения сигнал/шум.


[править] Алгоритм оценивания

[править] Описание алгоритма оценивания

Исследования показали эффективность скалярного метода оценивания отношения/сигнал шум. В данный момент его реализация заменила реализацию метода моментов.

Эквивалентная "Схема Beaulieu", если нам нужно посчитать только амплитуду - усредненное скалярное произведение векторов

Все оценки, для общности, приводятся к 1мс квадратурам. Оценка дисперсии квадратур устанавливается извне и дополнительно не оценивается - её ошибка не влияет на оценку квадрата амплитуды, а вклад в ошибку оценивания SNR мал.

Оценка квадрата амплитуды описывается моделью:

A^2_{IQ1, est} = A^2_{IQ1, effcos} + n_A,

где

A^2_{IQ1, effcos} = A^2_{IQ1} sinc^2 \left( \delta \omega T_{1ms}  K_c / 2 \right) cos \left( \delta \omega T_{1ms}  K_c  \right)  \rho^2 \left( \delta \tau \right)

- эффективная амплитуда (приведенная к 1 мс) квадратур с учетом полного когерентного накопления (K_c - число 1мс когерентных накоплений) и разницы между скалярным произведением и квадратом, A_{IQ1} = AL_{1ms}/2, n_A - СВ с нулевым математическим ожиданием и дисперсией

D_{SM} = \frac{4 A^2_{IQ1} \sigma^2_{IQ1} }{K_n K_c} + \frac{2  \sigma^4_{IQ1} }{K_n K^2_c}.

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

Уменьшение среднего скалярного произведения при расстройке частоты

Тем не менее, даже при таком уменьшении можно было бы работать по 20мс отсчетам, если бы не цифровая информация и большие ошибки по частоте.


[править] Реализация алгоритма

Для использования алгоритма к проекту следует подключить файлы PowerMeasure.cpp и PowerMeasure.h, а так же добавить команды вызова функции инициализации, когерентного накопления и управления приемником по результатам измерений в проект.

[править] Пример исполнения

[править] В прошивке НИИ КП

Работа алгоритма в боевой прошивке НИИ КП (модель) при линейном снижении с/ш; артефакты при низком SNR - намечающийся срыв слежения; режим без учета ЦИ с 1мс когерентным накоплением
Те же условия, но 22 дБГц

[править] См. также

Персональные инструменты
Пространства имён

Варианты
Действия
SRNS Wiki
Рабочие журналы
Приватный файлсервер
QNAP Сервер
Инструменты