新万网站建设,平面设计网站灵感,wordpress注册没有密码错误,网站建设与维护采访稿第一章介绍了在相对速度为0时候的雷达测距原理
目录
1. LFM测速
1.1 雷达测速原理
1.2 Chrip信号测速
2. LFM测速代码实现
参数设置
仿真图像
matlab源码
代码分析 第一章介绍了在相对速度为0时候的雷达测距原理#xff0c;第二章介绍了基于LFM的雷达测距原理及其实现…第一章介绍了在相对速度为0时候的雷达测距原理
目录
1. LFM测速
1.1 雷达测速原理
1.2 Chrip信号测速
2. LFM测速代码实现
参数设置
仿真图像
matlab源码
代码分析 第一章介绍了在相对速度为0时候的雷达测距原理第二章介绍了基于LFM的雷达测距原理及其实现但是存在相对运动时无法得到目标物体的多普勒信息进而无法计算目标物体的速度。本章将在第二章的基础上实现连续LFM波形的雷达测距测速。
该笔记参考资料Radar测距及测速原理(2)——快速Chirp序列方法推导及实际应用 - 知乎 (zhihu.com)https://zhuanlan.zhihu.com/p/77500626
(114条消息) 线性调频LFM信号脉冲压缩雷达matlab仿真- 脉冲压缩 测距 测速 距离速度三维像附matlab代码_格桑蓝莲的博客-CSDN博客https://blog.csdn.net/weixin_44566643/article/details/107508520 1. LFM测速
1.1 雷达测速原理
通常来说我们可以通过确定电磁波传播的时间来估算距离通过多普勒效应产生的频率偏移来估算相对速度。但实际使用中我们会发现对于没有经过调制的连续波谱(Continuous Wave)我们只发出相同的正弦或余弦信号接收到的波也是呈周期性变化的所以我们无从知道从发出到接受到底经过了多少个波长从而无法确定信号从发出到接受所经历的时间(time of flight)也就无法测算距离。
于是我们引入了线性调频LFM使发出信号的频率随时间处于不断的变化中。LFM雷达在扫频周期内发射频率变化的连续波被物体反射后的回波与发射信号有一定的频率差通过测量频率差可以获得目标与雷达之间的距离信息。
第一章讨论了相对速度为0的情况现考虑存在相对运动速度当存在相对速度正值表示远离负值表示靠近距离R会随着时间进行变化当相对速度 R不断增大故也不断变大当相对速度 R不断减小故也不断减小。因此当目标物同观测点有相对运动时多普勒频偏也要放在考虑之中发出及接受的信号频率变化变成如下图所示 为了简化模型且考虑到信号从发出到接收所经历的时间极短加速度不变目标物体相对速度几乎不变信号频率变化如下所示 蓝色表示原始发射波形虚线的红黄两线表示接收到的不同回波信号因为目标物体存在相对速度接收到的回波信号在原始信号的基础上不但右移时延如黄虚线所示同时存在上下移动频移如红虚线所示具体解释如下 1.2 Chrip信号测速
结合第一章节以及本章前面内容雷达测距测速的基本原理相信各位已经明白现在将基本原理与LFM相结合通过缩短每一个Chrip信号的频扫时间使得在每一个Chrip时间内相对速度基本保持不变降低相对速度带来的影响。此时可以将每一个Chrip信号看成一个准静态情况一个Chirp中相对速度为0相对距离R不变从而不考虑多普勒效应)从而比较容易的确定一个Chirp中的相对距离R。但是因为视为准静态过程我们无从得知相对速度的值因此我们需要发出很多个连续相同的Chirp(Chirp序列)来确定相对速度如下图 如图所示很多个Chirp组成了一个”Sequence“总时间用 表示。在每个Chirp中相对距离R被视为定值因此在一个Chirp序列中R是以离散值表示出来的每一个Chirp给出一个R这里将离散的相对距离序列称为Range Cells。我们假设总共发出N个相同Chirp那么从第0到第N-1个Chirp的扫频周期及扫频带宽相等均为和。
为了得到每个Chirp的相对距离R我们首先要得到每个Chirp中的差频(beat frequency)因此我们将每一个Chirp进行采样共得到k个采样值。利用快速傅里叶变换(FFT)得出每个Chirp中的值从而得到相对距离R。因为这里的FFT之后得到的是距离所以在这里称为“Range-FFT。经过FFT后对于每个Chirp我们得都到了k个频点(frequency bins)其也对应着测量相对距离R的分辨率。 由于在一个测量序列中经历的时间较短我们假设其相对速度是不变的不存在加速度。并且相对速度可由R的变化求出而R又可以由差频得到因此我们就可以利用上一步Range-FFT得出的一个序列中各个Chirp的的变化来求相对速度。
在上一步中由FFT得到的是一个复数由于极短所以的变化也很小从而不足以使得不同Chirp得到的相对距离R跳跃到不同的Range cells中(FFT后幅值最大的序号不变)但其变化还是存在的。其结果可以在复频域中表示出来在一个测量序列中在复频域中旋转其旋转的频率即为相对速度的标尺对再进行FFT可以得到其变化的频率从而得到相对速度。因为这里的FFT之后得到的是相对速度所以我们这里称为“Speed-FFT” 由于每个Chirp可以得到一个相对距离R所以相对距离的分辨率为 而在一个序列中我们假设相对速度不变因此相对速度的分辨率为 注意公式中各个物理量的表示可能与我们仿真所使用到的表示不同如在仿真中用带宽表示。
2. LFM测速代码实现 参数设置
参数设置参数含义fc载波频率4GHzFs采样率为200MHzUSRP最大采样率受限Ts采样周期Ts1/FS5nsBB0.4Fs80MHz满足奈奎斯特带宽Tp一个Chrip信号的时宽10usTp10e-6c光速设置为3e8PRF每秒脉冲重复频率为200Tr脉冲重复周期等于1/PRF5mslamda波长等于光速/载波频率75cm厘米波波段Rmax受到采样时间的限制Rmax c/2*16*tt为采样时间R_resolution距离分辨率光速/两倍波长c/(2B)1.875mN_pulse发射脉冲个数num_pulse50t采样时间t 0:1/Fs:Tp采样时间会决定最大检测距离N_samples采样点数N_samplesN_time/Fs仿真图像 第一个回波信号的距离幅度谱 测距Range FFT 测距测速三维图像matlab源码
%
%% 连续脉冲LFM雷达测距测速
%% 完美实现没有bug
% matlab2021b
%
clear;clc;close all;
%% LFM参数设置
fc 4e9; %载波频率
PRF 2000; %脉冲重复频率
Tr 1/PRF; %脉冲重复周期
B 80e6; %带宽
Fs 2.5*B; %采样频率
Ts 1/Fs; %采样时间
Tp 10e-6; %脉宽
c 3e8;
lamda c/fc; %载波波长
Kr B/Tp; %调频斜率
N_pulse 50; %脉冲个数个数不能太少
t 0:1/Fs:Tp; %采样时间
N_samples length(t); %采样点个数
N_targets 5; %目标物体个数
Rmax c/2*1*Tp; %最大检测距离受到采样时间的限制采样时间为16Tp
Vmax lamda*PRF/2; %目标最大速度最大测速范围满足在第一盲速之内
R_targets [1000,230,680,860,145];%物体的距离随机生成
RCS 10*(exp(1i*2*pi*rand(1,N_targets)));%目标物体RCS幅度为10相位在0,2pi之间随机分布
V_targets Vmax*((rand(1,N_targets))/2);%目标物体速度%% 接收矩阵sr计算
sr zeros(N_pulse,N_samples);%sr的每一行表示一个回波信号所含的采样点一共有50行不同回波信号构成
for i 1:N_pulsedelay (i-1)*Tr; %发送第i个Chrip信号时相对初始时间的时延sr_row 0;% 内层for循环一个目标一个目标来研究对应每一个回波脉冲是由每一个目标回波之和组成for k1:N_targetstao2*(R_targets(k)-V_targets(k).*(delayt))/c; %在当前时刻雷达信号往返的时间目标物体在运动距离在变化sr_tempRCS(k).*rectpuls(t-tao-Tp/2,Tp).*exp(-1j*2*pi*fc*tao1j*pi*Kr.*(t-tao-Tp/2).^2);sr_rowsr_rowsr_temp;end% 外层for循环不同的脉冲对应的delay是不同值再代入来计算回波sr(i,:)sr_row;
end
R_range c*t/2; %在采样时间内距离的范围
%% 脉冲压缩
% 参考信号st
strectpuls(t-Tp/2,Tp).*exp(1i*pi*Kr*(t-Tp/2).^2);%时域参考信号将原始信号右移Tp/2
stfconj(fft(st));%匹配滤波器的频域特性
for i1:N_pulsesr_mf(i,:)ifft(fft(sr(i,:)).*stf); %分别对每一行脉冲压缩 频域脉冲压缩(匹配滤波mf
end%% 图像输出
%----------------------------测距Range FFT------------------------------
% 第一个回波信号的距离幅度谱
figure(2);
plot(t*c/2,abs(sr_mf(1,:)))
title(第一个回波信号的距离幅度谱);
%----------------------------测速Speed FFT------------------------------
sr_speedfft(sr_mf,[],1);
Vlinspace(0,PRF,50)*lamda/2;% 尝试着画一下三维图
figure(4)
mesh(R_range,V,abs(sr_speed)/max(max(abs(sr_speed))));
xlabel(距离/m);
ylabel(速度/(m/s));
zlabel(幅度/db);
title(目标距离速度信息一览); 代码分析