поэтапный. BackscatterRadarTarget

Радарная цель обратного рассеяния

Описание

Система phased.BackscatterRadarTarget object™ моделирует backscattering сигнала от цели. Обратное рассеяние является особым случаем радарного целевого рассеивания, когда инцидент и отраженные углы являются тем же самым. Этот тип рассеивания применяется к моностатическим радарным настройкам. Радарное поперечное сечение определяет ответ обратного рассеяния цели к входящему сигналу. Этот Системный объект позволяет вам задать зависимую углом радарную модель поперечного сечения, которая покрывает область значений инцидентных углов.

Системный объект phased.BackscatterRadarTarget создает сигнал backscattered для поляризованных и неполяризованных сигналов. В то время как электромагнитные радарные сигналы поляризованы, можно часто игнорировать поляризацию в симуляции и обрабатывать сигналы, когда скаляр сигнализирует. Чтобы проигнорировать поляризацию, задайте свойство EnablePolarization как false. Чтобы использовать поляризацию, задайте свойство EnablePolarization как true.

Для неполяризованных сигналов вы задаете радарное сечение как массив значений радарного поперечного сечения (RCS) в дискретном азимуте и точках повышения. Системный объект интерполирует значения для инцидентных углов между точками массивов. Для поляризованных сигналов вы задаете radar scattering matrix с помощью трех массивов, заданных в дискретном азимуте и точках повышения. Эти три массива соответствуют HH, HV и компонентам поляризации VV. Компонент VH вычисляется из сопряженной симметрии компонента HV.

И для неполяризованных и для поляризованных случаев сигнала, можно использовать одну из четырех моделей Swerling, чтобы сгенерировать случайные колебания RCS или радарной матрицы рассеивания. Выберите модель с помощью свойства Model. Затем используйте свойства SeedSource и Seed управлять колебаниями.

EnablePolarizationИспользуйте эти свойства
false

RCSPattern

trueShhPattern, SvvPattern и ShvPattern

Смоделировать backscattered радарный сигнал:

  1. Задайте и настройте свою радарную цель. Можно установить свойства Системного объекта phased.BackscatterRadarTarget во время создания или оставить их их значениям по умолчанию. Смотрите Конструкцию. Некоторые свойства, которые вы устанавливаете во время создания, могут быть изменены позже. Эти свойства являются настраиваемыми.

  2. Чтобы вычислить отраженный сигнал, вызовите метод step phased.BackscatterRadarTarget. Вывод метода зависит от свойств Системного объекта phased.BackscatterRadarTarget. Можно изменить настраиваемые свойства в любое время.

Примечание

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

Конструкция

target = phased.BackscatterRadarTarget создает радарный целевой Системный объект обратного рассеяния, target.

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

Свойства

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

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

Пример: true

Типы данных: логический

Углы азимута раньше задавали угловые координаты каждого столбца матриц, заданных RCSPattern, ShhPattern, ShvPattern или свойствами SvvPattern. Задайте углы азимута как длину вектор P. P должен быть больше, чем два. Угловые модули в градусах.

Пример: [-45:0.1:45]

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

Углы повышения раньше задавали угловые координаты каждой строки матриц, заданных RCSPattern, ShhPattern, ShvPattern или свойствами SvvPattern. Задайте углы повышения как длину вектор Q. Q должен быть больше, чем два. Угловые модули в градусах.

Пример: [-30:0.1:30]

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

Шаблон радарного поперечного сечения (RCS), заданный как Q-by-P матрица с действительным знаком или Q-by-P-by-M массив с действительным знаком. Q является длиной вектора в свойстве ElevationAngles. P является длиной вектора в свойстве AzimuthAngles. M является количеством целевых шаблонов. Количество шаблонов соответствует количеству сигналов, переданных в метод step. Можно, однако, использовать один шаблон, чтобы смоделировать несколько сигналов, отражающихся от единой цели. Модули шаблона являются квадратными метрами.

Можно также задать шаблон как функцию только азимута для одного повышения. В этом случае задайте шаблон или как 1 P вектором или как M-by-P матрица. Каждая строка является отдельным шаблоном.

Это свойство применяется, когда свойством EnablePolarization является false.

Пример: [1,.5;.5,1]

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

Радар, рассеивающий матричный компонент поляризации HH, заданный как Q-by-P матрица с комплексным знаком или Q-by-P-by-M массив с комплексным знаком. Q является длиной вектора в свойстве ElevationAngles. P является длиной вектора в свойстве AzimuthAngles. M является количеством целевых шаблонов. Количество шаблонов соответствует количеству сигналов, переданных в метод step. Можно, однако, использовать один шаблон, чтобы смоделировать несколько сигналов, отражающихся от единой цели. Рассеивающиеся матричные модули являются метрами.

Можно также задать шаблон как функцию только азимута для одного повышения. Затем задайте шаблон или как 1 P вектором или как M-by-P матрица. Каждая строка является отдельным шаблоном.

Это свойство применяется, когда свойством EnablePolarization является true.

Пример: [1,1;1i,1i]

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

Радар, рассеивающий матричный компонент поляризации VV, заданный как Q-by-P матрица с комплексным знаком или Q-by-P-by-M массив с комплексным знаком. Q является длиной вектора в свойстве ElevationAngles. P является длиной вектора в свойстве AzimuthAngles. M является количеством целевых шаблонов. Количество шаблонов соответствует количеству сигналов, переданных в метод step. Можно, однако, использовать один шаблон, чтобы смоделировать несколько сигналов, отражающихся от единой цели. Рассеивающиеся матричные модули являются метрами.

Можно также задать шаблон как функцию только азимута для одного повышения. В этом случае задайте шаблон или как 1 P вектором или как M-by-P матрица. Каждая строка является отдельным шаблоном.

Это свойство применяется, когда свойством EnablePolarization является true.

Пример: [1,1;1i,1i]

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

Радар, рассеивающий матричный компонент поляризации HV, заданный как Q-by-P матрица с комплексным знаком или Q-by-P-by-M массив с комплексным знаком. Q является длиной вектора в свойстве ElevationAngles. P является длиной вектора в свойстве AzimuthAngles. M является количеством целевых шаблонов. Количество шаблонов соответствует количеству сигналов, переданных в метод step. Можно, однако, использовать один шаблон, чтобы смоделировать несколько сигналов, отражающихся от единой цели. Рассеивающиеся матричные модули являются метрами.

Можно также задать шаблон как функцию только азимута для одного повышения. В этом случае задайте шаблон или как 1 P вектором или как M-by-P матрица. Каждая строка является отдельным шаблоном.

Это свойство применяется, когда свойством EnablePolarization является true.

Пример: [1,1;1i,1i]

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

Целевая модель колебания, заданная как 'Nonfluctuating', 'Swerling1', 'Swerling2', 'Swerling3' или 'Swerling4'. Если вы устанавливаете это свойство на значение кроме 'Nonfluctuating', используйте входной параметр update при вызове phased.BackscatterRadarTarget.step.

Пример: 'Swerling3'

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

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

Пример: 3e8

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

Рабочая частота, заданная как положительная скалярная величина. Модули находятся в Гц.

Пример: 1e9

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

Отберите источник генератора случайных чисел для модели колебания RCS, заданной как 'Auto' или 'Property'. Когда вы устанавливаете это свойство на 'Auto', Системный объект генерирует случайные числа с помощью генератора случайных чисел MATLAB® по умолчанию. Когда вы устанавливаете это свойство на 'Property', вы задаете seed генератора случайных чисел с помощью свойства Seed. Это свойство применяется, когда вы устанавливаете свойство Model to'Swerling1', 'Swerling2', 'Swerling3' или 'Swerling 4'. Когда вы используете этот объект с программным обеспечением Parallel Computing Toolbox™, вы устанавливаете это свойство на 'Auto'.

Пример: 'Property'

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

Seed генератора случайных чисел, заданный как неотрицательное целое число меньше чем 232. Это свойство применяется, когда свойство SeedSource установлено в 'Property'.

Пример: 32301

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

Методы

сбросСбросьте состояния Системного объекта
шагВходящий сигнал обратного рассеяния
Характерный для всех системных объектов
release

Позвольте изменения значения свойства Системного объекта

Примеры

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

Вычислите отраженный радарный сигнал от не колеблющейся цели точки с пиковым RCS 10,0 m2. Используйте упрощенное выражение шаблона RCS цели в иллюстративных целях. Действительные шаблоны RCS более сложны. Шаблон RCS покрывает область значений углов от 10 °-30 ° в азимуте и 5 °-15 ° в повышении. RCS достигает максимума в азимуте на 20 ° и повышении на 10 °. Примите, что радар, рабочая частота составляет 1 ГГц и что сигнал является синусоидой на уровне 1 МГц.

Примечание: Этот пример запускается только в R2016b или позже. Если вы используете более ранний релиз, заменяете каждый вызов функции с эквивалентным синтаксисом step. Например, замените myObject(x) на step(myObject,x).

Создайте и постройте шаблон RCS.

azmax = 20.0;
elmax = 10.0;
azpatangs = [10.0:0.1:30.0];
elpatangs = [5.0:0.1:15.0];
rcspattern = 10.0*cosd(4*(elpatangs - elmax))'*cosd(4*(azpatangs - azmax));
imagesc(azpatangs,elpatangs,rcspattern)
axis image
axis tight
title('RCS')
xlabel('Azimuth (deg)')
ylabel('Elevation (deg)')

Сгенерируйте и постройте 50 выборок радарного сигнала.

foper = 1.0e9;
freq = 1.0e6;
fs = 10*freq;
nsamp = 50;
t = [0:(nsamp-1)]'/fs;
sig = sin(2*pi*freq*t);
plot(t*1e6,sig)
xlabel('Time (\mu seconds)')
ylabel('Signal Amplitude')
grid

Создайте Систему phased.BackscatterRadarTarget object™.

target = phased.BackscatterRadarTarget('Model','Nonfluctuating',...
    'AzimuthAngles',azpatangs,'ElevationAngles',elpatangs,...
    'RCSPattern',rcspattern,'OperatingFrequency',foper);

Для последовательности инцидентных углов под постоянным углом повышения найдите и постройте рассеянную амплитуду сигнала.

az0 = 13.0;
el = 10.0;
naz = 20;
az = az0 + [0:2:20];
naz = length(az);
ss = zeros(1,naz);
for k = 1:naz
    y = target(sig,[az(k);el]);
    ss(k) = max(abs(y));
end
plot(az,ss,'.')
xlabel('Azimuth (deg)')
ylabel('Scattered Signal Amplitude')
grid

Вычислите поляризованный радарный сигнал, рассеянный от Swerling1, колеблющегося цель точки. Примите, что целевая ось вращается от глобальной системы координат. Используйте простые выражения для рассеивающихся шаблонов для рисунка. Действительные шаблоны рассеивания более сложны. Для поляризованных сигналов необходимо задать HH, HV и компоненты VV рассеивающейся матрицы для области значений инцидентных углов. В этом примере шаблоны покрывают область значений 10 °-30 ° в азимуте и 5 °-15 ° в повышении. Углы относительно целевой системы локальной координаты. Примите, что радар, рабочая частота составляет 1 ГГц и что сигнал является синусоидой с частотой 1 МГц. Инцидентный угол является азимутом на 13,0 ° и повышением на 14,0 ° относительно целевой ориентации.

Примечание: Этот пример запускается только в R2016b или позже. Если вы используете более ранний релиз, заменяете каждый вызов функции с эквивалентным синтаксисом step. Например, замените myObject(x) на step(myObject,x).

Создайте и постройте рассеивающиеся матричные шаблоны.

azmax = 20.0;
elmax = 10.0;
azpatangs = [10.0:0.1:35.0];
elpatangs = [5.0:0.1:15.0];
shhpat = cosd(4*(elpatangs - elmax))'*cosd(4*(azpatangs - azmax));
shvpat = 1i*cosd(4*(elpatangs - elmax))'*sind(4*(azpatangs - azmax));
svvpat = sind(4*(elpatangs - elmax))'*sind(4*(azpatangs - azmax));
subplot(1,3,1)
imagesc(azpatangs,elpatangs,abs(shhpat))
axis image
axis tight
title('HH')
xlabel('Azimuth (deg)')
ylabel('Elevation (deg)')
subplot(1,3,2)
imagesc(azpatangs,elpatangs,abs(shvpat))
axis image
axis tight
title('HV')
xlabel('Azimuth (deg)')
subplot(1,3,3)
imagesc(azpatangs,elpatangs,abs(svvpat))
axis image
axis tight
title('VV')
xlabel('Azimuth (deg)')

Создайте Систему phased.BackscatterRadarTarget object™.

target = phased.BackscatterRadarTarget('EnablePolarization',true,...
    'Model','Swerling1','AzimuthAngles',azpatangs,...
    'ElevationAngles',elpatangs,'ShhPattern',shhpat,'ShvPattern',shvpat,...
    'SvvPattern',svvpat);

Сгенерируйте 50 выборок поляризованного радарного сигнала.

foper = 1.0e9;
freq = 1.0e6;
fs = 10*freq;
nsamp = 50;
t = [0:(nsamp-1)]'/fs;
signal.X = exp(1i*2*pi*freq*t);
signal.Y = exp(1i*2*pi*freq*t + pi/3);
signal.Z = zeros(size(signal.X));
tgtaxes = azelaxes(60,10);
ang = [13.0;14.0];

Отразите сигнал от цели и постройте ее компоненты.

refl_signal = target(signal,ang,tgtaxes,true);
figure
plot(t*1e6,real(refl_signal.X))
hold on
plot(t*1e6,real(refl_signal.Y))
plot(t*1e6,real(refl_signal.Z))
hold off
xlabel('Time \mu seconds')
ylabel('Amplitude')
grid

Больше о

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

Ссылки

[1] Мотт, H. Антенны для радара и коммуникаций. Нью-Йорк: John Wiley & Sons, 1992.

[2] Ричардс, M. A. Основные принципы радарной обработки сигналов. Нью-Йорк: McGraw-Hill, 2005.

[3] Skolnik, M. Введение в радиолокационные системы, 3-го Эда. Нью-Йорк: McGraw-Hill, 2001.

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

Введенный в R2016a