雷达信号matlab仿真要点
线性调频信号matlab仿真

实验一雷达信号波形分析实验报告一、实验目的要求1. 了解雷达常用信号的形式。
2. 学会用仿真软件分析信号的特性。
3了解雷达常用信号的频谱特点和模糊函数。
二、实验参数设置信号参数范围如下:(1)简单脉冲调制信号:(2)载频:85MHz(3)脉冲重复周期:250us(4)脉冲宽度:8us(5)幅度:1V(2)线性调频信号载频:85MHz脉冲重复周期:250us脉冲宽度:20us信号带宽:15MHz幅度:1V三、实验仿真波形1.简单的脉冲调制信号程序:Fs=10e6;t=0:1/Fs:300e-6;fr=4e3;f0=8.5e7;x1=square(2*pi*fr*t,3.2)./2+0.5;x2=exp(i*2*pi*f0*t);x3=x1.*x2;subplot(3,1,1);plot(t,x1,'-');axis([0,310e-6,-1.5,1.5]);xlabel('时间/s')ylabel('幅度/v')title('脉冲信号重复周期T=250US 脉冲宽度为8us') grid;subplot(3,1,2);plot(t,x2,'-');axis([0,310e-6,-1.5,1.5]);xlabel('时间/s')ylabel('幅度/v')title('连续正弦波信号载波频率f0=85MHz')grid;subplot(3,1,3);plot(t,x3,'-');axis([0,310e-6,-1.5,1.5]);xlabel('时间/s')ylabel('·幅度/v')title('脉冲调制信号')grid;仿真波形:0123x 10-4-101时间/s幅度/v脉冲信号重复周期T=250us 脉冲宽度为8us123x 10-4-11时间/s幅度/v连续正弦波信号载波频率f0=85MHz123x 10-4-101时间/s幅度/v脉冲调制信号2.线性调频信号程序:Fs=10e6;t=0:1/Fs:300e-6;fr=4e3;f0=8.5e7;x1=square(2*pi*fr*t,8)./2+0.5;x2=exp(i*2*pi*f0*t); x3=x1.*x2;subplot(2,2,1);plot(t,x1,'-');axis([0,310e-6,-1.5,1.5]);xlabel('时间/s')ylabel('幅度/v')title('脉冲信号重复周期T=250US 脉冲宽度为8us ') grid;subplot(223);plot(t,x2,'-');axis([0,310e-6,-1.5,1.5]);xlabel('时间/s')ylabel('幅度/v')title('连续正弦波信号载波频率f0=85MHz ')grid;eps = 0.000001;B = 15.0e6;T = 10.e-6; f0=8.5e7;mu = B / T;delt = linspace(-T/2., T/2., 10001);LFM=exp(i*2*pi*(f0*delt+mu .* delt.^2 / 2.));LFMFFT = fftshift(fft(LFM));freqlimit = 0.5 / 1.e-9;freq = linspace(-freqlimit/1.e6,freqlimit/1.e6,10001); figure(1)subplot(2,2,2)plot(delt*1e6,LFM,'k');axis([-1 1 -1.5 1.5])grid;xlabel('时间/us')ylabel('幅度/v')title('线性调频信号T = 10 mS, B = 15 MHz')subplot(2,2,4)y=20*log10(abs(LFMFFT));y=y-max(y);plot(freq, y,'k');axis([-500 500 -80 10]);grid;%axis tightxlabel('频率/ MHz')ylabel('频谱/dB')title('线性调频信号T = 10 mS, B = 15 MHz') 仿真波形:四、实验成果分析本实验首先利用MTALAB软件得到一个脉冲调制信号,然后再对其线性调频分析,得到上面的波形图。
雷达系统仿真matlab代码

%======================================================================= ====================%% 该程序完成16个脉冲信号的【脉压、动目标显示/动目标检测(MTI/MTD)】%======================================================================= ====================%% 程序中根据每个学生学号的末尾三位(依次为XYZ)来决定仿真参数,034% 目标距离为[3000 8025 9000+(Y*10+Z)*200 8025],4个目标% 目标速度为[50 0 (Y*10+X+Z)*6 100]%======================================================================= ====================%close all; %关闭所有图形clear all; %清除所有变量clc;%======================================================================= ============%% 雷达参数 % %======================================================================= ============%C=3.0e8; %光速(m/s)RF=3.140e9/2; %雷达射频 1.57GHzLambda=C/RF;%雷达工作波长PulseNumber=16; %回波脉冲数BandWidth=2.0e6; %发射信号带宽带宽B=1/τ,τ是脉冲宽度TimeWidth=42.0e-6; %发射信号时宽PRT=240e-6; % 雷达发射脉冲重复周期(s),240us对应1/2*240*300=36000米最大无模糊距离PRF=1/PRT;Fs=2.0e6; %采样频率NoisePower=-12;%(dB);%噪声功率(目标为0dB)% ---------------------------------------------------------------% SampleNumber=fix(Fs*PRT);%计算一个脉冲周期的采样点数480;TotalNumber=SampleNumber*PulseNumber;%总的采样点数480*16=;BlindNumber=fix(Fs*TimeWidth);%计算一个脉冲周期的盲区-遮挡样点数;%====================================================================== =============%% 目标参数 % %====================================================================== =============%TargetNumber=4;%目标个数SigPower(1:TargetNumber)=[1 1 1 0.25];%目标功率,无量纲TargetDistance(1:TargetNumber)=[3000 8025 15800 8025];%目标距离,单位m 距离参数为[3000 8025 9000+(Y*10+Z)*200 8025]DelayNumber(1:TargetNumber)=fix(Fs*2*TargetDistance(1:TargetNumber)/C); % 把目标距离换算成采样点(距离门) fix函数向0靠拢取整TargetVelocity(1:TargetNumber)=[50 0 204 100];%目标径向速度单位m/s 速度参数为[50 0 (Y*10+X+Z)*6 100]TargetFd(1:TargetNumber)=2*TargetVelocity(1:TargetNumber)/Lambda; %计算目标多卜勒频移2v/λ%====================================================================== ==============%% 产生线性调频信号 %%====================================================================== ==============%number=fix(Fs*TimeWidth);%回波的采样点数=脉压系数长度=暂态点数目+1if rem(number,2)~=0 %rem求余number=number+1;end%把number变为偶数for i=-fix(number/2):fix(number/2)-1Chirp(i+fix(number/2)+1)=exp(j*(pi*(BandWidth/TimeWidth)*(i/Fs)^2));%ex p(j*fi)*,产生复数矩阵Chirpendcoeff=conj(fliplr(Chirp));%把Chirp矩阵翻转并把复数共轭,产生脉压系数figure(1);%脉压系数的实部plot(real(Chirp));axis([0 90 -1.5 1.5]);title('脉压系数实部');%-------------------------产生目标回波串-----------------------------------------------------------------------------------------%%-------------------------产生前3个目标的回波串-------%SignalAll=zeros(1,TotalNumber);%所有脉冲的信号,先填0for k=1:TargetNumber-1 % 依次产生各个目标SignalTemp=zeros(1,SampleNumber);% 一个PRTSignalTemp(DelayNumber(k)+1:DelayNumber(k)+number)=sqrt(SigPower(k))*Ch irp;%一个脉冲的1个目标(未加多普勒速度)(DelayNumber(k)+1):(DelayNumber(k)+number)Signal=zeros(1,TotalNumber);for i=1:PulseNumber % 16个回波脉冲Signal((i-1)*SampleNumber+1:i*SampleNumber)=SignalTemp; %每个目标把16个SignalTemp排在一起endFreqMove=exp(j*2*pi*TargetFd(k)*(0:TotalNumber-1)/Fs);%目标的多普勒速度*时间=目标的多普勒相移Signal=Signal.*FreqMove;%加上多普勒速度后的16个脉冲1个目标SignalAll=SignalAll+Signal;%加上多普勒速度后的16个脉冲4个目标end% %-------------------------产生第4个目标的回波串-------%fi=pi/3;SignalTemp=zeros(1,SampleNumber);% 一个脉冲SignalTemp(DelayNumber(4)+1:DelayNumber(4)+number)=sqrt(SigPower(4))*ex p(j*fi)*Chirp;%一个脉冲的1个目标(未加多普勒速度)Signal=zeros(1,TotalNumber);for i=1:PulseNumberSignal((i-1)*SampleNumber+1:i*SampleNumber)=SignalTemp;endFreqMove=exp(j*2*pi*TargetFd(4)*(0:TotalNumber-1)/Fs);%目标的多普勒速度*时间=目标的多普勒相移Signal=Signal.*FreqMove;SignalAll=SignalAll+Signal;figure(2);subplot(2,1,1);plot(real(SignalAll),'r-');title('目标信号的实部');grid on;zoom on;subplot(2,1,2);plot(imag(SignalAll));title('目标信号的虚部');grid on;zoom on;%====================================================================== ==============%% 产生系统噪声信号 %%====================================================================== ==============%SystemNoise=normrnd(0,10^(NoisePower/10),1,TotalNumber)+j*normrnd(0,10^ (NoisePower/10),1,TotalNumber);%均值为0,标准差为10^(NoisePower/10)的噪声%====================================================================== ==============%% 总的回波信号 %%====================================================================== ==============%Echo=SignalAll+SystemNoise;% +SeaClutter+TerraClutter,加噪声之后的回波for i=1:PulseNumber %在接收机闭锁期,接收的回波为0Echo((i-1)*SampleNumber+1:(i-1)*SampleNumber+number)=0; %发射时接收为0endfigure(3);%加噪声之后的总回波信号subplot(2,1,1);plot(real(Echo),'r-');title('总回波信号的实部,闭锁期为0'); subplot(2,1,2);plot(imag(Echo));title('总回波信号的虚部,闭锁期为0');%================================时域脉压=================================%pc_time0=conv(Echo,coeff);%pc_time0为Echo和coeff的卷积pc_time1=pc_time0(number:TotalNumber+number-1);%去掉暂态点 number-1个figure(4);%时域脉压结果的幅度subplot(2,1,1);plot(abs(pc_time0),'r-');title('时域脉压结果的幅度,有暂态点');%pc_time0的模的曲线subplot(2,1,2);plot(abs(pc_time1));title('时域脉压结果的幅度,无暂态点');%pc_time1的模的曲线% ================================频域脉压=================================%Echo_fft=fft(Echo,8192);%理应进行TotalNumber+number-1点FFT,但为了提高运算速度,进行了8192点的FFTcoeff_fft=fft(coeff,8192);pc_fft=Echo_fft.*coeff_fft;pc_freq0=ifft(pc_fft);figure(5);subplot(2,1,1);plot(abs(pc_freq0(1:TotalNumber+number-1)));title('频域脉压结果的幅度,有前暂态点');subplot(2,1,2);plot(abs(pc_time0(1:TotalNumber+number-1)-pc_freq0(1:TotalNumber+number-1)),'r');title('时域和频域脉压的差别');pc_freq1=pc_freq0(number:TotalNumber+number-1);%去掉暂态点 number-1个,后填充点若干(8192-number+1-TotalNumber)% ================按照脉冲号、距离门号重排数据=================================%for i=1:PulseNumberpc(i,1:SampleNumber)=pc_freq1((i-1)*SampleNumber+1:i*SampleNumber);%每个PRT为一行,每行480个采样点的数据endfigure(6);plot(abs(pc(1,:)));title('频域脉压结果的幅度,没有暂态点');% ================MTI(动目标显示),对消静止目标和低速目标---可抑制杂波=================================%for i=1:PulseNumber-1 %滑动对消,少了一个脉冲mti(i,:)=pc(i+1,:)-pc(i,:);endfigure(7);mesh(abs(mti));title('MTI result');% ================MTD(动目标检测),区分不同速度的目标,有测速作用=================================%mtd=zeros(PulseNumber,SampleNumber);for i=1:SampleNumberbuff(1:PulseNumber)=pc(1:PulseNumber,i);buff_fft=fft(buff);mtd(1:PulseNumber,i)=buff_fft(1:PulseNumber);endfigure(8);mesh(abs(mtd));title('MTD result');%=======================================虚实矩阵转换========================================%coeff_fft_c=zeros(1,2*8192);for i=1:8192coeff_fft_c(2*i-1)=real(coeff_fft(i));coeff_fft_c(2*i)=imag(coeff_fft(i));endecho_c=zeros(1,2*TotalNumber);for i=1:TotalNumberecho_c(2*i-1)=real(Echo(i));echo_c(2*i)=imag(Echo(i));end%===========================以下是为DSP程序提供回波数据、脉压系数===============================%% fo=fopen('F:\my study\Visual_DSP_test\test_1\coeff_fft_c.dat','wt');%频域脉压系数% for i=1:2*8192% fprintf(fo,'%f,\r\n',coeff_fft_c(i));% end% fclose(fo);%% fo=fopen('F:\my study\Visual_DSP_test\test_1\echo_c.dat','wt');%16次回波的% for i=1:2*TotalNumber% fprintf(fo,'%f,\r\n',echo_c(i)); % end% fclose(fo);。
MATLAB通信仿真要点

MATLAB通信仿真要点MATLAB通信仿真是指使用MATLAB软件进行通信系统的建模、仿真和分析。
在通信领域,仿真是非常重要的工具,它可以帮助工程师们验证设计和算法,评估性能以及优化系统。
下面是进行MATLAB通信仿真时需要注意的关键要点。
1.选择合适的仿真模型:通信系统包括多个组件,例如调制、编码、传输信道、解调等。
在进行仿真之前,需要选择合适的模型来表示这些组件。
根据系统的需求,可以选择不同的模型,例如理想模型、接近实际系统的模型或者经验模型。
2.信号处理:在通信系统中,信号处理是一个核心环节。
MATLAB提供了丰富的信号处理工具箱,可以用于数字信号的分析和处理。
可以使用这些工具对通信信号进行滤波、修正、去噪等操作,以便获得更好的性能。
3. 比特错误率(BER)分析:通信系统的一个重要指标是比特错误率(Bit Error Rate,BER),即接收端误码率。
MATLAB提供了各种用于BER分析的工具,例如误码率曲线的绘制、误码率性能分析等。
可以使用这些工具来评估系统在不同条件下的性能,并进行优化。
4.信道建模:通信系统中的信道是一个关键因素,它会影响信号的传输和接收质量。
MATLAB提供了许多信道建模工具,可以用于模拟各种信道,如高斯信道、瑞利信道、多径衰落信道等。
通过对信道的建模,可以评估系统的性能,并进行通道估计和等化技术的研究。
5.参数配置和优化:通信系统中有许多参数需要配置和优化,如编码方式、调制方式、信道编码方式、解调方式等。
MATLAB提供了优化工具,可以帮助寻找最佳的参数配置,以实现最好的系统性能。
6.多用户仿真:在无线通信系统中,多用户交互会导致干扰。
MATLAB 提供了多用户仿真工具,可以对多个用户在同一信道中的交互进行建模和仿真,并评估系统的吞吐量、容量等性能。
7.分析和可视化:MATLAB具有强大的数据分析和可视化功能,可以帮助分析仿真结果。
通过使用MATLAB的数据分析工具,可以得到关键的性能指标,并比较不同方案之间的优劣。
合成孔径雷达点目标仿真MATLAB程序

合成孔径雷达点目标仿真MATLAB程序合成孔径雷达成像系统点目标仿真源程序:clccloseallc=3e8;%光速fc=1e9;%载波频率lambda=c/fc;%波长%成像区域xmin=0;xmax=50;yc=10000;y0=500;%sar基本参数v=100;%雷达平台速度h=0;%雷达平台高度r0=sqrt(yc^2+h^2);d=4;%天线孔径长度lsar=lambda*r0/d;%合成孔径长度tsar=lsar/v;%合成孔径时间ka=-2*v^2/lambda/r0;%线性调频率ba=abs(ka*tsar);prf=2*ba;%脉冲重复频率prt=1/prf;ds=prt;%脉冲重复周期nslow=ceil((xmax-xmin+lsar)/v/ds);%脉冲数nslow=2^nextpow2(nslow);%定量为2的指数sn=linspace((xmin-lsar/2)/v,(xmax+lsar/2)/v,nslow);%创建时间向量prt=(xmax-xmin+lsar)/v/nslow;%更新prf=1/prt;%更新脉冲重复频率fa=linspace(-0.5*prf,0.5*prf,nslow);tr=5e-6;%脉冲宽度br=30e6;%调频信号频宽kr=br/tr;%阳入频率fsr=2*br;%快时间域取样频率dt=1/fsr;%快时间域取样间隔rmin=sqrt((yc-y0)^2+h^2);rmax=sqrt((yc+y0)^2+h^2+(lsar/2)^2);nfast=ceil(2*(rmax-rmin)/c/dt+tr/dt);nfast=2^nextpow2(nfast);tm=linspace(2*rmin/c,2*rmax/c+tr,nfast);dt=(2*rmax/c+tr-2*rmin/c)/nfast;%更新fsr=1/dt;fr=linspace(-0.5*fsr,0.5*fsr,nfast);dy=c/2/br;%距离分辨率dx=d/2;%方位分辨率ntarget=3;%目标数目ptarget=[xmin,yc,1%目标边线xmin,yc+10*dy,1xmin+20*dx,yc+50*dy,1];k=ntarget;%目标数目n=nslow;%快时间取样数m=nfast;%慢时间取样数t=ptarget;%目标边线%合成孔径回波仿真srnm=zeros(n,m);fork=1:1:ksigma=t(k,3);dslow=sn*v-t(k,1);r=sqrt(dslow.^2+t(k,2)^2+h^2);tau=2*r/c;dfast=ones(n,1)*tm-tau'*ones(1,m);phase=pi*kr*dfast.^2-(4*pi/lambda)*(r'*ones(1,m));srnm=srnm+sigma*exp(j*phase).*(0end%距离放大tr=tm-2*rmin/c;refr=exp(j*pi*kr*tr.^2).*(0temp1=fft(srnm(k2,:));fsrnm=temp1.*conj(f_refr);sr(k2,:)=ifft(fsrnm);end%方位放大ta=sn-(xmin+xmax)/2/v;refa=exp(j*pi*ka*ta.^2).*(abs(ta)temp2=fft(sr(:,k3));f_sa=temp2.*conj(f_refa.' );sa(:,k3)=fftshift(ifft(f_sa));endrow=tm*c/2;col=sn*v;%绘图%脉冲雷达数据figure(1)subplot(211)imagesc(abs(srnm));title('sardata')subplot(212)imagesc(an gle(srnm))%灰度图figure(2)colormap(gray)imagesc(row,col,255-abs(sr));title('距离放大'),xlabel('距离向'),ylabel('方位向');figure(3)colormap(gray)imagesc(row,col,255-abs(sa));title('方位放大'),xlabel('距离向'),ylabel('方位向');%轮廓图figure(4)ga=abs(sa);a=max(max(ga));contour(row,col,ga,[0.707*a,a],'b');gridonx 1=sqrt(h^2+min(abs(ptarget(:,2))).^2)-5*dy;x2=sqrt(h^2+max(abs(ptarget(:,2))).^2)+5*dy;y1=min(ptarget(:,1))-5*dx;y2=max(ptarget(:,1))+5*dx;axis([x1,x2,y1,y2])%三维光学图figure(5)mesh(ga((400:600),(200:500)));axistightxlabel('range'),ylabel('azimut h');仿真结果图:图4.1点目标完整脉冲数据图4.2距离放大后光学图图4.3方位放大后光学图(图形目标光学灰度图)图4.4图形目标光学轮廓图。
基于MATLAB的雷达信号处理仿真

基于MATLAB的雷达信号处理仿真作者:殷俊丽丁康利郝鹏飞来源:《电子技术与软件工程》2017年第18期摘要在现代脉冲雷达系统中,相位编码信号以其较好的抗干扰性能,越来越被重视和使用。
MATLAB作为一种仿真工具,经常被用于雷达信号处理方案设计中。
本文用MATLAB对相位编码信号的信号处理过程进行仿真,对信号处理过程中各节点信号进行分析,为雷达系统的总体设计提供了参考依据。
【关键词】MATLAB 相位编码雷达信号处理仿真1前言相位编码信号因其灵活的编码方式、低截获概率的特点,在具有抗干扰性能的雷达系统中经常被使用。
在其信号处理过程中,因其对多普勒的敏感性,在脉冲压缩之前,要先用预测的多普勒值对回波信号进行补偿,计算量庞大,在前期设计中,一般借助于MATLAB强大的仿真平台对其进行直观的分析。
2仿真信号产生MATLAB提供了idinput函数,可根据需要设置参数产生不同相位编码序列,调用格式如下为:u=idinput(N,type,band,levels),其中N为码长,type为编码类型,band为频率成分,levels信号水平。
基于此函数,我们产生码长为255的二值伪随机信号(M序列码),对其进行fs=20MHz抽样,加入fd=20Hz的多普勒频率,并模拟加入具有高斯分布特性的空间热噪声,得到仿真回波信号如图1所示。
3多普勒补偿及脉冲压缩相位编码信号对多普勒敏感,降低了脉冲压缩(匹配滤波)的性能,对运动目标回波信号的检测常常由于这一缺点造成困难。
在信号处理中,通常的做法是根据预先推测的多普值对其进行补偿,消除多普勒频率对脉冲压缩的影响,再对压缩后的信号进行检测。
多普勒补偿的公式为:A=exp(-j27c*fdl*m/fs),其中,fdl为预测的多普勒频率,fs为抽样率,m=0,l,2……N-1为索引值,N为处理点数。
利用多普勒补偿公式对上述回波信号进行补偿的结果如图2所示。
可以看出,多普勒补偿消除了多普勒带来的信号调制。
简单雷达实信号仿真实验报告材料

《雷达原理》实验报告学院:专业:姓名:学号:成绩:评阅教员:时间:一、实验内容简介:利用Mathlab实现对几种常见的雷达信号的仿真。
画出这几种信号形式的时域和频域的波形图。
二、实验目的:通过仿真熟悉常用的雷达信号的时域和频谱形式,掌握MatLab中信号的产生和表示方法及信号频谱的计算和图形绘制。
进一步锻炼学员的编程能力,提高利用算法实现解决实际问题的能力。
三、实验原理:不同体制的雷达由于不同的任务采用了不同的信号形式,雷达常用的信号形式有连续波和脉冲波两种;连续波中又有按三角形或按正弦规律变化的调频连续波,脉冲波中有简单脉冲波、脉内调频脉冲波和脉间调频脉冲波;其中测高雷达和车载测距雷达多采用连续波的形式,常规雷达采用简单调频脉冲信号;动目标显示或测速多普勒雷达多采用高工作比的矩形调幅脉冲信号;一些新体制的高分辨率雷达多采用线性调频或相位编码等脉冲压缩信号。
对以上信号形式经傅立叶变换可以得到其频谱。
四、实验环境:实验地点:自习室硬件环境:acer aspirs4738GIntel(R) Core(TM) i5 CPU M480 @2.67GHz2.00GB RAM软件环境:Windos 7 旗舰版 32位操作系统MATLAB Version 7.10.0.499 (R2011a) 32-bit(win32)五、实验内容:画出连续波、单个矩形脉冲波、相参脉冲波、线性调频脉冲波、相位编码脉冲波的时域波形,计算并绘制以上信号的频谱。
信号采用的参数如下:1、连续波连续波是最基本的波形,其表达式为:)2cos()(00ϕπ+=t f A t s i参数为:载波频率f0为20MHz ,采样频率为4倍f0,采样长度为1000.Mathlab 代码:仿真效果如下图所示:2、单个矩形脉冲单个矩形脉冲的表达式为 :参数为:载波频率f0为20MHz ,采样频率为4倍f0,脉宽为1us ,脉冲周期为20us Mathlab 代码为:00()cos(2)i t s t Arect f t πϕτ⎛⎫=+ ⎪⎝⎭1,2rect(t )=0,2t t τττ⎧≤⎪⎨>⎪⎩仿真结果如图(a)单个矩形脉冲信号的合成过程说明(b)单个矩形脉冲信号的时域频域波形图3、相参脉冲参数为:载波频率f0为20MHz,采样频率为4倍f0,脉宽为1us,脉冲周期为20us。
适合雷达初学者:线性调频脉冲雷达仿真实验教程(含MATLAB代码和教程)

适合雷达初学者:线性调频脉冲雷达仿真实验教程(含MATLAB代码和教程)今天给大家分享的是一个脉冲雷达MATLAB仿真小实验,这个实验是调皮哥刚进研究生时学习的入门教程,比较简单,特别适合于初学者。
同时这个也是研究生一年级里面的实验课程,不过现在这个课程已经更新了,更新之后的内容就是调皮哥之前说的采用TI毫米波雷达那个,是由调皮哥亲自帮助导师设计的,现在那个课程已经上了两年多了,今年又更新了一些内容。
虽然这个脉冲雷达MATLAB仿真小实验经过了十多年的时间现在已经退出了历史的舞台,但是其内容依旧适合大家学习。
就在之前,有读者向我咨询有没有相关的内容,于是我就准备今天给大家分享,,希望早一些帮助到大家,文末提供了下载方式。
这个小实验内容不多,两个程序,一份报告,报告是调皮哥自己的课程作业。
MATLAB程序主要完成16个调频脉冲信号的产生、脉冲压缩、MTI、MTD、CFAR等信号处理算法,共计200多行。
报告的内容就是对实验内容的解析和分析,大家可以参照理解和学习,因此我就不再对代码进行一一解释了,代码中也有一些注释,相信大家花点功夫应该能够看得懂的。
具体内容大家可以详细见教程,这里就不再进行过多的论述。
后续还有几个小问题,可以分享给大家:(1)线性调频信号的特点。
为什么选用线性调频信号?答:线性调频信号的频率随时间呈线性变化,选用线性调频信号可以增大发射信号的带宽,提高平均发射功率,同时又有较高的距离分辨率。
(2)为什么要做脉冲压缩答:为了获得大的作用距离和具有很高的距离分辨率。
(3)时域脉压和频域脉压分别怎么做?答:通过对发射信号进行序列反转、取共轭操作即可得到脉冲压缩系数。
时域脉冲压缩处理是对回波信号与脉冲压缩系数进行卷积。
频域是先对回波信号和脉压系数做FFT,点乘之后在做IFFT(逆快速傅里叶变换)。
(4)PC(脉冲压缩)结束后三个目标高度为什么不一样,呈什么变化,为什么?答:第一个脉冲有部分处于闭锁期,因此幅度较小。
基于MATLAB的GPS信号的仿真研究

基于MATLAB的GPS信号的仿真研究一、本文概述随着全球定位系统(GPS)技术的广泛应用,其在导航、定位、授时等领域的重要性日益凸显。
为了更好地理解GPS信号的特性,提高GPS接收机的设计水平和性能,对GPS信号进行仿真研究显得尤为重要。
本文旨在探讨基于MATLAB的GPS信号仿真方法,分析GPS信号的特点,以及如何利用MATLAB这一强大的数值计算环境和图形化编程工具,对GPS信号进行高效、精确的仿真。
文章首先介绍了GPS系统的发展历程、基本原理和信号特性,为后续的信号仿真提供了理论基础。
随后,详细阐述了GPS信号仿真的一般流程,包括信号生成、传播模型、噪声添加等关键环节。
在此基础上,重点介绍了如何利用MATLAB编写GPS信号仿真程序,包括信号生成、传播模型建立、噪声模拟等方面的具体实现方法。
文章还通过实际案例,展示了基于MATLAB的GPS信号仿真在接收机设计、性能评估等方面的应用。
通过仿真实验,可以深入了解GPS信号在不同环境下的传播特性,为接收机算法优化和性能提升提供有力支持。
本文的研究不仅有助于加深对GPS信号特性和仿真方法的理解,也为GPS接收机的研究和开发提供了一种有效的技术手段。
通过MATLAB的仿真研究,可以更加直观地揭示GPS信号的本质规律,为实际应用提供有力指导。
二、GPS信号原理及特性全球定位系统(GPS)是一种基于卫星的无线电导航系统,它利用一组在地球轨道上运行的卫星来提供全球范围内的定位和时间服务。
每个GPS卫星都不断地向地球表面发射射频信号,这些信号被地面上的接收器接收并处理,从而确定接收器的三维位置和速度,以及精确的时间信息。
GPS卫星发射的信号是L波段的射频信号,分为两个频段:L1(142 MHz)和L2(160 MHz)。
每个频段都包含两种类型的信号:C/A码(粗捕获码)和P码(精密码)。
C/A码是对公众开放的,用于民用和商业应用,而P码则用于军事和特定的高精度应用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
雷达系统分析大作作 者: 陈雪娣 学号:04104207271. 最大不模糊距离: ,max 1252u rC R km f == 距离分辨率: 1502mcR m B ∆== 2. 天线有效面积: 220.07164e GA m λπ==半功率波束宽度:3 6.4o dbθ==3. 模糊函数的一般表示式为()()()22*2;⎰∞∞-+=dt e t s t s f d f j d πττχ 对于线性调频信号 ()21Re j t p t s t ct e T πμ⎛⎫= ⎪ ⎪⎝⎭则有:()()221;Re Re p j t T j t d ppp t t f ct ct e e dt T T T πμπμτχτ∞+-∞⎛⎫⎛⎫+=⎪ ⎪ ⎪ ⎪⎝⎭⎝⎭⎰ ()()()sin 1;11d p p d p d p p f T T f T f T T τπμττχττπμτ⎛⎫⎛⎫+- ⎪⎪ ⎪ ⎪⎛⎫⎝⎭⎝⎭=- ⎪ ⎪⎛⎫⎝⎭+-⎪ ⎪⎝⎭分别令0,0==d f τ可得()()220;,;0τχχd f()()sin 0;d p d d pf T f f T πχπ=()sin 1;011p p p p p T T T T T τπμττχττπμτ⎛⎫⎛⎫-⎪ ⎪ ⎪ ⎪⎛⎫⎝⎭⎝⎭=- ⎪ ⎪⎛⎫⎝⎭- ⎪ ⎪⎝⎭程序代码见附录1的T_3.m, 仿真结果如下:4. 程序代码见附录1的T_4.m, 仿真结果如下:通过比较得知,加窗后的主副瓣比变大,副瓣降低到40db 以下,但主瓣的宽度却增加了,约为未加窗时的1.5倍,主瓣也有一定的损失。
5.由雷达方程221340(4)tPG Te SNR KT LFR λσπ=计算可得 1196.5540log SNR R =- db作图输出结果如下,程序代码见附录1的T_5.m在R=70km 时,计算得单个脉冲的SNR 1=2.7497 db,要达到要求的检测性能则需要12.5dB 的最小检测输入信噪比,而M 个相参脉冲积累可以将信噪比提高M 倍, 故10)1(SNR D M ==9.4413因此要达到要求就需要10个以上的相参脉冲进行积累。
可求得可积累脉冲数为: 3256dbr aN f θ==Ω其中,a Ω为天线的搜索速度等于30o /s.r f 是重复频率为1200hz.故满足要求.6. 设t 时刻弹舰径向与目标航向的夹角为a (t),目标偏离弹轴方向的夹角为t β(),在t=0时,31o o αα==(), 1o ββ==(0).由几何关系知, sin cos o o OM R MP R αα==经t 秒后,''cos '''sin 's a a M P MP V t V t O M OM V t αα=--=-''()''O M t arctan M P α⎛⎫=⎪⎝⎭()()'t t βαα=-sin '''()sin ()sin ()a OM V t O M R t t t ααα-==cos ()cos ()d a s V V t V t βα=+又因为cos ()cos(()')t t βαα=-cos ()cos 'sin ()sin '1cos ()sin ()22t t t t αααααα=+=+故1cos ()sin ()cos ()22d a s V V t t V t ααα⎛⎫=++⎪⎝⎭()d f t 31cos ()sin ()22d a s V V V t t αα⎛⎫=++ ⎪⎝⎭2231cos ()sin ()22dd a s V f V V t t ααλλ⎛⎫⎛⎫==++ ⎪ ⎪ ⎪⎝⎭⎝⎭利用以上的关系式即可计算出第i 个重复周期弹目间的距离()i R t 和回波信号的多普勒频率()d f t .仿真程序代码见附录1的T_6.m.实验结果如下:由仿真结果可知,()d f t 的变化不大,这表明相对速度的变化不大,同时可求得688/Vd m s ≈.7. (1)相干积累:由于相对速度的变化不大,所以在仿真时取定值688/Vd m s =。
仿真程序代码见附录1的T_7_1.m.实验结果如下:相干积累前后的信噪比情况如下图所示:由仿真结果知,积累前匹配滤波器输出的信噪比为约12dB 。
已知M 个脉冲相参积累可以将信噪比提高M 倍,所以,64个脉冲相参积累后的信噪比将提高64倍(18db )。
相干积累后输出的信噪比约30db ,与预期效果相符。
(2)非相干积累:双极点滤波器的时域框图如下:由此可的它的频域响应:(22exp 2/1d k ξωτξ=--其中 (212exp /1cos()d d k ξωτξωτ=-- (22exp 2/1d k ξωτξ=--式中: 0.63ξ=, 2.2d N ωτ=,N 是半功率波束宽度。
仿真程序代码见附录1的T_7_2.m.实验结果如下:非相干积累前后的信噪比情况如下图所示:由仿真结果知,积累前匹配滤波器的信噪比为约12dB。
非相干积累后输出的信噪比约20db。
将非相干的结果与相干积累的效果进行比较,可知,相干积累的效果明显优于非相干积累。
附录 1 程序代码第3题:%%%%%%%% T_3.m %%%%clear allclcclftaup=1; %脉冲宽度 100usb=10; %带宽up_down=-1; %up_down=-1正斜率, up_down=1负斜率x=lfm_ambg(taup,b,up_down); %计算模糊函数taux=-1.1*taup:.01:1.1*taup;fdy=-b:.01:b;figure(1)mesh(100*taux,fdy./10,x) %画模糊函数xlabel('Delay - \mus')ylabel('Doppler - MHz')zlabel('| \chi ( \tau,fd) |')title('模糊函数')figure(2)contour(100.*taux,fdy./10,x) %画等高线xlabel('Delay - \mus')ylabel('Doppler - MHz')title('模糊函数等高线')grid onN_fd_0=(length(fdy)+1)/2; % fd=0 的位置x_tau=x(N_fd_0,:); % 时间模糊函数figure(3)plot(100*taux,x_tau)axis([-110 110 0 1])xlabel('Delay - \mus')ylabel('| \chi ( \tau,0) |')title(' 时间模糊函数')grid onN_tau_0=(length(taux)+1)/2; % tau=0 的位置x_fd=x(:,N_tau_0); % 速度模糊函数figure(4)plot(fdy./10,x_fd)xlabel('Doppler - MHz')ylabel('| \chi ( 0,fd) |')title(' 速度模糊函数')grid onx_db=20*log10(x+eps);[I,J]=find(abs(x_db+6)<0.09); %取6db点的位置I=(I-b/.01)/(1/.01); %Doppler维坐标变换J=(J-1.1*taup/.01)/(1/.01); %时间维坐标变换figure(5) %6db 的等高线plot(J*100,I/10,'.')axis([-110 110 -1 1])xlabel('Delay - \mus')ylabel('Doppler - MHz')title('模糊函数 6db 的等高线')grid on%- - - - 模糊函数 - - -function x=lfm_ambg(taup,b,up_down)% taup 脉冲宽度;% b 带宽;%up_down=-1正斜率, up_down=1负斜率eps=0.0000001;i=0;mu=up_down*b/2./taup;for tau=-1.1*taup:.01:1.1*taupi=i+1;j=0;for fd=-b:.01:bj=j+1;val1=1-abs(tau)/taup;val2=pi*taup*(1-abs(tau)/taup);val3=(fd+mu*tau);val=val2*val3+eps;x(j,i)=abs(val1*sin(val)/val);endend%%%%%%%%%%%%%%%%%%第4题:%T_4.m%%%%%%% 利用频域处理方法进行脉冲压缩 %%%%%%% clear allclcclfeps = 1e-10;Te=100e-6; %脉冲带宽Bm=1e6; %调频mu=Bm/Te; %调频斜率Ts=1/(2*Bm); %采样周期Ns=fix(Te/Ts); %采样点数Nf=1024; % fft点数t=0:Ts:Te-Ts;y=exp(j*pi*mu*t.^2); %脉冲压缩前的线形调频信号yfft = fft(y,Nf) ;h=zeros(1,Ns);for i=1:Nsh(i)=conj(y(Ns-i+1));endhfft= fft(h,Nf); % 匹配滤波器的频域响应ycomp =abs(ifft(yfft .*hfft)); %脉冲压缩maxval = max (ycomp);ycomp = eps + ycomp ./ maxval; % 利用最大值归一化ycomp_db=20*log10(ycomp); %取对数%%%%%%%%%%%%%% 加窗处理 %%%%%%%win = hamming(Ns)';h_w=h.*win; % 加窗hfft_w=fft(h_w,Nf); % 加窗的匹配滤波器的频域响应ycomp_w = abs(ifft(yfft .*hfft_w)); %脉冲压缩maxval1 = max(ycomp_w);val=ycomp_w ;ycomp_w = eps + ycomp_w ./ maxval; % 利用ycomp的最大值归一化ycomp_w1 = eps + val./ maxval1; % 利用ycomp_w的最大值归一化ycomp_w_db=20*log10(ycomp_w); %取对数ycomp_w1_db=20*log10(ycomp_w1); %取对数%%%%%%%%%%%%%%%%tt =0:Ts:2*Te-Ts;figure(1)plot (tt,ycomp_db(1:2*Ns),'g')axis([.2*Te 1.8*Te -60 0] )xlabel ('t - seconds ');ylabel(' db')title('没有加窗的脉冲压缩输出')grid onfigure(2)plot (tt,ycomp_w1_db(1:2*Ns),'r')axis([.2*Te 1.8*Te -60 0] )xlabel ('t - seconds ');ylabel(' db')title('加窗的脉冲压缩输出')grid onfigure(3)plot (tt,ycomp_db(1:2*Ns),'g',tt,ycomp_w_db(1:2*Ns),'r') axis([.7*Te 1.3*Te -60 0] )xlabel ('t - seconds ');ylabel(' db')legend('未加窗','加窗');title('脉冲压缩输出对比')grid on%%%%%%%%%第5题:% T_5.m%%%%%%%%%SNR与距离的关系 %%%%%%clear allclceps=1e-10;c = 3.0e+8; % speed of lightlambda =0.03; % 波长pt=20; %峰值功率lambda=0.03; %波长tao=100e-6; %发射脉冲宽度G_db=30; %天线增益 in dbsigma=1000; %RCSk=1.38e-23; % Boltzman's constantTo=290; %标准室温F_db=2; % 噪声系数 in dbL_db=5; % 系统损失 in dbR=70e3:-100:0; %距离val=10*log10((pt*tao*lambda^2*sigma)/((4*pi)^3*k*To))+ 2*G_db-F_db-L_db;SNR=val-40*log10(R);figure(1)plot(R./1e3,SNR)title('SNR与距离的关系')xlabel('距离 - km')ylabel('SNR - db')grid onSNR1=val-40*log10(70e3)%计算R=70km时的SNR %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%第6题:% T_6.mclear allclclembda=0.03; %波长fr=1200; %重复频率tra=180/pi; % 度到弧度的转化量alpha=31/tra; % t=0时弹舰径向与目标航向的夹角alpha_p=30/tra;% 导弹运动方向与目标航向的夹角Ro=70e3; % t=0时的弹舰距离Vs=10; % 舰船速度Va=680; % 导弹速度OM=Ro*sin(alpha); % t=0时弹舰垂直距离MP=Ro*cos(alpha); % t=0时弹舰垂直距离%%%%%%%%%%%%%%t=0:1/fr:10;OM_t=OM-0.5*Va.*t; % t时刻弹舰垂直距离MP_t=MP-Vs.*t-sqrt(3)*Va.*t/2;% t时刻弹舰垂直距离alpha_t=atan(OM_t./MP_t); %t时刻弹舰径向与目标航向的夹角R_t=OM_t./sin(alpha_t); %t时刻弹舰距离% t时刻弹舰径向速度vd_t=(sqrt(3)/2*Va+Vs).*cos(alpha_t)+0.5*Va.*sin(alpha_t);fd_t=2*vd_t/lembda; %t时刻多普勒频移%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%figure(1)plot(t,R_t)title ('t时刻弹舰距离')xlabel('时间 - s')ylabel('弹舰距离 - m')figure(2)plot(t,fd_t)title('t时刻多普勒频移')xlabel('时间 - s')ylabel('多普勒频移 - hz')%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 第7题:%T_7_1.m% 相干积累clear allclcclfc=3e8; % speed of lightTe=100e-6; % 发射脉冲宽度Be=1e6; %带宽mu=Be/Te; %调频斜率Ts=1/(2*Be); %采样频率Ro=70e3; % 起始距离fo=c/0.03; % 中心频率Vr=688; %径向速度t=0:Ts:Te-Ts;W=exp(j*pi*mu*t.^2);Wf=fft(W,1024); %%%%%%%%%%%%%%%%%%%%%%%nnn=fix((Ro-30e3)/75);%采样的起始位置,从30km开始采样R=0:75:15e3-75; %在30km和45km之间采样,采样间隔75m for i=1:200for k=1 :64Ri(k,i)=R(i)-Vr*Ts*(k-1);endendtaoi=2*Ri/c;echo=10^0.225*0.707*(randn(64,1024)+j*randn(64,1024));j=sqrt(-1);for i=1:64 %回波信号echo(i,nnn:nnn+199)=echo(i,nnn:nnn+199)+...exp(-j*2*pi*fo*taoi(i,:)+j*pi*mu*taoi(i,:).^2); endfor i=1:64 %脉冲压缩sp2(i,:)=ifft(fft(echo(i,:),1024).*conj(Wf),1024);endfor k=1:1024 % 相干积累sct(:,k)=abs(fftshift(fft(sp2(:,k),256)));endsct=sct./max(max(sct));%归一化sp=sp2./max(max(sp2));%归一化%积累前后信噪比输出figure(1)plot(20*log10(abs(sp')))ylabel('-db')title('相干积累前')axis([1 1024 -30 0])figure(2)plot(20*log10(sct'))ylabel(' - db')title('相干积累输出')axis([1 1024 -30 0])%%%%%%%%%积累结果输出r=((1:1024)*75+30e3)./1e3;dp=(-128:127)*(Be/128)/1e3;figure(1)mesh(r,dp,sct)xlabel('距离 km')ylabel('Doppler - kHz')title('相干积累输出结果')figure(2)contour(r,dp,sct)axis([30 100 -200 200])xlabel('距离 km')ylabel('Doppler - kHz')title('R-fd 等高线')grid ondp=(-32:31)*(Be/32)/1e3;figure(3)mesh(r,dp,abs(echo)/max(max(abs(echo))))xlabel('距离 km')ylabel('Doppler - kHz')title('相干积累前的结果')% T_7_2.m% 非相干积累clcclear allc=3e8; % speed of lightTe=100e-6; % 发射脉冲宽度Be=1e6; %带宽mu=Be/Te; %调频斜率Ts=1/(2*Be); %采样频率Ro=70e3; % 起始距离fo=c/0.03; % 中心频率Vr=688; %径向速度fr=1200; %重复频率t=0:Ts:Te-Ts;W=exp(j*pi*mu*t.^2);Wf=fft(W,1024);%%%------- 双极点滤波器 -----%%%%%%sheta_3_db=6.4; %半功率波束宽度v=30; % 天线的搜索速度N=sheta_3_db*fr/v;wd_tao=2.2/N;xi=0.63;k1=2*exp(-xi*wd_tao/sqrt(1-xi^2))*cos(wd_tao); k2=exp(-2*xi*wd_tao/sqrt(1-xi^2));NN=64;w=-pi:pi/NN:pi-pi/NN;j=sqrt(-1);H=exp(-j.*w)./(1-k1*exp(-j*w)+k2*exp(-2*j.*w)); h=ifft(H,64);%%- - - - 信号处理 - - - %nnn=fix((Ro-30e3)/75);%采样的起始位置,从30km开始采样R=0:75:15e3-75; %在30km和45km之间采样,采样间隔75m for i=1:200for k=1 :64Ri(k,i)=R(i)+Vr*Ts*(k-1);endendtaoi=2*Ri/c;echo=10^0.275*0.707*randn(64,1024)+j*randn(64,1024);j=sqrt(-1);for i=1:64 %回波信号,加随机相位模拟非相干信号echo(i,nnn:nnn+199)=echo(i,nnn:nnn+199)...+exp(-j*2*pi*fo*taoi(i,:)+j*pi*mu*taoi(i,:).^2 ... +j*2*pi*rand*ones(1,200));endfor i=1:64 %脉冲压缩sp2(i,:)=ifft(fft(echo(i,:),1024).*conj(Wf),1024); endfor i=1:1024 %用双极点滤波器进行非相干积累isct(:,i)=conv((sp2(:,i)),h)';endfor k=1:1024sct(:,k)=abs(fftshift(fft(isct(:,k),256)));endsct=sct./max(max(sct)); %归一化sp2=sp2./max(max(abs(sp2))); %归一化%积累前后信噪比输出figure(1)plot(20*log10(abs(sp2')))ylabel('-db')title('非相干积累前')axis([1 1024 -30 0])figure(2)plot(20*log10(sct'))ylabel(' - db')title('非相干积累输出')axis([1 1024 -30 0])%%%%%%%%%积累结果输出r=((1:1024)*75+30e3)./1e3;dp=(-128:127)*(Be/128)./1e3;figure(3)mesh(r,dp,sct)xlabel('距离 km')ylabel('Doppler - kHz')title('非相干积累输出结果')figure(4)contour(r,dp,sct)axis([30 100 -200 200])xlabel('距离 km')ylabel('Doppler - kHz')title('R-fd 等高线')grid ondp=(-32:31)*(Be/32)/1e3;figure(5)mesh(r,dp,abs(echo)/max(max(abs(echo))))xlabel('距离 km')ylabel('Doppler - kHz')title('非相干积累前的结果')%%%%%————————%%%%%%二翻译11.2比幅单脉冲比幅单脉冲跟踪类似于对于圆形区域而言需要四个斜的波束来测量目标的角度位置。