主要内容

mimo - ofdm系统的波束形成

这个例子展示了如何建模mimo - ofdm系统与点对点波束形成。相结合的多输入多输出(MIMO)和正交频分复用(OFDM)技术被采纳最近无线标准,如802.11倍的家庭,提供更高的数据速率。因为文中使用天线阵列,可以采用提高接收波束形成信号噪声比(信噪比),这反过来又降低了比特误码率(BER)。

这个例子需要通信工具箱™。

介绍

那一词用于描述一个系统,多个发射器或多个接收器。在实践中系统可以采取许多不同的形式,如single-input-multiple-output(单)或multiple-input-single-output(味噌)系统。这个示例演示了一个下行味噌系统。一个8-element齿龈部署在基站发射机,而移动单元与单个天线接收。

系统的其余部分配置如下。发射机功率是8瓦和传输增益是8 dB。移动接收器静止和位于2750米远,和发射机的孔径是3度。一个干预1瓦特的功率和增益的-20分贝位于9000米,20度了发射机的瞄准线。

%初始化系统常量rng (2014);gc = helperGetDesignSpecsParameters ();%可调参数tp。txPower = 9;%瓦特tp。txGain = 8;% dBtp。mobileRange = 2750;% mtp。mobileAngle = 3;%度tp.interfPower = 1;%瓦特tp.interfGain = -20;% dBtp.interfRange = 9000;% mtp.interfAngle = 20;%度tp。numTXElements = 8;tp。steeringAngle = 0;%度tp。rxGain = 108.8320 - tp.txGain;% dBnumTx = tp.numTXElements;

整个场景可以下图中所示。

helperPlotMIMOEnvironment (gc, tp);

信号传输

首先,配置系统的发射机。

[编码器,扰频器,modulatorOFDM steeringvec,发射机,散热器、飞行员、numDataSymbols frmSz] = helperMIMOTxSetup (gc, tp);

有许多组件发射机子系统,如卷积编码器、加扰器,QAM调制器,OFDM调制器,等等。消息首先转换为一个信息比特流,然后通过源编码和调制阶段准备辐射。

txBits =兰迪([0,1],frmSz, 1);编码=编码器(txBits);位=扰频器(编码);tx = qammod (gc.modMode比特,“InputType”,“一点”,“UnitAveragePower”,真正的);

在OFDM系统中,数据是由多个分载体最终再互相正交。

ofdm1 =重塑(tx gc.numCarriers numDataSymbols);

然后,数据流是重复的所有辐射传输数组中的元素

ofdmData = repmat (ofdm1 [1, 1, numTx]);txOFDM = modulatorOFDM (ofdmData,飞行员);%的规模txOFDM = txOFDM *gc.FFTLength /√gc.FFTLength-sum (gc.NumGuardBandCarriers) 1));%放大达到峰值发射功率为每个通道n = 1: numTx txOFDM (:, n) =发射机(txOFDM (:, n));结束

在MIMO系统中,也可以单独的多个用户空间分复用(SDMA)。在这种情况下,数据流经常被调制的重量对应于所需的方向,这样一旦辐射,信号最大化这个方向。因为在MIMO信道,信号辐射从数组中不同元素可能会通过不同的传播环境中,每个天线的信号辐射应该单独传播。这可以通过设置阶段性CombineRadiatedSignals为false。散热器组件。

散热器。CombineRadiatedSignals = false;

为了实现预编码,数据流从每个天线阵列的辐射是由相移调制对应其辐射方向。这个预编码的目的是确保这些数据流加入阶段如果数组为引导朝着那个方向。预编码可以指定重量的散热器。

或者说是= steeringvec (gc.fc [-tp.mobileAngle; 0]);

同时,数组也驶向一个给定的转向角,所以总重量是预编码和转向权重的组合。

wT = steeringvec (gc.fc [tp.steeringAngle; 0]);重量= wT。*福;

传输信号从而给出的

txOFDM =散热器(txOFDM repmat (tp.mobileAngle; 0, 1, numTx),连接词(重量));

txOFDM,注意,传输信号是一个矩阵的列表示数据流传输辐射从相应的元素数组。

信号传播

接下来,通过一个MIMO信道信号传播。一般来说,有两种传播感兴趣的对接收信号强度的影响:其中一个是传播损失由于传播距离,通常称为自由空间路径损耗;,另一个是由于多径衰落。这个示例模型两种效果。

(通道、interferenceTransmitter toRxAng spLoss] =helperMIMOEnvSetup (gc, tp);[sigFade, chPathG] =通道(txOFDM);sigLoss = sigFade /√db2pow spLoss (1)));

模拟一个更实际的移动环境中,在下一节中也插入一个干扰来源。请注意,在无线通信系统中,干扰往往是一个不同的移动用户。

%产生干扰和应用获得和传播损耗numBits =大小(sigFade, 1);interfSymbols = wgn (numBits, 1, 1,“线性”,“复杂”);interfSymbols = interferenceTransmitter (interfSymbols);interfLoss = interfSymbols /√db2pow spLoss (2)));

信号接收

接收天线收集传播信号和干扰并将它们传递到接收方恢复原始信息嵌入到信号。就像系统的发送端,接收方mimo - OFDM系统还包含许多用于阶段,包括OFDM解调器、QAM解调器,解码器,均衡器,维特比译码器。

[收集器,接收机,demodulatorOFDM,解码器,解码器)=helperMIMORxSetup (gc, tp, numDataSymbols);rxSig =收集器([sigLoss interfLoss], toRxAng);%前端放大器增益和热噪声rxSig =接收机(rxSig);rxOFDM = rxSig *(√gc.FFTLength-sum gc.NumGuardBandCarriers) 1)) / (gc.FFTLength);% OFDM解调rxOFDM = demodulatorOFDM (rxOFDM);%信道估计高清= helperIdealChannelEstimation (gc, numDataSymbols chPathG);%均衡高清,rxEq = helperEqualizer (rxOFDM numTx);%崩溃OFDM矩阵rxSymbs = rxEq (:);rxBitsS = qamdemod (rxSymbs gc.modMode,“UnitAveragePower”,真的,“OutputType”,“一点”);rxCoded =解码器(rxBitsS);rxDeCoded =解码器(rxCoded);rxBits = rxDeCoded (1: frmSz);

比较原始消息流的解码输出表明,由此产生的通信系统的误码率太高。星座图如下所示:

数量= comm.ErrorRate;措施=误码率(txBits rxBits);流(的数量= % .2f % %;不。比特= % d;不。错误= % d \ n ',措施(1)* 100,(3)措施,措施(2));
数量= 32.07%;不。比特= 30714;不。错误= 9850
constdiag = comm.ConstellationDiagram (“SamplesPerSymbol”, 1“ReferenceConstellation”[],“ColorFading”,真的,“位置”,gc.constPlotPosition);%显示接收到的星座constdiag (rxSymbs);

的高误码率主要是由于移动基站阵列的指导方向。如果移动与指导方向,误码率大大改善。

tp。steeringAngle = tp.mobileAngle;%控制发射机主要叶wT = steeringvec (gc.fc [tp.steeringAngle; 0]);[txBits, rxBits rxSymbs] = helperRerunMIMOBeamformingExample (gc、tp、wT);重置(ber);措施=误码率(txBits rxBits);流(的数量= % .2f % %;不。比特= % d;不。错误= % d \ n ',措施(1)* 100,(3)措施,措施(2));
数量= 0.02%;不。比特= 30714;不。错误= 5
constdiag (rxSymbs);

因此,该系统是对转向误差非常敏感。另一方面,正是这种空间敏感性使SDMA可以区分多个用户空间。

移相器量子化效应

到目前为止的讨论可以操纵假设梁向所需的确切的方向。然而,在现实中,这通常是不正确的,尤其是当使用模拟相移。模拟相移仅有有限的精度和分类中使用相移的比特数。例如,3-bit移相器只能代表8个不同的角度在360度。因此,如果这种量子化是包含在模拟,系统性能会降低,可以观察到从星座图。

%与量子化效应模拟移相器释放(steeringvec);steeringvec。NumPhaseShifterBits = 4;wTq = steeringvec (gc.fc [tp.steeringAngle; 0]);[txBits, rxBits rxSymbs] = helperRerunMIMOBeamformingExample (gc, tp, wTq);重置(ber);措施=误码率(txBits rxBits);流(的数量= % .2f % %;不。比特= % d;不。错误= % d \ n ',措施(1)* 100,(3)措施,措施(2));constdiag = comm.ConstellationDiagram (“SamplesPerSymbol”, 1“ReferenceConstellation”[],“ColorFading”,真的,“位置”,gc.constPlotPosition);constdiag (rxSymbs);
数量= 0.02%;不。比特= 30714;不。错误= 7

总结

这个例子显示了一个系统级仿真的mimo - ofdm系统采用点对点波束形成。仿真模型等系统组件编码、传输波束形成,预编码、多径衰落、信道估计、均衡和译码。

参考

[1]Houman Zarrinkoub、理解与MATLAB LTE,威利,2014年

[2]西奥多·s . Rappaport et al .毫米波无线通信,普伦蒂斯霍尔出版社,2014

另请参阅