基于matlab实现的多普勒脉冲雷达回波仿真
最佳答案 问答题库838位专家为你答疑解惑
完整程序:
clear all;clc;close all;
fc=3e9; %载波频率
PRF=2000;
Br=5e6; %带宽
fs=10*Br; %采样频率
Tp=5e-6; %脉宽
Kr=Br/Tp; %频率变化率
c=3e8; %光速
lamda=c/fc; %波长
Tr=1/PRF; %脉冲重复周期
N_mc=1.5/60*PRF; %脉冲个数
t=0:1/fs:15*Tp+Tp; %采样时间
N_r=length(t); %采样点数
N_target=5; %目标个数
Rmax=c/2*15*Tp; %目标最大距离
R_t=Rmax*abs(rand(1,N_target)); %目标的距离
RCS_t=10*(exp(i*2*pi*rand(1,N_target))); %目标RCS,幅度为10,相位在(0,2pi)之间随机分布
Vmax=lamda*PRF/2; %目标最大速度
v=Vmax*((1+rand(1,N_target))/2); %目标速度
%% 生成目标矩阵
sr=zeros(N_mc,N_r);
for i=1:N_mc
ta=(i-1)*Tr;
sri=0;
for k=1:N_target
tao=2*(R_t(k)-v(k).*(ta+t))/c;
srj=RCS_t(k).*rectpuls(t-tao-Tp/2,Tp).*exp(-1j*2*pi*fc*tao+1j*pi*Kr.*(t-tao-Tp/2).^2);
sri=sri+srj;
end
sr(i,:)=sri;
end
%% 距离压缩前的回波
tm=(1:N_mc)/PRF;
R=c*t/2;
figure(1);
image(R,tm,255*abs(sr)/max(max(abs(sr))))
figure(2);
plot(t*c/2,abs(sr(1,:)))
%% 距离压缩
st=rectpuls(t-Tp/2,Tp).*exp(1i*pi*Kr*(t-Tp/2).^2);
stf=conj(fft(st));
for i=1:N_mc
sr(i,:)=ifft(fft(sr(i,:)).*stf);
end
figure(3);
image(R,tm,255*abs(sr)/max(max(abs(sr))))
figure;
plot(t*c/2,abs(sr(1,:)))
sr=fft(sr,[],1);
V=linspace(0,PRF,50)*lamda/2;
figure;image(R,V,255*abs(sr)/max(max(abs(sr))))
99%的人还看了
相似问题
- YOLO目标检测——卫星遥感多类别检测数据集下载分享【含对应voc、coco和yolo三种格式标签】
- 036、目标检测-锚框
- python自动化标注工具+自定义目标P图替换+深度学习大模型(代码+教程+告别手动标注)
- 【目标测距】雷达投影测距
- OpenCV入门9——目标识别(车辆统计)
- [架构之路-247]:目标系统 - 设计方法 - 软件工程 - 结构化方法的基本思想、本质、特点以及在软件开发、在生活中的应用
- 目标分割技术-语义分割总览
- C++二分算法:找到最接近目标值的函数值
- 第五章 目标检测中K-means聚类生成Anchor box(工具)
- 深度学习交通车辆流量分析 - 目标检测与跟踪 - python opencv 计算机竞赛
猜你感兴趣
版权申明
本文"基于matlab实现的多普勒脉冲雷达回波仿真":http://eshow365.cn/6-9200-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!
- 上一篇: 工厂模式-(简单工厂模式)
- 下一篇: Vue基础之模板语法介绍