поэтапный. TimeDelayBeamformer

Формирователь луча с временной задержкой

Описание

Объект TimeDelayBeamformer реализует формирователь луча с временной задержкой.

Вычислить сигнал beamformed:

  1. Задайте и настройте свой формирователь луча с временной задержкой. Смотрите Конструкцию.

  2. Вызовите step, чтобы выполнить beamforming операцию согласно свойствам phased.TimeDelayBeamformer. Поведение step характерно для каждого объекта в тулбоксе.

Примечание

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

Конструкция

H = phased.TimeDelayBeamformer создает Системный объект формирователя луча с временной задержкой, H. Объект выполняет задержку и сумму beamforming на полученном сигнале с помощью задержек.

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

Свойства

SensorArray

Обработайте к сенсорной матрице

Задайте сенсорную матрицу как указатель. Сенсорная матрица должна быть объектом массивов в пакете phased. Массив не может содержать подмассивы.

Значение по умолчанию: phased.ULA со значениями свойств по умолчанию

PropagationSpeed

Скорость распространения сигнала

Задайте скорость распространения сигнала, в метрах в секунду, как положительная скалярная величина. Можно задать это свойство как одинарную или двойную точность.

Значение по умолчанию: Скорость света

SampleRate

Уровень выборки сигнала

Задайте уровень выборки сигнала (в герц) как положительная скалярная величина. Это свойство может быть задано как одинарная или двойная точность.

Значение по умолчанию: 1e6

DirectionSource

Источник beamforming направления

Задайте, прибывает ли beamforming направление из свойства Direction этого объекта или от входного параметра в step. Значения этого свойства:

'Property'Свойство Direction этого объекта задает beamforming направление.
'Input port'Входной параметр в каждом вызове step задает beamforming направление.

Значение по умолчанию: 'Property'

Direction

Направление Beamforming

Задайте beamforming направление формирователя луча как вектор-столбец длины 2. Направление задано в формате [AzimuthAngle; ElevationAngle] (в градусах). Угол азимута между –180 и 180. Угол повышения между –90 и 90. Это свойство применяется, когда вы устанавливаете свойство DirectionSource на 'Property'. Это свойство может быть задано как одинарная или двойная точность.

Значение по умолчанию: [0; 0]

WeightsOutputPort

Выведите beamforming веса

Чтобы получить веса, используемые в формирователе луча, установите это свойство на true и используйте соответствующий выходной аргумент при вызове step. Если вы не хотите получать веса, установите это свойство на false.

По умолчанию: false

Методы

шагВыполните задержку beamforming
Характерный для всех системных объектов
release

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

Примеры

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

Примените формирователь луча с временной задержкой к универсальному линейному акустическому массиву с 11 элементами. Угол падения сигнала является-50 градусами в области азимута и 30 градусами в области повышения. Прибывающий сигнал является 0,3 вторыми сегментами линейного щебета FM, имеющего пропускную способность на 500 Гц. Примите, что скорость звука в воздухе составляет 340,0 м/с.

Моделируйте прибывающий сигнал в широкополосном коллекторе.

microphone = phased.CustomMicrophoneElement('FrequencyVector',[20,20000],'FrequencyResponse',[1,1]);
array = phased.ULA('Element',microphone,'NumElements',11,'ElementSpacing',0.04);
fs = 8000;
t = 0:1/fs:0.3;
x = chirp(t,0,1,500);
c = 340;
collector = phased.WidebandCollector('Sensor',array,...
    'PropagationSpeed',c,'SampleRate',fs,'ModulatedInput',false);
incidentAngle = [-50;30];
x = collector(x.',incidentAngle);

Добавьте белый гауссов случайный шум в сигнал.

sigma = 0.2;
noise = sigma*randn(size(x));
rx = x + noise;

Beamform инцидентные сигналы с помощью формирователя луча с временной задержкой.

beamformer = phased.TimeDelayBeamformer('SensorArray',array,...
    'SampleRate',fs,'PropagationSpeed',c,...
    'Direction',incidentAngle);
y = beamformer(rx);

Постройте сигнал beamformed против инцидентного сигнала в среднем датчике массива.

plot(t,rx(:,6),'r:',t,y)
xlabel('Time (sec)')
ylabel('Amplitude')
legend('Original','Beamformed')

Алгоритмы

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

Ссылки

[1] Деревья фургона, H. Оптимальная обработка матриц. Нью-Йорк: Wiley-межнаука, 2002.

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

Представленный в R2012a