step

Системный объект: phased.BackscatterRadarTarget
Пакет: поэтапный

Входящий сигнал обратного рассеяния

Описание

Примечание

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

пример

refl_sig = step(target,sig,ang) возвращает отраженный сигнал, refl_sig, из инцидента неполяризованный сигнал, sig, прибывая в цель от угла, ang. Этот синтаксис применяется, когда вы устанавливаете EnablePolarization свойство к false и Model свойство к 'Nonfluctuating'. В этом случае значения заданы в RCSPattern свойство используется для расчета значения ЭПР в инциденте и отраженных направлениях, ang.

refl_sig = step(target,sig,ang,update) использование update управлять, обновить ли значения ЭПР. Этот синтаксис применяется, когда вы устанавливаете EnablePolarization свойство к false и Model свойство к одной из колеблющихся моделей RCS: 'Swerling1', 'Swerling2', 'Swerling3', или 'Swerling4'. Если update true, сгенерировано новое значение ЭПР. Если update false, предыдущее значение ЭПР используется.

refl_sig = step(target,sig,ang,laxes) возвращает отраженный сигнал, refl_sig, из инцидента поляризованный сигнал, sig. Матрица, laxes, задает локальную целевую систему координат. Этот синтаксис применяется, когда вы устанавливаете EnablePolarization к true и Model свойство к 'Nonfluctuating'. Значения заданы в ShhPattern, SvvPattern, и ShvPattern свойства используются для расчета матрицы рассеяния в инциденте и отраженных направлениях, ang.

пример

refl_sig = step(target,sig,ang,laxes,update) использует update аргумент, чтобы управлять, обновить ли значения матрицы рассеяния. Этот синтаксис применяется, когда вы устанавливаете EnablePolarization свойство к true и Model свойство к одной из колеблющихся моделей RCS: 'Swerling1', 'Swerling2', 'Swerling3', или 'Swerling4'. Если update true, сгенерировано новое значение ЭПР. Если update false, предыдущее значение ЭПР используется.

Примечание

Объект выполняет инициализацию в первый раз, когда объект выполняется. Эта инициализация блокирует ненастраиваемые свойства и входные технические требования, такие как размерности, сложность и тип данных входных данных. Если вы изменяете ненастраиваемое свойство или входную спецификацию, Системный объект выдает ошибку. Чтобы изменить ненастраиваемые свойства или входные параметры, необходимо сначала вызвать release метод, чтобы разблокировать объект.

Входные параметры

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

Цель обратного рассеяния в виде a Системный объект.

Пример: phased.BackscatterRadarTarget

  • Узкополосный неполяризованный сигнал в виде N-by-M матрица с комплексным знаком. Количество N является количеством выборок сигнала и M, является количеством сигналов, отражающихся от цели. Каждый столбец соответствует независимому инциденту сигнала под различным углом отражения.

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

  • Узкополосная связь поляризованный сигнал в виде 1 M struct массив, содержащий поля с комплексным знаком. Каждый struct элемент содержит три N-by-1 вектор-столбцы компонентов электромагнитного поля (sig.X,sig.Y,sig.Z) представление поляризованного сигнала, который отражается от цели.

    Для поляризованных полей, struct элемент содержит три N-by-1 вектор-столбцы с комплексным знаком, sig.X, sig.Y, и sig.Z. Эти векторы представляют x, y и z Декартовы компоненты поляризованного сигнала.

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

Пример: [1,1;j,1;0.5,0]

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

Инцидентное направление сигнала в виде 2-by-1 положительный вектор-столбец с действительным знаком или 2-by-M положительная матрица столбца с действительным знаком. Каждый столбец ang задает инцидентное направление соответствующего сигнала в форме [AzimuthAngle;ElevationAngle] пара. Модули являются степенями. Количество столбцов в ang должен совпадать с количеством независимых сигналов в sig.

Пример: [30;45]

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

Позвольте значениям ЭПР для моделей колебания обновляться в виде false или true. Когда update true, новое значение ЭПР сгенерировано с каждым вызовом step метод. Если update false, ЭПР остается неизменным с каждым вызовом step.

Пример: true

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

Системная матрица локальной координаты в виде 3х3 ортонормированной матрицы с действительным знаком или 3 3 M массивом с действительным знаком. Столбцы матрицы задают систему локальной координаты ортонормированный x - ось, y - ось, и z - ось, соответственно. Каждая ось является вектором из формы (x;y;z) относительно глобальной системы координат. Когда sig имеет только один сигнал, laxes 3х3 матрица. Когда sig имеет несколько сигналов, можно использовать одну 3х3 матрицу для нескольких сигналов в sig. В этом случае все цели имеют те же системы локальной координаты. Когда вы задаете laxes как 3 3 M MATLAB® массив, каждая страница (третий индекс) задает 3х3 матрицу локальной координаты для соответствующей цели.

Пример: [1,0,0;0,0.7071,-0.7071;0,0.7071,0.7071]

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

Выходные аргументы

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

  • Узкополосный неполяризованный сигнал в виде N-by-M матрица с комплексным знаком. Каждый столбец содержит независимый сигнал, отраженный от цели.

    Количество N является количеством выборок сигнала и M, является количеством сигналов, отражающихся от цели. Каждый столбец соответствует отражающемуся углу.

  • Узкополосная связь поляризованный сигнал в виде 1 M struct массив, содержащий поля с комплексным знаком. Каждый struct элемент содержит три N-by-1 вектор-столбцы компонентов электромагнитного поля (sig.X,sig.Y,sig.Z) представление поляризованного сигнала, который отражается от цели.

    Для поляризованных полей, struct элемент содержит три N-by-1 вектор-столбцы с комплексным знаком, sig.X, sig.Y, и sig.Z. Эти векторы представляют x, y и z Декартовы компоненты поляризованного сигнала.

Выход refl_sig содержит выборки сигнала, прибывающие к месту назначения сигнала в течение текущего входного периода времени. Когда время распространения от источника до места назначения превышает длительность системы координат текущего времени, выход не содержит все вклады от входа системы координат текущего времени. Остающийся выход появляется в следующем вызове step.

Примеры

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

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

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

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

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)')

Figure contains an axes object. The axes object with title RCS contains an object of type image.

Сгенерируйте и постройте 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

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

Создайте 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

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

Вычислите поляризованный радарный сигнал, рассеянный от 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)')

Figure contains 3 axes objects. Axes object 1 with title HH contains an object of type image. Axes object 2 with title HV contains an object of type image. Axes object 3 with title VV contains an object of type image.

Создайте 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

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

Введенный в R2016a