Многопутевой исчезающий канал

Эта модель показывает, как использовать блок SISO Fading Channel от Communications Toolbox™, чтобы моделировать многопутевого Рейли и Рикиэна, исчезающего каналы, которые являются полезными моделями явлений реального мира в радиосвязях. Эти явления включают многопутевые эффекты рассеивания, дисперсию времени и эффекты Доплера, которые являются результатом относительного движения между передатчиком и получателем. Модель также показывает, как визуализировать характеристики канала, такие как импульс и частотные характеристики, Доплеровский спектр и усиления компонента.

Модель и параметры

Модель в качестве примера моделирует передачу QPSK по многопутевому Каналу с релеевским замиранием и многопутевому Rician, исчезающему канал. Оба блоки канала сконфигурированы от блока библиотеки SISO Fading Channel. Можно управлять передачей и параметрами канала через переменные рабочей области.

modelname     = 'commmultipathfading';
rayleighBlock = [modelname '/Rayleigh Channel'];
ricianBlock   = [modelname '/Rician Channel'];
rayleighCD    = [modelname '/Rayleigh Constellation Diagram'];
pathGainBlock = [modelname '/Path Gains (dB)'];
open_system(modelname);

Следующие переменные управляют блоком "Bit Source". По умолчанию битрейт 10M, бит/с (5M sym/s) и каждый переданный кадр 2 000 битов длиной (1 000 символов).

bitRate  % Transmission rate (b/s)
bitsPerFrame  % Number of bits per frame
bitRate =

    10000000


bitsPerFrame =

        2000

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

delayVector  % Discrete path delays (s)
gainVector  % Average path gains (dB)
delayVector =

   1.0e-06 *

         0    0.2000    0.4000    0.8000


gainVector =

     0    -3    -6    -9

Условно, задержка первого пути обычно обнуляется. Для последующих путей задержка 1 микросекунды соответствует различию на 300 м в длине пути. В некоторых наружных лучевых средах отраженные пути могут быть на несколько километров более длинными, чем кратчайший путь. С задержками пути, заданными выше, последний путь на 240 м более длинен, чем кратчайший путь, и таким образом прибывает 0.8 микросекунды спустя.

Вместе, задержки пути и средние усиления пути задают профиль задержки канала. Как правило, средние усиления пути затухают экспоненциально с задержкой (т.е. значения дБ затухают линейно), но определенный профиль задержки зависит от среды распространения. На каждом блоке канала мы также включили опцию, чтобы нормировать средние усиления пути так, чтобы их среднее усиление составляло 0 дБ в зависимости от времени.

Следующее управление переменными максимальный эффект Доплера, который вычисляется как v*f/c, где v является мобильной скоростью, f, является несущей частотой и c, является скоростью света. Максимальный эффект Доплера по умолчанию в модели составляет 200 Гц, который соответствует мобильной скорости 65 миль в час (30 м/с) и несущей частоте 2 ГГц.

maxDopplerShift  % Maximum Doppler shift of diffuse components (Hz)
maxDopplerShift =

   200

Следующие переменные применяются к Rician, исчезающему блок канала. Эффект Доплера компонента угла обзора обычно меньше, чем максимальный эффект Доплера (выше) и зависит от направления мобильного телефона перемещения относительно направления пути угла обзора. K-фактор задает отношение средней полученной степени от пути угла обзора относительно того из связанных рассеянных компонентов.

LOSDopplerShift  % Doppler shift of line-of-sight component (Hz)
KFactor  % Ratio of specular power to diffuse power (linear)
LOSDopplerShift =

   100


KFactor =

    10

Блок SISO Fading Channel может визуализировать импульсный ответ канала, частотную характеристику и Доплеровский спектр, в то время как модель запускается. Чтобы вызвать его, установите параметр Channel visualization на желаемую характеристику (характеристики) канала прежде, чем запустить модель. Обратите внимание на то, что включение визуализации канала может замедлить вашу симуляцию.

Широкополосное или выборочное частотой исчезновение

По умолчанию промежуток задержки канала (0,8 микросекунды) больше, чем период символа входа QPSK (0,2 микросекунды), который вызывает значительную интерференцию межсимвола (ISI). Таким образом, результирующая частотная характеристика канала не является плоской и может иметь, глубоко исчезает по 10M пропускная способность сигнала Гц. Поскольку уровень мощности отличается по пропускной способности, он упоминается как выборочное частотой исчезновение.

Устанавливая блок канала параметр Channel visualization 'Посылать импульсы ответ' показывает импульсный ответ bandlimited (желтые круги). Визуализация также показывает задержки и значения базовых исчезающих усилений пути (розовые основы) кластеризируемый вокруг пика импульсного ответа. Обратите внимание на то, что усиления пути не равняются значению параметров Average path gains (dB), потому что эффект Доплера заставляет усиления колебаться в зависимости от времени.

set_param(rayleighBlock, 'Visualization', 'Impulse response');
set_param(modelname, 'SimulationCommand', 'start');
set_param(modelname, 'SimulationCommand', 'pause');

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

Точно так же установка параметра Channel visualization на 'Частотную характеристику' показывает частотную характеристику канала. Можно также установить Channel visualization 'Посылать импульсы и частотные характеристики', чтобы отобразить и импульс и частотные характеристики рядом. Вы видите, что уровень мощности канала отличается через целую пропускную способность.

set_param(modelname, 'SimulationCommand', 'stop');
set_param(rayleighBlock, 'Visualization', 'Frequency response');
set_param(rayleighBlock, 'SamplesToDisplay', '50%');
set_param(modelname, 'SimulationCommand', 'start');
set_param(modelname, 'SimulationCommand', 'pause');

Как показано выше, можно также управлять процентом входных выборок, которые будут визуализироваться путем изменения блока канала параметр Percentage of samples to display. В целом, чем меньший процент, тем быстрее образцовые выполнения. Если фигура визуализации открывается, нажмите кнопку Playback и выключите Reduce Updates to Improve Performance или опцию Reduce Plot Rate to Improve Performance, чтобы далее улучшить точность отображения. Опция идет по умолчанию для более быстрой симуляции. Чтобы видеть ответ канала для каждой входной выборки, снимите флажок с этой опцией и установите Percentage of samples to display на '100%'.

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

set_param(modelname, 'SimulationCommand', 'stop');
set_param(rayleighBlock, 'Visualization', 'Doppler spectrum');
set_param(modelname, 'StopTime', '3');
set_param(modelname, 'SimulationCommand', 'start');
set_param(modelname, 'SimulationCommand', 'pause');
while get_param(modelname, 'SimulationTime') < 2
    set_param(modelname, 'SimulationCommand', 'continue');
    pause(1);
    set_param(modelname, 'SimulationCommand', 'pause');
end

Путем открытия схемы совокупности после Рейли образовывают канал блок, вы видите влияние широкополосного исчезновения на сигнальном созвездии. Чтобы замедлить динамику канала в целях визуализации, мы уменьшаем максимальный эффект Доплера до 5 Гц. По сравнению с входным сигналом канала QPSK можно наблюдать очевидное искажение в выходном сигнале канала, из-за ISI от дисперсии времени широкополосного сигнала.

set_param(modelname, 'SimulationCommand', 'stop');
maxDopplerShift = 5;
set_param(rayleighBlock, 'Visualization', 'Off');
set_param(rayleighCD, 'openScopeAtSimStart', 'on')
sim(modelname, 0.2);

Узкополосная связь или плоское частотой исчезновение

Когда пропускная способность является слишком маленькой для сигнала разрешить отдельные компоненты, частотная характеристика является приблизительно плоской из-за минимального времени дисперсионный и очень маленький ISI от импульсного ответа. Этот вид многопутевого исчезновения часто упоминается как узкополосное исчезновение или плоское частотой исчезновение.

Чтобы наблюдать эффект, мы теперь уменьшаем пропускную способность сигнала от 10M бит/с (5M sym/s) к 1M бит/с (500K sym/s), таким образом, промежуток задержки канала (0,8 микросекунды) намного меньше, чем период символа QPSK (2 микросекунды). Эффективно, все задержанные компоненты объединяются в одной задержке (в этом случае в нуле).

bitRate = 1e6  % 50 kb/s transmission
bitRate =

     1000000

Мы можем визуально подтвердить эту узкополосную связь, исчезающую поведение путем установки параметра Channel visualization на 'Импульс и частотные характеристики' для блока канала Рейли и затем выполнения модели.

close_system(rayleighCD);
set_param(rayleighCD, 'openScopeAtSimStart', 'off')
maxDopplerShift = 200; % Change back to the original value
set_param(rayleighBlock, 'Visualization', 'Impulse and frequency responses');
set_param(modelname, 'SimulationCommand', 'start');
set_param(modelname, 'SimulationCommand', 'pause');

Чтобы упростить и ускорить симуляцию, узкополосная связь, исчезающая, каналы часто моделируются как одно путь, исчезающий канал. Таким образом, модель исчезновения разнообразного пути чрезмерно определяет узкополосную связь, исчезающую канал. Следующие настройки соответствуют узкополосной связи, исчезающей канал с абсолютно плоской частотной характеристикой.

set_param(modelname, 'SimulationCommand', 'stop');
delayVector = 0;  % Single fading path with zero delay
gainVector = 0;  % Average path gain of 0 dB
set_param(modelname, 'SimulationCommand', 'start');
set_param(modelname, 'SimulationCommand', 'pause');

Мы теперь возвращаемся к нашему исходному исчезающему каналу с четырьмя путями и наблюдаем, как узкополосная связь, исчезающая причины, сигнализирует о затухании и вращении фазы путем открытия схемы совокупности после блока канала Рейли. В дополнение к затуханию и вращению, вы видите некоторое искажение сигнала из-за небольшого количества ISI в выходном сигнале канала. Искажение является намного меньше, чем тот замеченный выше для широкополосного канала.

set_param(modelname, 'SimulationCommand', 'stop');
delayVector = [0 2 4 8]*1e-7; % Change back to original value
gainVector = (0:-3:-9); % Change back to original value
maxDopplerShift = 5; % Reduce to slow down channel dynamics
set_param(rayleighBlock, 'Visualization', 'Off');
set_param(rayleighCD, 'openScopeAtSimStart', 'on')
sim(modelname, 0.15);

Исчезновение Rician

Рикиэн, исчезающий распространение угла обзора моделей блока канала, кроме того, чтобы рассеять многопутевое рассеивание. Это приводит к меньшему изменению в значении усилений пути. Чтобы сравнить изменение между каналами Рейли и Рикиэна, мы реконфигурировали блоки канала, чтобы смоделировать задержку одно пути и использовать блок Time Scope, чтобы просматривать их усиления пути в зависимости от времени. Обратите внимание на то, что значение колеблется приблизительно область значений на 5 дБ для Рикиэна, исчезающего канал, по сравнению с аппроксимированными 15 дБ для Канала с релеевским замиранием. Для Рикиэна, исчезающего канал, это изменение далее уменьшалось бы путем увеличения K-фактора (в настоящее время набор к 10).

delayVector = 0;  % Single fading path with zero delay
gainVector = 0;  % Average path gain of 0 dB
maxDopplerShift = 200; % Change back to the original value
close_system(rayleighCD);
set_param(rayleighCD, 'openScopeAtSimStart', 'off')
set_param(pathGainBlock, 'OpenAtSimulationStart', 'on');
sim(modelname, 0.1);

% Cleanup
close_system(modelname, 0);
Для просмотра документации необходимо авторизоваться на сайте