В этом примере показано, как выполнять широкополосное традиционное формирование луча с временной задержкой с микрофонной матрицей всространенных элементов. Создать акустический (волна давления) сигнал чирпа. Чирп-сигнал имеет ширину полосы 1 кГц и распространяется со скоростью 340 м/с на уровне земли.
Примечание.Этот пример выполняется только в R2016b или более поздних версиях. При использовании более ранней версии замените каждый вызов функции эквивалентным step синтаксис. Например, заменить myObject(x) с step(myObject,x).
c = 340; t = linspace(0,1,50e3)'; sig = chirp(t,0,1,1000);
Собрать акустическую чирпу десятиэлементным ULA. Используйте ненаправленные микрофонные элементы, расположенные на расстоянии менее половины длины волны при частоте дискретизации 50 кГц. Чирп падает на ULA с углом азимута и отметки. Добавление случайного шума к сигналу.
microphone = phased.OmnidirectionalMicrophoneElement(... 'FrequencyRange',[20 20e3]); array = phased.ULA('Element',microphone,'NumElements',10,... 'ElementSpacing',0.01); collector = phased.WidebandCollector('Sensor',array,'SampleRate',5e4,... 'PropagationSpeed',c,'ModulatedInput',false); sigang = [60;0]; rsig = collector(sig,sigang); rsig = rsig + 0.1*randn(size(rsig));
Примените широкополосный традиционный формирователь луча временной задержки для улучшения SNR принятого сигнала.
beamformer = phased.TimeDelayBeamformer('SensorArray',array,... 'SampleRate',5e4,'PropagationSpeed',c,'Direction',sigang); y = beamformer(rsig); subplot(2,1,1) plot(t(1:5000),real(rsig(1:5e3,5))) axis([0,t(5000),-0.5,1]) title('Signal (real part) at the 5th element of the ULA') subplot(2,1,2) plot(t(1:5000),real(y(1:5e3))) axis([0,t(5000),-0.5,1]) title('Signal (real part) with time-delay beamforming') xlabel('Seconds')
