基于Matlab模拟Alamouti 编码附完整代码

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

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

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

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

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

⛄ 内容介绍

一种基于Alamouti编码的通信方法及系统,其中,方法包括:发射端对远端用户的数据或发送给远端用户的数据进行Alamouti编码,并且对近端用户的数据在两个时隙内分别发送近端用户的数据的信号及近端用户的数据的共轭信号;接收端根据第一次估计得到的信道信息对接收到的信号进行远端用户信号的解调和Alamouti解码,并且根据第二次估计得到的信道信息对解调后的远端用户的信号进行重构,并由接收到的总信号减去远端用户的信号,且对近端用户的信息进行解码,以获取远端用户和近端用户的信息.该方法可以提升信息的传输可靠性,使得解调的误码率更低,从而有效提高信息传输的可靠性,降低系统的误码率.

⛄ 部分代码

clear; clc;

ber=[];

BER=[];

snr=[0:10];

for i=0:10

    ber=[ber Alamoudi_2T1R(i,500)];

    BER=[BER Alamoudi_2T2R(i,500)];

end

N = 10^3;   % Total no of of bits per simulation per SNR_dB

bitstrm = [];             %initialisation of matrices

for i = 1:N 

             bitstrm = [bitstrm (-1+2*round(rand(1,1)))];    %creating random data       

end

Eb_No_dB = [0:10]; % multiple Eb/No values

for i = 1:length(Eb_No_dB)

   sig = sqrt(1/10^(Eb_No_dB(i)/10)); % noise variance 

   n = sig*(randn(1,N) + 1i*randn(1,N));  % Additive white gaussian noise prototype 

   

   h = randn(1,N) + 1i*randn(1,N);  % Rayleigh channel

   

   y = h.*bitstrm + n; % bit-streams corrupted by Rayleigh channel & AWGN

   y_rcv = y./h; % equalization of received data by channel information at the receiver

   

   Data_rcv = Refresh(real(y_rcv));  % Regenerating the received bits by threshold comparison

   

   Err(i) = sum(sum(round(bitstrm) ~= round(Data_rcv))); % computing the bit error in each simulation

end

simBer = Err/N; % average BER on total no. of bits simulated

simBer = berfit(Eb_No_dB,simBer);

Eb_No_lin = 10.^(Eb_No_dB/10);

theoryBer = 0.5.*(1-sqrt(Eb_No_lin./(Eb_No_lin+1)));

ber = berfit(snr,ber);

BER = berfit(snr,BER);

% plotting the simulated results

semilogy(snr,ber,'--*g');

hold on;

semilogy(snr,BER,'--*r');

semilogy(Eb_No_dB,theoryBer,'m--p');

semilogy(Eb_No_dB,simBer,'b--*');

axis([0 10 10^-5 1])

legend('simulated Alamouti 2T1R','simulated Alamouti 2T2R','BPSK over Rayleigh channel- Theoretical','BPSK over Rayleigh channel- Simulated'); 

xlabel('snr Eb/No(dB)');

ylabel('Bit error probability(BER)');

title('simulated performances of Alamouti 2T1R & 2T2R schemes for BPSK');

⛄ 运行结果

⛄ 参考文献

[1]朱红海. 采用分集Alamouti编码的WiMAX增强系统的仿真[D]. 华中科技大学.

[2]杨丽园, 陈理想, 陈万里,等. 基于Alamouti编码的通信方法及系统:, CN108616333A[P]. 2018.

⛄ 完整代码

❤️部分理论引用网络文献,若有侵权联系博主删除

❤️ 关注我领取海量matlab电子书和数学建模资料

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

matlab科研助手

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值