当前位置:首页 > 代码 > 正文

matlab雷达仿真代码(雷达仿真matlab版)

admin 发布:2022-12-19 09:45 176


今天给各位分享matlab雷达仿真代码的知识,其中也会对雷达仿真matlab版进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

MATLAB中雷达信号回波仿真,请教这段程序的意思,并且指出其中两个目标信号是哪个语句给出的

因为你只加入一个噪声,变换到频域就是双边谱。所以两个通道。

线性调频连续波雷达信号 matlab 仿真代码,求助,谢谢

雷达的范围类型,分类方法是非常复杂的。根据雷达通常可以使用的分类,如预警雷达,监视雷达引导搜索雷达指挥枪瞄准雷达,雷达测高仪,战场监视雷达,机载雷达,无线电高度表雷达,雷达引信,气象雷达,导航控制雷达,导航和避碰雷达和敌我识别雷达。

雷达信号按照分类,雷达,连续波雷达脉冲压缩雷达和频率捷变雷达的形式。

分类,按角度跟踪模式,单脉冲雷达,圆锥圆锥扫描雷达和隐蔽扫描雷达。根据客观的测量参数

分类,有雷达高度表,二坐标雷达,三坐标雷达,所以我知道的雷达,多基地雷达。使用

方式的雷达技术和信号处理的相干和非相干积分累加,动目标显示,运动目标检测,脉冲多普勒天气雷达,合成孔径雷达,跟踪边扫描雷达。

按照扫描线分为机械扫描雷达,相控阵雷达。

用雷达频段,可分为超视距雷达,微波雷达,毫米波雷达和激光雷达。

怎么用MATLAB对雷达进行仿真

这个怎么说呢,MATLAB还没有高级到这种地步吧,你可以用一些模块,设置一些参数,上手比较快,不想vbvc要写很多框架代码!!!!!!

合成孔径雷达回波数据处理MATLAB程序

CS

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%产生Stripmap SAR的回波

clear all

clc

thetaT=0;%T平台波束斜视角

thetaT=thetaT*pi/180;%rad

thetaR=0;%R平台波束斜视角

thetaR=thetaR*pi/180;

c=3e8;%光速

fc=1.5e9;%载频

lambda=c/fc;%波长

%%测绘带区域

X0=200;%方位向[-X0,X0]

Rtc=3000;

Rrc=3000;

Rc=(Rtc+Rrc)/2;

R0=150;%距离向[Rc-R0,Rc+R0]

%%距离向(Range),r/t domain

Tr=1.33e-6;%LFM信号脉宽1.33us (200m)

Br=150e6; %LFM信号带宽 150MHz

Kr=Br/Tr; %调频斜率

Nr=1024;

r=Rc+linspace(-R0,R0,Nr);

t=2*r/c;%t域序列

dt=R0*4/c/Nr;%采样周期

f=linspace(-1/2/dt,1/2/dt,Nr);%f域序列

%%方位向(Azimuth,Cross-Range),x/u domain

v=100;%SAR 平台速度

Lsar=300;%合成孔径长度

Na=512;

x=linspace(-X0,X0,Na);%u域序列

u=x/v;

du=2*X0/v/Na;

fu=linspace(-1/2/du,1/2/du,Na);%fu域序列

ftdc=v*sin(thetaT);

ftdr=-(v*cos(thetaT))^2/lambda/Rtc;

frdc=v*sin(thetaR);

frdr=-(v*cos(thetaR))^2/lambda/Rrc;

fdc=ftdc+frdc;%Doppler调频中心频率

fdr=ftdr+frdr;%Doppler调频斜率

%%目标位置

Ntar=3;%目标个数

Ptar=[Rrc,0,1 %距离向坐标,方位向坐标,sigma

Rrc+50,-50,1

Rrc+50,50,1];

%%产生回波

s_ut=zeros(Nr,Na);

U=ones(Nr,1)*u;%扩充为矩阵

T=t'*ones(1,Na);

for i=1:1:Ntar

rn=Ptar(i,1);xn=Ptar(i,2);sigma=Ptar(i,3);

rtn=rn+Rtc-Rrc;

RT=sqrt(rtn^2+(rtn*tan(thetaT)+xn-v*U).^2);

RR=sqrt(rn^2+(rn*tan(thetaT)+xn-v*U).^2);

R=RT+RR;

DT=T-R/c;

phase=-pi*Kr*DT.^2-2*pi/lambda*R;

s_ut=s_ut+sigma*exp(j*phase).*(abs(DT)Tr/2).*(abs(v*U-xn)Lsar/2);

end;

%方位向fft

s_kt=fftshift(fft(fftshift(s_ut).')).';

%CS变换

kc=4*pi/lambda;

kc=kc*ones(1,Na);

kx=fu/v;

p_kx0=-sqrt(kc.^2-kx.^2);%相位项泰勒展开的系数函数

p_kx1=2*kc/c/p_kx0;

p_kx2=-2.*kx.^2/c^2./p_kx0.^3;

C_kx=-(c*p_kx1/2+1);

Ks_r=1-2*Kr*Rc.*p_kx2;

Ks_kx_r=Kr/pi./Ks_r;

r0=Rc;

s2_ut=exp(j*pi*C_kx.*ones(Nr,1)*Ks_kx_r.*(t'*ones(1,Na)-2*r0*(1+C_kx)/c).^2);%设计的线性调频信号

S_cs=s_kt.*s2_ut;

%距离向fft

S_kw=fftshift(fft(fftshift(S_cs)));

%距离向匹配滤波

w=2*pi*f;

rmc_r=exp(j.*w*2*C_kx*r0/c).*exp(j.*w.^2/4/pi/Kr/(1+C_kx));

rmc_r=rmc_r'*ones(1,Na);

S_rmc=S_kw.*rmc_r;

%距离向ifft

S_kt=fftshift(ifft(fftshift(S_rmc)));

d_kxr=4*pi/c^2*Kr*C_kx*(1+C_kx).*(Rc-r0).^2;%CS变换带来的相位误差

S_kt=S_kt.*exp(-j*d_kxr);%消除相位误差

%方位向匹配滤波

FU=ones(Nr,1)*fu;

H_kx=exp(j*pi/fdr*(FU-fdc).^2);%方位向压缩因子

I_ut=S_kt.*H_kx;

I_ut=fftshift(ifft(fftshift(I_ut.'))).';

subplot(221)

G=20*log10(abs(s_ut)+1e-6);

gm=max(max(G));

gn=gm-40;%显示动态范围40dB

G=255/(gm-gn)*(G-gn).*(Ggn);

imagesc(x,r-Rc,-G),colormap(gray)

grid on,axis tight,

xlabel('Azimuth')

ylabel('Range')

title('(a)原始信号')

subplot(222)

G=20*log10(abs(S_rmc)+1e-6);

gm=max(max(G));

gn=gm-40;%显示动态范围40dB

G=255/(gm-gn)*(G-gn).*(Ggn);

imagesc(x,r-Rc,-G),colormap(gray)

grid on,axis tight,

xlabel('Azimuth')

ylabel('Range')

title('(b)距离向匹配滤波后频谱')

subplot(223)

G=20*log10(abs(S_kt)+1e-6);

gm=max(max(G));

gn=gm-40;%显示动态范围40dB

G=255/(gm-gn)*(G-gn).*(Ggn);

imagesc(x,r-Rc,G),colormap(gray)

grid on,axis tight,

xlabel('Azimuth')

ylabel('Range')

title('(c)消除相位误差后频谱')

subplot(224)

G=20*log10(abs(I_ut)+1e-6);

gm=max(max(G));

gn=gm-60;%显示动态范围40dB

G=255/(gm-gn)*(G-gn).*(Ggn);

imagesc(x,r-Rc,G),colormap(gray)

grid on,axis tight,

xlabel('Azimuth')

ylabel('Range')

title('(d)目标图象')

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

RD

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%产生Stripmap SAR的回波

clear all

thetaT=0;%T平台波束斜视角

thetaT=thetaT*pi/180;%rad

thetaR=0;%R平台波束斜视角

thetaR=thetaR*pi/180;

c=3e8;%光速

fc=1.5e9;%载频

lambda=c/fc;%波长

%%测绘带区域

X0=200;%方位向[-X0,X0]

Rtc=3000;

Rrc=3000;

Rc=(Rtc+Rrc)/2;

R0=150;%距离向[Rc-R0,Rc+R0]

%%距离向(Range),r/t domain

Tr=1.5e-6;%LFM信号脉宽 1.5us (200m)

Br=150e6; %LFM信号带宽 150MHz

Kr=Br/Tr; %调频斜率

Nr=512;

r=Rc+linspace(-R0,R0,Nr);

t=2*r/c;%t域序列

dt=R0*4/c/Nr;%采样周期

f=linspace(-1/2/dt,1/2/dt,Nr);%f域序列

%%方位向(Azimuth,Cross-Range),x/u domain

v=100;%SAR 平台速度

Lsar=300;%合成孔径长度

Na=1024;

x=linspace(-X0,X0,Na);%u域序列

u=x/v;

du=2*X0/v/Na;

fu=linspace(-1/2/du,1/2/du,Na);%fu域序列

ftdc=v*sin(thetaT);

ftdr=-(v*cos(thetaT))^2/lambda/Rtc;

frdc=v*sin(thetaR);

frdr=-(v*cos(thetaR))^2/lambda/Rrc;

fdc=ftdc+frdc;%Doppler调频中心频率

fdr=ftdr+frdr;%Doppler调频斜率

%%目标位置

Ntar=3;%目标个数

Ptar=[Rrc,0,1 %距离向坐标,方位向坐标,sigma

Rrc+50,-50,1

Rrc+50,50,1];

%%产生回波

s_ut=zeros(Nr,Na);

U=ones(Nr,1)*u;%扩充为矩阵

T=t'*ones(1,Na);

for i=1:1:Ntar

rn=Ptar(i,1);xn=Ptar(i,2);sigma=Ptar(i,3);

rtn=rn+Rtc-Rrc;

RT=sqrt(rtn^2+(rtn*tan(thetaT)+xn-v*U).^2);

RR=sqrt(rn^2+(rn*tan(thetaT)+xn-v*U).^2);

R=RT+RR;

DT=T-R/c;

phase=pi*Kr*DT.^2-2*pi/lambda*R;

s_ut=s_ut+sigma*exp(j*phase).*(abs(DT)Tr/2).*(abs(v*U-xn)Lsar/2);

end;

%%距离压缩

p0_t=exp(j*pi*Kr*(t-2*Rc/c).^2).*(abs(t-2*Rc/c)Tr/2);%距离向LFM信号

p0_f=fftshift(fft(fftshift(p0_t)));

s_uf=fftshift(fft(fftshift(s_ut)));%距离向FFT

src_uf=s_uf.*(conj(p0_f).'*ones(1,Na));%距离压缩

src_ut=fftshift(ifft(fftshift(src_uf)));%距离压缩后的信号

src_fut=fftshift(fft(fftshift(src_ut).')).';%距离多普勒域

%%二次距离压缩,距离迁移校正原理仿真

src_fuf=fftshift(fft(fftshift(src_uf).')).';%距离压缩后的二维频谱

F=f'*ones(1,Na);%扩充为矩阵

FU=ones(Nr,1)*fu;

p0_2f=exp(j*pi/fc^2/fdr*(FU.*F).^2+j*pi*fdc^2/fc/fdr*F-j*pi/fc/fdr*FU.^2.*F);

s2rc_fuf=src_fuf.*p0_2f;

s2rc_fut=fftshift(ifft(fftshift(s2rc_fuf)));%距离多普勒域

%%方位压缩

p0_2fu=exp(j*pi/fdr*(FU-fdc).^2);%方位向压缩因子

s2rcac_fut=s2rc_fut.*p0_2fu;%方位压缩

s2rcac_fuf=fftshift(fft(fftshift(s2rcac_fut)));%距离方位压缩后的二维频谱

s2rcac_ut=fftshift(ifft(fftshift(s2rcac_fut).')).';%方位向IFFT

subplot(221)

G=20*log10(abs(s_ut)+1e-6);

gm=max(max(G));

gn=gm-40;%显示动态范围40dB

G=255/(gm-gn)*(G-gn).*(Ggn);

imagesc(x,r-Rc,-G),colormap(gray)

grid on,axis tight,

xlabel('Azimuth')

ylabel('Range')

title('(a)原始信号')

subplot(222)

G=20*log10(abs(src_fut)+1e-6);

gm=max(max(G));

gn=gm-40;%显示动态范围40dB

G=255/(gm-gn)*(G-gn).*(Ggn);

imagesc(fu,r-Rc,-G),colormap(gray)

grid on,axis tight,

xlabel('Azimuth')

ylabel('Range')

title('(b)距离多普勒域频谱')

subplot(223)

G=20*log10(abs(s2rc_fut)+1e-6);

gm=max(max(G));

gn=gm-40;%显示动态范围40dB

G=255/(gm-gn)*(G-gn).*(Ggn);

imagesc(fu,r-Rc,-G),colormap(gray)

grid on,axis tight,

xlabel('Azimuth')

ylabel('Range')

title('(c)RMC后的RD域频谱')

subplot(224)

G=20*log10(abs(s2rcac_ut)+1e-6);

gm=max(max(G));

gn=gm-60;%显示动态范围40dB

G=255/(gm-gn)*(G-gn).*(Ggn);

imagesc(x,r-Rc,G),colormap(gray)

grid on,axis tight,

xlabel('Azimuth')

ylabel('Range')

title('(d)目标图象')

如何使用matlab对雷达数据处理

如何使用matlab对雷达数据处理

数据分析及仿真在雷达数据处理中的应用至关重要,通过数据仿真对雷达采集到的目标数据进行分析,找出其中的规律和特点,可以快速找出数据处理中存在的不足

怎么进行tdma仿真matlab的代码

怎么进行tdma仿真matlab的代码

1、如果仿真一个传递函数的阶跃、脉冲等响应,可以直接使用matlab函数。

2、如果是一个复杂的系统,需要使用matlab中的Simulink工具箱。3、仿真方法,仿真(s+1)/(2s^2+2s+1)的阶跃响应num=[1 1];den=[2 2 1];f=tf(num,den)Transfer function: s + 12 s^2 + 2 s + 1 step(f)这样就可以得到它的响应曲线。

关于matlab雷达仿真代码和雷达仿真matlab版的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/6172.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载