大家好,欢迎来到IT知识分享网。
系列文章目录
《信号类型(雷达+通信)》
《信号类型(雷达)——雷达波形认识(一)》
《信号类型(雷达)——连续波雷达(二)》
《信号类型(雷达)——脉冲雷达(三)》
文章目录
前言
为实现各种辐射源信号的分选识别以及定位,首先需要对辐射源信号特性有一个充分了解,根据各类辐射源特点从众多信号冲分离出来,甚至去除辐射源调制信息的影响,实现信号长时间相干定位处理,提高定位精度。本文主要记录目前了解到的雷达脉冲信号时域、频域、时频域以及模糊函数特性,作为后续辐射源分选识别以及定位研究的笔记,当然,若对相关行业的人有所启发,也欢迎能在评论区提出建议,或自身研究心得。
一、调频类脉冲雷达
1.1、常规脉冲雷达
矩形脉冲包络,没有相位调制信息。下图分别展示了这类脉冲波形的时域、频谱、时频图以及模糊函数特性。
时域实部和虚部 时域模值和相位
频谱图 时频图
模糊函数 模糊函数(俯视图)
模糊函数(0频) 模糊函数(0时延)
clear;close all;clc; %% % 矩形脉冲波形(非调制) %------------------------------波形分析------------------------------------ %% 波形参数 waveform = phased.RectangularWaveform; waveform.SampleRate = 5e6; % 采样率 waveform.DurationSpecification = 'Pulse width'; % 脉冲持续时间设置方式,'Pulse width' or 'Duty cycle' waveform.PulseWidth = 20e-6; % 脉宽 waveform.PRF = 5000; % PRF间隔 xt = step(waveform); %% 信号实部/虚部 figure; plot(real(xt)); hold on; plot(imag(xt)); title('信号实部/虚部'); legend('实部','虚部'); %% 信号模值/相位 figure; plot(abs(xt)); hold on; plot(angle(xt)); title('信号模值/相位'); legend('模值','相位'); %% 信号频谱 f=linspace(-waveform.SampleRate/2,waveform.SampleRate/2,length(xt)); figure; plot(f,abs(fftshift(fft(xt)))); xlabel('采样率(Hz)'); title('信号频谱'); %% 信号时频图 window = blackman(128); noverlap = 32; nfft = 512; [s,f,t] = spectrogram(xt,window,noverlap,nfft,waveform.SampleRate,'centered'); figure; imagesc(t,f,abs(s)); xlabel('时间(s)'); ylabel('频率(Hz)'); title('信号时频图'); %% 模糊函数 [afmag,delay,doppler] = ambgfun(xt,waveform.SampleRate,waveform.PRF); [ambrect1,delayrect] = ambgfun(xt,waveform.SampleRate,..., waveform.PRF,'Cut','Doppler','CutValue',0); [ambrect2,dopplerrect] = ambgfun(xt,waveform.SampleRate,..., waveform.PRF,'Cut','Delay','CutValue',0); figure; mesh(delay,doppler,abs(afmag)); xlabel('时间(s)'); ylabel('频率(Hz)'); title('信号模糊函数'); figure; plot(delayrect*10^6,ambrect1); xlabel('时延 (\mu sec)'); title('0Hz多普勒频点处的自相关函数'); figure; plot(dopplerrect/10^6,ambrect2); xlabel('多普勒频率 (MHz)'); title('0s时延处的自相关函数');
1.2、线性调频脉冲雷达
矩形脉冲包络,相位存在线性调频调制。下图分别展示了这类脉冲波形的时域、频谱、时频图以及模糊函数特性。
时域实部和虚部 时域模值和相位
频谱图 时频图
模糊函数 模糊函数(俯视图)
模糊函数(0频) 模糊函数(0时延)
%------------------------------波形分析------------------------------------ %% 波形参数 waveform = phased.LinearFMWaveform; waveform.SampleRate = 5e6; % 采样率 waveform.DurationSpecification = 'Pulse width'; % 脉冲持续时间设置方式,'Pulse width' or 'Duty cycle' waveform.PulseWidth = 20e-6; % 脉宽 waveform.PRF = 5000; % PRF间隔 waveform.SweepBandwidth = 1e6; % 频扫带宽 waveform.SweepDirection = 'Up'; % 'Up' or 'Down' waveform.SweepInterval = 'Symmetric'; % 'Positive' or 'Symmetric' % waveform.Envelope = 'Gaussian'; % 'Rectangular' or 'Gaussian'. xt = step(waveform); %% 信号实部/虚部 figure; plot(real(xt)); hold on; plot(imag(xt)); title('信号实部/虚部'); legend('实部','虚部'); %% 信号模值/相位 figure; plot(abs(xt)); hold on; plot(angle(xt)); title('信号模值/相位'); legend('模值','相位'); %% 信号频谱 f=linspace(-waveform.SampleRate/2,waveform.SampleRate/2,length(xt)); figure; plot(f,abs(fftshift(fft(xt)))); xlabel('采样率(Hz)'); title('信号频谱'); %% 信号时频图 window = blackman(16); noverlap = 10; nfft = 512; [s,f,t] = spectrogram(xt,window,noverlap,nfft,waveform.SampleRate,'centered'); figure; imagesc(t,f,abs(s)); xlabel('时间(s)'); ylabel('频率(Hz)'); title('信号时频图'); %% 模糊函数 [afmag,delay,doppler] = ambgfun(xt,waveform.SampleRate,waveform.PRF); [ambLFM1,delayLFM] = ambgfun(xt,waveform.SampleRate,..., waveform.PRF,'Cut','Doppler','CutValue',0); [ambLFM2,dopplerLFM] = ambgfun(xt,waveform.SampleRate,..., waveform.PRF,'Cut','Delay','CutValue',0); figure; mesh(delay,doppler,abs(afmag)); xlabel('时间(s)'); ylabel('频率(Hz)'); title('信号模糊函数'); figure; plot(delayLFM*10^6,ambLFM1); xlabel('时延 (\mu sec)'); title('0Hz多普勒频点处的自相关函数'); figure; plot(dopplerLFM/10^6,ambLFM2); xlabel('多普勒频率 (MHz)'); title('0s时延处的自相关函数');
1.3、步进频雷达
矩形脉冲包络,脉间频率逐渐递增。下图分别展示了这类脉冲波形的时域、频谱、时频图以及模糊函数特性。
时域实部和虚部 时域模值和相位
频谱图 时频图
模糊函数 模糊函数(俯视图)
模糊函数(0频) 模糊函数(0时延)
%------------------------------波形分析------------------------------------ %% 波形参数 waveform = phased.SteppedFMWaveform; waveform.SampleRate = 5e6; % 采样率 waveform.DurationSpecification = 'Pulse width'; % 脉冲持续时间设置方式,'Pulse width' or 'Duty cycle' waveform.PulseWidth = 20e-6; % 脉宽 waveform.PRF = 5000; % PRF间隔 waveform.FrequencyStep = 500e3; % 步进间隔 waveform.NumSteps = 3; % 步进数量 waveform.OutputFormat = 'Pulses'; % 输出信号的格式为'Pulses' or 'Samples' waveform.NumPulses = 3; xt = step(waveform); %% 信号实部/虚部 figure; plot(real(xt)); hold on; plot(imag(xt)); title('信号实部/虚部'); legend('实部','虚部'); %% 信号模值/相位 figure; plot(abs(xt)); hold on; plot(angle(xt)); title('信号模值/相位'); legend('模值','相位'); %% 信号频谱 f=linspace(-waveform.SampleRate/2,waveform.SampleRate/2,length(xt)); figure; plot(f,abs(fftshift(fft(xt)))); xlabel('采样率(Hz)'); title('信号频谱'); %% 信号时频图 window = blackman(16); noverlap = 10; nfft = 512; [s,f,t] = spectrogram(xt,window,noverlap,nfft,waveform.SampleRate,'centered'); figure; imagesc(t,f,abs(s)); xlabel('时间(s)'); ylabel('频率(Hz)'); title('信号时频图'); %% 模糊函数 [afmag,delay,doppler] = ambgfun(xt,waveform.SampleRate,waveform.PRF); [ambsfm1,delaysfm] = ambgfun(xt,waveform.SampleRate,..., waveform.PRF,'Cut','Doppler','CutValue',0); [ambsfm2,dopplersfm] = ambgfun(xt,waveform.SampleRate,..., waveform.PRF,'Cut','Delay','CutValue',0); figure; mesh(delay,doppler,abs(afmag)); xlabel('时间(s)'); ylabel('频率(Hz)'); title('信号模糊函数'); figure; plot(delaysfm*10^6,ambsfm1); xlabel('时延 (\mu sec)'); title('0Hz多普勒频点处的自相关函数'); figure; plot(dopplersfm/10^6,ambsfm2); xlabel('多普勒频率 (MHz)'); title('0s时延处的自相关函数');
二、相位编码雷达
2.1、Barker编码
矩形脉冲包络,相位存在Barker编码,已知的barker码包括:2位(++或+-),3位(++-),4位(+++-或++-+),5位(+++-+),7位(+++–+-),11位(+++—+–+-),13位(+++++–++-+-+)。下图分别展示了13位Barker相位编码脉冲波形的时域、频谱、时频图以及模糊函数特性。
时域实部和虚部 时域模值和相位
频谱图 时频图
模糊函数 模糊函数(俯视图)
模糊函数(0频) 模糊函数(0时延)
%------------------------------波形分析------------------------------------ %% 波形参数 waveform = phased.PhaseCodedWaveform; waveform.SampleRate = 5e6; % 采样率 waveform.Code = 'Barker'; % 编码方式 waveform.ChipWidth = 10/waveform.SampleRate; % 码片时间宽度 waveform.NumChips = 13; % 2, 3, 4, 5, 7, 11, or 13 waveform.PRF = 5000; % PRF间隔 xt = step(waveform); %% 信号实部/虚部 figure; plot(real(xt)); hold on; plot(imag(xt)); title('信号实部/虚部'); legend('实部','虚部'); %% 信号模值/相位 figure; plot(abs(xt)); hold on; plot(angle(xt)); title('信号模值/相位'); legend('模值','相位'); %% 信号频谱 f=linspace(-waveform.SampleRate/2,waveform.SampleRate/2,length(xt)); figure; plot(f,abs(fftshift(fft(xt)))); xlabel('采样率(Hz)'); title('信号频谱'); %% 信号时频图 window = blackman(16); noverlap = 10; nfft = 512; [s,f,t] = spectrogram(xt,window,noverlap,nfft,waveform.SampleRate,'centered'); figure; imagesc(t,f,abs(s)); xlabel('时间(s)'); ylabel('频率(Hz)'); title('信号时频图'); %% 模糊函数 [afmag,delay,doppler] = ambgfun(xt,waveform.SampleRate,waveform.PRF); [ambbk1,delaybk] = ambgfun(xt,waveform.SampleRate,..., waveform.PRF,'Cut','Doppler','CutValue',0); [ambbkt2,dopplerbk] = ambgfun(xt,waveform.SampleRate,..., waveform.PRF,'Cut','Delay','CutValue',0); figure; mesh(delay,doppler,abs(afmag)); xlabel('时间(s)'); ylabel('频率(Hz)'); title('信号模糊函数'); figure; plot(delaybk*10^6,ambbk1); xlabel('时延 (\mu sec)'); title('0Hz多普勒频点处的自相关函数'); figure; plot(dopplerbk/10^6,ambbkt2); xlabel('多普勒频率 (MHz)'); title('0s时延处的自相关函数');
2.2、Frank编码
矩形脉冲包络,相位存在Frank编码,是LFM脉冲压缩波形的阶跃近似,需要是整数的平方。下图分别展示了36位Frank相位编码脉冲波形的时域、频谱、时频图以及模糊函数特性。
时域实部和虚部 时域模值和相位
频谱图 时频图
模糊函数 模糊函数(俯视图)
模糊函数(0频) 模糊函数(0时延)
%------------------------------波形分析------------------------------------ %% 波形参数 waveform = phased.PhaseCodedWaveform; waveform.SampleRate = 5e6; % 采样率 waveform.Code = 'Frank'; % 编码方式 waveform.ChipWidth = 10/waveform.SampleRate; % 码片时间宽度 waveform.NumChips = 36; % 整数的平方 waveform.PRF = 5000; % PRF间隔 xt = step(waveform); %% 信号实部/虚部 figure; plot(real(xt)); hold on; plot(imag(xt)); title('信号实部/虚部'); legend('实部','虚部'); %% 信号模值/相位 figure; plot(abs(xt)); hold on; plot(angle(xt)); title('信号模值/相位'); legend('模值','相位'); figure; plot(phase(xt)); %% 信号频谱 f=linspace(-waveform.SampleRate/2,waveform.SampleRate/2,length(xt)); figure; plot(f,abs(fftshift(fft(xt)))); xlabel('采样率(Hz)'); title('信号频谱'); %% 信号时频图 window = blackman(16); noverlap = 10; nfft = 512; [s,f,t] = spectrogram(xt,window,noverlap,nfft,waveform.SampleRate,'centered'); figure; imagesc(t,f,abs(s)); xlabel('时间(s)'); ylabel('频率(Hz)'); title('信号时频图'); %% 模糊函数 [afmag,delay,doppler] = ambgfun(xt,waveform.SampleRate,waveform.PRF); [ambfk1,delayfk] = ambgfun(xt,waveform.SampleRate,..., waveform.PRF,'Cut','Doppler','CutValue',0); [ambfk2,dopplerfk] = ambgfun(xt,waveform.SampleRate,..., waveform.PRF,'Cut','Delay','CutValue',0); figure; mesh(delay,doppler,abs(afmag)); xlabel('时间(s)'); ylabel('频率(Hz)'); title('信号模糊函数'); figure; plot(delayfk*10^6,ambfk1); xlabel('时延 (\mu sec)'); title('0Hz多普勒频点处的自相关函数'); figure; plot(dopplerfk/10^6,ambfk2); xlabel('多普勒频率 (MHz)'); title('0s时延处的自相关函数');
2.3、P1编码
P1、P2、P3和P4多相位编码 。这些编码是LFM脉冲压缩波形的阶跃近似 ,其距离副瓣低,且具有与LFM编码一样的多普勒容忍性,需要是整数的平方。下图分别展示了36位P1相位编码脉冲波形的时域、频谱、时频图以及模糊函数特性。
时域实部和虚部 时域模值和相位
频谱图 时频图
模糊函数 模糊函数(俯视图)
模糊函数(0频) 模糊函数(0时延)
waveform = phased.PhaseCodedWaveform; waveform.SampleRate = 5e6; % 采样率 waveform.Code = 'P1'; % 编码方式 waveform.ChipWidth = 10/waveform.SampleRate; % 码片时间宽度 waveform.NumChips = 36; % 整数的平方 waveform.PRF = 5000; % PRF间隔 xt = step(waveform); %% 信号实部/虚部 figure; plot(real(xt)); hold on; plot(imag(xt)); title('信号实部/虚部'); legend('实部','虚部'); %% 信号模值/相位 figure; plot(abs(xt)); hold on; plot(angle(xt)); title('信号模值/相位'); legend('模值','相位'); figure; plot(phase(xt)); %% 信号频谱 f=linspace(-waveform.SampleRate/2,waveform.SampleRate/2,length(xt)); figure; plot(f,abs(fftshift(fft(xt)))); xlabel('采样率(Hz)'); title('信号频谱'); %% 信号时频图 window = blackman(16); noverlap = 10; nfft = 512; [s,f,t] = spectrogram(xt,window,noverlap,nfft,waveform.SampleRate,'centered'); figure; imagesc(t,f,abs(s)); xlabel('时间(s)'); ylabel('频率(Hz)'); title('信号时频图'); %% 模糊函数 [afmag,delay,doppler] = ambgfun(xt,waveform.SampleRate,waveform.PRF); [ambP11,delayP1] = ambgfun(xt,waveform.SampleRate,..., waveform.PRF,'Cut','Doppler','CutValue',0); [ambP12,dopplerP1] = ambgfun(xt,waveform.SampleRate,..., waveform.PRF,'Cut','Delay','CutValue',0); figure; mesh(delay,doppler,abs(afmag)); xlabel('时间(s)'); ylabel('频率(Hz)'); title('信号模糊函数'); figure; plot(delayP1*10^6,ambP11); xlabel('时延 (\mu sec)'); title('0Hz多普勒频点处的自相关函数'); figure; plot(dopplerP1/10^6,ambP12); xlabel('多普勒频率 (MHz)'); title('0s时延处的自相关函数');
2.4、P2编码
需要是偶数的平方,下图分别展示了36位P2相位编码脉冲波形的时域、频谱、时频图以及模糊函数特性。
时域实部和虚部 时域模值和相位
频谱图 时频图
模糊函数 模糊函数(俯视图)
模糊函数(0频) 模糊函数(0时延)
%------------------------------波形分析------------------------------------ %% 波形参数 waveform = phased.PhaseCodedWaveform; waveform.SampleRate = 5e6; % 采样率 waveform.Code = 'P2'; % 编码方式 waveform.ChipWidth = 10/waveform.SampleRate; % 码片时间宽度 waveform.NumChips = 36; % 偶数的平方 waveform.PRF = 5000; % PRF间隔 xt = step(waveform); %% 信号实部/虚部 figure; plot(real(xt)); hold on; plot(imag(xt)); title('信号实部/虚部'); legend('实部','虚部'); %% 信号模值/相位 figure; plot(abs(xt)); hold on; plot(angle(xt)); title('信号模值/相位'); legend('模值','相位'); figure; plot(phase(xt)); %% 信号频谱 f=linspace(-waveform.SampleRate/2,waveform.SampleRate/2,length(xt)); figure; plot(f,abs(fftshift(fft(xt)))); xlabel('采样率(Hz)'); title('信号频谱'); %% 信号时频图 window = blackman(16); noverlap = 10; nfft = 512; [s,f,t] = spectrogram(xt,window,noverlap,nfft,waveform.SampleRate,'centered'); figure; imagesc(t,f,abs(s)); xlabel('时间(s)'); ylabel('频率(Hz)'); title('信号时频图'); %% 模糊函数 [afmag,delay,doppler] = ambgfun(xt,waveform.SampleRate,waveform.PRF); [ambP21,delayP2] = ambgfun(xt,waveform.SampleRate,..., waveform.PRF,'Cut','Doppler','CutValue',0); [ambP22,dopplerP2] = ambgfun(xt,waveform.SampleRate,..., waveform.PRF,'Cut','Delay','CutValue',0); figure; mesh(delay,doppler,abs(afmag)); xlabel('时间(s)'); ylabel('频率(Hz)'); title('信号模糊函数'); figure; plot(delayP2*10^6,ambP21); xlabel('时延 (\mu sec)'); title('0Hz多普勒频点处的自相关函数'); figure; plot(dopplerP2/10^6,ambP22); xlabel('多普勒频率 (MHz)'); title('0s时延处的自相关函数');
2.5、P3编码
需要是整数的平方,下图分别展示了36位P3相位编码脉冲波形的时域、频谱、时频图以及模糊函数特性。
时域实部和虚部 时域相位
频谱图 时频图
模糊函数 模糊函数(俯视图)
模糊函数(0频) 模糊函数(0时延)
%------------------------------波形分析------------------------------------ %% 波形参数 waveform = phased.PhaseCodedWaveform; waveform.SampleRate = 5e6; % 采样率 waveform.Code = 'P3'; % 编码方式 waveform.ChipWidth = 10/waveform.SampleRate; % 码片时间宽度 waveform.NumChips = 36; % 正整数 waveform.PRF = 5000; % PRF间隔 xt = step(waveform); %% 信号实部/虚部 figure; plot(real(xt)); hold on; plot(imag(xt)); title('信号实部/虚部'); legend('实部','虚部'); %% 信号模值/相位 figure; plot(abs(xt)); hold on; plot(angle(xt)); title('信号模值/相位'); legend('模值','相位'); figure; plot(phase(xt)); %% 信号频谱 f=linspace(-waveform.SampleRate/2,waveform.SampleRate/2,length(xt)); figure; plot(f,abs(fftshift(fft(xt)))); xlabel('采样率(Hz)'); title('信号频谱'); %% 信号时频图 window = blackman(16); noverlap = 10; nfft = 512; [s,f,t] = spectrogram(xt,window,noverlap,nfft,waveform.SampleRate,'centered'); figure; imagesc(t,f,abs(s)); xlabel('时间(s)'); ylabel('频率(Hz)'); title('信号时频图'); %% 模糊函数 [afmag,delay,doppler] = ambgfun(xt,waveform.SampleRate,waveform.PRF); [ambP31,delayP3] = ambgfun(xt,waveform.SampleRate,..., waveform.PRF,'Cut','Doppler','CutValue',0); [ambP32,dopplerP3] = ambgfun(xt,waveform.SampleRate,..., waveform.PRF,'Cut','Delay','CutValue',0); figure; mesh(delay,doppler,abs(afmag)); xlabel('时间(s)'); ylabel('频率(Hz)'); title('信号模糊函数'); figure; plot(delayP3*10^6,ambP31); xlabel('时延 (\mu sec)'); title('0Hz多普勒频点处的自相关函数'); figure; plot(dopplerP3/10^6,ambP32); xlabel('多普勒频率 (MHz)'); title('0s时延处的自相关函数');
2.6、P4编码
需要是整数的平方,下图分别展示了36位P4相位编码脉冲波形的时域、频谱、时频图以及模糊函数特性。
时域实部和虚部 时域相位
频谱图 时频图
模糊函数 模糊函数(俯视图)
模糊函数(0频) 模糊函数(0时延)
%------------------------------波形分析------------------------------------ %% 波形参数 waveform = phased.PhaseCodedWaveform; waveform.SampleRate = 5e6; % 采样率 waveform.Code = 'P4'; % 编码方式 waveform.ChipWidth = 10/waveform.SampleRate; % 码片时间宽度 waveform.NumChips = 36; % 正整数 waveform.PRF = 5000; % PRF间隔 xt = step(waveform); %% 信号实部/虚部 figure; plot(real(xt)); hold on; plot(imag(xt)); title('信号实部/虚部'); legend('实部','虚部'); %% 信号模值/相位 figure; plot(abs(xt)); hold on; plot(angle(xt)); title('信号模值/相位'); legend('模值','相位'); figure; plot(phase(xt)); %% 信号频谱 f=linspace(-waveform.SampleRate/2,waveform.SampleRate/2,length(xt)); figure; plot(f,abs(fftshift(fft(xt)))); xlabel('采样率(Hz)'); title('信号频谱'); %% 信号时频图 window = blackman(16); noverlap = 10; nfft = 512; [s,f,t] = spectrogram(xt,window,noverlap,nfft,waveform.SampleRate,'centered'); figure; imagesc(t,f,abs(s)); xlabel('时间(s)'); ylabel('频率(Hz)'); title('信号时频图'); %% 模糊函数 [afmag,delay,doppler] = ambgfun(xt,waveform.SampleRate,waveform.PRF); [ambP41,delayP4] = ambgfun(xt,waveform.SampleRate,..., waveform.PRF,'Cut','Doppler','CutValue',0); [ambP42,dopplerP4] = ambgfun(xt,waveform.SampleRate,..., waveform.PRF,'Cut','Delay','CutValue',0); figure; mesh(delay,doppler,abs(afmag)); xlabel('时间(s)'); ylabel('频率(Hz)'); title('信号模糊函数'); figure; plot(delayP4*10^6,ambP41); xlabel('时延 (\mu sec)'); title('0Hz多普勒频点处的自相关函数'); figure; plot(dopplerP4/10^6,ambP42); xlabel('多普勒频率 (MHz)'); title('0s时延处的自相关函数');
总结
本文简单介绍常见脉冲雷达信号的时域、频域、时频域以及模糊函数特性,其中相位编码雷达信号主要有phased工具箱产生,可能和定义中的P1,P2,P3,P4码有所区别,有问题欢迎评论区留言。转载请附链接【杨(_> <_)】的博客_CSDN博客-信号处理,SAR,代码实现领域博主
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/129875.html