• 大小: 11KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-12
  • 语言: 其他
  • 标签: OFDM  MIMO  STBC  

资源简介

OFDM-MIMO 仿真Alamouti STBC 天线配置2X1,调制方式QPSK BPSK

资源截图

代码片段和文件信息

function [recv_signal ] = channel( transmit_signalh_time ch N_Tx_ant N_Rx_ant ...
                      var_noiseN_subcPrefixRatioN_symTurnOn_Channel)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 多径多天线信道
% 得到经过信道后的接收信号recv_signal

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

if TurnOn_Channel ;%  if rayleigh channal
len = length(transmit_signal) + max(ch.Delay_sample);%接收信号的长度,包含最大延迟数 (+ PreNoiseLen + PostNoiseLen);
recv_signal = zeros(1len N_Rx_ant);%每个天线接收到的信号
tmp_recv = zeros(1length(transmit_signal) + max(ch.Delay_sample)N_Rx_ant);
% 对每条接收天线的信号 是N_tx_ant个数据的叠加
for n_r = 1:N_Rx_ant
    tmp_signal = zeros(1length(transmit_signal) + max(ch.Delay_sample) );
    for n_t = 1:N_Tx_ant
               
        max_d = max(ch.Delay_sample);
        for p = 1:ch.N_path
            if (N_Rx_ant == 1) & (N_Tx_ant ~= 1)% 2X1
                ch_coeff = h_time(p:n_t);
            else
                ch_coeff = h_time(p:(n_t-1)*N_Tx_ant + n_r);%每一对天线的信道上每条径的信道系数,每个系数只对应于每个OFDM符号
            end
            ch_coeff = reshape( repmat(ch_coeff N_subc*(1 + PrefixRatio)1) ...
                                1N_subc*(1 + PrefixRatio)*(N_sym) );%每条径一帧内所含OFDM符号所有样点对应的衰落系数
                         %每一个OFDM符号持续时间内经历相同的衰落系数,不同符号经历不同的衰落系数 (多普勒频移较小(<5Hz)时,一帧内所有符号相同的衰落系数)      
                                                                                                                                                                                                                  
            delay = ch.Delay_sample(p);%每条径的延时
            
            % 然后把N_path条路径延时叠加得到长度为length(transmit_signal) + max(ch.Delay_sample)的向量
            tmp_signal = tmp_signal + ...
                    [zeros(1 delay)  transmit_signal(1:n_t).*ch_coeff  zeros(1max_d - delay)];%一对天线信道上经历多径时延和瑞利衰落后的信号
       end

    % 把不同发送天线的信号叠加
    tmp_recv(1:n_r) = tmp_recv(1:n_r) + tmp_signal;%n_r个接收天线的循环
 
    end
end

% 在每条接收天线的信号加噪声
recv_signal = tmp_recv ;
noise = sqrt(var_noise)*( randn(1lenN_Rx_ant) + j*randn(1lenN_Rx_ant) );%复噪声序列
recv_signal = recv_signal + noise;
%recv_signal = awgn (recv_signalSNR);%直接利用dB信噪比添加高斯白噪声
else % if AWGN channal
    recv_signal = zeros(1length(transmit_signal) N_Rx_ant);%每个天线接收到的信号
    for n_r = 1:N_Rx_ant        
        for n_t = 1:N_Tx_ant
        recv_signal(1:n_r) = recv_signal(1:n_r) + transmit_signal(1:n_t);
        end
    end
   
               
   noise =sqrt(var_noise)*( randn(1length(transmit_signal)N_Rx_ant) + j*randn(1length(transmit_signal)N_Rx_ant) );%复噪声序列
   recv_signal = recv_signal + noise;
end
    




 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       3398  2009-09-21 18:40  STBC-2X1\BPSK-QPSK-2X1.fig

     文件       3034  2009-10-09 10:12  STBC-2X1\channel.m

     文件       8281  2009-10-09 10:33  STBC-2X1\main.m

     文件        841  2009-10-09 10:12  STBC-2X1\Tap_Rayleigh_Jakes.m

     文件       3600  2009-09-16 16:15  STBC-2X1\time_channel_para.m

     文件       1541  2009-10-09 09:43  STBC-2X1\to_freq_channel.m

     目录          0  2009-10-09 09:53  STBC-2X1

----------- ---------  ---------- -----  ----

                20695                    7


评论

共有 条评论