统计信号处理-接收机自适应波束成形仿真算法-matlab仿真-附代码

  1. 自适应波束成形仿真

  1. 题目与设计思路

  1. 题目

设计一个自适应波束成型算法,使波束始终捕获N个信号最强方向上的来波,并辨明这些方向。

  1. 设计思路

本题使用MUSIC算法和基于极大似然准则的自适应波束成形器分别实现信号测向和波束成形的任务。

1.首先,给出信号源的方向和强度,以及噪声功率,模拟多普勒效应,接收信号,求取信号矩阵,并进行SVD分解得到信号子空间和噪声子空间

2.然后使用MUSIC算法计算谱估计,找出最大值,即主信号方向;

3.接着,使用基于极大似然准则的自适应波束形成器捕获主信号方向的信号,

4.最后,将捕获后的信号和使用MUSIC算法计算出来的谱估计进行绘制,得到波束成形前后的效果示意图。

  1. MUSIC算法与波束成形原理

  1. MUSIC算法

MUSIC算法是一种多源定位方法,是一种基于空间谱估计的算法。它可以有效地从拥有噪声和干扰信号的复杂环境中提取出目标信号来源的信息。基于MUSIC算法的定位思想,可以将接收信号矩阵y分为两部分,即信号s子空间和噪声n子空间,也就是分解为y=s+n。此时,信号矩阵Y可以分解为:

其中UV分别为输入信号矩阵Y的左右奇异值分解,S是奇异值矩阵,EsEn分别为信号子空间和噪声子空间的投影矩阵,SsSn为信号子空间和噪声子空间的矩阵,VsVn

为信号子空间和噪声子空间的右奇异值分解。MUSIC算法的基本思想是:噪声子空间反演出一组基于噪声子空间的正交函数,并将其用于求解信从号源方向。即将En秩为(Ne-Ns) 的噪声子空间En作为搜索空间,为每个搜索角度θi构造一个搜索向量a(θi) 其为En的一个正交基,MUSIC算法的波束形成量定义为:

由此可以求出谱估计值PMUSIC(θi) ,其中最大值为所求信号源方向。

  1. 基于极大似然准则的自适应波束成形算法

基于极大似然准则的自适应波束成形算法,是一种用于捕获与传输信号方向有关的最佳波束形状的方法。它的基本思想是,给定一组信号源的位置,根据最大似然思想计算一组最佳的波束形状参数,以最大程度地捕获与信号源方向相关的信号,同时最小化与信号源方向无关的信号。自适应波束成形器的估计采用最大似然准则,其估计量为:

其中,Y为接收信号矩阵,w为待估计的波束形状参数。最大似然准则的优化估计问题,可以利用梯度下降算法进行求解,其优化迭代公式为:

其中,μ为步长d为期望信号。

  1. 仿真结果分析

波束测向是指在多普勒雷达测量过程中,使用技术手段通过探测到的多普勒信号,确定目标的方位角的一种技术。波束成形指的是对多普勒雷达发射接收器组成的天线阵列上每个阵元的信号进行加权和,使发射接收器阵列具有较强发射和接收方向性的技术。

在本次仿真中,首先通过设定信号源强度和方向,模拟多普勒雷达系统中信号源发射的信号,然后将信号加入高斯白噪声,模拟实际接收信号,通过求取信号矩阵和SVD分解的方法,确定信号子空间和噪声子空间,然后使用MUSIC算法,对信号进行谱估计,从而找出最大信号谱值对应的角度,即为主信号来向,最后通过基于极大似然准则的自适应波束成形器捕获主信号main_theta方向的信号,从而实现波束成形。

  1. 使用MUSIC算法进行波束测向

这里设置了4个方向,分别为25°,-25°,45°,-45°,表示从4个方向发射不同信号;设置了4个方向的信号源的强度,其中25°方向的信号源强度为1,表示25°方向的信号最强,为主信号,其余方向的信号强度分别为0.6和0.4,表示其他方向的信号为干扰;阵元数目20,用20个阵元用于接收信号;设置的噪声功率为0.1,表示加入的高斯白噪声作为噪声的功率;信号采样次数为 8。

由图可知,MUSIC方法能够识别出信号强度最强的方向,为24.2度,与实际的25度差距小于一度,方向测量较为精准。

下图展示了使用基于极大似然准则自适应波束成形器对于信号获取情况的示意图,由图可知,该方法能够使雷达接收到的信号更强,并能够突出和接收到目标雷达的信号,并且能够滤除干扰。如图所示,原来的信号接收到的强度为-10.84dB,而经过使用基于极大似然准则自适应波束成形器对于信号获取后,目标信号强度增强到了25.04dB,,因此该方法对于信号接收是十分重要的。

下面的仿真将结合波束成形算法对算法进行优化。

  1. 基于极大似然准则自适应波束成形器仿真结果

上图展示了使用基于极大似然准则自适应波束成形器对于信号获取情况的示意图,由图可知,该方法能够使雷达接收到的信号更强,并能够突出和接收到目标雷达的信号,并且能够滤除干扰。如图所示,原来的信号接收到的强度为-10.84dB,而经过使用基于极大似然准则自适应波束成形器对于信号获取后,目标信号强度增强到了25.04dB,因此该方法对于接收信号有明显提升。

由上图可见,两者的波形是基本一致的,波束成形后接收信号增强。

%% 信号源同时从4个方向发送不同信号,设置25度方向信号最强为主信号,其他方向信号为干扰,同时加入高斯白噪声作为噪声
clear;clc;
% 信号源方向
theta = [25, -25, 45, -45];
% 信号源强度
A = [1, 0.6, 0.6, 0.4];
% 信号源数目
N_s = length(theta);
% 阵元数目
N_e = 20;
% 噪声功率
N_0 = 0.1;
% 信号采样次数
N_t = 8;
% 初始化
y = zeros(N_e,N_t);
% 循环模拟接收信号
for k = 1:N_t
    % 模拟信号源发射信号
    for i = 1:N_s
        y(:,k) = y(:,k) + A(i)*exp(1j*(theta(i)*pi/180)).^(0:N_e-1)';
    end
    % 加入高斯白噪声
    y(:,k) = y(:,k) + sqrt(N_0/2)*(randn(N_e,1)+1j*randn(N_e,1));
end
%% 使用MUSIC算法进行波束测向
% 求取信号矩阵
R_y = y*y'/N_t;
% 求取SVD分解
[U,S,V] = svd(R_y);
% 确定信号子空间
E_s = U(:,1:N_s);
% 确定噪声子空间
E_n = U(:,N_s+1:end);
% MUSIC算法实现
theta_MUSIC = -90:0.1:90;
P_MUSIC = zeros(length(theta_MUSIC),1);
% 计算谱估计
for i=1:length(theta_MUSIC)
    a = exp(1j*(theta_MUSIC(i)*pi/180)).^(0:N_e-1)';
    P_MUSIC(i) = 1./abs(a'*E_n*E_n'*a);
end
% 绘制谱估计值
figure;
plot(theta_MUSIC,10*log10(P_MUSIC),'linewidth',1);
axis([-90,90,-16,-9]);
xlabel('角度');
ylabel('信号强度 (dB)');
title('使用MUSIC算法进行波束测向');
% 找出最大值,即为主信号来向
[~,index] = max(P_MUSIC);
theta_main = theta_MUSIC(index);
fprintf('主信号方向为:%.1f°\n',theta_main);
%%
% 基于极大似然准则的自适应波束成形器捕获主信号main_theta方向的信号
 theta_main = theta_main;
 P_ML = zeros(length(theta_MUSIC),1);
 % 计算自适应波束形成器信号功率
 for i=1:length(theta_MUSIC)
    a = exp(1j*(theta_MUSIC(i)*pi/180)).^(0:N_e-1)';
    P_ML(i) = (abs(a'*E_s*E_s'*a)).^2;
 end
% 绘制信号功率图
figure;
plot(theta_MUSIC,10*log10(P_ML),'linewidth',1);
xlabel('角度');
ylabel('信号强度(dB)');
title('使用基于极大似然准则的自适应波束成形器对目标信号进行捕获');
%总图
figure;
plot(theta_MUSIC,10*log10(P_MUSIC),theta_MUSIC,10*log10(P_ML),'linewidth',1);
axis([-91,90,-20,30])
legend('使用MUSIC算法进行波束测向(未进行波束成形的原始波形)','使用基于极大似然准则的自适应波束成形器对目标信号进行捕获')
title('信号测向与波束成形算法效果示意图');

猜你喜欢

转载自blog.csdn.net/qq_22471349/article/details/129168253
今日推荐