我是靠谱客的博主 朴实服饰,最近开发中收集的这篇文章主要介绍宽带非相干信号DOA估计仿真,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

宽带非相干信号DOA估计仿真
产生两个相同的宽带LFM信号,采用非相干信号子空间法进行DOA估计。

clear
 
Bsignal = 20e6;                       %调频带宽
Tsignal = 10e-6;                      %脉冲宽度
Ksignal = Bsignal/Tsignal;                        %调频斜率
Fssignal = 4*Bsignal;                       %采样频率
F0signal = 1e6;                       %发射信号时的瞬时频率,也是信号有效区间发射信号的中心频率
Tssignal = 1/Fssignal;                      %采样周期
Nsignal = ceil(Tsignal/Tssignal);                 %采样点数
tsignal = linspace(-Tsignal/2,Tsignal/2,Nsignal);

N=8;                                     %接收阵元个数
L=Nsignal;                                   %快拍数目
K=2;                                     %
c=3e8;                                   %传播速度
lamda=c/(F0signal+Bsignal/2);                               %波长
d=lamda/2;                            %发射阵元间距取半个波长 
theat0=[-10 20];                          %目标与阵列的夹角


%.................................................................................
%产生线性调频信号
LFM1 = ones(1,L).*exp(j *(2 * pi * F0signal * tsignal + pi * Ksignal * tsignal.^2));     %线性调频信号复数表达式
LFM2 = ones(1,L).*exp(j *(2 * pi * F0signal * tsignal + pi * Ksignal * tsignal.^2));     %线性调频信号复数表达式
Q=length(theat0);

LFM_s(1,:)=LFM1;
LFM_s(2,:)=LFM2;

for lamdaindex=1:10
    lfm_dived=LFM_s(1:2,1+40*(lamdaindex-1):40*lamdaindex);
    LFMfft(1,:)=fftshift(fft(lfm_dived(1,:)));
    [maxx maxxindex]=max(LFMfft(1,:));
    LFMfft(2,:)=fftshift(fft(lfm_dived(2,:)));
    lamda=c/((maxxindex-20)*1e6);

    for q=1:Q
        A_shiliang(:,q)=exp(-1j*2*pi*d/lamda*sin(theat0(q)*pi/180)*[0:N-1]');%接收阵列引导矢量
    end
        rsignaldoa=LFMfft;

    rsignal=A_shiliang*rsignaldoa;
    % 计算协方差矩阵
    Rxx=rsignal*rsignal'/40;
    % 特征值分解
    [EV,D]=eig(Rxx);                   %特征值分解
    EVA=diag(D)';                      %将特征值矩阵对角线提取并转为一行
    [EVA,I]=sort(EVA);                 %将特征值排序 从小到大
    EV=fliplr(EV(:,I));                % 对应特征矢量排序
    % 遍历每个角度,计算空间谱
    i=1;
    for iang = -90:0.1:90;
        phim=pi/180*iang;
        AMusic=exp(-1j*2*pi/lamda*d*sin(phim)*[0:N-1]).';    
        Pbf(i)=AMusic'*Rxx*AMusic;
        En=EV(:,K+1:N);                   % 取矩阵的第M+1到N列组成噪声子空间
        Pmusicj(i)=1/(AMusic'*En*En'*AMusic);
        i=i+1;
    end
    Pmusicj=abs(Pmusicj);
    Pmmaxj=max(Pmusicj);
    Pmusic(lamdaindex,:)=Pmusicj/Pmmaxj;            % 归一化处理
end

iang = -90:0.1:90;
figure
plot(iang,mean(Pmusic,1))
hold on




最后

以上就是朴实服饰为你收集整理的宽带非相干信号DOA估计仿真的全部内容,希望文章能够帮你解决宽带非相干信号DOA估计仿真所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(56)

评论列表共有 0 条评论

立即
投稿
返回
顶部