Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Циклический сдвиговый блок



Блок Upsampler

Блок сэмплирования вверх моделирует реальную жизненную ситуацию, в которой входящий сигнал выбирается АЦП с гораздо более высокой скоростью, чем исходная частота 1,023 МГц. Это создает цифровую версию необработанного сигнала. Хорошим подходом к моделированию выходного сигнала ступени АЦП является предварительный выбор исходного сигнала путем повторения каждого из его 1023 выборок столько раз, сколько отношение между новой частотой дискретизации и исходной частотой 1,023 МГц. На рисунке 7 показано, как была проведена предварительная выборка в среде Simulink. Обратите внимание, что отношение между новой частотой дискретизации и исходной частотой умножается на переменную итерации подсистемы «for-loop», которая идет от 1 до 1023. Результат умножения принимается и выполняется поточная операция, чтобы получить и индекс. Этот индекс будет использоваться для извлечения элемента входящего сигнала с чипом длиной 1023 и вывода его в восходящую дискретизацию.

 

Рисунок 7 Блок-схема Upsampler

Выход блока будет сигналом размера: новая частота дискретизации / 1000, и поэтому алгоритм внутри блока эмулирует выход после этапа выборки АЦП в приложении реального времени.

 

Циклический сдвиговый блок

Рисунок 8 Блок-схема CircShift              Листинг 2 Код для блока CircShift

 

 

Блок циклического сдвига был создан для обеспечения операции «кругового сдвига» внутри среды Simulink. B = круговой сдвиг (A, сдвиг) циклически сдвигает значения в массиве A по сдвигам элементов. Shiftsize - это вектор целочисленных скаляров, где n-й элемент определяет величину сдвига для n-го измерения массива A. Если элемент в размере сдвига положителен, значения A сдвигаются вниз (или вправо). Если он отрицательный, значения A сдвигаются (или влево). Если оно равно 0, значения в этой размерности не сдвигаются.

 

Для экспорта функции в среду Simulink использовался функциональный блок MATLAB. С помощью этого блока вы можете написать функцию MATLAB® для использования в модели Simulink®. Созданная вами функция MATLAB выполняется в симуляции как собственный блок и автоматически генерирует код для цели Simulink Coder ™ target4.

 

Блок используется путем указания входных и выходных данных в функциональный блок MATLAB в заголовке функции в качестве аргументов и возвращает значения, как показано в листинге 2. Аргумент и возвращаемые значения предыдущей примерной функции соответствуют входам и выходам блок на рисунке 8. Данные, входные триггеры и выходы функциональных вызовов также могут быть определены с помощью Ports and Data Manager, к которым можно получить доступ из редактора функциональных блоков MATLAB, выбрав «Редактировать данные». Функциональный блок MATLAB генерирует эффективный встраиваемый код на основе анализа, который определяет размер, класс и сложность каждой переменной.

 

4.5- 1, 0 Сигнал уровня до 1, -1 Сигнал уровня.

После генерации кода коды объединяются с навигационными данными через сумматоры по модулю 2. Исключительная операция OR используется для двоичных последовательностей, представленных 0 и 1, и ее свойства показаны в таблице 2.

 

Таблица 2 Выход исключительной операции ИЛИ

         
Input   Input   Output
0   0   0
0   1   1
1   0   1
1   1   0

Если двоичные последовательности были представлены полярным представлением без возврата к нулю, то есть 1 и -1, вместо этого можно было бы использовать обычное умножение. Соответствующие свойства умножения с двумя двоичными последовательностями без возврата к нулю показаны в таблице 3.

 

Таблица 3 Результат двоичного умножения

 

Input Input Output
-1 -1 1
-1 1 -1
1 -1 -1
1 1 1

 

Внутренние элементы блока представлены на рисунке ниже. Простая операция умножения на 2 после добавления -1 гарантирует, что каждый 0 в двоичной последовательности будет изменен на -1.

 

                                                   Рисунок 9. Диалоговая диаграмма «0 на -1»

4.6-C / A Блок генератора кода

 

Блок представляет собой просто косметический инструмент для разработки процедуры получения сигнала в частотной области. Этот метод основан на традиционном подходе к циркулярному свертыванию входящего сигнала с кодом PRN спутника. Однако частотный параллельный метод, подробно объясненный позже, в основном использует тот факт, что

свертка во временной области соответствует умножению в частотной области [6]. Блок просто отделяет генерацию кода PRN для простой настройки симуляций.

 

Блок аналогичен упомянутому выше косметическому инструменту, который был создан для более простой реализации, поскольку на рисунке 10 показано, что блок сформирован из двух ранее задокументированных блоков, для получения дополнительной информации об этом см. 4.1 -GPS PRN Generator Block и 4.3-Upsampler Блок.

 

 

Рисунок 10 Внутренняя структура блока кода C / A

 

Рисунок 11 показывает список параметров блока и требует только спецификаций двух полей:

 

1. Частота дискретизации (Гц): введенное здесь значение представляет собой только желаемую частоту дискретизации, при которой будет работать АЦП, и, следовательно, спецификация скорости передачи данных для модели.

 

3. PRN спутника, который пользователь хочет имитировать. Здесь допустимые значения варьируются от 1 до 37.

4.

 

Рисунок 11 Спецификация параметров для кода C / A

Блок сбора фаз кода

 

Традиционный подход сворачивает принятый сигнал с кодом CDMA каждого спутника во временной области. Правильное выравнивание соответствует тому, которое максимизирует эту свертку. Этот подход имеет вычислительную сложность O (n2), где n - количество выборок. Совсем недавно GPS-приемники блокируют спутник с использованием вычисления частотной области. Этот подход использует тот факт, что свертка во временной области соответствует умножению в частотной области. Он выполняется в следующих трех шагах, показанных в:

 

1. Приемник принимает БПФ принятого сигнала.

2. Он умножает выход этого преобразования Фурье на БПФ кода CDMA.

3. Он выполняет обратный БПФ по результирующему сигналу.

 

Этот трехэтапный процесс математически эквивалентен циркулярному свертку сигнала с кодом; таким образом, выход обратного БПФ будет увеличиваться при правильном сдвиге, который синхронизирует код с принятым сигналом [6]. В вычислительной сложности такого подхода O (n log n). В течение последних двух десятилетий это был алгоритм с самой низкой вычислительной сложностью для синхронизации GPS-приемника.

 

 

Рисунок 12 Шаги, выполняемые алгоритмом синхронизации FFT

 

 

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

 

Блоки имеют только параметр настройки, и для частоты дискретизации метода сбора данных этот параметр должен быть аналогичен параметрам, выбранным для кода 4.6-C / A

 

Блок генератора и 4.8 Поиск по параллельному коду базовой линии (в дополнение к доплеровской коррекции).

 

 

 

 

Рисунок 13 Внутренние подблоки сбора фаз кода

 

4.8 Поиск по параллельному коду базовой линии (в дополнение к доплеровской коррекции).

 

Блок реализует метод поиска параллельного кода для сигнала необработанного GPS в реальном времени. Блок получает два входных параметра, где сигнал является необработанным сигналом GPS, а код C / A - это локальный сгенерированный код, используемый в качестве метода сравнения.

 

Рисунок 14 Базовый параллельный код Поиск списка параметров

 

Блок имеет несколько параметров для достижения конечной функциональности, размер сигнала - это размер сигнала в образцах, который будет передан в код, это значение должно быть целым кратным (частота дискретизации / 1000). Промежуточная частота, выраженная в Hertz, представляет собой частоту, с которой несущая частота смещается в качестве промежуточного шага при передаче или приеме.

 

Частота дискретизации определяет количество выборок за единицу времени (обычно секунд), взятых из непрерывного сигнала, для создания дискретного сигнала. Параметр «Требуемый спутник» определяет спутник, который пользователь хочет настроить в процессе моделирования, если ожидается, что он будет находиться на необработанном сигнале.

 

4.9 - Генератор сигналов на основе рамки (любая частота выборки).

 

Этот блок является одним из самых важных в библиотеке, так как он моделирует шумный, мультиинтерференционный сигнал, который позже будет обрабатываться SDR-приемником. Существует несколько функций, которые делают этот блок более реалистичной. Блок основан на кадрах, и его можно подключить к симуляции для дальнейших операций корреляции, если симуляция вынуждена запускаться только один раз, это действительно симуляция при ее использовании. Поскольку блок генерирует сигнал, использующий подсистемы итераторов, время, используемое для итераций, инициируется внутренними часами «для подсистемы» и, следовательно, не зависит от времени тактового моделирования 5.

 

Блок проходит в три этапа следующим образом:

 

Этап 1. Подробнее см. На рисунке 15

 

1. Начинается путем генерации PRN-кодов 10 спутников (что является приближением средних спутников по времени) с использованием ранее описанных блоков генерации PRN. Рисунок 3, Рисунок 4 и Рисунок 5.

 

2. Выполните операцию upsampling на значение, указанное в параметре диалога. Блок будет интерполировать образцы и увеличить размер сигнала до желаемой частоты дискретизации.

3. Измените последовательность на полярное невозвратное на нулевое представление, изменив каждое значение 0 на -1.

 

4. Выполните круговую задержку в последовательности по значению, указанному для каждого спутника. Эти значения указаны в диалоговом параметре блока и обсуждаются ниже.

 

5. Суммирует все сигналы, генерируемые с помощью описанных выше шагов, чтобы создать единый сигнал из 1023 чипов.

 

Этап 2. Подробнее см. Рисунок 16

 

1. Блок добавляет белый гауссовский шум к сигналу с использованием блока Simulink AWGN. На этом этапе входной сигнал направляется для добавления шума, и из исходного входного сигнала создаются несколько сегментов или «ведра». В настоящий момент в сигнальном представлении после добавления шума было создано всего 40 ведер. В результате каждый ковш представляет собой различный уровень шума.

 

 

Рисунок 15 Фаза 1 блока моделирования сигналов

 

Фаза 3. Подробнее см. Рисунок 17

 

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

 

 

 

 

                                                                         Рисунок 16. Фаза 2. Добавление AWGN

 

                                               Рисунок 17. Фаза 3. Стадия изменения сигнала

 

 

Блок имеет несколько параметров, изменяемых из параметров диалога, как показано на рисунке 18, что позволяет изменять структуру блока. Эти параметры изменяют важные аспекты генерации сигнала и описываются ниже:

 

1. Список спутников (1: 9): это векторный параметр, который содержит до 9 номеров PRN спутников. Первое введенное число будет представлять целевой спутник моделирования.

 

2. Требуемая спутниковая задержка: значение удерживает задержку спутника или задержку фазы для PRN, указанной в первой позиции предыдущего параметра Dialog.

 

3. Вектор задержки интерференции (1: 9) * Первая запись предназначена для задержки многолучевого распространения: эти значения сохраняют фазовую задержку для остальных интерферирующих спутниковых сигналов, где первое значение указывает задержку многолучевости для целевого спутника.

 

4. Вектор усиления интерференции (1: 9) * Первая запись предназначена для ослабления многолучевости: эти значения содержат вектор веса, чтобы умножить каждый из сгенерированных векторов на коэффициент затухания.

 

5. SNR (дБ) для AWGN: это значение определяет отношение сигнал / шум, которое влияет на входящий сигнал.

 

5. Требуемая частота дискретизации (Гц): это значение определяет частоту дискретизации для модели.

 

 

                                                                                        Рисунок 18 Список параметров для блока

Обзор

Библиотека блоков представляет собой набор блоков, которые служат прототипами для экземпляров блоков в модели Simulink ®. Simulink поставляется с двумя встроенными библиотеками блоков: библиотекой блоков Simulink и библиотекой блоков Simulink Coder ™. Работа, описанная в этом документе, должна быть включена в библиотеку блоков Simulink с единственным отличием от того, что библиотека не встроена в Simulink . Эти блоки могут быть обозначены как определенные пользователем блоки библиотеки [7].

Библиотеки блоков, встроенные или определенные пользователем, являются полезной методикой для:

Пользовательская библиотека используется одинаково как любая другая библиотека. Библиотека должна быть открыта для использования. Это достигается так же, как и для модели. После открытия блоки перетаскиваются из библиотеки и помещаются в модель обычным способом

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

Добавление библиотеки в библиотечный браузер достигается путем написания функции MATLAB , называемой slblocks (в файле slblocks . m ). Функция slblocks должна иметь определенный формат, а slblock . m должен находиться в каталоге, который находится на пути MATLAB . Пример кода ниже показывает традиционный файл и вопрос о том, как он должен быть адаптирован под потребности пользователя. Предполагается, что библиотека была сохранена в файле customlib . mdl . В slblocks есть две несколько отличные части: первая часть указывает, что отображается в браузере библиотеки; а вторая часть указывает, что отображается, когда библиотека просматривается в более раннем стиле. Blocksets and Toolboxes view

функция blkStruct = slblocks

% SLBLOCKS Определяет библиотеку блоков.

% Имя библиотеки. Имя отображается в браузере библиотеки.

% содержимого.

blkStruct.Name = ['UndergraduateResearch' sprintf ('\ n') 'Library'];

% Функция, которая будет вызываться, когда пользователь дважды щелкает

% имени библиотеки.

blkStruct.OpenFcn = 'UndergraduateResearch';

% Аргумент, который должен быть установлен как отображение маски для подсистемы. Вы

% может прокомментировать эту строку, если не требуется какая-либо конкретная маска.

% Пример: blkStruct.MaskDisplay = 'plot ([0: 2 * pi], sin ([0: 2 * pi]);;;

blkStruct.MaskDisplay = '';

% Конец блоков

Листинг 3 Код для файла slblock . m , реализующего описанную библиотеку

Особенности библиотеки

Библиотеки не моделируются.

Библиотека по умолчанию заблокирована. Это означает, что он не может быть неосознанно изменен / изменен пользователем - пользователь должен конкретно сказать Simulink , что они знают, что они вносят изменения. Это защищает блоки библиотеки от бессмысленного или случайного вмешательства. (Когда пользователь пытается внести изменения в заблокированную библиотеку, они получают сообщение с запросом, хотят ли они разблокировать библиотеку или если они захотят отказаться от изменений, которые они пытаются сделать.)

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

Советы по использованию

Некоторым из кода, представленного в библиотеке, может потребоваться установка компилятора C для правильной работы в новой версии продуктов Mathworks . Документация доступна в Интернете по этой проблеме, и ее можно легко решить в соответствии с указаниями Центра документации Mathworks .

2. Большинство блоков в библиотеке предназначены для работы в качестве фрейма. По этой причине параметр времени моделирования при выполнении кода должен быть установлен на фиксированный временной интервал, причем в каждом симуляторе выполняется всего один временной шаг. Блоки были спроектированы с использованием внутренних циклов инерции « For », которые отвечают всем требованиям цикла.

Советы по использованию

Некоторым из кода, представленного в библиотеке, может потребоваться установка компилятора C для правильной работы в новой версии продуктов Mathworks. Документация доступна в Интернете по этой проблеме, и ее можно легко решить в соответствии с указаниями Центра документации Mathworks.

2. Большинство блоков в библиотеке предназначены для работы в качестве фрейма. По этой причине параметр времени моделирования при выполнении кода должен быть установлен на фиксированный временной интервал, причем в каждом симуляторе выполняется всего один временной шаг. Блоки были спроектированы с использованием внутренних циклов инерции «For», которые отвечают всем требованиям цикла.

Блок Upsampler

Блок сэмплирования вверх моделирует реальную жизненную ситуацию, в которой входящий сигнал выбирается АЦП с гораздо более высокой скоростью, чем исходная частота 1,023 МГц. Это создает цифровую версию необработанного сигнала. Хорошим подходом к моделированию выходного сигнала ступени АЦП является предварительный выбор исходного сигнала путем повторения каждого из его 1023 выборок столько раз, сколько отношение между новой частотой дискретизации и исходной частотой 1,023 МГц. На рисунке 7 показано, как была проведена предварительная выборка в среде Simulink. Обратите внимание, что отношение между новой частотой дискретизации и исходной частотой умножается на переменную итерации подсистемы «for-loop», которая идет от 1 до 1023. Результат умножения принимается и выполняется поточная операция, чтобы получить и индекс. Этот индекс будет использоваться для извлечения элемента входящего сигнала с чипом длиной 1023 и вывода его в восходящую дискретизацию.

 

Рисунок 7 Блок-схема Upsampler

Выход блока будет сигналом размера: новая частота дискретизации / 1000, и поэтому алгоритм внутри блока эмулирует выход после этапа выборки АЦП в приложении реального времени.

 

Циклический сдвиговый блок

Рисунок 8 Блок-схема CircShift              Листинг 2 Код для блока CircShift

 

 

Блок циклического сдвига был создан для обеспечения операции «кругового сдвига» внутри среды Simulink. B = круговой сдвиг (A, сдвиг) циклически сдвигает значения в массиве A по сдвигам элементов. Shiftsize - это вектор целочисленных скаляров, где n-й элемент определяет величину сдвига для n-го измерения массива A. Если элемент в размере сдвига положителен, значения A сдвигаются вниз (или вправо). Если он отрицательный, значения A сдвигаются (или влево). Если оно равно 0, значения в этой размерности не сдвигаются.

 

Для экспорта функции в среду Simulink использовался функциональный блок MATLAB. С помощью этого блока вы можете написать функцию MATLAB® для использования в модели Simulink®. Созданная вами функция MATLAB выполняется в симуляции как собственный блок и автоматически генерирует код для цели Simulink Coder ™ target4.

 

Блок используется путем указания входных и выходных данных в функциональный блок MATLAB в заголовке функции в качестве аргументов и возвращает значения, как показано в листинге 2. Аргумент и возвращаемые значения предыдущей примерной функции соответствуют входам и выходам блок на рисунке 8. Данные, входные триггеры и выходы функциональных вызовов также могут быть определены с помощью Ports and Data Manager, к которым можно получить доступ из редактора функциональных блоков MATLAB, выбрав «Редактировать данные». Функциональный блок MATLAB генерирует эффективный встраиваемый код на основе анализа, который определяет размер, класс и сложность каждой переменной.

 

4.5- 1, 0 Сигнал уровня до 1, -1 Сигнал уровня.

После генерации кода коды объединяются с навигационными данными через сумматоры по модулю 2. Исключительная операция OR используется для двоичных последовательностей, представленных 0 и 1, и ее свойства показаны в таблице 2.

 

Таблица 2 Выход исключительной операции ИЛИ

         
Input   Input   Output
0   0   0
0   1   1
1   0   1
1   1   0

Если двоичные последовательности были представлены полярным представлением без возврата к нулю, то есть 1 и -1, вместо этого можно было бы использовать обычное умножение. Соответствующие свойства умножения с двумя двоичными последовательностями без возврата к нулю показаны в таблице 3.

 

Таблица 3 Результат двоичного умножения

 

Input Input Output
-1 -1 1
-1 1 -1
1 -1 -1
1 1 1

 

Внутренние элементы блока представлены на рисунке ниже. Простая операция умножения на 2 после добавления -1 гарантирует, что каждый 0 в двоичной последовательности будет изменен на -1.

 

                                                   Рисунок 9. Диалоговая диаграмма «0 на -1»

4.6-C / A Блок генератора кода

 

Блок представляет собой просто косметический инструмент для разработки процедуры получения сигнала в частотной области. Этот метод основан на традиционном подходе к циркулярному свертыванию входящего сигнала с кодом PRN спутника. Однако частотный параллельный метод, подробно объясненный позже, в основном использует тот факт, что

свертка во временной области соответствует умножению в частотной области [6]. Блок просто отделяет генерацию кода PRN для простой настройки симуляций.

 

Блок аналогичен упомянутому выше косметическому инструменту, который был создан для более простой реализации, поскольку на рисунке 10 показано, что блок сформирован из двух ранее задокументированных блоков, для получения дополнительной информации об этом см. 4.1 -GPS PRN Generator Block и 4.3-Upsampler Блок.

 

 

Рисунок 10 Внутренняя структура блока кода C / A

 

Рисунок 11 показывает список параметров блока и требует только спецификаций двух полей:

 

1. Частота дискретизации (Гц): введенное здесь значение представляет собой только желаемую частоту дискретизации, при которой будет работать АЦП, и, следовательно, спецификация скорости передачи данных для модели.

 

3. PRN спутника, который пользователь хочет имитировать. Здесь допустимые значения варьируются от 1 до 37.

4.

 

Рисунок 11 Спецификация параметров для кода C / A

Блок сбора фаз кода

 

Традиционный подход сворачивает принятый сигнал с кодом CDMA каждого спутника во временной области. Правильное выравнивание соответствует тому, которое максимизирует эту свертку. Этот подход имеет вычислительную сложность O (n2), где n - количество выборок. Совсем недавно GPS-приемники блокируют спутник с использованием вычисления частотной области. Этот подход использует тот факт, что свертка во временной области соответствует умножению в частотной области. Он выполняется в следующих трех шагах, показанных в:

 

1. Приемник принимает БПФ принятого сигнала.

2. Он умножает выход этого преобразования Фурье на БПФ кода CDMA.

3. Он выполняет обратный БПФ по результирующему сигналу.

 

Этот трехэтапный процесс математически эквивалентен циркулярному свертку сигнала с кодом; таким образом, выход обратного БПФ будет увеличиваться при правильном сдвиге, который синхронизирует код с принятым сигналом [6]. В вычислительной сложности такого подхода O (n log n). В течение последних двух десятилетий это был алгоритм с самой низкой вычислительной сложностью для синхронизации GPS-приемника.

 

 

Рисунок 12 Шаги, выполняемые алгоритмом синхронизации FFT

 

 

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

 

Блоки имеют только параметр настройки, и для частоты дискретизации метода сбора данных этот параметр должен быть аналогичен параметрам, выбранным для кода 4.6-C / A

 

Блок генератора и 4.8 Поиск по параллельному коду базовой линии (в дополнение к доплеровской коррекции).

 

 

 

 

Рисунок 13 Внутренние подблоки сбора фаз кода

 

4.8 Поиск по параллельному коду базовой линии (в дополнение к доплеровской коррекции).

 

Блок реализует метод поиска параллельного кода для сигнала необработанного GPS в реальном времени. Блок получает два входных параметра, где сигнал является необработанным сигналом GPS, а код C / A - это локальный сгенерированный код, используемый в качестве метода сравнения.

 

Рисунок 14 Базовый параллельный код Поиск списка параметров

 

Блок имеет несколько параметров для достижения конечной функциональности, размер сигнала - это размер сигнала в образцах, который будет передан в код, это значение должно быть целым кратным (частота дискретизации / 1000). Промежуточная частота, выраженная в Hertz, представляет собой частоту, с которой несущая частота смещается в качестве промежуточного шага при передаче или приеме.

 

Частота дискретизации определяет количество выборок за единицу времени (обычно секунд), взятых из непрерывного сигнала, для создания дискретного сигнала. Параметр «Требуемый спутник» определяет спутник, который пользователь хочет настроить в процессе моделирования, если ожидается, что он будет находиться на необработанном сигнале.

 

4.9 - Генератор сигналов на основе рамки (любая частота выборки).

 

Этот блок является одним из самых важных в библиотеке, так как он моделирует шумный, мультиинтерференционный сигнал, который позже будет обрабатываться SDR-приемником. Существует несколько функций, которые делают этот блок более реалистичной. Блок основан на кадрах, и его можно подключить к симуляции для дальнейших операций корреляции, если симуляция вынуждена запускаться только один раз, это действительно симуляция при ее использовании. Поскольку блок генерирует сигнал, использующий подсистемы итераторов, время, используемое для итераций, инициируется внутренними часами «для подсистемы» и, следовательно, не зависит от времени тактового моделирования 5.

 

Блок проходит в три этапа следующим образом:

 

Этап 1. Подробнее см. На рисунке 15

 

1. Начинается путем генерации PRN-кодов 10 спутников (что является приближением средних спутников по времени) с использованием ранее описанных блоков генерации PRN. Рисунок 3, Рисунок 4 и Рисунок 5.

 

2. Выполните операцию upsampling на значение, указанное в параметре диалога. Блок будет интерполировать образцы и увеличить размер сигнала до желаемой частоты дискретизации.

3. Измените последовательность на полярное невозвратное на нулевое представление, изменив каждое значение 0 на -1.

 

4. Выполните круговую задержку в последовательности по значению, указанному для каждого спутника. Эти значения указаны в диалоговом параметре блока и обсуждаются ниже.

 

5. Суммирует все сигналы, генерируемые с помощью описанных выше шагов, чтобы создать единый сигнал из 1023 чипов.

 

Этап 2. Подробнее см. Рисунок 16

 

1. Блок добавляет белый гауссовский шум к сигналу с использованием блока Simulink AWGN. На этом этапе входной сигнал направляется для добавления шума, и из исходного входного сигнала создаются несколько сегментов или «ведра». В настоящий момент в сигнальном представлении после добавления шума было создано всего 40 ведер. В результате каждый ковш представляет собой различный уровень шума.

 

 

Рисунок 15 Фаза 1 блока моделирования сигналов

 

Фаза 3. Подробнее см. Рисунок 17

 

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

 

 

 

 

                                                                         Рисунок 16. Фаза 2. Добавление AWGN

 

                                               Рисунок 17. Фаза 3. Стадия изменения сигнала

 

 

Блок имеет несколько параметров, изменяемых из параметров диалога, как показано на рисунке 18, что позволяет изменять структуру блока. Эти параметры изменяют важные аспекты генерации сигнала и описываются ниже:

 

1. Список спутников (1: 9): это векторный параметр, который содержит до 9 номеров PRN спутников. Первое введенное число будет представлять целевой спутник моделирования.

 

2. Требуемая спутниковая задержка: значение удерживает задержку спутника или задержку фазы для PRN, указанной в первой позиции предыдущего параметра Dialog.

 

3. Вектор задержки интерференции (1: 9) * Первая запись предназначена для задержки многолучевого распространения: эти значения сохраняют фазовую задержку для остальных интерферирующих спутниковых сигналов, где первое значение указывает задержку многолучевости для целевого спутника.

 

4. Вектор усиления интерференции (1: 9) * Первая запись предназначена для ослабления многолучевости: эти значения содержат вектор веса, чтобы умножить каждый из сгенерированных векторов на коэффициент затухания.

 

5. SNR (дБ) для AWGN: это значение определяет отношение сигнал / шум, которое влияет на входящий сигнал.

 

5. Требуемая частота дискретизации (Гц): это значение определяет частоту дискретизации для модели.

 

 

                                                                                        Рисунок 18 Список параметров для блока


Поделиться:



Последнее изменение этой страницы: 2019-03-31; Просмотров: 296; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.155 с.)
Главная | Случайная страница | Обратная связь