基于Matlab模拟OFDM中的LSE 信道估计

简介: 基于Matlab模拟OFDM中的LSE 信道估计

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

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

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

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

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

⛄ 内容介绍

本文介绍了正交频分复用(OFDM)系统中常用的信道估计算 法:最小二乘(LS).

⛄ 完整代码

% in this Mfile, I want to investigate the performance of LSE algorithm in

% OFDM channel estimation

% initialize

clear

clc

% parameter definition

N  = 256;           % total number of subchannels

P  = 256/8;         % total number of Pilots

S  = N-P;           % totla number of data subchannels

GI = N/4;           % guard interval length

M  = 2;             % modulation

pilotInterval = 8;  % pilot position interval

L  = 16;            % channel length

nIteration = 500;    % number of iteration in each evaluation


SNR_V = [0:3:27];   % signal to noise ratio vector in dB

ber = zeros(1,length(SNR_V));   % initializing bit error rate


% Pilot Location and strength

Ip = [1:pilotInterval:N];       % location of pilots

Is = setxor(1:N,Ip);            % location of data


Ep = 2;                        % energy in pilot symbols in comparison

% to energy in data symbols


% fft matrix

F = exp(2*pi*sqrt(-1)/N .* meshgrid([0:N-1],[0:N-1])...

   .* repmat([0:N-1]',[1,N]));



for( i = 1 : length(SNR_V))

   SNR = SNR_V(i)

   for(k = 1 : nIteration)

       % generating random channel coefficients

       h(1:L,1)  =     random('Normal',0,1,L,1) + ...

           j * random('Normal',0,1,L,1);

       h  = h./sum(abs(h));    % normalization

       

       % Tr Data

       TrDataBit = randint(N,1,M);

       TrDataMod = qammod(TrDataBit,M);

       TrDataMod(Ip) = Ep * TrDataMod(Ip);

       TrDataIfft = ifft(TrDataMod,N);

       TrDataIfftGi = [TrDataIfft(N- GI + 1 : N);TrDataIfft];

       

       % tx Data

       TxDataIfftGi = filter(h,1,TrDataIfftGi);    % channel effect

       % adding awgn noise

       TxDataIfftGiNoise = awgn(TxDataIfftGi ...

           , SNR - db(std(TxDataIfftGi))); % normalization to signal power

       

       TxDataIfft  = TxDataIfftGiNoise(GI+1:N+GI);

       TxDataMod   = fft(TxDataIfft,N);

       

       % Channel estimation

       Spilot = TrDataMod(Ip); % trnasmitted pilots

       Ypilot = TxDataMod(Ip); % received pilots

       

       G = (Ep * length(Ip))^-1 ...

           * ctranspose(sqrt(Ep)*diag(Spilot)*ctranspose(F(1:L,Ip)));

       

       hHat = G*Ypilot;    % estimated channel coefficient in time domain

       

       TxDataBit   = qamdemod(TxDataMod./(fft(hHat,N)),M);

       

       % bit error rate computation

       [nErr bErr(i,k)] = symerr(TxDataBit(Is),TrDataBit(Is));

   end

end


f1 = figure(1);

set(f1,'color',[1 1 1]);

semilogy(SNR_V,mean(bErr'),'b->')

xlabel('SNR in dB');

ylabel('Bit Error Rate')

⛄ 运行结果

⛄ 参考文献

[1] 彭玲, 刘晓忠, 付杰,等. OFDM系统中基于导频的信道估计及其MATLAB仿真[J]. 井冈山学院学报, 2008(2期):47-49.

[2] 廉钰莹. 基于OFDM的电力线载波通信信道估计[D]. 吉林大学.

[3] 田志峰. 基于MATLAB环境下OFDM系统信道估计仿真[J]. 才智, 2012(23):1.

[4] 范佳佳. 基于Matlab的OFDM系统信道评估设计[D]. 东华大学, 2016.

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


相关文章
|
3月前
|
数据可视化
基于MATLAB的OFDM调制发射与接收仿真
基于MATLAB的OFDM调制发射与接收仿真
|
3月前
|
编解码 算法 自动驾驶
【雷达通信】用于集成传感和通信的OFDM雷达传感算法(Matlab代码实现)
【雷达通信】用于集成传感和通信的OFDM雷达传感算法(Matlab代码实现)
396 125
|
2月前
|
机器学习/深度学习 编解码 算法
基于OFDM技术的水下声学通信多径信道图像传输研究(Matlab代码实现)
基于OFDM技术的水下声学通信多径信道图像传输研究(Matlab代码实现)
144 8
|
3月前
|
机器学习/深度学习 算法 5G
【信道估计】毫米波大规模MIMO系统的透镜天线阵列可靠波束空间信道估计研究(Matlab实现)
【信道估计】毫米波大规模MIMO系统的透镜天线阵列可靠波束空间信道估计研究(Matlab实现)
|
3月前
|
机器学习/深度学习 数据采集 编解码
基于深度学习分类的时相关MIMO信道的递归CSI量化(Matlab代码实现)
基于深度学习分类的时相关MIMO信道的递归CSI量化(Matlab代码实现)
164 1
|
4月前
|
5G Python
选择合并应用于差分放大转发中继在瑞利衰落信道上的通信系统研究(Matlab代码实现)
选择合并应用于差分放大转发中继在瑞利衰落信道上的通信系统研究(Matlab代码实现)
|
3月前
|
5G Python
【零强化均衡器的MIMO】【BPSK】在瑞利衰落信道中使用零强化均衡器的2x2 MIMO系统(Matlab代码实现)
【零强化均衡器的MIMO】【BPSK】在瑞利衰落信道中使用零强化均衡器的2x2 MIMO系统(Matlab代码实现)
|
4月前
|
网络协议 Python
水声网络(UAN)仿真的信道建模(Matlab代码实现)
水声网络(UAN)仿真的信道建模(Matlab代码实现)
143 0
|
4月前
|
机器学习/深度学习 算法
【RIS 辅助的 THz 混合场波束斜视下的信道估计与定位】在混合场波束斜视效应下,利用太赫兹超大可重构智能表面感知用户信道与位置(Matlab代码实现)
【RIS 辅助的 THz 混合场波束斜视下的信道估计与定位】在混合场波束斜视效应下,利用太赫兹超大可重构智能表面感知用户信道与位置(Matlab代码实现)
133 0
|
5月前
|
算法 数据安全/隐私保护
基于OFDM的无人机中继通信链路matlab误码率仿真
本资源包含OFDM算法在无人机中继通信中的仿真与实现,涵盖调制解调原理、循环前缀作用及中继功率、飞行高度对通信性能的影响。配套Matlab程序(2024b/2022a),含详细注释与操作视频,完整运行无水印。

热门文章

最新文章