exponenta event banner

twoRayChannel

Двухлучевой канал распространения

Описание

twoRayChannel моделирует узкополосный двухлучевой канал распространения. Двухлучевой канал распространения является простейшим типом многолучевого канала. Для моделирования распространения сигналов в однородной изотропной среде с одной отражающей границей можно использовать двухлучевой канал. Этот тип среды имеет два пути распространения: путь распространения линии визирования (прямой) из одной точки в другую и путь луча, отраженный от границы. Эту системную object™ можно использовать для ближней радиолокационной и мобильной связи, где сигналы распространяются по прямым траекториям, а Земля считается плоской. Этот объект также можно использовать для гидролокаторов и микрофонов. Для акустических приложений можно выбрать поля, которые должны быть неполяризованными, и настроить скорость распространения на скорость звука в воздухе или воде. Вы можете использовать twoRayChannel для моделирования распространения из нескольких точек одновременно.

В то время как объект System работает на всех частотах, модели ослабления для атмосферных газов и дождя действительны только для электромагнитных сигналов в диапазоне частот 1-1000 ГГц. Модель затухания для тумана и облаков действительна для 10 - 1000 ГГц. Вне этих диапазонов частот объект System использует ближайшее допустимое значение.

twoRayChannel Системный объект применяет зависящие от диапазона временные задержки к сигналам, а также коэффициенты усиления или потери, фазовые сдвиги и потери граничного отражения. Объект System применяет доплеровский сдвиг при перемещении источника или пункта назначения.

Сигналы на выходе канала могут поддерживаться отдельно или комбинироваться - управляются CombinedRaysOutput собственность. В отдельном варианте оба поля поступают в пункт назначения отдельно и не объединяются. Для комбинированного варианта два сигнала в источнике распространяются отдельно, но когерентно суммируются в месте назначения в одну величину. Эта опция удобна, когда разница между усилениями датчика или матрицы в направлениях двух путей не является значительной и не должна приниматься во внимание.

В отличие от phased.FreeSpace Системный объект, twoRayChannel Системный объект не поддерживает двустороннее распространение.

Чтобы вычислить задержку распространения для указанных точек источника и приемника:

  1. Определите и настройте двухлучевой канал с помощью следующей процедуры конструирования.

  2. Позвоните в step способ вычисления распространяемого сигнала с использованием свойств twoRayChannel Системный объект.

    Поведение step относится к каждому объекту на панели инструментов.

Примечание

Начиная с R2016b, вместо использования step для выполнения операции, определенной объектом System, можно вызвать объект с аргументами, как если бы это была функция. Например, y = step(obj,x) и y = obj(x) выполнять эквивалентные операции.

Строительство

s2Ray = twoRayChannel создает объект System двухлучевого канала распространения, s2Ray.

s2Ray = twoRayChannel(Name,Value) создает объект System, s2Ray, с каждым указанным свойством Name установить в указанное значение Value. Можно указать дополнительные аргументы пары имен и значений в любом порядке как (Name1,Value1,...,NameN,ValueN).

Свойства

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

Скорость распространения сигнала, заданная как положительный скаляр. Единицы измерения в метрах в секунду. Скорость распространения по умолчанию - это значение, возвращаемое physconst('LightSpeed'). Посмотрите physconst для получения дополнительной информации.

Пример: 3e8

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

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

Пример: 1e9

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

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

Настройка SpecifyAtmosphere кому true, включает Temperature, DryAirPressure, WaterVapourDensity, LiquidWaterDensity, и RainRate свойства.

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

Температура окружающей среды, заданная как скаляр с действительным значением. Единицы измерения в градусах Цельсия.

Пример: 20.0

Зависимости

Чтобы включить это свойство, установите SpecifyAtmosphere кому true.

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

Атмосферное давление сухого воздуха, определяемое как положительный действительный скаляр. Единицы измерения - в паскалях (Па). Значение этого свойства по умолчанию соответствует одной стандартной атмосфере.

Пример: 101.0e3

Зависимости

Чтобы включить это свойство, установите SpecifyAtmosphere кому true.

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

Атмосферная плотность водяного пара, заданная как положительный действительный скаляр. Единицы измерения в г/м3.

Пример: 7.4

Зависимости

Чтобы включить это свойство, установите SpecifyAtmosphere кому true.

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

Плотность жидкой воды тумана или облаков, определяемая как неотрицательный действительный скаляр. Единицы измерения в г/м3. Типичные значения плотности жидкой воды составляют 0,05 для среднего тумана и 0,5 для густого тумана.

Пример: 0.1

Зависимости

Чтобы включить это свойство, установите SpecifyAtmosphere кому true.

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

Норма осадков, заданная как неотрицательный скаляр. Единицы измерения в мм/ч.

Пример: 10.0

Зависимости

Чтобы включить это свойство, установите SpecifyAtmosphere кому true.

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

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

Пример: 1e6

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

Параметр для включения поляризованных полей, указанный как false или true. Установить для этого свойства значение true для обеспечения поляризации. Установить для этого свойства значение false игнорировать поляризацию.

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

Наземный коэффициент отражения для области в пункте отражения, определенном как скаляр со сложным знаком или вектор ряда 1 на Н со сложным знаком. Каждый коэффициент имеет абсолютное значение, меньшее или равное единице. Величина N - количество двухлучевых каналов. Единицы измерения безразмерны. Это свойство используется для моделирования неполяризованных сигналов. Для моделирования поляризованных сигналов используйте GroundRelativePermittivity собственность.

Пример: -0.5

Зависимости

Чтобы включить это свойство, установите EnablePolarization кому false.

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

Относительная диэлектрическая проницаемость земли в точке отражения, заданная как положительный действительный скаляр или 1-by-N действительный вектор строки положительных значений. Размер N - количество двухлучевых каналов. Единицы диэлектрической проницаемости безразмерны. Относительная диэлектрическая проницаемость определяется как отношение фактической диэлектрической проницаемости заземления к диэлектрической проницаемости свободного пространства. Это свойство применяется при установке EnablePolarization свойство для true. Это свойство используется для моделирования поляризованных сигналов. Для моделирования неполяризованных сигналов используйте GroundReflectionCoefficient собственность.

Пример: 5

Зависимости

Чтобы включить это свойство, установите EnablePolarization кому true.

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

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

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

Источник максимального расстояния одностороннего распространения, указанный как 'Auto' или 'Property'. Максимальное расстояние одностороннего распространения используется для выделения достаточного объема памяти для вычисления задержки сигнала. При установке для этого свойства значения 'Auto', объект System автоматически распределяет память. При установке для этого свойства значения 'Property', максимальное расстояние одностороннего распространения задается с помощью значения MaximumDistance собственность.

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

Максимальное расстояние одностороннего распространения, заданное как положительный действительный скаляр. Единицы в метрах. Любой сигнал, распространяющийся больше максимального одностороннего расстояния, игнорируется. Максимальное расстояние должно быть больше или равно наибольшему расстоянию между позициями.

Пример: 5000

Зависимости

Чтобы включить это свойство, установите значение MaximumDistanceSource свойство для 'Property'.

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

Источник максимального количества выборок входного сигнала, указанный как 'Auto' или 'Property'. При установке для этого свойства значения 'Auto'модель распространения автоматически выделяет достаточно памяти для буферизации входного сигнала. При установке для этого свойства значения 'Property', вы указываете максимальное количество выборок во входном сигнале с помощью MaximumNumInputSamples собственность. Любой входной сигнал длиннее этого значения усекается.

Чтобы использовать этот объект с сигналами переменного размера в функциональном блоке MATLAB ® в Simulink ®, установите MaximumNumInputSamplesSource свойство для 'Property' и задайте значение для MaximumNumInputSamples собственность.

Пример: 'Property'

Зависимости

Чтобы включить это свойство, установите MaximumDistanceSource кому 'Property'.

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

Максимальное число выборок входного сигнала, указанное как положительное целое число. Входной сигнал является первым аргументом step после самого объекта System. Размер входного сигнала - это количество строк во входной матрице. Любой входной сигнал длиннее этого числа усекается. Для полной обработки сигналов убедитесь, что это значение свойства больше любой максимальной длины входного сигнала.

Генерирующие форму сигнала системные объекты определяют максимальный размер сигнала:

  • Для любого сигнала, если сигнал OutputFormat свойство имеет значение 'Samples', максимальная длина сигнала - это значение, указанное в NumSamples собственность.

  • Для импульсных сигналов, если OutputFormat имеет значение 'Pulses'длина сигнала является произведением наименьшей частоты повторения импульсов, количества импульсов и частоты дискретизации.

  • Для непрерывных сигналов, если OutputFormat имеет значение 'Sweeps'длина сигнала является произведением времени свипа, количества свипов и частоты дискретизации.

Пример: 2048

Зависимости

Чтобы включить это свойство, установите MaximumNumInputSamplesSource кому 'Property'.

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

Методы

сбросСброс состояний объекта System
шагРаспространение сигнала из точки в точку с использованием двухлучевой модели
Общие для всех системных объектов
release

Разрешить изменение значения свойства объекта системы

Примеры

свернуть все

Этот пример иллюстрирует двухлучевое распространение сигнала, показывая, как сигналы от линии визирования и отраженного пути поступают в приемник в разное время.

Создание и печать распространяющегося сигнала

Создать неполяризованное электромагнитное поле, состоящее из двух прямоугольных волновых импульсов на несущей частоте 100 МГц. Предположим, что длительность импульса составляет 10 мс, а частота дискретизации - 1 МГц. Полоса пропускания импульса составляет 0,1 МГц. Предположим, что коэффициент заполнения составляет 50%, так что длительность импульса равна половине интервала повторения импульса. Создайте двухимпульсную волну. Установите GroundReflectionCoefficient до 0,9 для моделирования сильной отражательной способности земли. Распространение поля от стационарного источника к стационарному приемнику. Вертикальное разделение источника и приемника составляет приблизительно 10 км.

c = physconst('LightSpeed');
fs = 1e6;
pw = 10e-6;
pri = 2*pw;
PRF = 1/pri;
fc = 100e6;
lambda = c/fc;
waveform = phased.RectangularWaveform('SampleRate',fs,'PulseWidth',pw,...
    'PRF',PRF,'OutputFormat','Pulses','NumPulses',2);
wav = waveform();
n = size(wav,1);
figure;
plot((0:(n-1)),real(wav),'b.-');
xlabel('Time (samples)')
ylabel('Waveform magnitude')

Figure contains an axes. The axes contains an object of type line.

Укажите местоположение источника и получателя

Разместите источник и приемник на расстоянии около 1000 метров по горизонтали и приблизительно 10 км по вертикали.

pos1 = [1000;0;10000];
pos2 = [0;100;100];
vel1 = [0;0;0];
vel2 = [0;0;0];

Вычисляют прогнозируемые задержки сигнала в единицах выборок.

[rng,ang] = rangeangle(pos2,pos1,'two-ray');

Создание двухлучевой канальной системы Object™

Создайте двухлучевый канал распространения System object™ и распространите сигнал вдоль линий визирования и отраженных лучей.

channel = twoRayChannel('SampleRate',fs,...
    'GroundReflectionCoefficient',.9,'OperatingFrequency',fc,...
    'CombinedRaysOutput',false);
prop_signal = channel([wav,wav],pos1,pos2,vel1,vel2);

Постройте график распространяемых сигналов

  • Постройте график распространения сигнала по линии визирования.

  • Затем наложите график сигнала, распространенного вдоль отраженного пути.

  • Наконец, наложить график когерентной суммы двух сигналов.

n = size(prop_signal,1);
delay = 0:(n-1);
plot(delay,abs(prop_signal(:,1)),'g')
hold on
plot(delay,abs(prop_signal(:,2)),'r')
plot(delay,abs(prop_signal(:,1) + prop_signal(:,2)),'b')
hold off
legend('Line-of-sight','Reflected','Combined','Location','NorthWest')
xlabel('Delay (samples)')
ylabel('Signal Magnitude')

Figure contains an axes. The axes contains 3 objects of type line. These objects represent Line-of-sight, Reflected, Combined.

График показывает, что задержка отраженного сигнала тракта согласуется с прогнозируемой задержкой. Величина когерентно скомбинированного сигнала меньше, чем любой из распространяемых сигналов, что указывает на наличие некоторой интерференции между этими двумя сигналами.

Создание поляризованного электромагнитного поля, состоящего из линейных ЧМ импульсов. Распространение поля от стационарного источника с пересеченным дипольным антенным элементом до стационарного приемника на расстоянии приблизительно 10 км. Передающая антенна находится на высоте 100 метров над землей. Приёмная антенна находится на высоте 150 м над землёй. Приемная антенна также является скрещенным диполем. Постройте график принятого сигнала.

Установка параметров формы радиолокационного сигнала

Предположим, что длительность импульса равна 10 мкс, а частота дискретизации равна 10 МГц. Полоса пропускания импульса составляет 1 МГц. Предположим, что рабочий цикл 50%, в котором длительность импульса равна половине интервала повторения импульса. Создайте двухимпульсную волну. Предположим, что несущая частота равна 100 МГц.

c = physconst('LightSpeed');
fs = 10e6;
pw = 10e-6;
pri = 2*pw;
PRF = 1/pri;
fc = 100e6;
bw = 1e6;
lambda = c/fc;

Настройка обязательных системных объектов

Использовать GroundRelativePermittivity из 10.

waveform = phased.LinearFMWaveform('SampleRate',fs,'PulseWidth',pw,...
    'PRF',PRF,'OutputFormat','Pulses','NumPulses',2,'SweepBandwidth',bw,...
    'SweepDirection','Up','Envelope','Rectangular','SweepInterval',...
    'Positive');
antenna = phased.CrossedDipoleAntennaElement(...
    'FrequencyRange',[50,200]*1e6);
radiator = phased.Radiator('Sensor',antenna,'OperatingFrequency',fc,...
    'Polarization','Combined');
channel = twoRayChannel('SampleRate',fs,...
    'OperatingFrequency',fc,'CombinedRaysOutput',false,...
    'EnablePolarization',true,'GroundRelativePermittivity',10);
collector = phased.Collector('Sensor',antenna,'OperatingFrequency',fc,...
    'Polarization','Combined');

Настройка геометрии сцены

Укажите положения, скорости и ориентации передатчика и приемника. Расположите источник и приемник на расстоянии около 1000 м друг от друга по горизонтали и приблизительно 50 м по вертикали.

posTx = [0;100;100];
posRx = [1000;0;150];
velTx = [0;0;0];
velRx = [0;0;0];
laxRx = rotz(180);
laxTx = rotx(1)*eye(3);

Создание и излучение сигналов от передатчика

Вычисляют углы передачи для двух лучей, движущихся к приемнику. Эти углы определяются относительно локальной системы координат передатчика. phased.Radiator Система object™ использует эти углы для применения отдельных коэффициентов усиления антенны к двум сигналам.

[rng,angsTx] = rangeangle(posRx,posTx,laxTx,'two-ray');
wav = waveform();

Постройте график передаваемого сигнала

n = size(wav,1);
plot((0:(n-1))/fs*1000000,real(wav))
xlabel('Time ({\mu}sec)')
ylabel('Waveform')

Figure contains an axes. The axes contains an object of type line.

sig = radiator(wav,angsTx,laxTx);

Распространение сигналов на приемник по двухлучевому каналу

prop_sig = channel(sig,posTx,posRx,velTx,velRx);

Прием распространенного сигнала

Вычислите углы приема для двух лучей, поступающих в приемник. Эти углы определяются относительно локальной системы координат приемника. phased.Collector Система object™ использует эти углы для применения отдельных коэффициентов усиления антенны к двум сигналам.

[~,angsRx] = rangeangle(posTx,posRx,laxRx,'two-ray');

Собирать и комбинировать полученные лучи.

y = collector(prop_sig,angsRx,laxRx);

График полученной формы сигнала

plot((0:(n-1))/fs*1000000,real(y))
xlabel('Time ({\mu}sec)')
ylabel('Received Waveform')

Figure contains an axes. The axes contains an object of type line.

Подробнее

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

Ссылки

[1] Саакян, А. Основы распространения радиоволн. Норвуд, Массачусетс: Artech House, 2011.

[2] Balanis, C. Advanced Engineering Electromagnetics. Нью-Йорк: Wiley & Sons, 1989.

[3] Раппапорт, Т. Беспроводная связь: принципы и практика, 2-е изд. Нью-Йорк: Прентис Холл, 2002.

[4] Сектор радиосвязи Международного союза электросвязи. Рекомендация ITU-R P.676-10: Ослабление атмосферными газами. 2013.

[5] Сектор радиосвязи Международного союза электросвязи. Рекомендация ITU-R P.840-6: Затухание из-за облачности и тумана. 2013.

[6] Сектор радиосвязи Международного союза электросвязи. Рекомендация ITU-R P.838-3: Специфическая модель ослабления дождя для использования в методах прогнозирования. 2005.

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

.
Представлен в R2021a