step

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

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

Описание

Примечание

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

пример

refl_sig = step(target,sig,ang) возвращает отраженный сигнал, refl_sig, из инцидентного сигнала гидролокатора, sig, прибывая в цель от угла, ang.

пример

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

Примечание

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

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

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

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

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

Когда вы задаете TSPattern свойство как Q-by-P-by-M, отдельный шаблон используется в каждом сигнале. Когда вы задаете TSPattern как Q-by-Pmatrix, тот же шаблон используется в каждом сигнале.

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

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

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

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

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

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

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

Пример: true

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

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

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

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

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

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

Примеры

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

Вычислите отраженный сигнал гидролокатора от не колеблющейся цели точки с пиковой целевой силой (TS) 10,0 дб. В иллюстративных целях используйте упрощенное выражение в шаблоне TS цели. Действительные шаблоны TS более сложны. Шаблон TS покрывает область значений углов от 10 ° до 30 ° в азимуте и от 5 ° до 15 ° в вертикальном изменении. TS достигает максимума в азимуте на 20 ° и вертикальном изменении на 10 °. Примите, что гидролокатор, рабочая частота составляет 10 кГц и что сигнал является синусоидой на уровне 9 500 кГц.

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

azmax = 20.0;
elmax = 10.0;
azpatangs = [10.0:0.1:35.0];
elpatangs = [5.0:0.1:15.0];
tspattern = 10.0*cosd(4*(elpatangs - elmax))'*cosd(4*(azpatangs - azmax));
tspatterndb = 10*log10(tspattern);
imagesc(azpatangs,elpatangs,tspatterndb)
colorbar
axis image
axis tight
title('TS')
xlabel('Azimuth (deg)')
ylabel('Elevation (deg)')

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

freq = 9.5e3;
fs = 100*freq;
nsamp = 500;
t = [0:(nsamp-1)]'/fs;
sig = sin(2*pi*freq*t);
plot(t*1e6,sig)
xlabel('Time (\mu seconds)')
ylabel('Signal Amplitude')
grid

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

target = phased.BackscatterSonarTarget('Model','Nonfluctuating', ...
    'AzimuthAngles',azpatangs,'ElevationAngles',elpatangs, ...
    'TSPattern',tspattern);

Для последовательности различных углов инцидента азимута (под постоянным углом вертикального изменения), постройте максимальную рассеянную амплитуду сигнала.

az0 = 13.0;
el = 10.0;
naz = 20;
az = az0 + [0:1: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,'o')
xlabel('Azimuth (deg)')
ylabel('Backscattered Signal Amplitude')
grid

Вычислите отраженный сигнал гидролокатора от Swerling2, колеблющегося цель точки с пиковой целевой силой (TS) 10,0 дб. В иллюстративных целях используйте упрощенное выражение в шаблоне TS цели. Действительные шаблоны TS более сложны. Шаблон TS покрывает область значений углов от 10°to 30 ° в азимуте и от 5 ° ro 15 ° в вертикальном изменении. TS достигает максимума в азимуте на 20 ° и вертикальном изменении на 10 °. Примите, что гидролокатор, рабочая частота составляет 10 кГц и что сигнал является синусоидой на уровне 9 500 кГц.

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

azmax = 20.0;
elmax = 10.0;
azpatangs = [10.0:0.1:35.0];
elpatangs = [5.0:0.1:15.0];
tspattern = 10.0*cosd(4*(elpatangs - elmax))'*cosd(4*(azpatangs - azmax));
tspatterndb = 10*log10(tspattern);
imagesc(azpatangs,elpatangs,tspatterndb)
colorbar
axis image
axis tight
title('TS')
xlabel('Azimuth (deg)')
ylabel('Elevation (deg)')

Сгенерируйте сигнал гидролокатора.

freq = 9.5e3;
fs = 10*freq;
nsamp = 50;
t = [0:(nsamp-1)]'/fs;
sig = sin(2*pi*freq*t);

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

target = phased.BackscatterSonarTarget('Model','Nonfluctuating',...
    'AzimuthAngles',azpatangs,'ElevationAngles',elpatangs,...
    'TSPattern',tspattern,'Model','Swerling2');

Вычислите и постройте колеблющуюся амплитуду сигнала для 20 временных шагов.

az = 20.0;
el = 10.0;
nsteps = 20;
ss = zeros(1,nsteps);
for k = 1:nsteps
    y = target(sig,[az;el],true);
    ss(k) = max(abs(y));
end
plot([0:(nsteps-1)]*1000/fs,ss,'o')
xlabel('Time (msec)')
ylabel('Backscattered Signal Amplitude')
grid

Введенный в R2017a