阵列信号分析及matlab实践
阵列信号分析及matlab实践
  • ●图片
  • 视频●
产品描述

阵列信号处理MATLAB仿真

为了实现代码可读性高,调用方便,重写性强的特性,建立可重复应用于不同算法的信号生成模型如下:

clear all;close all;clc

%%%%%%%%%%%%参数设置%%%%%%%%%%%%

s.M = 16;                             %阵元数

s.lamda = 1;                           %设置波长

s.d = 1/2*s.lamda;                      %取1/2波长为阵元距

s.SNR = 10;                           %信噪比

s.INR = 10;                            %干燥比

s.Noise = 1;                            %高斯噪声方差

s.SigDOA = [30 45];                     %信号

s.IntDOA = [0 50 70];                    %干扰

s.Theta = -90:1:90;                       %扫描范围

s.L = 200;                              %快拍数/采样数   

s.fc = 100;                              %信号频率 

s.fs=10000;                             %采样频率

%%%%%%%%%%生成信号%%%%%%%%%%%%

s.SigNum = length(s.SigDOA);                               %信号数

s.IntNum = length(s.IntDOA);                                %干扰数

s.ds = exp(1j*2*pi*(0:s.SigNum-1)'*s.fc/s.fs*(0:s.L-1));     %信号´

s.di = randn(s.IntNum,s.L)+1j*randn(s.IntNum,s.L);               %干扰

s.As = exp(-1j*2*pi*s.d/s.lamda*(0:s.M-1)'*sin(s.SigDOA*pi/180));  %信号方向矢量

s.Ai = exp(-1j*2*pi*s.d/s.lamda*(0:s.M-1)'*sin(s.IntDOA*pi/180));   %干扰方向矢量

s.Xs = sqrt(10^(s.SNR/10))*s.As*s.ds;                            %构造信号

s.Xi = sqrt(10^(s.INR/10))*s.Ai*s.di;                             %构造干扰

s.Nos = (randn(s.M,s.L)+1j*randn(s.M,s.L))/sqrt(2);                %构造噪声

s.Y = s.Xs+s.Xi+s.Nos;                                       %合成阵列接收信号

在构造信号时,考虑到工程应用中采样频率、信号频率和快拍的问题,将三者融合到所构造的信号中,方便工程应用。不同算法应用到的信号模型不同,例如,常规波束形成是对不含干扰的信号进行波束形成,构造接收数据就是构造信号加上噪声;最小均方差要求协方差中不含期望信号,构造接收数据就是构造干扰加上噪声。所以此处将信号、干扰和噪声分开构造,方便调用组合。

Downloads

阵列信号处理MATLAB仿真

为了实现代码可读性高,调用方便,重写性强的特性,建立可重复应用于不同算法的信号生成模型如下:

clear all;close all;clc

%%%%%%%%%%%%参数设置%%%%%%%%%%%%

s.M = 16;                             %阵元数

s.lamda = 1;                           %设置波长

s.d = 1/2*s.lamda;                      %取1/2波长为阵元距

s.SNR = 10;                           %信噪比

s.INR = 10;                            %干燥比

s.Noise = 1;                            %高斯噪声方差

s.SigDOA = [30 45];                     %信号

s.IntDOA = [0 50 70];                    %干扰

s.Theta = -90:1:90;                       %扫描范围

s.L = 200;                              %快拍数/采样数   

s.fc = 100;                              %信号频率 

s.fs=10000;                             %采样频率

%%%%%%%%%%生成信号%%%%%%%%%%%%

s.SigNum = length(s.SigDOA);                               %信号数

s.IntNum = length(s.IntDOA);                                %干扰数

s.ds = exp(1j*2*pi*(0:s.SigNum-1)'*s.fc/s.fs*(0:s.L-1));     %信号´

s.di = randn(s.IntNum,s.L)+1j*randn(s.IntNum,s.L);               %干扰

s.As = exp(-1j*2*pi*s.d/s.lamda*(0:s.M-1)'*sin(s.SigDOA*pi/180));  %信号方向矢量

s.Ai = exp(-1j*2*pi*s.d/s.lamda*(0:s.M-1)'*sin(s.IntDOA*pi/180));   %干扰方向矢量

s.Xs = sqrt(10^(s.SNR/10))*s.As*s.ds;                            %构造信号

s.Xi = sqrt(10^(s.INR/10))*s.Ai*s.di;                             %构造干扰

s.Nos = (randn(s.M,s.L)+1j*randn(s.M,s.L))/sqrt(2);                %构造噪声

s.Y = s.Xs+s.Xi+s.Nos;                                       %合成阵列接收信号

在构造信号时,考虑到工程应用中采样频率、信号频率和快拍的问题,将三者融合到所构造的信号中,方便工程应用。不同算法应用到的信号模型不同,例如,常规波束形成是对不含干扰的信号进行波束形成,构造接收数据就是构造信号加上噪声;最小均方差要求协方差中不含期望信号,构造接收数据就是构造干扰加上噪声。所以此处将信号、干扰和噪声分开构造,方便调用组合。