% 定义一个均匀线性阵列
microphone = phased.OmnidirectionalMicrophoneElement('FrequencyRange',[20 20e3]);%
Nele = 10; % 阵元数
ula = phased.ULA(Nele,0.05, 'Element',microphone); %定义一个ula
c = 340;
%模拟麦克风阵列输入信号
%1,确定两个信号和噪声的位置,(方向角,仰角)
ang_dft = [-30; 0];
ang_cleanspeech = [-10; 10];
ang_laughter = [20; 0];
%2,在原点的麦克风阵元为参考点,使用宽带接收器模拟阵列接收的3秒输入信号
fs = 8000;
collector = phased.WidebandCollector('Sensor',ula,'PropagationSpeed',c,...
'SampleRate',fs,'ModulatedInput', false);
t_duration = 3;
t = 0:1/fs:t_duration-1/fs;
%3.生成一个白噪声,功率确定的
prevS = rng(2008);
noisePwr = 1e-4;
% 预处理
NSampPerFrame = 1000; % 每个阵元采样的长度 1000个点
NTSample = t_duration*fs; % 阵列总共要取多