线性调频信号回波处理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
%程序:线性调频信号回波处理
%LFMEchoProc.m
clc; %清楚命令窗口信息
clear; %清除工作区的变量
close all; %清除绘图
%****************参数设置*************%
fr=3e9; %射频
f0=10e6; %中频
pw=256e-6; %脉宽
bw=2e6; %带宽
pri=1e-3; %脉冲重复周期
fs=70e6; %采样率
R=100e3; %距离
v=0; %速度
Pt=10*log10(1e6); %功率
lamda=10*log10(0.1);%波长
G=30; %天线增益dB
L=6; %损耗dB
Fn=3; %噪声系数dB
RCS=10*log10(2); %RCS
%***************信号参数计算*************%
Pr=Pt+2*G+2*lamda+RCS-3*10*log10(4*pi)-4*10*log10(R)-L; %回波功率计算A=sqrt(10^(Pr/10)); %回波信号幅度tou=2*R/3e8; %收发时间
fd=2*v*fr/3e8; %回波多普勒频率k=bw/pw; %调频带宽频率变化率
%************************发射信号产生*******************%
t=(0:1/fs:pri).'; %时间sampleTbegin=ceil(0*fs+1); %采样时间起始点sampleTEnd=ceil(pw*fs+1); %采样时间结束点sTrans=zeros(length(t),1); %产生发射信号sTrans(sampleTbegin:sampleTEnd,1)=...
sin(2*pi*(f0*t(sampleTbegin:sampleTEnd,1)+k*t(sampleTbegin:sampleTEnd ,1).^2/2));
%图像展示
figure;
plot(t*1e6,sTrans); %发射信号时域波形
xlabel('时间/us');
ylabel('幅度');
freTrans=fftshift(fft(sTrans)); %发射信号频域波形
f=linspace(-fs/2,fs/2,length(t));
figure;
plot(f/1e6,abs(freTrans));
xlabel('频率/MHz');
ylabel('幅度');
%***********************回波信号产生*******************%
beginsample=ceil(tou*fs); %采样起始点endsample=ceil((tou+pw)*fs); %采样结束点sEcho=zeros(length(t),1); %产生回波信号sEcho(beginsample:endsample,1)=...
A*sin(2*pi*((f0+fd)*(t(beginsample:endsample,1)-tou)+k*(t(beginsample :endsample,1)-tou).^2/2));
figure;
plot(t*1e6,sEcho); %回波信号时域波形
xlabel('时间/us');
ylabel('幅度');
freEcho=fftshift(fft(sEcho));
f=linspace(-fs/2,fs/2,length(t));
figure;
plot(f/1e6,abs(freEcho)); %回波信号频域波形
xlabel('频率/MHz');
ylabel('幅度');
%**********************叠加接收机噪声*******************%
kn=1.38e-23;
Bn=bw;
NoiseDev=kn*T*fs*10^(Fn/10); %噪声功率,因后续要通过滤波器,
%此处带宽用采样带宽,保证噪声功率密度
noise=sqrt(NoiseDev)*randn(length(sEcho),1);
sEcho=sEcho+noise; %信号混叠噪声
Wn=fir1(50,[(f0-bw)/(fs/2) (f0+2*bw)/(fs/2)]); %带通滤波器设计
sEcho=filter(Wn,1,sEcho); %带通滤波处理
figure;
plot(t*1e6,sEcho);
xlabel('时间/us');
ylabel('幅度');
freEcho=fftshift(fft(sEcho));
f=linspace(-fs/2,fs/2,length(t));
figure;
plot(f/1e6,abs(freEcho));
xlabel('频率/MHz');
ylabel('幅度');
%*******************正交鉴相****************%
LocalI=sin(2*pi*f0*t);
LocalQ=cos(2*pi*f0*t);
sI=sEcho.*LocalI;
sQ=sEcho.*LocalQ;
filtWn=fir1(50,0.2); %低通滤波器设计
filsI=filter(filtWn,1,sI); %低通滤波处理
filsQ=filter(filtWn,1,sQ); %低通滤波处理
fils=filsI+sqrt(-1).*filsQ; %组成复信号
figure;
plot(t*1e6,fils); %零中频信号
xlabel('时间/us');
ylabel('幅度');
frefilsI=fftshift(fft(fils));
f=linspace(-fs/2,fs/2,length(t));
figure;
plot(f,abs(frefilsI));
xlabel('频率/MHz');
ylabel('幅度');
%************匹配滤波**************%