Рассеивание канала MIMO
phased.ScatteringMIMOChannel
Система object™ моделирует многопутевой канал распространения, в котором излученные сигналы от массива передачи отражаются от нескольких рассеивателей назад к массиву получения. В этом канале пути к распространению являются углом обзора от точки до точки. Задержка зависимого области значений объектных моделей, усиление, эффект Доплера, фазовый переход и атмосферная потеря из-за газов, дождя, вуали и облаков.
Модели затухания для атмосферных газов и дождя допустимы для электромагнитных сигналов в частотном диапазоне от 1 до 1 000 ГГц. Модель затухания для вуали и облаков допустима от 10 до 1 000 ГГц. За пределами этих частотных диапазонов объект использует самое близкое допустимое значение.
Вычислить многопутевое распространение для заданного источника и точек приемника:
Задайте и настройте свое рассеивание канал 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.ULA
(значение по умолчанию) | Системный объект антенной решетки Phased Array System Toolbox™Передача массива в виде Системного объекта антенной решетки Phased Array System Toolbox. Значением по умолчанию для этого свойства является phased.ULA
массив с его значениями свойств по умолчанию.
Пример: phased.URA
ReceiveArray
— Получение массиваphased.ULA
(значение по умолчанию) | Системный объект антенной решетки Phased Array System ToolboxПолучение массива в виде Системного объекта антенной решетки Phased Array System Toolbox. Значением по умолчанию для этого свойства является phased.ULA
массив с его значениями свойств по умолчанию.
Пример: 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
— Температура окружающей среды
(значение по умолчанию) | скаляр с действительным знакомТемпература окружающей среды в виде скаляра с действительным знаком. Модули в градусах Цельсия.
Пример: 20.0
Чтобы включить это свойство, установите SpecifyAtmosphere
к true
.
Типы данных: double
DryAirPressure
— Атмосферное сухое давление воздуха101.325e3
(значение по умолчанию) | положительный скаляр с действительным знакомАтмосферное сухое давление воздуха в виде положительного скаляра с действительным знаком. Модули находятся в pascals (Па). Значение по умолчанию этого свойства соответствует одной стандартной атмосфере.
Пример: 101.0e3
Чтобы включить это свойство, установите SpecifyAtmosphere
к true
.
Типы данных: double
WaterVapourDensity
— Атмосферная плотность водяного пара
(значение по умолчанию) | положительный скаляр с действительным знакомАтмосферная плотность водяного пара в виде положительного скаляра с действительным знаком. Модули находятся в гр/м3.
Пример: 7.4
Чтобы включить это свойство, установите SpecifyAtmosphere
к true
.
Типы данных: double
LiquidWaterDensity
— Жидкая водная плотность
(значение по умолчанию) | неотрицательный скаляр с действительным знакомЖидкая водная плотность вуали или облаков в виде неотрицательного скаляра с действительным знаком. Модули находятся в гр/м3. Типичные значения для жидкой водной плотности 0.05 для средней вуали и 0.5 для густого тумана.
Пример: 0.1
Чтобы включить это свойство, установите SpecifyAtmosphere
к true
.
Типы данных: double
RainRate
— Уровень ливня
(значение по умолчанию) | неотрицательный скалярУровень ливня в виде неотрицательного скаляра. Модули находятся в мм/час.
Пример: 10.0
Чтобы включить это свойство, установите SpecifyAtmosphere
к true
.
Типы данных: double
SampleRate
— Частота дискретизации сигнала1e6
(значение по умолчанию) | положительная скалярная величинаЧастота дискретизации сигнала в виде положительной скалярной величины. Модули находятся в Гц. Системный объект использует это количество, чтобы вычислить задержку распространения модулей выборок.
Пример: 1e6
Типы данных: double
SimulateDirectPath
— Включите распространение вдоль прямого путиfalse
(значение по умолчанию) | true
Опция, чтобы включить распространение сигнала вдоль прямого пути в виде false
или true
. Прямой путь является путем угла обзора от массива передачи до массива получения без рассеивания.
Типы данных: логический
ChannelResponseOutputPort
— Включите выход ответа канала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
— Положение передачи центра фазы массивов
(значение по умолчанию) | трехэлементный вектор с действительным знакомПоложение фазы передачи массивов сосредотачивается в виде трехэлементного вектора с действительным знаком в Декартовой форме, [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
— Положение получения массива
(значение по умолчанию) | трехэлементный вектор с действительным знакомПоложение фазы получения массивов сосредотачивается в виде трехэлементного вектора с действительным знаком в Декартовой форме, [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'
Свойство
, 'Input port'
.
Когда вы устанавливаете это свойство на 'Auto'
, все положения рассеивателя и коэффициенты случайным образом сгенерированы. Скорости рассеивателя являются нулем. Сгенерированные положения содержатся в области, заданной ScattererPositionBoundary
. Чтобы определить номер рассеивателей, используйте NumScatterers
свойство.
Когда вы устанавливаете это свойство на 'Property'
, можно установить положения рассеивателя при помощи ScattererPosition
свойство и рассеивающиеся коэффициенты при помощи ScattererCoefficient
свойство. Все скорости рассеивателя являются нулем.
Когда вы устанавливаете это свойство на 'Input port'
, можно задать положения рассеивателя, скорости и рассеивающиеся коэффициенты с помощью scatpos
, scatvel
, и scatcoef
входные параметры step
метод.
Пример: 'Input port'
Типы данных: char
NumScatterers
— Количество рассеивателей
(значение по умолчанию) | неотрицательное целое числоКоличество рассеивателей в виде неотрицательного целого числа.
Пример 9
Чтобы включить это свойство, установите ScattererSpecificationSource
свойство к 'Auto'
.
Типы данных: double
ScattererPositionBoundary
— Контур положений рассеивателя
(значение по умолчанию) | 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
— Положения рассеивателей
(значение по умолчанию) | 3 с действительным знаком K матрицейПоложения рассеивателей в виде 3 с действительным знаком K матрицей. K является количеством рассеивателей. Каждый столбец представляет различный рассеиватель и имеет Декартову форму [x;y;z]
относительно глобальной системы координат. Величины в метрах.
Пример: [1050 -100;-300 55;0 -75]
Чтобы включить это свойство, установите ScattererSpecificationSource
свойство к 'Property'
.
Типы данных: double
ScattererCoefficient
— Рассеивание коэффициентов
(значение по умолчанию) | 1 с комплексным знаком K векторомРассеивание коэффициентов в виде 1 с комплексным знаком K вектором. K является количеством рассеивателей. Модули являются безразмерными.
Пример: 2+1i
Чтобы включить это свойство, установите ScattererSpecificationSource
свойство к 'Property'
.
Типы данных: double
Поддержка комплексного числа: Да
ScatteringMatrix
— Матрицы рассеяния
| 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
— Ориентация рассеивателей
(значение по умолчанию) | 3 с действительным знаком 3 Ns массивомОриентация рассеивателей в виде 3 с действительным знаком 3 Ns массивом, где N s является количеством рассеивателей. Каждая страница этого массива является ортонормированной матрицей. Столбцы матрицы представляют ось локальных координат (x, y, z) рассеивателя относительно глобальной системы координат.
Пример: roty(45)
Чтобы включить это свойство, установите ScatteringMatrixSource
свойство к 'Property'
и Polarization
свойство к 'Combined'
или 'Dual'
.
Типы данных: double
SeedSource
— Источник начального значения генератора случайных чисел'Auto'
(значение по умолчанию) | 'Property'
Источник начального значения генератора случайных чисел в виде 'Auto'
или 'Property'
.
Когда вы устанавливаете это свойство на 'Auto'
, случайные числа сгенерированы с помощью MATLAB по умолчанию® генератор случайных чисел.
Когда вы устанавливаете это свойство на 'Property'
, объект использует частный генератор случайных чисел с seed, заданным значением Seed
свойство.
Чтобы использовать этот объект с программным обеспечением Parallel Computing Toolbox™, установите это свойство на 'Auto'
.
Чтобы включить это свойство, установите ScattererSpecificationSource
свойство к 'Auto'
.
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 ГГц. Модули для определенного коэффициента затухания (дБ/км) / (гр/м3).
Чтобы вычислить общее затухание для узкополосных сигналов вдоль пути, функция умножает определенное затухание на длину пути R. Общим затуханием является Lc = Rγc.
Можно применить модель затухания к широкополосным сигналам. Во-первых, разделите широкополосный сигнал на поддиапазоны частоты и примените узкополосное затухание к каждому поддиапазону. Затем суммируйте все ослабленные сигналы поддиапазона в общий ослабленный сигнал.
Для полного описания этой модели см. [5]
Эта модель вычисляет затухание сигналов, которые распространяют через области ливня. Лейтесь дождем затухание является доминирующим исчезающим механизмом и может варьироваться от от местоположения к местоположению и из года в год.
Электромагнитные сигналы ослабляются при распространении через область ливня. Затухание ливня вычисляется согласно модели Recommendation ITU-R P.838-3 ливня ITU: Определенная модель затухания для дождя для использования в методах предсказания. Модель вычисляет определенное затухание (затухание на километр) сигнала в зависимости от уровня ливня, частоты сигнала, поляризации и угла возвышения пути. Определенное затухание, ɣ R, моделируется как закон о степени относительно уровня дождя
где R является уровнем дождя. Модули находятся в мм/час. Параметр k и экспонента α зависит от частоты, вида поляризации и угла возвышения пути прохождения сигнала. Определенная модель затухания допустима для частот от 1-1000 ГГц.
Чтобы вычислить общее затухание для узкополосных сигналов вдоль пути, функция умножает определенное затухание на эффективное расстояние распространения, эффективность d. Затем общим затуханием является L = d effγR.
Эффективное расстояние является геометрическим расстоянием, d, умноженным на масштабный коэффициент
где f является частотой. Статья Recommendation ITU-R P.530-17 (12/2017): данные о Распространении и методы предсказания, требуемые для проекта наземных систем угла обзора, представляют полное обсуждение для вычислительного затухания.
Уровень дождя, R, используемый в этих расчетах, являются долгосрочным статистическим уровнем дождя, R 0.01. Это - уровень дождя, который превышен на 0,01% времени. Вычисление статистического уровня дождя обсуждено в Рекомендации ITU-R P.837-7 (06/2017): Характеристики осадков для моделирования распространения. Эта статья также объясняет, как вычислить затухание для других процентов от значения на 0,01%.
Можно применить модель затухания к широкополосным сигналам. Во-первых, разделите широкополосный сигнал на поддиапазоны частоты и примените затухание к каждому поддиапазону. Затем суммируйте все ослабленные сигналы поддиапазона в общий ослабленный сигнал.
[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. Введение в распространение RF. Нью-Йорк: Wiley & Sons, 2005.
[8] Skolnik, M. Введение в радиолокационные системы, 3-го Эда. Нью-Йорк: McGraw-Hill, 2001.
Указания и ограничения по применению:
Смотрите системные объекты в Генерации кода MATLAB (MATLAB Coder).
rangeangle
| fogpl
| gaspl
| rainpl
| fspl
| diagbfweights
| scatteringchanmtx
| waterfill
phased.FreeSpace
| phased.RadarTarget
| phased.BackscatterRadarTarget
| twoRayChannel
(Radar Toolbox) | phased.LOSChannel
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.