采集闭环数据,通过分析确定主机问题。分析信号基本质量的相关操作包括
(1)分析信号幅度(2)信号的时频分析(3)距离向脉冲压缩(4)方位向脉冲累积
1.信号幅度分析
1.1多帧回波的信号幅度
通过读取信号幅度,可以得到多个prt发射信号得到的回波信号,如图,横轴为方位向,纵轴为距离向,可以看到回波幅度显示为一条条水平的直线,这表明每一帧在对应的距离处得到的回波幅度是近似相同的,这说明主机的一致性是比较好的。
figure(1); imagesc(abs(data_HH)); colormap jet; colorbar
1.2 单帧回波的信号幅度
读取单帧回波的信号幅度,可以看到回波信号的包络情况。
如图,理想情况下发射信号为矩形窗脉冲信号,理论上得到的应该是带有毛刺的矩形脉冲,但右图可见在矩形窗范围内存在着幅度的较强的下降,不够理想,但对于系统而言不是致命问题。
figure; plot(abs(data_HH(:,1)),'-'); grid on;
xlabel('距离采样点'); ylabel('幅度'); title('单次回波的幅度');
2. 时频分析
由于发射信号为线性调频信号,发射信号的频率随时间成线性变化趋势,由于回波是发射信号的时延,因此,接收信号的频率也应该是随时间成线性变化趋势,通过时频分析可看到此特征。
Nw = 151; Nd = 16; Nf = 256;
[tfr,Nt,tf_t,tf_f] = tf_stft_v4(s,Nw,Nd,Nf);
figure(7); imagesc(tf_t/fs*1e6,tf_f*fs*1e-6,20*log10(abs(tfr)/max(abs(tfr(:)))));
setfig('单次回波的归一化时频图(幅度单位:dB)','时间(us)','频率(MHz)','xy','jet',1);
通过下图可以看到我们得到了3个负斜率、3个正斜率的信号,其中我们的目标应该是信号最强烈的正斜率信号—红色信号。
其他3条负斜率(标黑信号)与主信号斜率不同,通过匹配滤波会将不同信号频率的滤除掉。
另外两条正斜率(标蓝信号)也是正频率信号,与匹配函数调频斜率相同,会被误认为信号。3个调频斜率相同的信号,频率又是不同的,因此脉冲压缩会出来3个尖峰,被检测为3个目标。
3. 脉冲压缩
脉冲压缩就是通过设计匹配函数,对与匹配函数的调频斜率相同的信号,就能够压出尖峰。
通过脉冲压缩可以得到方位向上的几条直线,这表明在这几个距离处检测到了目标。通过其画出单个回波的脉冲压缩结果,也可以看到压缩出来了尖峰。
我们可以看到单个回波的脉压-距离结果,旁瓣相比与主瓣低了30dB左右,效果较好。
% 距离压缩
Tpnh = round(fs*Tp/2);
Tpn = 2*Tpnh+1;
tp = (-Tpnh:Tpnh).'/fs;
h = exp(-1j*pi*Kr*tp.^2);
% h = flip(conj(X(346:5346,1)));
h = h.*kaiser(Tpn,6); % 加窗
hp = [h;zeros(Nr-1,1)];
H = fft(hp);
Xp = [X;zeros(Tpn-1,Na)];
Xf = fft(Xp); clear Xp
X1 = ifft(Xf.*repmat(H,[1,Na])); % 距离压缩
X1 = X1(Tpnh+1:Tpnh+Nr,:);
figure; imagesc(abs(X1)); %caxis([0,5e3]); %===========
setfig('距离压缩结果','方位单元','距离单元','xy','jet',1);
figure; plot(20*log10(abs(X1(:,na1))/max(abs(X1(:,na1))))); grid on; %=========
setfig('单次回波的脉压结果','距离单元','幅度(dB)');
4. 脉冲累积
脉冲累积就是多帧脉冲压缩的结果进行累积,即做一个fft变换,脉压结果为一个点。
% 多普勒零频处理
fr = ((0:Nr-1)-floor(Nr/2)).'/Nr*fs;
fa = ((0:Na-1)-floor(Na/2)).'/Na*PRF;
X1_rd = fftshift(fft(X1,[],2),2);
figure; imagesc(abs(X1_rd)); %==========
setfig('距离多普勒域','多普勒频率单元','距离单元','xy','jet',1);