matlab相控阵工具箱之FMCW模块用法填坑

连续波极其回波仿真

废话不多说,直接上代码。

bw      = 25e6;         % waveform bandwidth
fs      = bw*2;         % waveform sampling frequency
c       = 3e8;
fc      = 24e9;         % waveform carrier frequency
tm      = 1e-6;         % waveform repetition time
wav = phased.FMCWWaveform();
wav.SampleRate = fs;
wav.SweepTime = tm;
wav.SweepBandwidth = bw;
wav.NumSweeps = 1;


channel = phased.FreeSpace(); % channel
channel.PropagationSpeed = c;
channel.OperatingFrequency=fc;
channel.TwoWayPropagation = true;
channel.SampleRate=fs;

for i =1:2
    txWave = wav();
    rxWave = channel(txWave,[0;0;0],[50;0;0],[0;0;0],[0;0;0]); % simulate channel
    rxDechirp = conj(rxWave).*txWave;
    figure(1)
    plot((real(txWave)));
    figure(2)
    plot((real(rxWave)));
    figure(3)
    plot(abs(fftshift(fft(rxDechirp))));
end

matlab相控阵工具箱之FMCW模块用法填坑_第1张图片
理论上说,连续波的回波,应该还是连续波,但是matlab这个模块给出的回波,却是一个类似于脉冲的回波。
但是当第二个sweep的时候,结果就不一样了。
matlab相控阵工具箱之FMCW模块用法填坑_第2张图片
可以看出,第二个sweep开始,就会出现两个差拍频率。符合实际。
实际应用过程中,负频率一般都比较小。根据情况可以忽略。

你可能感兴趣的:(phasedArray工具箱,matlab)