шаг

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

Обратное рассеяние широкополосный сигнал от радарной цели

Синтаксис

refl_sig = step(target,sig,ang)
refl_sig = step(target,sig,ang,update)
refl_sig = step(target,sig,ang,laxes)
refl_sig = step(target,sig,ang,laxes,update)

Описание

Примечание

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

пример

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

пример

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

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

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

Примечание

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

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

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

Цель обратного рассеяния, заданная как Системный объект phased.WidebandBackscatterRadarTarget.

  • Широкополосный неполяризованный сигнал, заданный как 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 1 вектор или 2 M матрицей положительных значений. Каждый столбец ang задает инцидентное направление соответствующего сигнала в форме [AzimuthAngle;ElevationAngle]. Количество столбцов в ang должно совпадать с количеством независимых сигналов в sig. Модули в градусах.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Примеры

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

Вычислите отраженный радарный сигнал от не колеблющейся цели точки, имеющей пиковый RCS 10.0 m^2. Используйте простой целевой шаблон RCS в иллюстративных целях. Действительные шаблоны RCS более сложны. Шаблон RCS покрывает область значений углов от 10��30� в азимуте и 5��15� в повышении. RCS достигает максимума в 20� азимут и 10� повышение. RCS также имеет зависимость частоты и задан на 5 частотах в пропускной способности сигнала. Примите, что радар, рабочая частота составляет 100 МГц и что сигнал является линейной формой волны FM, имеющей пропускную способность на 20 МГц.

Создайте и постройте широкополосный сигнал.

c = physconst('LightSpeed');
fs = 50e6;
pw = 20e-6;
PRF = 1/(2*pw);
fc = 100e6;
bw = 20e6;
waveform = phased.LinearFMWaveform('SampleRate',fs,'PulseWidth',pw, ...
    'PRF',PRF,'OutputFormat','Pulses','NumPulses',1,'SweepBandwidth',bw, ...
    'SweepDirection','Down','Envelope','Rectangular','SweepInterval', ...
    'Symmetric');
wav = waveform();
n = size(wav,1);
plot([0:(n-1)]/fs*1e6,real(wav),'b')
xlabel('Time (\mu s)')
ylabel('Waveform Magnitude')
grid

Создайте шаблон RCS на пяти различных частотах в пропускной способности сигнала с помощью упрощенной зависимости частоты. Зависимость частоты является единицей на рабочей частоте и уменьшается вне той частоты. Реалистические зависимости от частоты более сложны. Постройте шаблон RCS для одной из частот.

fvec = fc + [-fs/2,-fs/4,0,fs/4,fs/2];
fdep = cos(3*(1 - fvec/fc));
azmax = 20.0;
elmax = 10.0;
azpattern = [10.0:0.5:30.0];
elpattern = [5.0:0.5:15.0];
rcspattern0 = 10.0*cosd(4*(elpattern - elmax))'*cosd(4*(azpattern - azmax));
for k = 1:5
    rcspattern(:,:,k) = rcspattern0*fdep(k);
end
imagesc(azpattern,elpattern,abs(rcspattern(:,:,1)))
axis image
axis tight
title('RCS')
xlabel('Azimuth (deg)')
ylabel('Elevation (deg)')

Создайте Систему phased.WidebandBackscatterRadarTarget object�.

target = phased.WidebandBackscatterRadarTarget('Model','Nonfluctuating', ...
    'AzimuthAngles',azpattern,'ElevationAngles',elpattern,...
    'RCSPattern',rcspattern,'OperatingFrequency',fc,'NumSubbands',32, ...
    'FrequencyVector',fvec);

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

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

Вычислите отраженный радарный сигнал от Swerling 4, колеблющегося цель точки с пиковым RCS 0.1 m^2. Используйте простой целевой шаблон RCS в иллюстративных целях. Действительные шаблоны RCS более сложны. Шаблон RCS покрывает область значений углов от 10��30� в азимуте и 5��15� в повышении. RCS достигает максимума в 20� азимут и 10� повышение в значении 0.1 m^2. RCS также имеет зависимость частоты и задан на пяти частотах в пропускной способности сигнала. Примите, что радар, рабочая частота составляет 100 МГц и что сигнал является линейной формой волны FM с пропускной способностью на 20 МГц. Частота дискретизации составляет 50 МГц.

Создайте и постройте широкополосный сигнал.

c = physconst('LightSpeed');
fs = 50e6;
pw = 20e-6;
PRF = 1/(2*pw);
fc = 100.0e6;
bw = 20.0e6;
waveform = phased.LinearFMWaveform('SampleRate',fs,'PulseWidth',pw, ...
    'PRF',PRF,'OutputFormat','Pulses','NumPulses',1,'SweepBandwidth',bw, ...
    'SweepDirection','Down','Envelope','Rectangular','SweepInterval', ...
    'Symmetric');
wav = waveform();

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

fvec = fc + [-fs/2,-fs/4,0,fs/4,fs/2];
fdep = cos(3*(1 - fvec/fc));
azmax = 20.0;
elmax = 10.0;
azangs = [10.0:0.5:30.0];
elangs = [5.0:0.5:15.0];
rcspattern0 = 0.1*(cosd((elangs - elmax))'*cosd((azangs - azmax))).^2;
for k = 1:5
    rcspattern(:,:,k) = rcspattern0*fdep(k);
end
imagesc(azangs,elangs,abs(rcspattern(:,:,5)))
axis image
axis xy
axis tight
title('RCS')
xlabel('Azimuth (deg)')
ylabel('Elevation (deg)')
colorbar

Создайте Систему phased.WidebandBackscatterRadarTarget object�.

target = phased.WidebandBackscatterRadarTarget('Model','Swerling4', ...
    'SeedSource','Property','Seed',100213,'AzimuthAngles',azangs, ...
    'ElevationAngles',elangs,'RCSPattern',rcspattern, ...
    'OperatingFrequency',fc,'NumSubbands',32,'FrequencyVector',fvec);

Найдите и постройте 100 выборок инцидентного сигнала и двух последовательных отраженных сигналов в 10� азимут и 10� повышение. Обновите RCS при каждом выполнении Системы object�.

az = 10.0;
el = 10.0;
refl_wav1 = target(wav,[az;el],true);
refl_wav2 = target(wav,[az;el],true);
n = 100;
plot([0:(n-1)]/fs*1e6,real(wav(1:n)))
hold on
plot([0:(n-1)]/fs*1e6,real(refl_wav1(1:n)),'.')
plot([0:(n-1)]/fs*1e6,real(refl_wav2(1:n)),'.')
hold off
legend('Incident Signal','First Backscattered Signal','Second Backscattered Signal')
xlabel('Time (\mu s)')
ylabel('Waveform Magnitude')
title('Swerling 4 RCS')

Смотрите также

Системные объекты

Введенный в R2017b