自适应MSER波束形成辅助接收机的MATLAB仿真
目录
一、理论基础
二、MATLAB程序
三、仿真结论
一、理论基础
运用波束形成技术,利用麦克风阵列估计指定方向上的混有噪声和干扰的期望信号。这些麦克风阵元位于不同的空间位置,对声波进行空间采样,然后对采样信号进行处理以衰减干扰信号并提取期望信号。这样就得到一个特定的阵列空间响应,其主瓣指向期望信号而对干扰进行陷波。
自适应波束形成能够分离在相同载波频率上传输的用户信号,因此提供了在空分多址场景中支持多用户的实用手段。此外,为了进一步提高可实现的带宽效率,高吞吐量正交幅度调制QAM方案在许多无线网络标准中变得流行,特别是在最近的WiMax标准中。多天线辅助多用户系统的自适应波束形成辅助检测其采用高阶QAM信令。
传统上,最小均方误差(MMSE)自适应波束形成辅助接收机的设计被认为是最先进的。然而,最近工作[1]提出了一种新的波束形成辅助最小符号误码率(MSER)设计并且证明了这种MSER设计提供了显著的性能增强,在可实现的符号错误率方面超过标准MMSE设计。该MSER波束形成设计在此贡献中得到充分发展。特别是MSER的自适应实现详细研究了波束形成算法,即最小符号误码率算法。在仿真中评估了所提出的自适应MSER波束形成方案,并与自适应MMSE波束形成基准。
该算法的流程和理论公式如下:
二、MATLAB程序
clc;
clear;
close all;
warning off;SNR_set = [10:1:24];
BER = 1;
nRx = 4;
nTx = 3;
frame_length = 1000;
Bers = [];
%论文table 2
alpha = [0,-70,65,32];
SIR = [0,0,0,0];
for SNR = SNR_set;N0 = 1/(10^(SNR/10));delta2 = N0;error_count = 0;bit_count = 0;index = 0;ERR_NUM = [];tmps = 0;while error_count < 500000index = index+1;for kk=1:nTxbits(kk,:) = round(rand(1,frame_length));symbols(kk,:) = qammod(bits(kk,:),16);end%transmit signals = symbols; u = reshape(s,nTx,nRx,length(s)/nRx);%Channelh = 1/sqrt(2)*[randn(nRx,nTx,length(s)/nRx) + j*randn(nRx,nTx,length(s)/nRx)];for ij = 1:nTxp(:,ij,:) = h(:,ij,:).*exp(j*alpha(ij)*pi/180);end%mmse beamformingWK = [];WK2 = [];w = [];LMS = zeros(1,length(s)/nRx);dt = [];for i=1:length(s)/nRxfor ii = 1:length(SIR)u2(:,ii) = u(:,ii,i)*10^(SIR(ii)/10); endXN(:,:,i)= awgn(u2,SNR,'measured');%定义接收信号w(:,:,i) = inv(p(:,:,i)*p(:,:,i)'+2*delta2^2*eye(nRx))*p(:,1,i);Nsb = nRx;M = nRx;r =(2*sqrt(M)-2)/sqrt(M);if i == 1WK = w(:,:,i)'*p(:,:,i);dt = -0.0001*[ones(1,Nsb)]';elsebk = bits(1,nRx*(i-2)+1:nRx*(i-1)); bk = 2*bk-1;x1_ = bk;p1 = p(:,1,i);yr = real(yhat(:,:,i-1));cr = real(w(:,:,i));for iii = 1:Nsbl = iii;ul = 2*l-sqrt(M) - 1;Rt{iii} = exp(-(yr(iii) - cr(iii)*(ul-1))^2/(2*delta2^2))*((yr(iii) - cr(iii)*(ul-1))*w(:,:,i) - x1_(iii) + (ul-1)*p1);endPER= r/(2*Nsb*sqrt(2*pi)*delta2) * (Rt{1} + Rt{2} + Rt{3} + Rt{4});yi = imag(yhat(:,:,i-1));ci = imag(w(:,:,i));for iii = 1:Nsbq = iii;uq = 2*q-sqrt(M) - 1;It{iii} = exp(-(yi(iii) - ci(iii)*(uq-1))^2/(2*delta2^2))*((yi(iii) - ci(iii)*(uq-1))*w(:,:,i) + sqrt(-1)*x1_(iii) + (uq-1)*p1);endPEI= r/(2*Nsb*sqrt(2*pi)*delta2) * (It{1} + It{2} + It{3} + It{4});PEB= PER + sqrt(-1)*PEI;for is = 1:length(PEB)if isnan(abs(PEB(is))) == 1PEB(is) = 1; endendWWt(:,i-1) = PEB;if i>3fai=max(min((abs(WWt(:,i-1)).^2)./(abs(WWt(:,i-2)).^2),1),0);elsefai=ones(nRx,1); enddt = fai.*dt - PEB;miu = 5e-6;WK = WK + miu*[dt(1:nTx)]'; endWK = WK/(max(abs(WK)));yhat(:,:,i) = WK*XN(:,:,i);R1 = real(yhat(:,:,i));I1 = imag(yhat(:,:,i));s_hat(:,:,i)= qamdemod(R1+sqrt(-1)*I1,16);ends_hat1 = squeeze(s_hat);recovered_bits = reshape(s_hat1,1,length(s));ERR_NUM = sum(recovered_bits ~= bits(1,:));%异常错误不进行统计
% if index <= 200
% tmps = tmps + ERR_NUM;
% else
% if ERR_NUM/(tmps/200) < 20SNRerror_counterror_count = error_count + ERR_NUM;bit_count = bit_count + frame_length;
% end
% endend%Calculate the BERBER = error_count/bit_count;Bers = [Bers,BER];
end
error_count
bit_countfigure;
semilogy(SNR_set,Bers,'b-o');
axis([10,40,1.0001e-6,1]);
ylabel('BER');
xlabel('SNR');
grid on
% save r2ber.mat SNR_set Bers
三、仿真结论
仿真结果如下:
提出了一种用于多天线辅助的自适应MSER波束形成技术采用高通量QAM信令的多用户通信系统。已经证明了MSER波束形成设计可以在可实现系统的SER方面提供比标准MMSE设计显著的性能增强。它已经还已经证明,MSER波束形成设计提供了更高的用户容量与传统的MMSE波束形成相比,在远近传感器中更为鲁棒设计已经使用称为LSER技术的随机梯度自适应算法实现了MSER波束形成解决方案的自适应实现。模拟研究结果清楚地表明,自适应LSER波束形成能够:在快速衰落条件下成功运行,其性能始终优于自适应LMS波束形成基准。
A01-14
自适应MSER波束形成辅助接收机的MATLAB仿真相关推荐
- 自适应增量调制adm的实现与matlab仿真,自适应增量调制ADM的实现与Matlab仿真
<自适应增量调制ADM的实现与Matlab仿真>由会员分享,可在线阅读,更多相关<自适应增量调制ADM的实现与Matlab仿真(4页珍藏版)>请在技术文库上搜索. 1.62 s ...
- 控制器matlab仿真研究,单神经元自适应PID控制器的研究及MATLAB仿真
单神经元自适应PID控制器的研究及MATLAB仿真 在分析传统的PID控制器的基础上,提出了一种单神经元自适应PID控制器,这种控制器,不仅结构简单,且具有较好的适应 (本文共2页) 阅读全文> ...
- 基于LMS自适应滤波器的QPSK信号均衡器matlab仿真
目录 1.算法概述 2.仿真效果 3.MATLAB仿真源码 1.算法概述 在自适应滤波器设计中,最小均方(Least Mean Square,LMS)算法使用随机梯度下降的方法实现代价函数的最小化,具 ...
- 【双边滤波】基于小波变换的多尺度自适应THZ增强双边滤波器的MATLAB仿真
1.软件版本 MATLAB2021a 2.本算法理论知识 提出了一种"基于小波变换的多尺度自适应双边滤波器"算法. 其对应的算法流程如下所示: 下面,我们从理论上限介绍一下这里所采 ...
- 相移波束形成算法的MATLAB仿真
仿真结果如下: 部分核心程序如下所示: %************************************************************************** % ...
- 主动声呐波束形成均匀线阵Matlab仿真
1.主动声呐基本原理 发射机发射信号,信号被目标反射后,反射的信号被水听器阵列接收,经过一系列处理后,将处理后的信号显示出来,由计算机识别并计算出目标的方位.速度等相关参数. 2.波束形成的原理 波束 ...
- 空间波束形成matlab仿真,自适应波束形成Matlab仿真.doc
信息与通信工程学院 阵列信号处理实验报告 (自适应波束形成Matlab仿真) 学 号:XXXXXX 专 业:XXXXXX 学生姓名:XXX 任课教师:XXX 2015年X月 题目:自适应波束形成Mat ...
- 均匀线阵列波束形成matlab仿真
目录 1.算法概述 2.仿真效果 3.MATLAB仿真源码 1.算法概述 1.1波束形成 波束形成是将基阵各阵元输出进行一定的处理,从而形成基阵空间指向性的技术.一个波束形成器可以对空间某方位的信号有 ...
- matlab自适应逆控制,基于matlab仿真模块的自适应有源噪声逆控制研究
ATE 农业技术与装备 X2 c(q-1) p(q-1) u2 C( x) p(q-1) LMS M(q-1) p(q-1) w( q-1) w( q-1) ! ! e2 d2 + - - + p(q ...
最新文章
- 电子学会青少年编程等级考试Python一级题目解析12
- python连接阿里云odps
- UnboundLocalError: local variable ‘XXX‘ referenced before assignment解决办法
- 【Python】推荐6个好用到爆的Pycharm插件
- interactive_timeout和wait_timeout之间的区别
- springboot项目整合mybatis
- 以实时风控场景为例,阿里云实时计算如何来做异常检测?
- 《BREW进阶与精通——3G移动增值业务的运营、定制与开发》连载之70---面向照相机的开发...
- 鼠标悬浮标签显示提示内容
- 工作问题总结-----付款
- 如何在Win10上配置JDK1.8
- Tp5接口请求数据返回正常,状态为500
- jquery实现页面提示,数据正在加载中
- dos命令查看电脑配置
- linux443端口无法建立连接,无法通过端口443连接到ssh
- JS代码计算正方教务系统目前成绩的加权平均分和平均绩点
- python 豆瓣源安装_python pip使用豆瓣源技巧和pip配置文件更改豆瓣源
- java给文件夹加密码_用JavaScrpt 实现文件夹轻松加密 (转)
- [深度学习之CNN]CNN卷积神经网络LeNet-5
- 什么软件打印二维码和条形码?
热门文章
- Python实现抢红包分配算法【递归】
- 微软北极服务器,微软正构建一个轻量级的操作系统:代号Polaris
- Eolink神技之四、IDEA工具插件Eolink ApiKit
- matlab提示output,强制Matlab输出到命令行(Force Matlab output to command line)
- 黄芩加半夏汤治疗急性腹痛案
- jupyter KeyError Unhandled error ‘pip uninstall psutil‘, manually remove
- matlab如何随机选颜色,Matlab 画图修饰-随机线条和随机颜色
- 快,喊上你的闺蜜一起贴星黛紫改色膜
- VAG DMA protocol
- 容器编排之战(三)连载