MATLAB LFCM雷达调频法测距

雷达原理老师留的作业,干了一整天,收获蛮大,拿word写的报告,夜已经深了(21点),懒得转成LaTeX了,就直接截图放上来了。

一、问题提出

LFCM(线性调频连续波)雷达。发射信号带宽1GHz,时宽10us. 3个目标径向距离分别为100m,105m,105.1m。分析中频信号带宽。仿真产生回波信号及去斜处理过程,对中频输出做傅里叶变换,观察距离维回波特性并进行讨论分析。在此基础上,讨论该类雷达性能指标和信号参数之间的关系。

二、问题解决

1.线性调频信号(LFM)原理:

MATLAB LFCM雷达调频法测距_第1张图片

2.线性调频信号(LFM)产生:

MATLAB LFCM雷达调频法测距_第2张图片
MATLAB LFCM雷达调频法测距_第3张图片
MATLAB LFCM雷达调频法测距_第4张图片

3.雷达回波产生:

MATLAB LFCM雷达调频法测距_第5张图片
MATLAB LFCM雷达调频法测距_第6张图片
MATLAB LFCM雷达调频法测距_第7张图片

4.下混频原理:

MATLAB LFCM雷达调频法测距_第8张图片
MATLAB LFCM雷达调频法测距_第9张图片

5.下混频实现:

MATLAB LFCM雷达调频法测距_第10张图片
MATLAB LFCM雷达调频法测距_第11张图片
MATLAB LFCM雷达调频法测距_第12张图片
MATLAB LFCM雷达调频法测距_第13张图片
MATLAB LFCM雷达调频法测距_第14张图片
MATLAB LFCM雷达调频法测距_第15张图片
MATLAB LFCM雷达调频法测距_第16张图片

三、心得感悟

MATLAB LFCM雷达调频法测距_第17张图片

虽说截图写博客确实不好,但是确实太困了。如果有需要word版的可以评论或者私信找我。这些地方我也学的不是很懂,要是有发现可以改进的地方,欢迎评论区指正!

附全部代码:

fs=20e10;
T=10e-6;%时宽
B=1e9;%带宽
mu=B/T;%调频率
n=round(T*fs);%采样点个数
t=linspace(0,T,n);
f0=24e9;%载频
s=exp(2j*pi*(f0*t+0.5*mu*t.^2));
plot(t,real(s))%时域图
title("发射信号时域")
xlabel("t/s")
xlim([0,1e-9])

figure(2)
S=fftshift(fft(real(s))./n);
f=linspace(-fs/2,fs/2-1,n);%频域横坐标,注意奈奎斯特采样定理,最大原信号最大频率不超过采样频率的一半
plot(f,abs(S))%频域图
title("发射信号频域")
xlim([-3e10,3e10])
xlabel("f/Hz")
grid on

figure(3)
w=f0+mu.*t;
plot(t,w)%线性调频图
grid on
title("发射信号调制图")
xlabel("t/s")
ylabel("f/Hz")

pos=[100,105,105.1];%三个目标的位置/m
timedelay=2*pos/(3e8);%雷达回波时延
r1=exp(2j*pi*(f0*(t-timedelay(1))+0.5*mu*(t-timedelay(1)).^2));
r2=exp(2j*pi*(f0*(t-timedelay(2))+0.5*mu*(t-timedelay(2)).^2));
r3=exp(2j*pi*(f0*(t-timedelay(3))+0.5*mu*(t-timedelay(3)).^2));
figure(4)
subplot(411)
plot(t,real(r1))%时域图
title("100m回波信号时域")
xlim([0,1e-5])
xlabel("t/s")
subplot(412)
plot(t,real(r2))%时域图
xlim([0,1e-5])
title("105m回波信号时域")
xlabel("t/s")
subplot(413)
plot(t,real(r3))%时域图
xlim([0,1e-5])
title("105.1m回波信号时域")
xlabel("t/s")
r=r1+r2+r3;%回波信号加在一起
subplot(414)
plot(t,real(r))%时域图
xlim([0,1e-5])
title("全部回波信号时域")
xlabel("t/s")

figure(5)
R=fftshift(fft(real(r))./n);
f=linspace(-fs/2,fs/2-1,n);%频域横坐标,注意奈奎斯特采样定理,最大原信号最大频率不超过采样频率的一半
plot(f,abs(R))%频域图
title("回波信号频域")
xlim([-3e10,3e10])
xlabel("f/Hz")
grid on

%回波信号乘以本振信号做下混频
mix=real(s).*real(r);
figure(6)
plot(t,real(mix))%时域图
title("混频信号时域")
xlabel("t/s")
xlim([0,1e-5])
grid on

figure(7)
MIX=fftshift(fft(mix)./n);
f=linspace(-fs/2,fs/2-1,n);%频域横坐标,注意奈奎斯特采样定理,最大原信号最大频率不超过采样频率的一半
plot(f,abs(MIX))%频域图
title("混频信号频域")
xlim([-6e10,6e10])
ylim([0,0.3])
xlabel("f/Hz")
grid on

y=filter(butterLow,mix);%用设计好的截止频率24GHz的低通滤波器滤波
figure(8)
plot(t,real(y))%时域图
title("输出信号时域")
xlabel("t/s")
xlim([0,1e-5])
grid on

figure(9)
Y=fftshift(fft(y)./n);
f=linspace(-fs/2,fs/2-1,n);%频域横坐标,注意奈奎斯特采样定理,最大原信号最大频率不超过采样频率的一半
plot(f,abs(Y))%频域图
title("输出信号频域")
xlim([-10^8,10^8])
ylim([0,0.3])
xlabel("f/Hz")
grid on

其中butterLow滤波器代码:

function Hd = butterLow
%BUTTERLOW Returns a discrete-time filter object.

% MATLAB Code
% Generated by MATLAB(R) 9.5 and Signal Processing Toolbox 8.1.
% Generated on: 21-Apr-2021 11:52:59

% Butterworth Lowpass filter designed using FDESIGN.LOWPASS.

% All frequency values are in Hz.
Fs = 2e+11;  % Sampling Frequency

N  = 7;            % Order
Fc = 24000000000;  % Cutoff Frequency

% Construct an FDESIGN object and call its BUTTER method.
h  = fdesign.lowpass('N,F3dB', N, Fc, Fs);
Hd = design(h, 'butter');

% [EOF]

留个赞再走啊,不然都没有信心写下一篇博客了\emoji{said}

你可能感兴趣的:(信号处理,matlab,信号处理,matlab,fft)