МСиП_лабораторные
.pdfЗначение EbNo динамически изменяется из утилиты BERtool, где
указывается необходимый диапазон значений «Eb/No range». Задачей утилиты BERtool является автоматический запуск модели для разных значений ОСШ в канале и фиксирование полученной при этом значении величины BER.
На этом все необходимые для использования утилиты BERtool изменения в модель внесены. Далее перейдем к самой утилите BERtool, где первым делом необходимо указать диапазон интересующих нас значений ОСШ в канале
«Eb/No range». Укажите диапазон [0:10], в этом случае утилита BERtool запустит вашу модель 11 раз для каждого значения ОСШ от 0 до 10 с шагом 1. Если вам необходимо получить графики с более частым шагом, то вы можете задать его через двоеточие, например, 0:0.5:10 для шага в 0,5 дБ.
Вразделе «Simulation environment» должен быть выбран программный пакет Simulink, как показано на рисунке 70. В разделе «Model name» необходимо указать путь к только что подготовленной модели в формате .slx . Важный момент – все вносящиеся изменения в саму модель должны быть сохранены с помощью кнопки «Save» до вызова этой модели из утилиты
BERtool.
Вразделе «BER variable name» необходимо указать выбранное вами ранее название переменной для хранения результатов, в нашем случае такая переменная носит имя grayBER, как показано на рисунках 72 и 73.
Последним шагом перед запуском процесса моделирования является задание количества передаваемых бит и количества ошибок, при которых будут фиксироваться значения вероятности битовой ошибки в разделе «Simulation limits». Эти значения напрямую влияют на точность измерения BER. По умолчанию заданы параметры Number of errors = 100 и Number of bits = 1e8,
позволяющие получить кривые помехоустойчивости вплоть до значений BER по уровню 10-6. Такие параметры говорят о том, что моделирование для заданного значения ОСШ будет производиться до тех пор, пока не наберется 100 битовых ошибок или пока не будет передано 108 бит.
Далее запустим утилиту BERtool и будем наблюдать постепенное появление интересующей нас кривой помехоустойчивости модуляции QAM-4
вканале c АБГШ, как показано на рисунке 75.
51
Рисунок 75 – Значения BER, полученные с помощью утилиты BERtool
Как видно из рисунка 75, утилита BERtool позволяет строить графики помехоустойчивости в автоматизированном режиме для интересующих вас значений ОСШ в канале, при этом у вас нет необходимости собственноручно фиксировать значения величины BER и самостоятельно строить графики. Однако, важным моментом, проиллюстрированным на рисунке 75, является то, что изначально мы задавали для моделирования диапазон значений ОСШ [0:10], но мы видим кривую помехоустойчивости лишь до 6 дБ включительно.
Дело в том, что в данном примере работа утилиты BERtool была демонстративно остановлена. Получение результатов работы программы для значений ОСШ от 0 дБ до 6 дБ заняло достаточно большое количество времени, а если точно, то 3 минуты 19 секунд, при том что модель была запущена на достаточно производительном ПК и с использованием встроенной в MATLAB функции распараллеливания процессов Parallel pool. Дальнейшее получение результатов для значений ОСШ от 7 дБ до 10 дБ займет еще более продолжительное время, так как с возрастанием мощности сигнала в канале вероятность появления битовой ошибки уменьшается. Процесс моделирования достаточно затратен с позиции вычислительной сложности. Это следует учитывать в процессе работы и при возможности применять динамические значения количества ошибок и количества переданных бит, при которых останавливается моделирование.
52
Для более наглядного отображения результатов помехоустойчивости можно аппроксимировать полученные значения и провести кривую, выставив галку в столбце «Fit» напротив полученных значений, как показано на рисунке 76.
Рисунок 76 – Аппроксимация кривой помехоустойчивости с помощью функции «Fit»
4. Сравнение помехоустойчивости для модуляции QAM разных порядков.
Получите кривые помехоустойчивости для модуляций QAM с разными размерами созвездий: 4, 16, 64, 256. Сравните полученные результаты с теоретическими кривыми помехоустойчивости. Также сравните полученные результаты с результатами, полученными по результатам выполнения лабораторной работы № 2.
Содержание отчета
1.Модифицированная схема для работы с утилитой BERtool.
2.Теоретические кривые помехоустойчивости для модуляции QAM порядков: 4, 16, 64, 256.
3.Кривые помехоустойчивости для модуляции QAM порядков: 4, 16, 64, 256, построенные с помощью утилиты BERtool.
4.Выводы.
53
Лабораторная работа № 4
Замирания и разнесенный прием
Цели работы
Исследование помехоустойчивости приема бинарной частотной модуляции в АБГШ и рэлеевском канале связи.
Исследование разнесенного приема с выбором наиболее сильной ветви.
Исследование разнесенного приема с оптимальным сложением ветвей.
Указания к выполнению работы
1. Исследование помехоустойчивости системы связи с бинарной частотной модуляцией (ЧМ-2) в АБГШ-канале.
Запустите программу MATLAB, откройте стартовое окно Simulink, создайте окно для новой модели и постройте модель системы связи с бинарной частотной модуляцией и АБГШ-каналом (блоки Bernoulli Binary Generator,
MFSK Modulator/Demodulator Baseband, AWGN Channel, Error Rate Calculation, Display). Как обычно, задайте дискретный режим моделирования с фиксированным шагом и установите бесконечную продолжительность работы. Добейтесь правильной работы модели.
В данной работе важны соотношения между различными временными параметрами моделей. В частности, рекомендуется выбрать символьную скорость равной 1000 симв/с. Для этого необходимо установить обратное значение (10−3) в следующих местах:
в качестве интервала дискретизации (Sample time) в блоке источника битового потока;
в качестве длительности символа (Symbol period) в блоке АБГШ-канала.
Далее будет использоваться блок рэлеевского канала, который обрабатывает сигнал только порциями (фреймами), поэтому в блоке источника битового потока необходимо задать длину фрейма (Samples per frame) равной
1000.
В блоках модулятора/демодулятора необходимо настроить следующие параметры (для остальных оставить значения по умолчанию):
кратность (число позиций) модуляции (M-ary number) – 2;
расстояние между частотами модуляции (Frequency separation) –
2000 Гц;
число отсчетов на символ (Samples per symbol) – не менее 16.
54
Используемый здесь блок демодулятора реализует некогерентный прием, что позволит впоследствии моделировать канал с замираниями, не используя какие-либо средства частотной и фазовой синхронизации.
Результирующая модель изображена на рисунке 77.
Рисунок 77 – Схема модели системы связи с двоичной частотной модуляцией
Снимите кривую помехоустойчивости в АБГШ-канале (диапазон изменения отношения /0 – от 0 до 12 дБ с шагом 2 дБ).
2.Исследование помехоустойчивости системы в рэлеевском канале связи.
Добавьте между блоками модулятора и АБГШ-канала блок рэлеевского канала (Communications Toolbox Channels SISO Fading Channel). Для рэлеевского канала необходимо задать один луч с нулевой задержкой (Discrete path delay vector = 0) и средним коэффициентом передачи 0 дБ (Average path gain vector = 0). Для начального состояния генератора случайных чисел (Initial seed) укажите значение randseed (рисунок 78).
55
Рисунок 78 – Настройки блока MIMO Fading Channel
Результирующая модель изображена на рисунке 79.
Рисунок 79 – Схема модели с рэлеевским каналом связи
Снимите кривую помехоустойчивости в рэлеевском канале (диапазон изменения отношения /0 – от 0 до 30 дБ с шагом 5 дБ).
3.Визуальное наблюдение характеристик рэлеевского канала связи.
Подключите к точке, расположенной между выходом рэлеевского канала
ивходом АБГШ-канала, блок вычисления абсолютного значения Abs, затем
блок DSP System Toolbox Signal Management Buffers Unbuffer (он превращает фреймы в отдельные отсчеты) и после него – блок осциллографа
Scope.
56
Для настройки осциллографа необходимо открыть его окно (двойным щелчком на изображении блока), щелкнуть на кнопке Configuration properties в панели инструментов этого окна и выполнить в открывшемся окне следующие действия:
на вкладке Time задать диапазон временной оси (поле Time span) равным 0.1;
на вкладке Display задать диапазон для вертикальной оси от 0 до 5 (поля Y-limits (Minimum) и Y-limits (Maximum)).
Реализуйте измерение средней мощности сигнала. Для этого к выходу блока Abs дополнительно подключите блок возведения в квадрат (простейший вариант – блок Simulink Math Operations Math Function с выбранной функцией magnitude^2), а к его выходу последовательно подключите блоки усреднения (DSP System Toolbox Statistics Mean, в параметрах блока необходимо установить флажок Running mean) и числового дисплея.
Подключите к выходу блока возведения в квадрат, добавленного в предыдущем пункте, блок вычисления гистограммы (DSP System Toolbox Statistics Histogram).
В блоке вычисления гистограммы необходимо произвести следующие настройки:
минимальное и максимальное значения уровня анализируемого сигнала (Lower limit of histogram и Upper limit of histogram) — 0
и 5 соответственно;
число интервалов разбиения (Number of bins) – не менее 50;
установить нормировку результатов, т.е. выдачу оценок вероятности, а не числа попаданий в интервалы (флажок
Normalized);
установить режим накопления, означающий, что гистограмма рассчитывается по всем входным данным – от начала работы модели до текущего момента (флажок Running histogram);
отказаться от порта сброса, выбрав в списке Reset port вариант
None.
Блок Histogram только рассчитывает данные для гистограммы. Для ее отображения подключите к выходу блока Histogram блок визуализации векторов DSP System Toolbox Sinks Array Scope.
57
Для разумности отображаемой картинки в блоке Array Scope необходимо произвести следующие настройки:
В разделе Scope properties в списке Input domain выбрать вариант Userdefined (так как график гистограммы не является ни временной, ни частотной зависимостью).
В разделе Axis properties снять флажок Inherit sample increment from input (так как параметры дискретизации входного сигнала в данном случае не имеют никакого отношения к оцифровке горизонтальной оси).
В том же разделе ввести в поле Increment per sample in input
значение, равное ширине отдельных интервалов гистограммы (т.е. отношению общей ширины анализируемого диапазона уровней к заданному в параметрах гистограммы числу интервалов).
Подписи горизонтальной и вертикальной осей (X-axis title, Y-axis label) можно задать по желанию (например, X и P(X) соответственно).
Результирующая схема модели изображена на рисунке 80.
Рисунок 80 – Схема модели с рэлеевским каналом связи
Запустите модель и сделайте так, чтобы она обработала не менее 2000 символов (установите большое отношение С/Ш или отключите автоматическую остановку в блоке оценки BER). Наблюдайте за изменениями модуля сигнала на выходе канала с замираниями, за гистограммой и средней мощностью сигнала.
58
Для автоматического масштабирования гистограммы щелкните в окне ее изображения правой кнопкой мыши и выберите в контекстном меню команду
Autoscale.
Остановив работу модели, сохраните рисунок с графиком изменения уровня сигнала во времени, рисунок с графиком гистограммы, а также запишите значение оценки средней мощности сигнала.
Остановив работу модели, сохраните рисунок с графиком изменения уровня сигнала во времени, рисунок с графиком гистограммы, а также запишите значение оценки средней мощности сигнала.
4.Исследование помехоустойчивости системы при наличии двух каналов приема с выбором максимально сильной ветви.
Добавьте в модель еще один блок рэлеевского канала, подключите его вход к выходу модулятора и задайте такие же настройки, как у первого блока. Важно убедиться, что для начального состояния генератора случайных чисел (Initial seed) задана функция randseed. В противном случае замирания в двух каналах будут идентичны, а для правильности работы модели они должны быть некоррелированны.
Добавьте после второго рэлеевского канала второй блок АБГШ-канала. Настройки также идентичны первой ветви приема, за исключением параметра Initial seed, для которого должно быть задано randseed – это обеспечит некоррелированность шумов в двух каналах приема.
Реализуйте выбор более мощного из выходных сигналов двух каналов. Для этого необходимо сформировать разность абсолютных значений (модулей) сигналов после рэлеевских каналов, но до АБГШ-каналов и использовать полученный сигнал для управления переключателем (Simulink Signal Routing Switch). На входы переключателя должны поступать сигналы с выходов АБГШ-каналов. Критерий переключения – сравнение управляющего сигнала с нулевым порогом. Демодулятор подключите к выходу переключателя.
Для демонстрации уровня сигнала в выбранной ветви и оценки статистических характеристик необходимо подключить к выходам двух блоков
Abs блок выбора максимума (Simulink Math operations MinMax,
требуемая операция и число входов указываются в параметрах блока) и с его выхода подать сигнал на «подвисшие в воздухе» после переделки схемы осциллограф (с блоком Unbuffer на входе) и систему измерения гистограммы и средней мощности. Результирующая схема модели показана на рисунке 69.
59
Рисунок 81 – Схема модели с двумя каналами приема с выбором максимально сильной ветки
Аналогично п. 3 (необходимо обработать не менее 2000 символов) получите рисунок с гистограммой и запишите среднее значение мощности.
Снимите кривую помехоустойчивости для данного случая (диапазон изменения отношения /0 – от 0 до 20 дБ с шагом 2 дБ, менять этот параметр необходимо синхронно в двух блоках АБГШ-канала).
5.Исследование помехоустойчивости системы при наличии двух каналов приема с оптимальным сложением ветвей.
Модифицируйте модель (усеченную версию, полученную в конце п. 4), реализовав оптимальное сложение двух ветвей приема. Для этого необходимо измерять комплексные коэффициенты передачи каналов.
Реализуем такое измерение, разделив выходной сигнал каждого блока рэлеевского канала на входной сигнал (это правомерно, так как при наличии только одного луча рэлеевский канал является безынерционным блоком) с помощью блока Product с соответствующими настройками (в поле Number of inputs вводится строка /).
Полученные коэффициенты необходимо подвергнуть комплексному сопряжению (блок Simulink Math operations Math Function, в качестве функции выбрать ).
Сопряженные коэффициенты необходимо умножить на выходные сигналы АБГШ-каналов, а результаты перемножения суммировать, реализовав тем самым оптимальное сложение ветвей приема.
60
