- •Глава 1. Постановка задачи исследования. 9
- •Глава 2. Реализация частотной синхронизации в 62
- •Глава 3 Апробация реализованной подсистемы 79
- •Введение
- •Глава 1. Постановка задачи исследования.
- •1.1 Физический уровень стандарта 802.11
- •1.1.1 Общие характеристики многомерных сигналов
- •1.1.2 Формирование многомерного сигнала общего вида
- •1.1.3 Формирование ofdm сигнала
- •1.1.4 Защитный интервал (циклический префикс).
- •1.1.5 Ofdm передатчик
- •1.1.6 Приемник ofdm
- •1.1.7 Функции физического уровня стандарта 802.11
- •1.2.3 Функции уровня рмd
- •1.1.8 Математическое описание ofdm сигнала
- •1.1.9 Структура пакетов физического уровня
- •1.1.10 Модуляция поднесущих
- •1.1.11 Пилот сигналы
- •1.2 Программно- конфигурируемое радио.
- •1.2.1 Описание технологии программно- конфигурируемого радио
- •1.2.2 Принцип работы
- •1.2.3 Аппаратная часть
- •1.3 Программная среда gnu Radio
- •1.3.1 Среда разработки gnu Radio. Основные понятия.
- •1.3.2 Элементы
- •1.3.3 Метаданные
- •1.3.4 Передача pdUs
- •1.4 Постановка задачи реализации системы частотной синхронизации.
- •2.1.2 Смещение несущей частоты принимаемого сигнала
- •2.1.3 Смещение частоты дискретизации.
- •2.1.4 Оценка смещения частоты и ее коррекция
- •2.1.5 Оценка с использованием короткой настроечной последовательности:
- •2.1.6 Оценка и коррекция с использованием длинной настроечной последовательности
- •2.2 Модель приемника
- •2.2.1 Временная синхронизация фрейма
- •2.2.2 Частотная синхронизация.
- •2.2.3 Удаление циклического префикса
- •2.2.4 Коррекция смещения фазы
- •2.2.5 Декодирование поля Signal
- •2.2.6 Декодирование фрейма
- •2.3 Модель передатчика
- •Глава 3 Апробация реализованной подсистемы
- •3.1 Постановка задачи апробации
- •3.1.1 Задачи эксперимента 1
- •3.1.2 Задачи эксперимента 2
- •3.2 Эксперимент 1. Прием и передача данных с помощью программных моделей приемника и передатчика реализованных в gnu Radio
- •3.3 Эксперимент 2. Запись данных передаваемых между двумя роутерами
- •Заключение
- •Список литературы
1.3 Программная среда gnu Radio
1.3.1 Среда разработки gnu Radio. Основные понятия.
GNU Radio это бесплатный программный продукт с открытым исходным кодом, который обеспечивает цифровую обработку сигнала в системе программно-определяемой радиосистемы[ CITATION Сай \l 1049 ].
GNU Radio может использоваться как с широкодоступными недорогостоящими внешними аппаратными средствами радиодиапазона для создания программно-определяемой радиосвязи, так и без аппаратных средств в режиме программной симуляции. GNU Radio широко используется для любительских и коммерческих целей, а также для научных исследований беспроводных систем связи.
GNU Radio выполняет практически все виды цифровой обработки сигнала. Этот пакет имеет в своем наборе фильтры, синхронизирующие элементы, эквалайзеры, демодуляторы, вокодеры, дешифраторы и многое другое. В терминологии GNU Radio это называется блоками обработки, которые зачастую можно встретить в радиосистемах. Более того, GNU Radio включает в себя метод соединения этих блоков и обеспечивает передачу данных из одного блока в другой. Если пользователь не может найти необходимый блок обработки в стандартной библиотеке GNU Radio, он может самостоятельно создать и добавить его.
GNU Radio используется преимущественно для реализации реальных радиосистем и передачи данных в эфир, используя внешние подключаемые устройства. Подключаемые аналоговые аппаратные средства используются для того чтобы сместить спектр сигнала к необходимой рабочей частоте радиодиапазона.
GNU Radio Companion это графический интерфейс GNU Radio, который схож с Simulink. Он позволяет создавать приложения для обработки сигнала “перетаскиванием” блоков. Кроме того, GNU Radio имеет в своем наборе с готовые к применению инструменты и утилиты, которые помогают выполнять основные операции, такие как запись сигналов радиодиапазона и выполнение спектрального анализа.
С помощью GNU Radio Companion можно создавать приложения в виде поточных графов обработки сигнала. Узлы этого графа называются блоками. Любая фактическая обработка сигнала производится блоками. В идеале каждый блок должен выполнять только одну функцию. Такой подход позволяет GNU Radio быть модульной и гибкой средой разработки. Блоки обычно пишутся на C++ или Python.
На рисунке 1.23 представлен пример создания поточного графа с помощью графического интерфейса с помощью GNU Radio Сompanion (GRC).
Рисунок 1.23 Блоки GNU Radio companion
Данные передаются с лева на право. Поток данных берет начало в источнике аудио сигнала audio source, подвергается фильтрации низких частот в блоке low pass filter и заканчивают свой путь записываясь в WAV файл на жестком диске.
Блоки соединяются через порты. У первого блока нет входного порта, так как он создает цифровые отчеты сигнала. Такой блок, имеющий только выходной порт, называется истоком или источником (source). По аналогии, последний блок, без выходного порта, называется стоком (sink). На самом деле физической реализацией таких истоков и стоков могут быть реальные аппаратные средства такие как звуковая карта или подключаемые радио модули. На рисунке 1.23 audio source подключается к драйверу звуковой карты и выводит отсчеты аудио сигнала (аудио семплы) в среду программной обработки GNU Radio.
