⛄一、获取代码方式
获取代码方式1:
完整代码已上传我的资源:【雷达图像】SAR合成孔径雷达成像及处理【含Matlab源码 307期】
点击上面蓝色字体,直接付费下载,即可。
获取代码方式2:
付费专栏Matlab信号处理(初级版)
备注:
点击上面蓝色字体付费专栏Matlab信号处理(初级版),扫描上面二维码,付费29.9元订阅海神之光博客付费专栏Matlab信号处理(初级版),凭支付凭证,私信博主,可免费获得1份本博客上传CSDN资源代码(有效期为订阅日起,三天内有效);
点击CSDN资源下载链接:1份本博客上传CSDN资源代码
⛄二、简介
⛄三、部分源代码
clear all;
%======================================================================
%%% (I) parameters’ definition
%======================================================================
c=3e+8; % speed of light
pi=3.1415926; % pi
j00=sqrt(-1); % square root of -1
res_a=2; % required azimuth resolution
k_r=1.2; % range factor
Ra=4000.; % radar working distance
va=70.; % radar/platform forward velocity
fc=3.e+9; % carrier frequency
FsFactor = 1.0;
theta=90*pi/180; % squint angle
%======================================================================
lamda=c/fc; % wavelength
Br=k_rc/2./res_r; % required transmitted bandwidth
Fs=BrFsFactor; % A/D sampling rate
bin_r=c/2./Fs; % range bin
Kr=Br/Tp; % range chirp rate
La=Rak_alamda/2/res_a; % required synthetic aperture length
Ta=La/va; % required synthetic aperture time
fdc=2vacos(theta)/lamda; % doppler centriod
fdr=-2*(va*sin(theta)).^2/lamda/Ra; % doppler rate
Bd=abs(fdr)Ta; % doppler bandwidth
prf=round(Bd2); % PRF
%======================================================================
%%%(II) echo return modelling (point target)
%======================================================================
na=fix(Taprf/2); % azimuth sampling number
ta=-na:na;
ta=ta/prf; % slow time along azimuth
xa=vata-Racos(theta); % azimuth location along flight track
Na=2fix(na);
%x0=[ 0 0 0 0 0 ]; % define multi points if you want
%R0=[-20 -10 0 10 20 ]; % x0: azimuth location (positive towards forward velocity)
% R0: slant range location (positive towards far range)
x0=[ 0 0 ]; R0=[ 0 10 ]; % only one point
Npt_num = length(x0);
ra=zeros(Npt_num, length(xa)); % calculate every point target’s slant range history
for i=1:Npt_num
ra(i,:)=sqrt((Ra*sin(theta)+R0(i)).2+(xa+x0(i)).2);
end
rmax=max(max(ra)); % max. slant range
rmin=min(min(ra)); % min. slant range
rmc=fix((rmax-rmin)/bin_r); % range migration, number
rg=0*ra; % initialize
rg=fix((ra-rmin)/bin_r+1); % range gate index caused by range migration
rgmax=max(max(rg));
rgmin=min(min(rg));
nr=round(Tp*Fs); % samples of a pluse
tr=1:fix(nr)+1;
tr=tr/Fs-Tp/2; % fast time within a pluse duration
Nr=nr+rgmax;
%======================================================================
%%%(II) echo return modelling (point target)
%======================================================================
sig=zeros(Na,Nr);
for i=1:Na
for k=1:Npt_num
sig(i,rg(k,i):rg(k,i)+nr)=sig(i,rg(k,i):rg(k,i)+nr)+exp(-j004pi/lamdara(k,i))exp(-j00piKr*(tr).^2);
end
end
%%% parameters’ definition
c=3e+8; % speed of light
pi=3.1415926;
j=sqrt(-1);
Tp=1.e-6; % transmitted pulse width
fc=1.e+9; % carrier frequency
Br=50.e+6; % transmitted bandwidth
Fs=200.e+6; % A/D sample rate
kr=Br/Tp; % range chirp rate
Nr=Tp*Fs;
Ni=1:Nr;
tr=(Ni-Nr/2)*Tp/Nr;
%===============================
%Chirp pulse echo from point A
%===============================
sig_point0 = exp(jpikr*(tr).^2);
%===============================
%Chirp pulse echo from point B
%===============================
dr=3; dr_t=2dr/c; dN=dr_tFs;
sig_point1 = exp(jpikr*(tr-dr_t).^2);
sig_0 = zeros(1, 3*Nr); sig_1 = sig_0; sum_sig = sig_0;
sig_0(Nr+1:2Nr)=sig_point0;
sig_1(Nr+dN+1:2Nr+dN)=sig_point1;
%===============================
% Summary echo signal of A and B
%===============================
sum_sig = sig_0 + sig_1;
figure;
subplot(4,1,1); plot(real(sig_0));
subplot(4,1,2); plot(real(sig_1));
subplot(4,1,3); plot(real(sum_sig));
⛄四、运行结果
⛄五、matlab版本及参考文献
1 matlab版本
2014a
2 参考文献
[1] 沈再阳.精通MATLAB信号处理[M].清华大学出版社,2015.
[2]高宝建,彭进业,王琳,潘建寿.信号与系统——使用MATLAB分析与实现[M].清华大学出版社,2020.
[3]王文光,魏少明,任欣.信号处理与系统分析的MATLAB实现[M].电子工业出版社,2018.
3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除