Рассеивание канала 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
— Атмосферная плотность водяного пара
(значение по умолчанию) | положительный скаляр с действительным знакомАтмосферная плотность водяного пара, заданная как положительный скаляр с действительным знаком. Модули находятся в g/m3.
Пример: 7.4
Чтобы включить это свойство, установите SpecifyAtmosphere
к true
.
Типы данных: double
LiquidWaterDensity
— Жидкая водная плотность
(значение по умолчанию) | неотрицательный скаляр с действительным знакомЖидкая водная плотность вуали или облаков, заданных как неотрицательный скаляр с действительным знаком. Модули находятся в g/m3. Типичные значения для жидкой водной плотности 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
— Источник seed генератора случайных чисел'Auto'
(значение по умолчанию) | 'Property'
Источник seed генератора случайных чисел, заданного как 'Auto'
или 'Property'
.
Когда вы устанавливаете это свойство на 'Auto'
, случайные числа сгенерированы с помощью генератора случайных чисел MATLAB® по умолчанию.
Когда вы устанавливаете это свойство на 'Property'
, объект использует частный генератор случайных чисел с seed, заданным значением Seed
свойство.
Чтобы использовать этот объект с программным обеспечением Parallel Computing Toolbox™, установите это свойство на 'Auto'
.
Чтобы включить это свойство, установите ScattererSpecificationSource
свойство к 'Auto'
.
Seed
— Seed генератора случайных чисел
(значение по умолчанию) | неотрицательное целое число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. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.