wlanTGacChannel

Пропустите сигнал через 802.11ac многопутевой исчезающий канал

Описание

Система wlanTGacChannel object™ фильтрует входной сигнал через 802.11ac™ (TGac) многопутевой исчезающий канал.

Обработка исчезновения принимает те же параметры для всех ссылок T-by-NR N канала TGac, где N T является количеством антенн передачи, и N R является количеством, получают антенны. Каждая ссылка включает все мультипути для той ссылки.

Отфильтровать входной сигнал с помощью многопутевого исчезающего канала TGac:

  1. Создайте объект wlanTGacChannel и установите его свойства.

  2. Вызовите объект с аргументами, как будто это была функция.

Чтобы узнать больше, как Системные объекты работают, смотрите то, Что Системные объекты? MATLAB.

Создание

Синтаксис

tgac = wlanTGacChannel
tgac = wlanTGacChannel(Name,Value)

Описание

пример

tgac = wlanTGacChannel создает TGac, исчезающий Системный объект канала, tgac. Этот объект пропускает действительный или комплексный входной сигнал через канал TGac, чтобы получить поврежденный каналом сигнал.

tgac = wlanTGacChannel(Name,Value) создает объект канала TGac, tgac, и устанавливает свойства с помощью одной или нескольких пар "имя-значение". Заключите каждое имя свойства в кавычки. Например, wlanTGacChannel('NumReceiveAntennas',2,'SampleRate',10e6) создает канал TGac с два, получают антенны и частоту дискретизации на 10 МГц.

Свойства

развернуть все

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

Если свойство является настраиваемым, можно изменить его значение в любое время.

Для получения дополнительной информации об изменении значений свойств смотрите Разработку системы в MATLAB Используя Системные объекты (MATLAB).

Частота дискретизации входного сигнала в Гц, заданном как действительная положительная скалярная величина.

Типы данных: double

Задержите модель профиля, заданную как 'Model-A', 'Model-B', 'Model-C', 'Model-D', 'Model-E' или 'Model-F'. Чтобы включить свойство FluorescentEffect, выберите 'Model-D' или 'Model-E'.

Таблица суммирует свойства моделей перед фактором сокращения пропускной способности.

ПараметрМодель
ABCDEF
Установите точки останова расстояние (m)555102030
Распространение задержки RMS (не уточнено)0153050100150
Максимальная задержка (не уточнено)0802003907301050
K-фактор Rician (дБ)000366
Количество касаний1914181818
Количество кластеров122346

Количество кластеров представляет количество независимо смоделированных путей к распространению.

Типы данных: char | string

Пропускная способность канала, заданная как 'CBW20', 'CBW40', 'CBW80' или 'CBW160'. Значением по умолчанию является 'CBW80', который соответствует пропускной способности канала на 80 МГц.

Типы данных: char | string

Несущая частота РФ в Гц, заданном как действительная положительная скалярная величина.

Типы данных: double

Скорость рассеивателей в км/ч, заданном как действительная положительная скалярная величина.

Типы данных: double

Расстояние между передатчиком и получателем в метрах, заданных как действительная положительная скалярная величина.

TransmitReceiveDistance используется, чтобы вычислить потерю пути и определить, имеет ли канал условие не угла обзора (NLOS) или угол обзора (LOS). Потеря пути и стандартное отклонение тени, исчезающей потеря, зависят от разделения между передатчиком и получателем.

Типы данных: double

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

Типы данных: логический

Пользовательский индекс, заданный как неотрицательное целое число. UserIndex задает отдельного пользователя или конкретного пользователя в многопользовательском сценарии.

Типы данных: double

Направление передачи активной ссылки, заданной или как 'Downlink' или как 'Uplink'.

Типы данных: char | string

Количество антенн передачи, заданных как положительное целое число от 1 до 8.

Типы данных: double

Расстояние между элементами антенны передачи, указанными как действительная положительная скалярная величина, выражается в длинах волн.

TransmitAntennaSpacing поддерживает универсальные линейные матрицы только.

Зависимости

Это свойство применяется только, когда NumTransmitAntennas больше, чем 1.

Типы данных: double

Количество получает антенны, заданные как положительное целое число от 1 до 8.

Типы данных: double

Расстояние между получает элементы антенны, указанные как действительная положительная скалярная величина, выраженная в длинах волн.

ReceiveAntennaSpacing поддерживает универсальные линейные матрицы только.

Зависимости

Это свойство применяется только, когда NumReceiveAntennas больше, чем 1.

Типы данных: double

Крупномасштабные исчезающие эффекты применяются в канале, заданном как 'None', 'Pathloss', 'Shadowing' или 'Pathloss and shadowing'.

Типы данных: char | string

Флуоресцентный эффект, заданный как true или false. Чтобы включать эффекты Доплера от люминесцентного освещения, установите это свойство на true.

Зависимости

Свойство FluorescentEffect применяется только, когда DelayProfile является 'Model-D' или 'Model-E'.

Типы данных: логический

Частота сети в Гц, заданном как '50Hz' или '60Hz'.

Частота сети составляет 60 Гц в Соединенных Штатах и 50 Гц в Европе.

Зависимости

Это свойство применяется только, когда вы устанавливаете FluorescentEffect на true и DelayProfile к 'Model-D' или 'Model-E'.

Типы данных: char | string

Нормируйте канал, выходные параметры количеством получают антенны, заданные как true или false.

Типы данных: логический

Источник потока случайных чисел, заданного как 'Global stream' или 'mt19937ar with seed'.

Если вы устанавливаете RandomStream на 'Global stream', текущий глобальный поток случайных чисел генерирует нормально распределенные случайные числа. В этом случае функция reset сбрасывает фильтры только.

Если вы устанавливаете RandomStream на 'mt19937ar with seed', mt19937ar алгоритм генерирует нормально распределенные случайные числа. В этом случае функция reset также повторно инициализирует поток случайных чисел к значению свойства Seed.

Типы данных: char | string

Начальный seed mt19937ar потока случайных чисел, заданного как неотрицательное целое число. Свойство Seed повторно инициализирует mt19937ar поток случайных чисел в функции reset.

Зависимости

Это свойство применяется только, когда вы устанавливаете свойство RandomStream на 'mt19937ar with seed'.

Типы данных: double

Включите усилению пути выходное вычисление, заданное как true или false.

Типы данных: логический

Использование

Синтаксис

y = tgac(x)
[y,pathGains] = tgac(x)

Описание

пример

y = tgac(x) входной сигнал фильтров x через TGac, исчезающий канал, заданный Системным объектом wlanTGacChannel, tgac, и, возвращает результат в y.

[y,pathGains] = tgac(x) также возвращает в pathGains усиления пути к каналу TGac базового процесса исчезновения.

Этот синтаксис применяется, когда вы устанавливаете свойство PathGainsOutputPort на true.

Входные параметры

развернуть все

Входной сигнал, заданный как действительный или комплексный N матрица S-by-NT, где:

  • N S является количеством выборок.

  • N T является количеством антенн передачи и должен быть равен значению свойства NumTransmitAntennas.

Типы данных: double
Поддержка комплексного числа: Да

Выходные аргументы

развернуть все

Выходной сигнал, возвращенный как S-by-NR N, объединяет матрицу, где:

  • N S является количеством выборок.

  • N R является количеством, получают антенны, и равно значению свойства NumReceiveAntennas.

Типы данных: double

Усиления пути процесса исчезновения, возвращенного как N S NP NT NR комплексным массивом, где:

  • N S является количеством выборок.

  • N P является количеством разрешимых путей, то есть, количеством путей, заданных для случая, заданного свойством DelayProfile.

  • N T является количеством антенн передачи и равен значению свойства NumTransmitAntennas.

  • N R является количеством, получают антенны, и равно значению свойства NumReceiveAntennas.

Типы данных: double

Функции объекта

Чтобы использовать объектную функцию, задайте Системный объект как первый входной параметр. Например, чтобы выпустить системные ресурсы Системного объекта под названием obj, используйте этот синтаксис:

release(obj)

развернуть все

infoХарактеристическая информация о TGn, TGah, TGac и многопутевых исчезающих каналах TGax
stepЗапустите алгоритм Системного объекта
releaseВысвободите средства и позвольте изменения в значениях свойств Системного объекта и введите характеристики
resetСбросьте внутренние состояния Системного объекта

Примечание

сброс: Если свойство RandomStream Системного объекта установлено в 'Global stream', функция reset сбрасывает фильтры только. Если вы устанавливаете RandomStream на 'mt19937ar with seed', функция reset также повторно инициализирует поток случайных чисел к значению свойства Seed.

Примеры

развернуть все

Сгенерируйте форму волны VHT и передайте ее через канал TGac SISO. Отобразите спектр результирующего сигнала.

Установите пропускную способность канала и соответствующую частоту дискретизации.

bw = 'CBW80';
fs = 80e6;

Сгенерируйте форму волны VHT.

cfg = wlanVHTConfig;
txSig = wlanWaveformGenerator(randi([0 1],1000,1),cfg);

Создайте канал TGac SISO с потерей пути, и затенение включило.

tgacChan = wlanTGacChannel('SampleRate',fs,'ChannelBandwidth',bw, ...
    'LargeScaleFadingEffect','Pathloss and shadowing');

Передайте форму волны VHT через канал.

rxSig = tgacChan(txSig);

Постройте спектр полученной формы волны.

saScope = dsp.SpectrumAnalyzer('SampleRate',fs,'YLimits',[-120 -40]);
saScope(rxSig)

Поскольку потеря пути и затенение включены, полученная степень среднего значения через спектр является приблизительно-60 dBm.

Создайте форму волны VHT, имеющую четыре антенны передачи и два пространственно-временных потока.

cfg = wlanVHTConfig('NumTransmitAntennas',4,'NumSpaceTimeStreams',2, ...
    'SpatialMapping','Fourier');
txSig = wlanWaveformGenerator([1;0;0;1],cfg);

Создайте 4x2 канал MIMO TGac и отключите крупномасштабные исчезающие эффекты.

tgacChan = wlanTGacChannel('SampleRate',80e6,'ChannelBandwidth','CBW80', ...
    'NumTransmitAntennas',4,'NumReceiveAntennas',2, ...
    'LargeScaleFadingEffect','None');

Передайте форму волны передачи через канал.

rxSig = tgacChan(txSig);

Отобразите спектр двух полученных пространственно-временных потоков.

saScope = dsp.SpectrumAnalyzer('SampleRate',80e6, ...
    'ShowLegend',true, ...
    'ChannelNames',{'Stream 1','Stream 2'});
saScope(rxSig)

Передайте VHT-LTF и поле данных VHT через шумное 2x2 канал MIMO. Демодулируйте полученный VHT-LTF, чтобы оценить коэффициенты канала. Восстановите данные VHT и определите количество битовых ошибок.

Установите пропускную способность канала и соответствующую частоту дискретизации.

bw = 'CBW160';
fs = 160e6;

Создайте VHT-LTF и поля данных VHT, имеющие две антенны передачи и два пространственно-временных потока.

cfg = wlanVHTConfig('ChannelBandwidth',bw, ...
    'NumTransmitAntennas',2,'NumSpaceTimeStreams',2);
txPSDU = randi([0 1],8*cfg.PSDULength,1);
txLTF = wlanVHTLTF(cfg);
txDataSig = wlanVHTData(txPSDU,cfg);

Создайте 2x2 канал MIMO TGac.

tgacChan = wlanTGacChannel('SampleRate',fs,'ChannelBandwidth',bw, ...
    'NumTransmitAntennas',2,'NumReceiveAntennas',2);

Создайте шум канала AWGN, установка SNR = 15 дБ.

chNoise = comm.AWGNChannel('NoiseMethod','Signal to noise ratio (SNR)',...
    'SNR',15);

Передайте сигналы через канал TGac и шумовые модели.

rxLTF = chNoise(tgacChan(txLTF));
rxDataSig = chNoise(tgacChan(txDataSig));

Создайте канал AWGN для канала на 160 МГц с шумовой фигурой на 9 дБ. Шумовое отклонение, nVar, равно kTBF, где k является константой Больцманна, T является температурой окружающей среды 290 K, B является пропускной способностью (частота дискретизации), и F является фигурой шума получателя.

nVar = 10^((-228.6 + 10*log10(290) + 10*log10(fs) + 9)/10);
rxNoise = comm.AWGNChannel('NoiseMethod','Variance','Variance',nVar);

Передайте сигналы через модель шума получателя.

rxLTF = rxNoise(rxLTF);
rxDataSig = rxNoise(rxDataSig);

Демодулируйте VHT-LTF. Используйте демодулируемый сигнал оценить коэффициенты канала.

dLTF = wlanVHTLTFDemodulate(rxLTF,cfg);
chEst = wlanVHTLTFChannelEstimate(dLTF,cfg);

Восстановите данные и определите количество битовых ошибок.

rxPSDU = wlanVHTDataRecover(rxDataSig,chEst,nVar,cfg);
numErr = biterr(txPSDU,rxPSDU)
numErr = 0

Алгоритмы

развернуть все

Алгоритмы, используемые, чтобы смоделировать канал TGac, основаны, используемые для TGn образовывают канал и описаны в wlanTGnChannel и [1]. Изменения, чтобы поддержать канал TGac включают:

  • увеличенная пропускная способность;

  • MIMO высшего порядка

  • многопользовательский MIMO

  • уменьшаемый Доплер.

Полная информация на изменениях, требуемых поддерживать каналы TGac, может быть найдена в [2].

Ссылки

[1] Erceg, V., Л. Шумахер, П. Киритси, и др. Модели Канала TGn. Версия 4. IEEE 802.11-03/940r4, май 2004.

[2] Breit, G., Х. Сэмпэт, С. Вермани, и др. Приложение Модели Канала TGac. Версия 12. IEEE 802.11-09/0308r12, март 2010.

[3] Kermoal, J. P. Л. Шумахер, К. Ай. Педерсен, П. Э. Модженсен и Ф. Фредериксен. “Стохастическая Модель Канала Радио MIMO с Экспериментальной Валидацией”. Журнал IEEE на Выбранных областях в Коммуникациях. Издание 20, № 6, август 2002, стр 1211–1226.

Расширенные возможности

Смотрите также

Системные объекты

Введенный в R2015b