Пропустите сигнал через 802.11ay многолучевой канал с замираниями
The wlanTGayChannel
Система object™ фильтрует входной сигнал через IEEE® 802.11ay™ (TGay) многолучевой канал с замираниями. Модель канала следует квазидетерминированному (Q-D) подходу, указанному в [1].
Для фильтрации входного сигнала при помощи многолучевого канала TGay с замираниями:
Создайте wlanTGayChannel
Объекту и установите его свойства.
Вызывайте объект с аргументами, как будто это функция.
Дополнительные сведения о работе системных объектов см. в разделе «Что такое системные объекты?».
создает канал TGay Системного объекта, tgay
= wlanTGayChanneltgay
. Этот системный объект фильтрует действительный или комплексный входной сигнал через канал TGay, чтобы получить сигнал с нарушением канала.
устанавливает свойства с помощью одной или нескольких пар "имя-значение". Заключайте каждое имя свойства в кавычки. Для примера, tgay
= wlanTGayChannel(Name,Value)wlanTGayChannel('SampleRate',1e9,'Environment','Large hotel lobby')
создает канал TGay с 1-GHz частотой дискретизации в большом окружении лобби отеля.
Если не указано иное, свойства являются нетронутыми, что означает, что вы не можете изменить их значения после вызова объекта. Объекты блокируются, когда вы вызываете их, и release
функция разблокирует их.
Если свойство настраивается, можно изменить его значение в любой момент.
Для получения дополнительной информации об изменении значений свойств смотрите Разработку системы в MATLAB Использование Системных объектов.
SampleRate
- Частота дискретизации входного сигнала2.64e9
(по умолчанию) | положительная скалярная величинаЧастота дискретизации входного сигнала, в Гц, задается как положительная скалярная величина.
Типы данных: double
CarrierFrequency
- Центральная частота входного сигнала6e10
(по умолчанию) | положительная скалярная величинаЦентральная частота входного сигнала, в Гц, задается как положительная скалярная величина.
Типы данных: double
Environment
- окружение модели канала'Open area hotspot'
(по умолчанию) | 'Street canyon hotspot'
| 'Large hotel lobby'
Окружение модели канала, заданная как 'Open area hotspot'
, 'Street canyon hotspot'
, или 'Large hotel lobby'
. Для получения дополнительной информации см. раздел [1].
Типы данных: char
| string
RoadWidth
- Ширина уличного каньона16
(по умолчанию) | положительная скалярная величинаШирина каньонной дороги улицы, в метрах, указывается как положительная скалярная величина. Дорога параллельна оси y, на которой она имеет свой центр.
Чтобы включить это свойство, задайте Environment
на 'Street canyon hotspot'
.
Типы данных: double
SidewalkWidth
- Ширина тротуара уличного каньона6
(по умолчанию) | положительная скалярная величинаШирина тротуара уличного каньона, в метрах, указывается как положительная скалярная величина.
Чтобы включить это свойство, задайте Environment
на 'Street canyon hotspot'
.
Типы данных: double
RoomDimensions
- размерности лобби гостиницы[20 15 6]
(по умолчанию) | вектор 1 на 3 положительных значенийРазмерности лобби гостиницы, в метрах, указаны как вектор положительных значений 1 на 3. Каждый элемент RoomDimensions
задает длину вестибюля отеля, измеренную вдоль оси Декартовой системы координат (x, y, z). Первый элемент задает длину вдоль оси x. Второй элемент задает длину вдоль оси y. Третий элемент задает длину вдоль оси z. Источник системы координат находится на полу вестибюля отеля, в середине между ограничивающими стенками.
Чтобы включить это свойство, задайте Environment
на 'Large hotel lobby'
.
Типы данных: double
UserConfiguration
- строение пользователя'SU-SISO'
(по умолчанию) | 'SU-MIMO 1x1'
| 'SU-MIMO 2x2'
Пользовательские строения, заданные как одно из следующих значений:
'SU-SISO'
- задайте одну передающую антенную решетку, одну приёмную антенную решетку и один поток данных
'SU-MIMO 1x1'
- задайте одну передающую антенную решетку, одну приёмную антенную решетку и два потока данных
'SU-MIMO 2x2'
- задайте две передающие антенные решетки, две приёмные антенные решётки и два или четыре потока данных в зависимости от значения ArrayPolarization
свойство. Вы можете проверить количество потоков данных с помощью info
функция объекта.
Используйте это свойство, чтобы задать количество передающих и приемных антенных массивов и количество потоков данных в передатчике и приемнике. Для получения дополнительной информации см. таблицу 3-2 в [1].
Типы данных: char
| string
ArraySeparation
- Разделение между передающими массивами и приёмными массивами[0.5 0.5]
(по умолчанию) | вектор 1 на 2 положительных значенийРазделение между передающими массивами и приёмными массивами, в метрах, задается как вектор 1 на 2 положительных значений. Первый элемент задает разделение между центрами передающих массивов. Второй элемент задает разделение между центрами приёмных массивов. Расстояния между соответствующими центрами массивов измеряются вдоль x -осей локальных систем координат массивов, в соответствии с фигурой 3-10 в [1].
Чтобы включить это свойство, задайте UserConfiguration
на 'SU-MIMO 2x2'
.
Типы данных: double
ArrayPolarization
- Тип поляризации антенного массива передачи и приема для SU-MIMO'Single, Single'
(по умолчанию) | 'Single, Dual'
| 'Dual, Dual'
Передающая и приемная антенна массива поляризационный тип для SU-MIMO, заданный как 'Single, Single'
, 'Single, Dual'
, или 'Dual, Dual'
. Для получения дополнительной информации см. таблицу 3-2 в [1].
Чтобы включить это свойство, задайте UserConfiguration
на 'SU-MIMO 1x1'
или 'SU-MIMO 2x2'
.
Типы данных: char
| string
TransmitArray
- Передающая антенная решеткаwlanURAConfig
объектПередающая антенная решетка, заданная как wlanURAConfig
объект. Можно задать TransmitArray
как равномерный прямоугольный массив (URA), равномерный линейный массив (ULA) или один элемент путем установки Size
свойство wlanURAConfig
объект.
TransmitArrayPosition
- Центр антенной решетки передачи[0; 0; 5]
(по умолчанию) | вектор с реальным значением 3 на 1Центр передающей антенной решетки, заданный как вектор с реальным значением 3 на 1. Это свойство задает смещение в метрах от источника системы координат до центра передающей антенной решетки.
Типы данных: double
TransmitArrayOrientation
- Ориентация антенной решетки передачи[0; 0; 0]
(по умолчанию) | вектор с реальным значением 3 на 1Антенная решетка передачи, в степенях, задается как вектор с реальным значением 3 на 1. Каждый элемент задает угол, на который локальная система координат передающей антенной решетки поворачивается относительно оси глобальной Декартовой системы координат. Первый элемент является углом поворота вокруг оси z и определяет целевой азимутальный угол. Второй элемент является углом поворота вокруг повернутой x оси -и определяет целевой угол возвышения. Третий элемент является углом поворота вокруг повернутой z оси и задан для несимметричного азимутального распределения усиления антенны. Положительное значение указывает на вращение против часовой стрелки. Для получения дополнительной информации см. раздел 6.3.3 в разделе [2].
Типы данных: double
TransmitArrayPolarization
- Тип поляризации антенной решетки'None'
(по умолчанию) | 'Vertical'
| 'Horizontal'
| 'LHCP'
| 'RHCP'
Тип поляризации передающей антенной решетки, заданный как одно из следующих значений:
'None'
- Неляризированная передающая антенная решетка
'Vertical'
- Вертикально поляризованная передающая антенная решетка
'Horizontal'
- Горизонтально поляризованная передающая антенная решетка
'LHCP'
- Левая круговая поляризованная передающая антенная решетка
'RHCP'
- правая круговая поляризованная антенная решетка
Чтобы включить это свойство, задайте UserConfiguration
на 'SU-SISO'
.
Типы данных: char
| string
ReceiveArray
- Приёмная антенная решеткаwlanURAConfig
объектПриёмная антенная решетка, заданная как wlanURAConfig
объект. Можно задать ReceiveArray
как URA, ULA или отдельный элемент путем установки Size
свойство wlanURAConfig
объект.
ReceiveArrayPosition
- Центр приёмной антенной решетки[8; 0; 1.5]
(по умолчанию) | вектор с реальным значением 3 на 1Центр приёмной антенной решетки, заданный как вектор с реальным значением 3 на 1. Это свойство задает смещение в метрах от источника системы координат до центра приёмной антенной решетки.
Типы данных: double
ReceiveArrayOrientation
- Ориентация антенной решетки приема[0; 0; 0]
(по умолчанию) | вектор с реальным значением 3 на 1Антенная решетка приема, в степенях, задается как действительный вектор 3 на 1. Каждый элемент задает угол, на который локальная система координат антенной решетки приема поворачивается относительно оси глобальной Декартовой системы координат. Первый элемент является углом поворота вокруг оси z и определяет целевой азимутальный угол. Второй элемент является углом поворота вокруг повернутой x оси -и определяет целевой угол возвышения. Третий элемент является углом поворота вокруг повернутой z оси и задан для несимметричного азимутального распределения усиления антенны. Положительное значение указывает на вращение против часовой стрелки. Для получения дополнительной информации см. раздел 6.3.3 в разделе [2].
Типы данных: double
ReceiveArrayPolarization
- Тип поляризации антенной решетки приема'None'
(по умолчанию) | 'Vertical'
| 'Horizontal'
| 'LHCP'
| 'RHCP'
Тип поляризации антенной решетки приема, заданный как одно из следующих значений:
'None'
- Неполяризированный прием антенной решетки
'Vertical'
- Вертикально поляризованная приёмная антенная решетка
'Horizontal'
- Горизонтально поляризованная приёмная антенная решетка
'LHCP'
- Левая круговая поляризованная приёмная антенная решетка
'RHCP'
- Правая круговая поляризованная приёмная антенная решетка
Чтобы включить это свойство, задайте UserConfiguration
на 'SU-SISO'
.
Типы данных: char
| string
ReceiveArrayVelocitySource
- Источник скорости антенной решетки приема'Auto'
(по умолчанию) | 'Custom'
Источник скорости антенной решетки приема, заданный как 'Auto'
или 'Custom'
. Чтобы задать случайным образом сгенерированную скорость приёмного массива, как определено в [1], установите это свойство равным 'Auto'
.
Типы данных: char
| string
ReceiveArrayVelocity
- Скорость антенной решётки приема[1; 1; 0]
(по умолчанию) | вектор с реальным значением 3 на 1Скорость приёмной антенной решетки, в метрах в секунду, задается как вектор с реальным значением 3 на 1.
Типы данных: double
RandomRays
- Генерируйте случайные лучиtrue
(по умолчанию) | false
Сгенерируйте случайные лучи (R-Лучи), заданные как логическое значение true
или false
.
Типы данных: logical
IntraClusterRays
- Генерируйте внутрикластерные лучиtrue
(по умолчанию) | false
Сгенерируйте внутрикластерные лучи, заданные как логическое значение true
или false
.
Типы данных: logical
OxygenAbsorption
- Потери степени из-за поглощения кислорода0.015
(по умолчанию) | неотрицательной скаляромПотери степени из-за поглощения кислорода, в дБ/м, заданные как неотрицательный скаляр.
Типы данных: double
BeamformingMethod
- Метод формирования луча'Maximum power ray'
(по умолчанию) | 'Custom'
Метод формирования луча, заданный как 'Maximum power ray'
или 'Custom'
. Для получения дополнительной информации см. раздел 6.5 в разделе [2].
Типы данных: char
| string
TransmitBeamformingVectors
- Передайте векторы формирования луча[0.5; 0.5; 0.5; 0.5]
(по умолчанию) | N TE-by N TS с комплексным значениемПередайте векторы формирования луча, заданные как N TE-by N TS комплексно-оцененную матрицу.
N TE является количеством элементов в каждой передающей антенной решетке.
N TS - это количество входных потоков данных.
Вы можете получить N TE и N TS, используя info
функция объекта.
Настраиваемый: Да
Чтобы включить это свойство, задайте BeamformingMethod
на 'Custom'
.
Типы данных: double
Поддержка комплексного числа: Да
ReceiveBeamformingVectors
- Прием векторов формирования луча[0.5; 0.5; 0.5; 0.5]
(по умолчанию) | N матрицу RE-by N RS с комплексным значениемПринимайте векторы формирования луча, заданные как N RE-by N RS комплексно-оцененную матрицу.
N RE является количеством элементов в каждой приёмной антенной решетке.
N RS - это количество выходных потоков данных.
Вы можете получить N RE и N RS, используя info
функция объекта.
Настраиваемый: Да
Чтобы включить это свойство, задайте BeamformingMethod
на 'Custom'
.
Типы данных: double
Поддержка комплексного числа: Да
NormalizeImpulseResponses
- Нормализуйте импульсные характеристики каналаtrue
(по умолчанию) | false
Нормализуйте импульсные характеристики канала (CIRs), заданные как логическое значение true
или false
. Чтобы нормировать CIR, равные 0 дБ на поток, установите это свойство на true
.
Типы данных: logical
NormalizeChannelOutputs
- Нормализуйте вывод по количеству выходных потоковtrue
(по умолчанию) | false
Нормализуйте вывод по количеству выхода потоков, заданных как логическое значение true
или false
.
Типы данных: logical
RandomStream
- Источник потока случайных чисел'Global stream'
(по умолчанию) | 'mt19937ar with seed'
Источник потока случайных чисел, заданный как 'Global stream'
или 'mt19937ar with seed'
. Чтобы использовать текущий глобальный поток случайных чисел для генерации случайных чисел, установите это свойство на 'Global stream'
. Использование reset
функция объекта, когда для этого свойства задано значение 'Global stream'
:
Регенерирует R-лучи при RandomRays
установлено в true
Регенерирует внутрикластовые лучи при IntraClusterRays
установлено в true
Регенерирует скорость антенной решетки приема при ReceiveArrayVelocitySource
установлено в 'Auto'
Чтобы использовать алгоритм mt19937ar для автономной генерации случайных чисел, установите это свойство на 'mt19937ar with seed'
.
Типы данных: char
| string
Seed
- Начальное начальное значение генератора случайных чисел73
(по умолчанию) | неотрицательное целое числоНачальное начальное число генератора случайных чисел, заданное как неотрицательное целое число.
Чтобы включить это свойство, задайте RandomStream
на 'mt19937ar with seed'
.
Типы данных: double
возвращает выходной сигнал y
= tgay(x
)y
фильтрацией входного сигнала x
через канал TGay с замираниями, заданный wlanTGayChannel
Системный объект tgay
.
[
также возвращает импульсную характеристику канала TGay, y
,CIR
] = tgay(x
)CIR
, базового процесса затухания.
Чтобы использовать функцию объекта, задайте системный объект в качестве первого входного параметра. Например, чтобы освободить системные ресурсы системного объекта с именем obj
, используйте следующий синтаксис:
release(obj)
wlanTGayChannel
info | Возвращает характеристическую информацию о TGay многолучевом канале с замираниями |
showEnvironment | Отобразите окружение канала с D-лучами от трассировки лучей |
Примечание
reset
: Если RandomStream
свойство wlanTGayChannel
Для системного объекта задано значение 'Global stream'
, использование reset
:
Регенерирует R-лучи при RandomRays
установлено в true
Регенерирует внутрикластовые лучи при IntraClusterRays
установлено в true
Регенерирует скорость антенной решетки приема при ReceiveArrayVelocitySource
установлено в 'Auto'
Создайте WLAN TGay channel System object™ и верните его характеристическую информацию.
Создайте канал WLAN TGay многолучевого распространения с Системным объектом по умолчанию.
tgay = wlanTGayChannel;
Возврат и отображение характеристической информации канала TGay.
tgayInfo = info(tgay); disp(tgayInfo);
NumTxStreams: 1 NumRxStreams: 1 NumTxElements: 4 NumRxElements: 4 ChannelFilterDelay: 7 NumSamplesProcessed: 0
Пропустите 802.11ad™ неполяризованный сигнал с одной несущей через канал 802.11ay™ SU-SISO, задавая большое окружение лобби отеля. Проверяйте, что выходной сигнал согласован, когда тот же входной сигнал фильтруется через канал.
Создайте объект строения directional-multi-gigabit-format (DMG-формат) с заданной схемой модуляции и кодирования (MCS).
cfgDMG = wlanDMGConfig('MCS','4');
Сгенерируйте сигнал DMG для случайным образом сгенерированного PSDU.
psdu = randi([0 1], 8*cfgDMG.PSDULength, 1); txWaveform = wlanWaveformGenerator(psdu,cfgDMG);
Сконфигурируйте Системный объект канала TGay для большого окружения лобби отеля, указав частоту дискретизации, передающую и приемную антенну массивов и источник потока случайных чисел.
tgay = wlanTGayChannel('SampleRate',wlanSampleRate(cfgDMG),'Environment','Large hotel lobby', ... 'TransmitArray',wlanURAConfig('Size',[4 4]),'ReceiveArray',wlanURAConfig('Size',[3 3]), ... 'RandomStream','mt19937ar with seed','Seed',100);
Пропустите сигнал через канал TGay.
rxWaveform1 = tgay(txWaveform);
Сбросьте канал и снова фильтруйте форму волны через канал TGay. Проверяйте, что выходная форма волны согласована, когда та же самая входная форма волны фильтруется через канал TGay после вызова reset
функция объекта.
reset(tgay); rxWaveform2 = tgay(txWaveform); isequal(rxWaveform1,rxWaveform2)
ans = logical
1
Пропустите двойной поляризованный сигнал через канал 802.11ay™ WLAN, задавая окружение уличного каньона.
Сконфигурируйте Системный объект канала TGay для окружения уличного каньона, задавая пользовательское строение однопользовательского нескольких-входного/нескольких-выходного (SU-MIMO) с двумя передающими антенными решетками и двумя приемными антенными решетками. Задайте передающие антенные решетки как двухэлементные равномерные линейные массивы (ULA) и приёмные антенные решётки как единичные изотропные элементы. Используйте пользовательский метод формирования луча, чтобы задать векторы формирования луча для передачи и приема и задать источник потока случайных чисел.
tgay = wlanTGayChannel('SampleRate',2e9,'Environment','Street canyon hotspot', ... 'UserConfiguration','SU-MIMO 2x2','ArraySeparation',[0.8 0.8],'ArrayPolarization','Dual, Dual', ... 'TransmitArray',wlanURAConfig('Size',[1 2]),'TransmitArrayOrientation',[10; 10; 10], ... 'ReceiveArray',wlanURAConfig('Size',[1 1]),'BeamformingMethod','Custom','NormalizeImpulseResponses',false, ... 'RandomStream','mt19937ar with seed','Seed',100);
Отображение окружения канала TGay.
showEnvironment(tgay);
title('Street Canyon Hotspot with Antenna Arrays and D-Rays');
Извлечение характеристик канала при помощи info
функция объекта.
tgayInfo = tgay.info;
Сформулируйте векторы формирования луча с точки зрения количества передающих элементов, элементов приема, потоков передачи и потоков приема, полученных из tgayInfo
.
NTE = tgayInfo.NumTxElements; NTS = tgayInfo.NumTxStreams; NRE = tgayInfo.NumRxElements; NRS = tgayInfo.NumRxStreams; tgay.TransmitBeamformingVectors = ones(NTE,NTS)/sqrt(NTE); tgay.ReceiveBeamformingVectors = ones(NRE,NRS)/sqrt(NRE);
Создайте случайный входной сигнал и фильтруйте его через канал TGay.
txSignal = complex(rand(100,NTS),rand(100,NTS)); rxSignal = tgay(txSignal);
Эти схемы показывают алгоритм Q-D и базовые шаги для генерации импульсной характеристики канала. Для получения дополнительной информации см. Раздел 4 документа [1].
[1] Мальцев, А., и др. Модели каналов для 802.11ay. IEEE 802.11-15/1150r9, март 2017.
[2] Мальцев, А., и др. Модели канала для 60GHz систем WLAN. IEEE 802.11-09/0334r8, май 2010.
Указания и ограничения по применению:
Смотрите Системные объекты в Генерации кода MATLAB (MATLAB Coder).
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.