Рассеивание канала MIMO
Система phased.ScatteringMIMOChannel
object™ моделирует многопутевой канал распространения, в котором излученные сигналы от массива передачи отражаются от нескольких рассеивателей назад к массиву получения. В этом канале пути к распространению являются углом обзора от точки до точки. Задержка зависимого области значений объектных моделей, усиление, эффект Доплера, фазовый переход и атмосферная потеря из-за газов, дождя, вуали и облаков.
Модели затухания для атмосферных газов и дождя допустимы для электромагнитных сигналов в частотном диапазоне 1-1000 ГГц. Модель затухания для вуали и облаков допустима от 10-1000 ГГц. Вне этих частотных диапазонов объект использует самое близкое допустимое значение.
Вычислить многопутевое распространение для заданного источника и точек получателя:
Задайте и настройте свое рассеивание канал MIMO с помощью процедуры Конструкции. Можно установить свойства Системного объекта во время конструкции или оставить их в их значениях по умолчанию.
Вызовите метод step
, чтобы вычислить распространенные сигналы с помощью свойств Системного объекта phased.ScatteringMIMOChannel
. Можно изменить настраиваемые свойства прежде или после любого вызова метода step
.
Вместо того, чтобы использовать метод step
, чтобы выполнить операцию, заданную Системным объектом, можно вызвать объект с аргументами, как будто это была функция. Например, y = step(obj,x)
и y = obj(x)
выполняют эквивалентные операции.
channel = phased.ScatteringMIMOChannel
создает рассеивающийся Системный объект канала распространения MIMO, channel
.
channel = phased.ScatteringMIMOChannel(
создает Системный объект, Name
,Value
)channel
, с каждым заданным набором свойства Name
к заданному Value
. Можно задать дополнительное имя и аргументы пары значения в любом порядке как (Name1,Value1
..., NameN,ValueN
).
TransmitArray
— Передача массиваПередача массива, заданного как Системный объект антенной решетки Phased Array System Toolbox.
Пример: phased.URA
ReceiveArray
— Получение массиваПолучение массива, заданного как Системный объект антенной решетки Phased Array System Toolbox.
Пример: phased.URA
PropagationSpeed
— Скорость распространения сигналаphysconst('LightSpeed')
(значение по умолчанию) | положительная скалярная величинаСкорость распространения сигнала, заданная как положительная скалярная величина. Модули исчисляются в метрах в секунду. Скорость распространения по умолчанию является значением, возвращенным physconst('LightSpeed')
. Смотрите physconst
.
Пример: 3e8
Типы данных: double
CarrierFrequency
— Несущая частота сигнала300e6
(значение по умолчанию) | положительный скаляр с действительным знакомНесущая частота сигнала, заданная как положительный скаляр с действительным знаком. Модули находятся в Гц.
Пример: 100e6
Типы данных: double
Polarization
— Настройка поляризации'None'
(значение по умолчанию) | 'Combined'
| 'Dual'
Настройка поляризации, заданная как 'None'
, 'Combined'
или 'Dual'
. Когда вы устанавливаете это свойство на 'None'
, выходное поле рассматривается скалярным полем. Когда вы устанавливаете это свойство на 'Combined'
, излученные поля поляризованы и интерпретированы как один сигнал в свойственной поляризации датчика. Когда вы устанавливаете это свойство на 'Dual'
, H и компоненты поляризации V излученного поля являются независимыми сигналами.
Пример: 'Dual'
Типы данных: char
SpecifyAtmosphere
— Включите атмосферную модель затуханияfalse
(значение по умолчанию) | true
Опция, чтобы включить атмосферную модель затухания, заданную как false
или true
. Установите это свойство на true
добавлять затухание сигнала, вызванное атмосферными газами, дождем, вуалью или облаками. Установите это свойство на false
игнорировать атмосферные эффекты в распространении.
Устанавливая SpecifyAtmosphere
на true
, включает Temperature
, DryAirPressure
, WaterVapourDensity
, LiquidWaterDensity
и свойства RainRate
.
Типы данных: логический
Temperature
— Температура окружающей среды15
(значение по умолчанию) | скаляр с действительным знакомТемпература окружающей среды, заданная как скаляр с действительным знаком. Модули в градусах Цельсия.
Пример: 20.0
Чтобы включить это свойство, установите SpecifyAtmosphere
на true
.
Типы данных: double
DryAirPressure
— Атмосферное сухое давление воздуха101.325e3
(значение по умолчанию) | положительный скаляр с действительным знакомАтмосферное сухое давление воздуха, заданное как положительный скаляр с действительным знаком. Модули находятся в pascals (Pa). Значение по умолчанию этого свойства соответствует одной стандартной атмосфере.
Пример: 101.0e3
Чтобы включить это свойство, установите SpecifyAtmosphere
на true
.
Типы данных: double
WaterVapourDensity
— Атмосферная плотность водяного пара7.5
(значение по умолчанию) | положительный скаляр с действительным знакомАтмосферная плотность водяного пара, заданная как положительный скаляр с действительным знаком. Модули находятся в g/m3.
Пример: 7.4
Чтобы включить это свойство, установите SpecifyAtmosphere
на true
.
Типы данных: double
LiquidWaterDensity
— Жидкая водная плотность0.0
(значение по умолчанию) | неотрицательный скаляр с действительным знакомЖидкая водная плотность вуали или облаков, заданных как неотрицательный скаляр с действительным знаком. Модули находятся в g/m3. Типичные значения для жидкой водной плотности 0.05 для средней вуали и 0.5 для густого тумана.
Пример: 0.1
Чтобы включить это свойство, установите SpecifyAtmosphere
на true
.
Типы данных: double
RainRate
— Уровень ливня0.0
(значение по умолчанию) | неотрицательный скалярУровень ливня, заданный как неотрицательный скаляр. Модули находятся в мм/час.
Пример: 10.0
Чтобы включить это свойство, установите SpecifyAtmosphere
на true
.
Типы данных: double
SampleRate
— Частота дискретизации сигнала1e6
(значение по умолчанию) | положительная скалярная величинаЧастота дискретизации сигнала, заданного как положительная скалярная величина. Модули находятся в Гц. Системный объект использует это количество, чтобы вычислить задержку распространения модулей выборок.
Пример: 1e6
Типы данных: double
SimulateDirectPath
— Включите распространение вдоль прямого путиfalse
(значение по умолчанию) | true
Опция, чтобы включить распространение сигнала вдоль прямого пути, заданного как false
или true
. Прямой путь является путем угла обзора от массива передачи до массива получения без рассеивания.
Типы данных: логический
ChannelResponseOutputPort
— Enable вывод ответа каналаfalse
(значение по умолчанию) | true
Опция, чтобы включить вывод ответа канала, заданного как false
или true
. Установите это свойство на true
выводить ответ канала и задержку при помощи chmatrix
и выходных аргументов tau
метода step
.
Типы данных: логический
MaximumDelaySource
— Источник максимальной задержки'Auto'
(значение по умолчанию) | 'Property'
Источник максимального значения задержки, заданного как 'Auto'
или 'Property'
. Когда вы устанавливаете это свойство на 'Auto'
, канал автоматически выделяет достаточно памяти, чтобы моделировать задержку распространения. Когда вы устанавливаете это свойство на 'Property'
, можно задать максимальную задержку при помощи свойства MaximumDelay
. Проигнорированы сигналы, прибывающие после максимальной задержки.
MaximumDelay
— Максимальная задержка сигнала10e-6
(значение по умолчанию) | положительная скалярная величинаМаксимальная задержка сигнала, заданная как положительная скалярная величина. Проигнорированы задержки, больше, чем это значение. Модули находятся в секундах.
Чтобы включить это свойство, установите свойство MaximumDelaySource
на 'Property'
.
Типы данных: double
TransmitArrayMotionSource
— Источник передачи параметров движения массивов'Property'
(значение по умолчанию) | 'Input port'
Источник параметров движения передачи массивов, заданных как 'Property'
или 'Input port'
.
Когда вы устанавливаете это свойство на 'Property'
, массив передачи является стационарным. Затем можно задать местоположение и ориентацию массива с помощью свойств TransmitArrayPosition
и TransmitArrayOrientationAxes
.
Когда вы устанавливаете это свойство на 'Input port'
, задаете местоположение передачи массивов, скорость и ориентацию при помощи txpos
, txvel
и входных параметров txaxes
метода step
.
Типы данных: char
TransmitArrayPosition
— Положение передачи центра фазы массивов[0;0;0]
(значение по умолчанию) | трехэлементный вектор с действительным знакомПозиция центра фазы передачи массивов, заданного как трехэлементный вектор с действительным знаком в Декартовой форме, [x;y;z]
, относительно глобальной системы координат. Модули исчисляются в метрах.
Пример: [1000;-200;55]
Чтобы включить это свойство, установите свойство TransmitArrayMotionSource
на 'Property'
.
Типы данных: double
TransmitArrayOrientationAxes
— Ориентация передачи массиваeye(3,3)
(значение по умолчанию) | 3х3 ортонормированная матрица с действительным знакомОриентация передачи массива, заданного как 3х3 ортонормированная матрица с действительным знаком. Матрица задает эти три оси, (x,y,z), которые задают систему локальной координаты массива относительно глобальной системы координат. Каждый столбец соответствует оси.
Пример: rotz(45)
Чтобы включить это свойство, установите свойство TransmitArrayMotionSource
на 'Property'
.
Типы данных: double
ReceiveArrayMotionSource
— Источник получения параметров движения массивов'Property'
(значение по умолчанию) | 'Input port'
Источник параметров движения получения массивов, заданных как 'Property'
или 'Input port'
.
Когда вы устанавливаете это свойство на 'Property'
, массив получения является стационарным. Затем можно задать местоположение и ориентацию массива при помощи свойств ReceiveArrayPosition
и ReceiveArrayOrientationAxes
.
Когда вы устанавливаете это свойство на 'Input port'
, можно задать местоположение получения массивов, скорость и ориентацию при помощи rxpos
, rxvel
и входных параметров rxaxes
метода step
.
Типы данных: char
ReceiveArrayPosition
— Положение получения массива[0;0;0]
(значение по умолчанию) | трехэлементный вектор с действительным знакомПозиция центра фазы получения массивов, заданного как трехэлементный вектор с действительным знаком в Декартовой форме, [x;y;z]
, относительно глобальной системы координат. Модули исчисляются в метрах.
Пример: [1000;-200;55]
Чтобы включить это свойство, установите свойство ReceiveArrayMotionSource
на 'Property'
.
Типы данных: double
ReceiveArrayOrientationAxes
— Ориентация получения массиваeye(3,3)
(значение по умолчанию) | 3х3 ортонормированная матрица с действительным знакомОриентация получения массива, заданного как 3х3 ортонормированная матрица с действительным знаком. Матрица задает эти три оси, (x,y,z), которые задают систему локальной координаты массива относительно глобальной системы координат. Каждый столбец соответствует оси.
Пример: roty(60)
Чтобы включить это свойство, установите свойство ReceiveArrayMotionSource
на 'Property'
.
Типы данных: double
ScattererSpecificationSource
— Источник параметров рассеивателя'Auto'
(значение по умолчанию) | 'Property'
| 'Input port'
Источник параметров рассеивателя, заданных как 'Auto'
, 'Property'
, 'Input port'
.
Когда вы устанавливаете это свойство на 'Auto'
, все положения рассеивателя и коэффициенты случайным образом сгенерированы. Скорости рассеивателя являются нулем. Сгенерированные положения содержатся в области, которая задана ScattererPositionBoundary
. Чтобы определить номер рассеивателей, используйте свойство NumScatterers
.
Когда вы устанавливаете это свойство на 'Property'
, можно установить положения рассеивателя при помощи свойства ScattererPosition
и рассеивающиеся коэффициенты при помощи свойства ScattererCoefficient
. Все скорости рассеивателя являются нулем.
Когда вы устанавливаете это свойство на 'Input port'
, можно задать положения рассеивателя, скорости и рассеивающиеся коэффициенты с помощью scatpos
, scatvel
и входных параметров scatcoef
метода step
.
Пример: 'Input port'
Типы данных: char
NumScatterers
— Количество рассеивателей1
(значение по умолчанию) | неотрицательное целое числоКоличество рассеивателей, заданных как неотрицательное целое число.
Пример 9
Чтобы включить это свойство, установите свойство ScattererSpecificationSource
на 'Auto'
.
Типы данных: double
ScattererPositionBoundary
— Контур положений рассеивателя[0,1000]
(значение по умолчанию) | 1 2 вектор с действительным знаком | 3 2 матрица с действительным знакомКонтур положений рассеивателя, заданных как 1 2 вектор - строка с действительным знаком или 3 2 матрица с действительным знаком. Вектор задает минимум и максимум, [minbdry maxbdry]
, для всех трех измерений. Матрица задает контуры во всех трех измерениях в форме [x_minbdry x_maxbdry;y_minbdry y_maxbdry; z_minbdry z_maxbdry]
.
Пример: [-1000 500;-100 100;-200 0]
Чтобы включить это свойство, установите свойство ScattererSpecificationSource
на 'Auto'
.
Типы данных: double
ScattererPosition
— Положения рассеивателей[0;0;0]
(значение по умолчанию) | 3 с действительным знаком K матрицейПоложения рассеивателей, заданных как 3 с действительным знаком K матрицей. K является количеством рассеивателей. Каждый столбец представляет различный рассеиватель и имеет Декартову форму [x;y;z]
относительно глобальной системы координат. Модули исчисляются в метрах.
Пример: [1050 -100;-300 55;0 -75]
Чтобы включить это свойство, установите свойство ScattererSpecificationSource
на 'Property'
.
Типы данных: double
ScattererCoefficient
— Рассеивание коэффициентов1
(значение по умолчанию) | 1 с комплексным знаком K векторомРассеивание коэффициентов, заданных как 1 с комплексным знаком K вектором. K является количеством рассеивателей. Модули являются безразмерными.
Пример: 2+1i
Чтобы включить это свойство, установите свойство ScattererSpecificationSource
на 'Property'
.
Типы данных: double
Поддержка комплексного числа: Да
ScatteringMatrix
— Рассеивание матриц[1 0;0 1]
| 2 с комплексным знаком 2 Ns массивомРассеивание матриц рассеивателей, заданных как 2 с комплексным знаком 2 Ns массивом, где N s является количеством рассеивателей. Каждая страница этого массива представляет рассеивающуюся матрицу рассеивателя. Каждая матрица рассеивания имеет форму [s_hh s_hv;s_vh s_vv]
. Например, s_hv
компонента задает комплексный ответ рассеивания, когда входной сигнал вертикально поляризован, и отраженный сигнал горизонтально поляризован. Другие компоненты заданы так же. Модули находятся в квадратных метрах.
Чтобы включить это свойство, установите свойство ScatteringMatrixSource
на 'Property'
и свойство Polarization
к 'Combined'
или 'Dual'
.
Типы данных: double
Поддержка комплексного числа: Да
ScattererOrientationAxes
— Ориентация рассеивателей[1 0 0;0 1 0;0 0 1]
(значение по умолчанию) | 3 с действительным знаком 3 Ns массивомОриентация рассеивателей, заданных как 3 с действительным знаком 3 Ns массивом, где N s является количеством рассеивателей. Каждая страница этого массива является ортонормированной матрицей. Столбцы матрицы представляют ось локальных координат, (x, y, z) рассеяния относительно глобальной системы координат.
Пример: roty(45)
Чтобы включить это свойство, установите свойство ScatteringMatrixSource
на 'Property'
и свойство Polarization
к 'Combined'
или 'Dual'
.
Типы данных: double
SeedSource
— Источник seed генератора случайных чисел'Auto'
(значение по умолчанию) | 'Property'
Источник seed генератора случайных чисел, заданного как 'Auto'
или 'Property'
.
Когда вы устанавливаете это свойство на 'Auto'
, случайные числа сгенерированы с помощью генератора случайных чисел MATLAB® по умолчанию.
Когда вы устанавливаете это свойство на 'Property'
, объект использует частный генератор случайных чисел с seed, заданным значением свойства Seed
.
Чтобы использовать этот объект с программным обеспечением Parallel Computing Toolbox™, установите это свойство на 'Auto'
.
Чтобы включить это свойство, установите свойство ScattererSpecificationSource
на 'Auto'
.
Seed
— Seed генератора случайных чисел0
(значение по умолчанию) | неотрицательное целое числоSeed генератора случайных чисел, заданный как неотрицательное целое число меньше чем 232.
Пример: 5005
Чтобы включить это свойство, установите свойство ScattererSpecificationSource
на 'Auto'
и свойство SeedSource
к 'Property'
.
Типы данных: double
сброс | Сбросьте состояние Системного объекта |
шаг | Распространите сигналы в рассеивании канала MIMO |
Характерный для всех системных объектов | |
---|---|
release | Позвольте изменения значения свойства Системного объекта |
Создайте 30 каналов GHz MIMO со случайными рассеивателями. Сценарий содержит стационарную передачу с 21 элементом массив ULA и стационарное получение с 15 элементами массив ULA. Антенны передачи имеют ответы косинуса, и антенны получения являются изотропными. Интервал элемента для обоих массивов является меньше, чем половина длины волны. Канал имеет 50 случайным образом сгенерированных статических рассеивателей в заданной ограничительной рамке. Массив передачи расположен в [0; 20; 50] метры и получить массив расположен в [200; 10; 10] метры. Вычислите распространенный сигнал через этот канал. Частота дискретизации для сигнала составляет 10 МГц.
fc = 30e9; c = physconst('LightSpeed'); lambda = c/fc; fs = 10e6; txarray = phased.ULA('Element',phased.CosineAntennaElement,... 'NumElements',21,'ElementSpacing',0.45*lambda); rxarray = phased.ULA('Element',phased.IsotropicAntennaElement,... 'NumElements',15,'ElementSpacing',0.45*lambda); channel = phased.ScatteringMIMOChannel('TransmitArray',txarray,... 'ReceiveArray',rxarray,'PropagationSpeed',c,'CarrierFrequency',fc,... 'SampleRate',fs,'TransmitArrayPosition',[0;20;50],... 'ReceiveArrayPosition',[200;10;10],'NumScatterers',50,... 'ScattererPositionBoundary',[10 180; -30 30; -30 30]);
Создайте случайный сигнал данных единиц и нулей для каждого передатчика.
x = randi(2,[100 21]) - 1;
Вычислите полученные сигналы после распространения через канал.
y = channel(x);
Создайте канал MIMO, содержащий 3 фиксированных рассеивателя. Сценарий содержит передачу с 21 элементом массив ULA, действующий на уровне 72 ГГц и получение с 15 элементами массив ULA. Элементы передачи имеют формы ответа косинуса, и антенны получения являются изотропными. Только антенна передачи перемещается. Интервал элемента для обоих массивов является меньше, чем половина длины волны. Массив передачи запускается в (0,20,50) метры и двигает получатель на уровне 2 м/с. Массив получения расположен в (200,10,10) метры. Вычислите распространенный сигнал через этот канал. Частота дискретизации для сигнала составляет 10 МГц.
fc = 72e9; c = physconst('LightSpeed'); lambda = c/fc; fs = 10e6; txplatform = phased.Platform('MotionModel','Velocity','InitialPosition', ... [0;20;50],'Velocity',[2;0;0]); txarray = phased.ULA('Element',phased.CosineAntennaElement, ... 'NumElements',21,'ElementSpacing',0.45*lambda); rxarray = phased.ULA('Element',phased.IsotropicAntennaElement, ... 'NumElements',15,'ElementSpacing',0.45*lambda); channel = phased.ScatteringMIMOChannel('TransmitArray',txarray, ... 'ReceiveArray',rxarray,'PropagationSpeed',c,'CarrierFrequency',fc,... 'SampleRate',fs,'TransmitArrayMotionSource','Input port', ... 'ReceiveArrayMotionSource','Property','ReceiveArrayPosition',[200;10;10],... 'ReceiveArrayOrientationAxes',rotz(180),... 'ScattererSpecificationSource','Property','ScattererPosition', ... [75 100 120; -10 20 12; 5 -5 8],'ScattererCoefficient',[1i,2+3i,-1+1i]);
Переместите платформы для двух временных шагов во вторых интервалах. В течение каждого раза экземпляр:
Создайте случайный сигнал данных единиц и нулей для каждого элемента передатчика.
Переместите передатчик и получатель. Ориентации фиксируются.
Распространите сигналы от передатчиков до рассеивателей к получателю.
for k =1:2 x = randi(2,[100 21]) - 1; [txpos,txvel] = txplatform(1); txaxes = eye(3); y = channel(x,txpos,txvel,txaxes); end
Создайте канал MIMO, содержащий 3 фиксированных рассеивателя. Сценарий содержит передачу с 21 элементом массив ULA и получение с 15 элементами массив ULA. Оба массива, действующие на уровне 72 ГГц. Элементы передачи имеют формы ответа косинуса, и антенны получения являются изотропными. Только антенна получения перемещается. Интервал элемента для обоих массивов является меньше, чем половина длины волны. Массив передачи расположен в (0,20,50) метры. Массив получения запускается в (200,10,10) метры и перемещается к передатчику в 2 м/с. Вычислите распространенный сигнал через этот канал. Частота дискретизации для сигнала составляет 10 МГц.
fc = 72e9; c = physconst('LightSpeed'); lambda = c/fc; fs = 10e6; rxplatform = phased.Platform('MotionModel','Velocity','InitialPosition',... [200;10;10],'Velocity',[-2;0;0]); txarray = phased.ULA('Element',phased.CosineAntennaElement, ... 'NumElements',21,'ElementSpacing',0.45*lambda); rxarray = phased.ULA('Element',phased.IsotropicAntennaElement, ... 'NumElements',15,'ElementSpacing',0.45*lambda); channel = phased.ScatteringMIMOChannel('TransmitArray',txarray, ... 'ReceiveArray',rxarray,'PropagationSpeed',c,'CarrierFrequency',fc, ... 'SampleRate',fs,'TransmitArrayMotionSource','Property',... 'TransmitArrayPosition',[0;20;50],'TransmitArrayOrientationAxes',eye(3,3), ... 'ReceiveArrayMotionSource','Input port','ScattererSpecificationSource', ... 'Property','ScattererPosition',[75 100 120; -10 20 12; 5 -5 8], ... 'ScattererCoefficient',[1i,2+3i,-1+1i],'SpecifyAtmosphere',false);
Переместите платформы для двух временных шагов во вторых интервалах. В течение каждого раза экземпляр:
Создайте случайный сигнал данных единиц и нулей для каждого элемента передатчика.
Переместите передатчик и получатель. Зафиксируйте ориентации массивов.
Распространите сигналы от передатчиков до рассеивателей к получателю.
for k =1:2 x = randi(2,[100 21]) - 1; [rxpos,rxvel] = rxplatform(1); rxaxes = rotz(45); y = channel(x,rxpos,rxvel,rxaxes); end
Создайте канал MIMO на уровне 30 ГГц с массивом передачи с 16 элементами, и с 64 элементами получают массив. Примите, что элементы являются антеннами короткого диполя, и массивы являются универсальными линейными матрицами. Массив передачи расположен в [0; 0; 50] метры.
Получить массив имеет исходное положение в [200; 0; 0] метры и перемещаются со скоростью [10; 0; 0] метры/секунда. Существует 200 статических рассеивателей, случайным образом расположенных на xy плоскости в квадрате, сосредоточенном в [200; 0; 0] и с длиной стороны 100 метров.
Используйте канал, чтобы вычислить распространенный поляризованный сигнал. Примите, что частота дискретизации для сигнала составляет 10 МГц, и длина кадра является 1 000 выборок. Соберите 5 кадров полученного сигнала.
fc = 30e9; c = 3e8; lambda = c/fc; fs = 10e6; txarray = phased.ULA('Element',phased.ShortDipoleAntennaElement,... 'NumElements',16,'ElementSpacing',lambda/2); rxarray = phased.ULA('Element',phased.ShortDipoleAntennaElement,... 'NumElements',64,'ElementSpacing',lambda/2); Ns = 200; scatpos = [100*rand(1,Ns) + 150; 100*rand(1,Ns) + 150; zeros(1,Ns)]; temp = randn(1,Ns) + 1i*randn(1,Ns); scatcoef = repmat(eye(2),1,1,Ns).*permute(temp,[1 3 2]); scatax = repmat(eye(3),1,1,Ns); Nframesamp = 1000; Tframe = Nframesamp/fs; rxmobile = phased.Platform('InitialPosition',[200;0;0],... 'Velocity',[10;0;0],'OrientationAxesOutputPort',true); chan = phased.ScatteringMIMOChannel(... 'TransmitArray',txarray,... 'ReceiveArray',rxarray,... 'PropagationSpeed',c,... 'CarrierFrequency',fc,... 'SampleRate',fs,... 'Polarization','Dual',... 'TransmitArrayPosition',[0;0;50],... 'ReceiveArrayMotionSource','Input port',... 'ScattererSpecificationSource','Property',... 'ScattererPosition',scatpos,... 'ScatteringMatrix',scatcoef,... 'ScattererOrientationAxes',scatax); xh = randi(2,[Nframesamp 16])-1; xv = randi(2,[Nframesamp 16])-1; for m = 1:5 [rxpos,rxvel,rxax] = rxmobile(Tframe); [yh,yv] = chan(xh,xv,rxpos,rxvel,rxax); end
Потеря затухания или пути в рассеивающемся канале MIMO состоит из четырех компонентов. L = LfspLgLcLr, где:
Lfsp является затуханием пути свободного пространства.
Lg является атмосферным затуханием пути.
Lc является вуалью и затуханием пути к облаку.
Lr является затуханием пути к дождю.
Каждый компонент находится в единицах значения, не в дБ.
Когда источник и место назначения являются стационарными друг относительно друга, можно записать выходной сигнал канала свободного пространства как Y(t) = x(t-τ)/Lfsp. Количество τ является задержкой сигнала и Lfsp, является потерей пути свободного пространства. Задержка, которую τ дан R/c, где R является расстоянием распространения и c, является скоростью распространения. Потерей пути свободного пространства дают
где λ является длиной волны сигнала.
Эта формула принимает, что цель находится в далеком поле элемента передачи или массива. В близком поле формула пути свободного пространства потерь не допустима и может привести к потере, меньшей, чем одна, эквивалентная усилению сигнала. Поэтому потеря установлена в единицу для значений области значений, R ≤ λ/4π.
Когда у источника и места назначения есть относительное движение, обработка также вводит Доплеровский сдвиг частоты. Сдвигом частоты является v/λ для одностороннего распространения и 2v/λ для двухстороннего распространения. Количество v является относительной скоростью места назначения относительно источника.
Для получения дополнительной информации на распространении канала свободного пространства, см. [8]
Эта модель вычисляет затухание сигналов, которые распространяют через атмосферные газы.
Электромагнитные сигналы затухают, когда они распространяют через атмосферу. Этот эффект должен, в основном, к строкам резонанса поглощения кислорода и водяного пара с меньшими вкладами, поступающими из газа азота. Модель также включает непрерывный спектр поглощения ниже 10 ГГц. Рекомендация модели ITU ITU-R P.676-10: Затухание атмосферными газами используется. Модель вычисляет определенное затухание (затухание на километр) как функция температуры, давления, плотности водяного пара и частоты сигнала. Атмосферная газовая модель допустима для частот от 1-1000 ГГц и применяется к поляризованным и неполяризованным полям.
Формула для определенного затухания на каждой частоте
Количество N"() является мнимой частью комплексного атмосферного явления преломления и состоит из спектрального компонента строки и непрерывного компонента:
Спектральный компонент состоит из суммы дискретных условий спектра, состоявших из локализованной функции пропускной способности частоты, F(f) i, умноженный на спектральную силу строки, S i. Для атмосферного кислорода каждая спектральная сила строки
Для атмосферного водяного пара каждая спектральная сила строки
P является сухим давлением воздуха, W является парциальным давлением водяного пара, и T является температурой окружающей среды. Единицы давления находятся в гектопаскалях (гПа), и температурой является в градусах Келвин. Парциальное давление водяного пара, W, связано с плотностью водяного пара, ρ,
Общим атмосферным давлением является P + W.
Для каждой кислородной строки Si зависит от двух параметров, a1 и a2. Точно так же каждая строка водяного пара зависит от двух параметров, b1 и b2. Документация ITU, процитированная в конце этого раздела, содержит табулирование этих параметров как функции частоты.
Локализованные функции пропускной способности частоты Fi(f) являются сложными функциями частоты, описанной в ссылках ITU, процитированных ниже. Функции зависят от эмпирических параметров модели, которые также сведены в таблицу в ссылке.
Чтобы вычислить общее затухание для узкополосных сигналов вдоль пути, функция умножает определенное затухание на длину пути, R. Затем общим затуханием является Lg= R(γo + γw).
Можно применить модель затухания к широкополосным сигналам. Во-первых, разделите широкополосный сигнал на поддиапазоны частоты и примените затухание к каждому поддиапазону. Затем суммируйте все ослабленные сигналы поддиапазона в общий ослабленный сигнал.
Поскольку полное описание этого моделирует, см. [4].
Эта модель вычисляет затухание сигналов, которые распространяют через вуаль или облака.
Вуаль и затухание облака являются тем же атмосферным явлением. Модель ITU, Рекомендация ITU-R P.840-6: Затухание из-за облаков и вуали используется. Модель вычисляет определенное затухание (затухание на километр), сигнала как функция жидкой водной плотности, частоты сигнала и температуры. Модель применяется к поляризованным и неполяризованным полям. Формула для определенного затухания на каждой частоте
где M является жидкой водной плотностью в gm/m3. Количество Kl(f) является определенным коэффициентом затухания и зависит от частоты. Модель затухания облака и вуали допустима для частот 10-1000 ГГц. Модули для определенного коэффициента затухания (дБ/км) / (g/m3).
Чтобы вычислить общее затухание для узкополосных сигналов вдоль пути, функция умножает определенное затухание на длину пути R. Общим затуханием является Lc = Rγc.
Можно применить модель затухания к широкополосным сигналам. Во-первых, разделите широкополосный сигнал на поддиапазоны частоты и примените узкополосное затухание к каждому поддиапазону. Затем суммируйте все ослабленные сигналы поддиапазона в общий ослабленный сигнал.
Для полного описания этой модели см. [5]
Эта модель вычисляет затухание сигналов, которые распространяют через области ливня.
Электромагнитные сигналы ослаблены при распространении через область ливня. Затухание ливня вычисляется согласно модели Recommendation ITU-R P.838-3 ливня ITU: Определенная модель затухания для дождя для использования в методах прогноза. Модель вычисляет определенное затухание (затухание на километр) сигнала как функция уровня ливня, частоты сигнала, поляризации и угла повышения пути. Вычислить затухание, эта модель использование
где r является уровнем дождя в мм/час. Параметр k и экспонента α зависит от частоты, вида поляризации и угла повышения пути прохождения сигнала. Определенная модель затухания допустима для частот от 1-1000 ГГц.
Чтобы вычислить общее затухание для узкополосных сигналов вдоль пути, функция умножает определенное затухание на расстояние распространения, R. Затем общим затуханием является Lr = Rγr. Вместо того, чтобы использовать геометрическую область значений в качестве расстояния распространения, тулбокс использует измененную область значений. Измененная область значений является геометрической областью значений, умноженной на фактор области значений
где
эффективная длина пути в километрах (см. Seybold, J. Введение в Распространение РФ.), Когда нет никакого дождя, эффективная длина пути составляет 35 км. Когда уровень дождя - например, 10 мм/час, эффективная длина пути составляет 30,1 км. С близкого расстояния расстояние распространения является приблизительно геометрической областью значений. Для более длинных областей значений расстояние распространения асимптотически приближается к эффективной длине пути.
Можно применить модель затухания к широкополосным сигналам. Во-первых, разделите широкополосный сигнал на поддиапазоны частоты и примените затухание к каждому поддиапазону. Затем суммируйте все ослабленные сигналы поддиапазона в общий ослабленный сигнал.
[1] Пустошь, R. Младший и др. “Обзор Методов Обработки сигналов для Волны Миллиметра Системы MIMO”, arXiv.org:1512.03007 [cs.IT], 2015.
[2] Се, D. и П. Висванэт, основные принципы радиосвязей, Кембриджа: Издательство Кембриджского университета, 2005.
[3] Paulraj, A. Введение в пространственно-временные радиосвязи, Кембридж: Издательство Кембриджского университета, 2003.
[4] Сектор радиосвязи Международного союза электросвязи. Рекомендация ITU-R P.676-10: Затухание атмосферными газами. 2013.
[5] Сектор радиосвязи Международного союза электросвязи. Рекомендация ITU-R P.840-6: Затухание из-за облаков и вуали. 2013.
[6] Сектор радиосвязи Международного союза электросвязи. Рекомендация ITU-R P.838-3: Определенная модель затухания для дождя для использования в методах прогноза. 2005.
[7] Seybold, J. Введение в распространение РФ. Нью-Йорк: Wiley & Sons, 2005.
[8] Skolnik, M. Введение в радиолокационные системы, 3-го Эда. Нью-Йорк: McGraw-Hill, 2001.
Указания и ограничения по применению:
Смотрите системные объекты в Генерации кода MATLAB (MATLAB Coder).
diagbfweights
| fogpl
| fspl
| gaspl
| rainpl
| rangeangle
| scatteringchanmtx
| waterfill
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.