• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

Matlab实现卫星导航接收机的宽带干扰抑制空时自适应处理

武飞扬头像
matlab科研助手
帮助1

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法       神经网络预测       雷达通信      无线传感器        电力系统

信号处理              图像处理               路径规划       元胞自动机        无人机

⛄ 内容介绍

卫星导航接收机中的宽带干扰抑制空时自适应处理是一种技术,旨在通过利用阵列天线的空时自适应性能,对接收到的信号进行处理以抑制宽带干扰。

宽带干扰可能来自于其他无线通信系统、雷达系统或其他电磁辐射设备。它们的存在可能会干扰卫星导航信号,并降低接收机的性能和精度。

空时自适应处理基于多个接收天线组成的阵列结构。通过采集并分析各个天线接收到的信号,可以估计出干扰信号的特征,然后利用算法来调整各个天线接到的信号权重,实现对干扰信号的最小化。

空时自适应处理的主要步骤包括:

  1. 信号采样:利用阵列天线接收到的信号进行采样。
  2. 通道估计:使用接收到的信估计出各个天线接收通道的响应。
  3. 干扰估计:通过对接收信号进行处理,估计出干扰信号的特征。
  4. 接收器权重调整根据干扰估计结果,调整各个天线接收到的信号权重,以最小化干扰对导航信号的影响。
  5. 信号合成:利用调整后的各个天线接收到的信号,合成出干扰抑制后的输出信号。

通过这种空时自适应处理的方法,可以提高卫星导航接收机对宽带干扰的抵抗能力,从而提高定位和导航的精度和可靠性。

⛄ 部分代码

%{
  ------------------ 含约束条件下的空时自适应处理算法 ---------------------
  1.有用信号采用GPS L1信号
  2.干扰信号采用线性调频信号  

  -------------------------------------------------------------------------
  [1] 卫星导航定位接收机抗干扰技术研究,任超

%}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear variables; close all; clc;

% 全局变量
global    settings

% 仿真参数设置
settings      = iniSettings();

%----------------------- 产生有用信号、干扰信号、噪声 ---------------------
% 产生GPS L1的中频信号
Xs            = GenGPSL1_t();

% 有用信号的幅度 --- 输入信号的功率为1W
Am            = sqrt(settings.Ps);
Xs            = Am.*Xs;

% 产生宽带干扰信号
I_wb          = GenWBInterSig();
Ai            = sqrt(settings.Pi);
I_wb          = Ai.*I_wb;

% 噪声 --- 首先根据信噪比计算噪声功率
Pn            = settings.Ps/(10^(settings.SNR/10));
An            = sqrt(Pn/2);
Noise         = An.*randn(settings.RecNum,settings.SampleNum) ...
                1i.*An.*randn(settings.RecNum,settings.SampleNum);

% 画出它们的功率谱密度 --- 但是因为采样点数比较少,所以画出来的图不够准确
% PSD_Plot(Xs,I_wb);

%----------------------- 阵列接收信号建模 ---------------------------------
Alpha_mat     = GenArraySteerVectorMatrix();

% 信号矢量
SigVector     = [Xs;I_wb];

% 阵列接收信号
Yt            = Alpha_mat*[Xs;I_wb]   Noise;

%----------------------- 用空时导向矢量直接产生Xm -------------------------
M             = settings.RecNum;                        % 阵元数
L             = settings.SampleNum/2;                   % 数据量
N             = settings.orders;                        % 抽头数
Xm            = zeros(N*M,L);                           % Xm向量初始化

% % 有用信号 干扰信号入射方向
% Theta         = [settings.Stheta,settings.Itheta(1:settings.WBInNum)];
% 
% % 时间导向矢量
% S_t           = exp(1i*(2*pi*settings.IF*settings.ts).*(0:N-1).');
% 
% for index = 1:length(Theta)
%     
%     theta = Theta(index)*pi/180;
%     
%     S_s   = exp(1i*(2*pi*settings.d*sin(theta)/settings.lambda).*(0:M-1).');
%     
%     S     = kron(S_s,S_t);
% 
%     Xm    = S*SigVector(index,1:L)   Xm;
%         
% end % for index = 1:length(Theta)
% 
% % 加入噪声
% Noise     = An.*randn(N*M,L)   An.*1i.*randn(N*M,L); 
% Xm        = Xm   Noise;

%------------------------ 手动构造Xm矢量 ----------------------------------
for RecIndex = 1:settings.RecNum

    for dataIndex = 1:L

        % 循环移位
        temValue = circshift(Yt(RecIndex,:),-(dataIndex-1));

        Xm((RecIndex-1)*N 1:RecIndex*N,dataIndex) = temValue(1:N).';


    end % for dataIndex = 1:L

end % for RecIndex = 1:settings.RecNum

%------------------------ 计算加权矢量 ------------------------------------
% 协方差矩阵
Rx       = Xm*Xm'./L;  

S_st     = exp(1i*(2*pi*settings.IF*settings.ts) .* (0:N-1).');

% % 空域信号方向约束
% S_ss     = exp(1i*(2*pi*settings.d*sin(settings.Stheta*pi/180)/settings.lambda) ...
%          .* (0:settings.RecNum-1).');

% S        = kron(S_ss,S_st);

% 功率倒置方法
S        = zeros(M*N,1);
S(1)     = 1;


w_opt    = (S'*inv(Rx)*S)^(-1)*inv(Rx)*S;

%------------------- 只画出中频处的阵列响应图 -----------------------------
Theta    = -100:0.5:100;
Value    = zeros(1,length(Theta));
for index = 1:length(Theta)

    theta = Theta(index)*pi/180;
    
    % 当前入射方向的空域导向矢量
    S_s   = exp(1i*(2*pi*settings.d*sin(theta)/settings.lambda) ...
          .*(0:settings.RecNum-1).');

    % 当前角度的空时导向矢量
    S     = kron(S_s,S_st);
    
    Value(index) = w_opt'*S;

end % for index = 1:length(Theta)

Value_dB = 20*log10(abs(Value));
figure(102)
plot(Theta,Value_dB);
grid on

⛄ 运行结果

学新通

⛄ 参考文献

[1] 卢丹,冯青,吴仁彪.基于空时自适应处理的GPS宽带干扰抑制技术[J].中国民航大学学报, 2007, 25(4):4.DOI:CNKI:SUN:ZGMH.0.2007-04-001.

[2] 郭美杉.GPS接收机空时自适应宽带干扰抑制算法研究[J].现代导航, 2011(2):5.

[3] 李鹏程,易翔,杨峰,等.卫星导航接收机空时自适应抗干扰技术研究[C]//第二届中国卫星导航学术年会电子文集.2011.

⛳️ 代码获取关注我

❤️部分理论引用网络文献,若有侵权联系博主删除
❤️ 关注我领取海量matlab电子书和数学建模资料

🍅 仿真咨询

1.卷积神经网络(CNN)、LSTM、支持向量机(SVM)、最小二乘支持向量机(LSSVM)、极限学习机(ELM)、核极限学习机(KELM)、BP、RBF、宽度学习、DBN、RF、RBF、DELM实现风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断
2.图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知
3.旅行商问题(TSP)、车辆路径问题(VRP、MVRP、CVRP、VRPTW等)、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、车辆协同无人机路径规划
4.无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配
5.传感器部署优化、通信协议优化、路由优化、目标定位
6.信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号
7.生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化
8.微电网优化、无功优化、配电网重构、储能配置
9.元胞自动机交通流 人群疏散 病毒扩散 晶体生长

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhiafaah
系列文章
更多 icon
同类精品
更多 icon
继续加载