通信系统的最佳线性均衡器(2)---自适应滤波算法

       本篇文章是博主在通信等领域学习时,用于个人学习、研究或者欣赏使用,并基于博主对通信等领域的一些理解而记录的学习摘录和笔记,若有不当和侵权之处,指出后将会立即改正,还望谅解。文章分类在通信领域笔记:

          通信领域笔记(8)---《通信系统的最佳线性均衡器(2)---自适应滤波算法》

通信系统的最佳线性均衡器(2)---自适应滤波算法

目录

1 背景分析

2 理论分析推导

3 MATLAB 仿真

3.1 自适应干扰对消的应用

3.2 自适应波束形成算法

3.3 无期望响应的自适应滤波算法:盲均衡

4 总结分析


通信系统的最佳线性均衡器(1)---维纳滤波线性均衡

1 背景分析

        在实际系统中,信道性质可能是时变的,可以通过自适应滤波技术达到最优线性均衡和跟踪信道的时变性,即自适应均衡器。自适应均衡需要一个期望响应序列,在通信系统接通的时候,设置一段专门时间,用于训练均衡器,在这个时段,通信发送机和通信接收机都产生一段约定的训练序列。发送机发送约定的训练序列𝑠(𝑛),接收机收到的是已经畸变的信号𝑥(𝑛)𝑥(𝑛)作为均衡器的输入信号,接收机在本地产生相同的训练序列𝑠(𝑛)作为自适应均衡器的期望响应。

        (1)自适应干扰对消的应用;

        (2)自适应波束形成算法;

        (3)无期望响应的自适应滤波算法:盲均衡;


2 理论分析推导

        自适应滤波所采用的最佳准则有最小均方误差(LMS)准则、最小二乘(LS)准则、最大信噪比准则和统计检测准则等,其中最小均方误差(LMS)准则和最小二乘(LS)准则目前最为流行,即最小均方误差(LMS)自适应滤波器和递推最小二乘(RLS)自适应滤波器。由于准则的不同,两种自适应滤波器在原理、算法、性能等方面均有差别。以下以 LMS 自适应滤波器为例进行分析。

2.1 自适应滤波技术

        在实际系统中,信道性质可能是时变的,可以通过自适应滤波技术达到最优线性均衡和跟踪信道的时变性,即自适应均衡器。自适应均衡需要一个期望响应序列,在通信系统接通的时候,设置一段专门时间,用于训练均衡器,在这个时段,通信发送机和通信接收机都产生一段约定的训练序列。发送机发送约定的训练序列𝑠(𝑛),接收机收到的是已经畸变的信号𝑥(𝑛)𝑥(𝑛)作为均衡器的输入信号,接收机在本地产生相同的训练序列𝑠(𝑛)作为自适应均衡器的期望响应。

        自适应滤波所采用的最佳准则有最小均方误差(LMS)准则、最小二乘(LS)准则、最大信噪比准则和统计检测准则等,其中最小均方误差(LMS)准则和最小二乘(LS)准则目前最为流行,即最小均方误差(LMS)自适应滤波器和递推最小二乘(RLS)自适应滤波器。由于准则的不同,两种自适应滤波器在原理、算法、性能等方面均有差别。以下以 LMS 自适应滤波器为例进行分析。

2.2 恒模算法

        CMA 算法全称为恒模盲均衡算法(Constant Modulus Algorithm),是该领域较为经典的一个算法,即使在有相位误差的情况下也能收敛,因此它已得到了广泛的应用,但是算法收敛速度较慢,而且由于其代价函数不包含相位信息,相位误差得不到补偿,所以在均衡之后还需经过相位恢复来消除相位误差的影响。该算法于 1980 年由 Godard TComm 上提出,其特点是利用隐含的高阶统计特性构造代价函数,通过调节均衡器的权向量寻找代价函数的极值点,其思想与 LMS 算法类似。

        在通信系统中,角度调制是常用的调制形式,包括频率调制(FM)和相位调制(PM),这些调制信号都满足包络是常数的性质,利用这个性质,构造一类盲自适应均衡算法,即 CMA 算法。传输信号满足恒模性,即|𝑠(𝑛)| 2 = 𝑅2,因为接收到的信号由于信道造成的畸变和干扰噪声,已不满足恒模性,当接收到的信号通过均衡器后,如果性能得到改善,则误差函数:


3 MATLAB 仿真

        自适应算法的大致结构差异不大,但根据最佳准则的不同,自适应算法的核心算法也存在差异。此处以最小均方误差 LMS 自适应滤波器为例进行实验。

3.1 自适应干扰对消的应用

        噪声对消的原理框图如图所示。信号𝑠(𝑛)中混入了不相关的噪声𝑣0 (𝑛),将 𝑠(𝑛) + 𝑣0 (𝑛)称为原始输入,它的作用是用作期望响应,可以通过其他途径得到 与𝑣0 (𝑛)相关的另一个噪声信号𝑣1 (𝑛)(称为噪声副本),用作自适应滤波器的输入,它也称为参考输入,调整滤波器系数,使自适应滤波器输出𝑦(𝑛)𝑣0 (𝑛)非常精确的逼近,原始输入减去滤波器输出,得到基本上抵消了噪声干扰的信号𝑠(𝑛)。

        此处以工频干扰的噪声(50Hz)对消为例进行实验。假设干扰信号时频率为50Hz 的正弦信号,而原始信号为频率为 20Hz 的正弦信号,使用 LMS 自适应滤波器对受噪声干扰的信号进行处理。

clc
clear all
close all
%生成原始信号s(n)
fc = 20;%信号频率
fs = 1000;%采样频率
t = 0:1/fs:1;
s = sin(2*pi*fc*t);%信号表达式%生成噪声v0(n)
fv = 50;%工频干扰频率 
v0 = sin(2*pi*fv*t);%噪声信号
v11 = sin(2*pi*fv*t+randi([-10,10])/10*pi)%噪声副本
v12 = sin(2*pi*fv*t+pi/2+randi([-10,10])/10*pi)%噪声副本%加噪后的信号
d = s+v0;%% LMS算法设计自适应均衡器
M = 2; % 权系数个数
mu = 0.04; % 步长
w1 = zeros(M, 1); % 初始化权系数
e1 = zeros(length(v11), 1); % 误差向量
for i = M:length(v11)xk = [v11(i) v12(i)]'; % 输入信号y = w1' * xk; % 输出信号e1(i) = d(i) - y; % 计算误差w1 = w1 + mu * xk * e1(i); % 更新权系数
end% 绘制误差平方的收敛曲线
figure(1);
plot(1:length(v11), e1.^2);
xlabel('LMS迭代次数');
ylabel('LMS误差平方');
title('LMS算法收敛曲线');% 输出最后设计的滤波器系数
disp('LMS滤波器系数:');
disp(w1');figure(2)
subplot(211);
plot(d);
title('LMS期望信号');
subplot(212);
plot(e1); % 只绘制均衡后的部分
title('LMS均衡后的信号');

 

        由收敛曲线可知,算法迭代至结束,滤波器参数仍未收敛完成。增大步长值𝑚𝑢至 0.04,使得每次迭代后滤波器参数调整速度变快。

        由图可知,误差在迭代至 400 次左右已完全收敛,最后的均衡信号基本恢复出原信号𝑠(𝑛)的特征。

        继续增大步进值𝑚𝑢0.1,进行实验。

        由结果可知,在迭代初期,误差有下降的趋势,但很快就维持一个很高的值不再变化。由均衡后信号的曲线也可知滤波器并没有对噪声干扰进行滤除,输出信号仍是畸形的。

        这是因为增大步进值后,虽然滤波器参数变化更快,能以更少的迭代次数、更快地达到最优的滤波器参数。但是步长的增大也会使得微小的变化引来很大的滤波器参数改变,从而错过最优的参数。更加严重地,会导致滤波器参数在最优参数左右一直徘徊,故产生了第二次实验的误差无法收敛的情况。

        由上可知,进行自适应算法时,需要选取合适的步进值。

3.2 自适应波束形成算法

        自适应滤波算法在空间阵列信号处理中的应用,由于阵列信号处理应用很广泛,不同应用对应的问题很不同,讨论 LMS 自适应滤波算法在 MVDR 波束形成中的运用。一个线性阵列信号处理的示意图如图所示。(具体理论过程在“阵列波束形成与维纳滤波”部分)

   阵列波束形成与维纳滤波

3.3 无期望响应的自适应滤波算法:盲均衡

       设置数据量𝑇、信噪比等基本参数 dB,模拟接收噪声信号𝑠,本次实验主要 考虑 4-QPSK、16-QPSKCMA 算法主要针对于信道衰落、多径传播等的影响,在接收端会产生严重的码间干扰,增加了系统的误码率。为了克服码间干扰,提高系统的性能,采用 CMA 算法,因此设置多径信道的参数

        考虑 4-QPSK16-QPSKCMA 算法主要针对于信道衰落、多径传播等的影响,在接收端会产生严重的码间干扰,增加了系统的误码率。为了克服码间干扰,提高系统的性能,采用 CMA 算法,因此设置多径信道的参数

以下是 CMA 算法运行结果:

        (1)基带调制类型为 4-QAM,总数据量为 60000,信噪比为 15dB 的情况

下,CMA 算法运行结果如下:

        由左上图可知,4-QAM 传输信号的星座图集中在上图所示的四个点中。由右上图可知,在未均衡前,接收信号星座图分布结果集中在一起,基本无法区分4-QAM 信号。

        在使用 CMA 算法均衡后,接收信号星座图分布结果集中集中在四个中心点中,可区分 4-QAM 信号。均衡前后之间有明显的分别,由于 4-QAM 满足恒模性,CMA 算法的有效性是很明显的。

        由左上图可知,60000 点存在一定的误差,通过观察右上图可发现,CMA 算法的结果收敛。        

        (2)基带调制类型为 16-QAM,总数据量为 60000,信噪比 dB 15 情况下,CMA 算法运行结果如下:

        由上图可以观察得到,对于基带调制类型为 16-QAMCMA 算法的均衡前和均衡后的结果相差不大,接收信号星座图分布结果集中在一起,基本无法区分16-QAM 信号。

        (3)采用优化算法 MCMAMSEI 算法均衡,基带调制类型为 16-QAM,总数据量为 60000,信噪比 dB 15 情况下,为了得到不同算法的直观比较,更改多径信道参数,算法运行结果如下:

        上图为 MCMA 算法的运行结果图,由图可知,在相同信噪比下,对于基带调制类型为 16-QAMMCMA 算法能够有效区分 16-QAM 信号。因为 MCMA 算法全称修正恒模盲均衡算法,是在 CMA 算法的基础上,通过对接收信号的实部及虚部分开进行处理,一定程度上解决了 CMA 算法相位误差大的问题,但实际上该算法仍然具有较慢的收敛速度及较大的稳态误差。其代价函数为:

        MCMA 算法权向量迭代式同 CMA 算法。

        上图为 MSEI 算法的运行结果图,由图可知,在相同信噪比下,对于基带调制类型为 16-QAMMSEI 算法也能够有效区分 16-QAM 信号。对比 MCMA 算法的运行结果图,MSEI 算法运行效果相对于 MCMA 算法而言更优。

        因为 MSEI 是基于 MCMA SEI 而来,对接收信号的实部及虚部分开进行处理,最后通过 SEI 算法进行处理。

        而SEI算法全称超指数迭代算法,该算法于1993年由O. ShalviE. Weinstein在 TIT 上提出,该算法与 RLS 算法有一定的相似度,通过 Q 矩阵对接收信号进行预白化,从而使得该算法收敛速度与稳态误差较恒模类算法均有显著改善,其缺点便是计算量相较于 CMA 算法偏大。该算法误差函数与 CMA 算法相同,为:


4 总结分析

        自适应滤波器在动态信道和噪声环境下展现出更好的性能和适应能力,能够有效地跟踪信道变化并减小噪声影响。在参数选择的方面,迭代步长、滤波器参数数量,需要考虑其使用环境,针对不同的设计需求以及成本控制,使用常规滤波器、维纳滤波器或者是自适应滤波器。在实际应用中,可以结合两种滤波器的优势,设计更加健壮和高效的通信系统,以满足不同环境下的需求。


     文章若有不当和不正确之处,还望理解与指出。由于部分文字、图片等来源于互联网,无法核实真实出处,如涉及相关争议,请联系博主删除。如有错误、疑问和侵权,欢迎评论留言联系作者,或者私信联系作者。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/856866.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

好用的便签是什么 电脑桌面上好用的便签

作为一名文字工作者,我经常需要在繁杂的思绪中捕捉灵感,记录下那些一闪而过的想法。在寻找一款适合电脑桌面的便签应用时,我偶然发现了敬业签便签软件简直是为我量身定制的,它不仅界面简洁,操作便捷,更重要…

`THREE.PointsMaterial` 是 Three.js 中用于创建粒子系统材质的类。它允许你设置粒子系统的外观属性,比如颜色、大小和透明度。

demo案例 THREE.PointsMaterial 是 Three.js 中用于创建粒子系统材质的类。它允许你设置粒子系统的外观属性,比如颜色、大小和透明度。下面是对其构造函数的参数、属性和方法的详细讲解。 构造函数 const material new THREE.PointsMaterial(parameters);参数&am…

阿里AI图片编辑新项目,人人都可做设计师。MimicBrush本地一键整合包下载

最近阿里巴巴联合香港大学开源了一个创新图像编辑工具:MimicBrush,这个工具相当于是一个局部重绘工具。它通过先进的AI技术,能够将一张图片的某一部分融合到另一张图片上。 MimicBrush,一款颠覆传统的图像编辑神器,不过…

深度学习 --- stanford cs231学习笔记四(训练神经网络的几个重要组成部分之一,激活函数)

训练神经网络的几个重要组成部分 一 1,激活函数(activation functions) 激活函数是神经网络之于线性分类器的最大进步,最大贡献,即,引入了非线性。这些非线性函数可以被分成两大类,饱和非线性函…

一站式家装服务管理系统的设计

管理员账户功能包括:系统首页,个人中心,管理员管理,装修风格管理,主材管理,用户管理,基础数据管理 前台账户功能包括:系统首页,个人中心,装修风格&#xff0…

Chained Together卡顿严重怎么办 链在一起卡顿频繁的解决方法

链在一起/Chained Together这款游戏特别适合四个人一起玩,游戏里四个玩家将会被锁链“链在一起”,然后一起在各个地图闯关,不仅考验玩家们的默契配合,还考验智慧和勇气。在链在一起中,玩家需要根据地形和岩浆的分布情况…

淘宝订单物流信息获取:详细操作指南

一、前言 淘宝作为中国最大的电商平台之一,其订单管理系统为商家提供了丰富的接口,用于查询、管理和跟踪订单信息。本指南将详细介绍如何通过淘宝订单接口获取物流信息,帮助商家更好地管理订单和提供优质的物流服务。 二、获取物流信息的步…

php框架的文档和社区支持如何?

在选择 php 框架时,文档和社区支持至关重要,拥有全面的文档和庞大活跃的社区,而 symfony 的文档内容丰富但更适合高级开发人员。codeigniter 4 的文档易于理解,社区规模较小但活跃。yii 2 的文档全面深入,但格式可能令初学者困惑。…

牛拜克拉丝的wordpress免费企业模板

wordpress免费企业模板 挺简洁实用的wordpress免费企业模板,黄色模板搭建公司网站。 演示 https://www.wpniu.com/themes/40.html

allegro 打开 brd文件时提示 WARNING(SPMHDB-212) 告警 应该如何解决呢?

WARNING(SPMHDB-212) :This design has functionality disabled due tothe current product plus options selected. The following features aredisabled: Maximum Crosstalk, Maximum Peak Crosstalk. [help] 步骤 按下图 将allegro编辑器为可设计高速线相关的…

Elastisearch集群(单节点)

目录 一、文件下载 二、创建linux es用户 三、上传、解压canal、es、kibana 四、配置es通讯证书(生成证书给es配置使用) 五、配置elastisearch 六、修改系统配置 七、添加ik分词器支持(可选) 八、给文件赋值权限 九、设置…

71-TCP协议工作原理及实战

一 服务器端 #ifndef MAINWINDOW_H #define MAINWINDOW_H#include <QMainWindow> #include <QTcpServer> // 专门用于建立TCP连接并传输数据信息 #include <QtNetwork> // 此模块提供开发TCP/IP客户端和服务器的类QT_BEGIN_NAMESPACE namespace Ui { class M…

164万年后的日期解析引发的OOM

名词解释 商家销项发票业务&#xff08;平台给商家开票&#xff09;&#xff0c;是平台提供给商家的工具产品&#xff0c;商家购买了平台的服务&#xff0c;那么平台需要开票给商家。 前言 本文所描述的问题&#xff0c;是应用的OOM引发的接口成功率下跌&#xff0c;排查过程中…

【LLM之NL2SQL】DAIL-SQL论文阅读笔记

研究背景 该研究旨在提供一个全面、系统的评估框架&#xff0c;用于评估基于大型语言模型&#xff08;LLM&#xff09;的Text-to-SQL技术。特别强调了不同的提示工程策略的有效性和效率&#xff0c;以及开源LLM的可行性。研究的重点是评估在零样本和少样本场景下的不同问题表示…

webgis 之 地图投影

地图投影 什么是地图投影目的种类等角投影的分类墨卡托投影Web 墨卡托投影 参考小结 为了更好地展示地球上的数据&#xff0c;需要将地球投影到一个平面上。地图投影是一个数学问题&#xff0c;按照一定的几何关系&#xff0c;将地球上的经纬度坐标映射到一个平面上的坐标。地球…

力扣hot100:(The Last one)287. 寻找重复数(快慢指针,静态链表)

LeetCode&#xff1a;287. 寻找重复数 “暴力” 不懂技巧&#xff0c;那就暴力&#xff01; 哈希表&#xff1a; 时间复杂度&#xff1a; O ( n ) O(n) O(n) 这个题体现不出 O ( n ) O(n) O(n)的作用&#xff0c;因为 n < 100 n < 100 n<100 空间复杂度&…

VirtualBox出错,从主机复制文件,乱改内容

昨天烧录机器&#xff0c;测试对方更新的一个库&#xff1a; 开始正确。后来莫名其妙崩溃。反复烧了几次&#xff0c;都错误。复制了老版本的库&#xff0c;正常。再改回新版本&#xff0c;崩溃。 于是把整个打包目录给了对方&#xff0c;他一对比&#xff0c;发现文件不对&am…

Windows应急响应靶机 - Web2

一、靶机介绍 应急响应靶机训练-Web2 前景需要&#xff1a;小李在某单位驻场值守&#xff0c;深夜12点&#xff0c;甲方已经回家了&#xff0c;小李刚偷偷摸鱼后&#xff0c;发现安全设备有告警&#xff0c;于是立刻停掉了机器开始排查。 这是他的服务器系统&#xff0c;请你…

Springboot获取resources中的文件

1.Springboot以文件的形式获取resources中的文件 import com.google.gson.JsonIOException; import com.google.gson.JsonObject; import com.google.gson.JsonParser; import com.google.gson.JsonSyntaxException; import org.springframework.util.ResourceUtils; import j…

2024.6最新版eclipse下载与安装(汉化教程)超详细教程来咯!!!包懂的

1.eclipse简介 Eclipse 是一个开放源代码的集成开发环境&#xff08;IDE&#xff09;&#xff0c;主要用于Java编程&#xff0c;但也可以通过插件支持其他编程语言&#xff0c;如C/C、Python、Perl等。Eclipse 被广泛应用于企业环境中&#xff0c;特别是在Java社区中&#xff0…