文档

mimochannel系统对象

通过MIMO多径衰落信道对输入信号进行滤波

描述

com . mimochannel对象通过多输入/多输出(MIMO)多径衰落信道对输入信号进行滤波。该对象同时对瑞利衰落和瑞利衰落进行建模,并采用Kronecker模型对链接之间的空间相关性进行建模。处理详情请参见算法部分。

通过MIMO多径衰落信道对输入信号进行滤波:

  1. 创建com . mimochannel对象并设置其属性。

  2. 使用参数调用对象,就像调用函数一样。

有关系统对象如何工作的详细信息,请参见什么是系统对象?(MATLAB)。

创建

语法

mimochan = com . mimochannel
mimochan = com . mimochannel(名称,值)

描述

mimochan= comm.MIMOChannel创建多输入多输出(MIMO)频率选择或频率平坦衰落信道系统对象™。该对象通过多径MIMO信道对真实或复杂的输入信号进行滤波,以获得信道受损信号。

例子

mimochan= comm.MIMOChannel (的名字价值使用一个或多个名称-值对设置属性。将每个属性名用单引号括起来。

例子:comm.MIMOChannel ('SampleRate', 2)

属性

全部展开

除非另有说明,属性为nontunable,这意味着在调用对象后不能更改它们的值。对象在调用时锁定,而释放功能解锁它们。

如果属性为可调,您可以随时更改其值。

有关更改属性值的详细信息,请参见使用系统对象的MATLAB系统设计(MATLAB)。

输入信号采样率(以赫兹为单位),指定为正标量。

数据类型:

以秒为单位的离散路径延迟,指定为标量或行向量。

  • 当你设置PathDelays对于标量,MIMO信道是频率平坦的。

  • 当你设置PathDelays对于一个矢量,MIMO信道是频率选择性的。

数据类型:

以分贝为单位的平均路径增益,指定为标量或行向量。AveragePathGains一定要和?一样的尺寸PathDelays

数据类型:

规范化路径增益,指定为真正的

  • 当您将此属性设置为真正的时,衰落过程被归一化,使路径增益的总功率随时间平均为0dB。

  • 当您将此属性设置为时,路径增益没有归一化。

路径增益的平均幂由AveragePathGains财产。

数据类型:逻辑

用于信道的衰落分布,指定为“瑞利”“Rician”

数据类型:字符

瑞斯特衰落信道的k因子,用正标量或1 × -表示NP正值元素的向量。NP类型指定的路径延迟数PathDelays财产。

  • 如果你设置KFactor到标量时,第一个离散路径是一个具有专家级k因子的专家级衰落过程KFactor.剩下的任何离散路径都是独立的瑞利衰落过程。

  • 如果你设置KFactor向量的正元素对应的离散路径KFactor向量是一个具有由该元素指定的专家级k因子的专家级衰落过程。的零值元素对应的离散路径KFactor矢量是一个瑞利衰落过程。

依赖关系

此属性适用于FadingDistributionRician

数据类型:

以赫兹为单位的瑞斯衰落信道的视距分量的多普勒频移,指定为标量或行向量。此属性的大小必须与KFactor

  • 如果你设置DirectPathDopplerShift为标量,表示第一个离散路径的视距分量多普勒频移,为一个瑞斯衰落过程。

  • 如果你设置DirectPathDopplerShift离散路径是一个罗氏衰落过程,其视距分量多普勒频移由的元素指定DirectPathDopplerShift对应于正的元素KFactor向量。

依赖关系

此属性适用于FadingDistributionRician

数据类型:

以弧度为单位的瑞尔斯衰落信道的视距分量的初始相位,指定为标量或行向量。此属性的大小必须与KFactor

  • 如果你设置DirectPathInitialPhase对于标量,它表示第一个离散路径的视距分量初始阶段,这是一个瑞氏衰落过程。

  • 如果你设置DirectPathInitialPhase的元素指定的视距分量初始相位,则离散路径是一个瑞氏衰落过程DirectPathInitialPhase对应于正的元素KFactor向量。

依赖关系

此属性适用于FadingDistributionRician

数据类型:

所有信道路径的最大多普勒频移,以赫兹为单位,指定为非负标量。

多普勒频移适用于所有信道路径。当您将此属性设置为0时,整个输入通道保持静态。您可以使用重置对象函数生成新的通道实现。

MaximumDopplerShift必须小于(SampleRate/ 10) /fc对于每条路径,其中fc表示路径的截止频率因子。有关截止频率的更多信息,请参见截止频率因子

数据类型:

多普勒频谱形状为所有信道路径,指定为单个多普勒频谱结构返回多普勒函数还是1 ×NP这种结构的单元阵列。此属性的默认值为Jakes多普勒频谱(多普勒(厕所)).

  • 如果你把一个电话分配给多普勒,所有路径具有相同的指定多普勒频谱。

  • 如果你指定一个1 ×NP调用的单元格数组多普勒使用任何指定的语法,每个路径都具有由数组中相应的多普勒频谱结构指定的多普勒频谱。在这种情况下,NP的值PathDelays财产。

指定多普勒谱/谱所必需的最大多普勒频移值由MaximumDopplerShift财产。

依赖关系

此属性适用于MaximumDopplerShift大于零。

如果你分配FadingTechnique财产正弦函数的和,您必须设置DopplerSpectrum多普勒(厕所)

空间相关规范,指定为“分离Tx Rx”“没有”,或“组合”

  • 选择'Spatial Tx Rx'分别指定发射和接收空间相关矩阵,其中发射天线的数目(NT)和接收天线数目(NR)是派生的。

  • 选择“没有”指定发送和接收天线的个数。

  • 选择“组合”为整个信道指定一个相关矩阵,其中的乘积NT而且NR是派生的。

数据类型:字符

发射天线数,指定为正整数。

依赖关系

此属性适用于SpatialCorrelationSpecification“没有”“组合”

数据类型:

接收天线个数,指定为正整数。

依赖关系

此属性适用于SpatialCorrelationSpecification“没有”“组合”

数据类型:

将发射机的空间相关性指定为NT——- - - - - -NT矩阵或NT——- - - - - -NT——- - - - - -NP数组中。NT发射天线的数量,和NP的值PathDelays财产。

  • 如果PathDelays是标量,信道是频率平坦的,和TransmitCorrelationMatrix是一个NT——- - - - - -NT埃尔米特矩阵。任何非对角线元素的大小必须不大于两个对应对角线元素的几何平均值。

  • 如果PathDelays是矢量,信道是有频率选择性的,你能指定吗TransmitCorrelationMatrix作为一个矩阵。每条路径具有相同的发射空间相关矩阵。

  • 或者,您可以指定TransmitCorrelationMatrix作为一个NT——- - - - - -NT——- - - - - -NP数组,其中每个路径可以有自己不同的发射空间相关矩阵。

依赖关系

属性时应用此属性SpatialCorrelationSpecification财产“分离Tx Rx”

数据类型:
复数支持:万博1manbetx是的

将接收器的空间相关性指定为NR——- - - - - -NR矩阵或NR——- - - - - -NR——- - - - - -NP数组中。NR接收天线的数量,和NP的值PathDelays财产。

  • 如果PathDelays是标量,信道频率平坦,和ReceiveCorrelationMatrix是一个NR——- - - - - -NR埃尔米特矩阵。任何非对角线元素的大小必须不大于两个对应对角线元素的几何平均值。

  • 如果PathDelays是矢量,信道是有频率选择性的,你能指定吗ReceiveCorrelationMatrix作为一个矩阵。每条路径具有相同的接收空间相关矩阵。

  • 或者,您可以指定ReceiveCorrelationMatrix作为一个NR——- - - - - -NR——- - - - - -NP数组,其中每个路径可以有自己不同的接收空间相关矩阵。

依赖关系

属性时应用此属性SpatialCorrelationSpecification财产“分离Tx Rx”

数据类型:
复数支持:万博1manbetx是的

组合空间相关矩阵,指定为NTR——- - - - - -NTR矩阵或NTR——- - - - - -NTR——- - - - - -NP数组,NTR= (NTNR),NP的值PathDelays财产。

  • 如果PathDelays是标量,信道频率平坦,和SpatialCorrelationMatrix是一个NTR——- - - - - -NTR埃尔米特矩阵。任何非对角线元素的大小必须不大于两个对应对角线元素的几何平均值。

  • 如果PathDelays是矢量,信道是有频率选择性的,你能指定吗SpatialCorrelationMatrix作为一个矩阵。每条路径具有相同的空间相关矩阵。

  • 或者,您可以指定SpatialCorrelationMatrix作为一个NTR——- - - - - -NTR——- - - - - -NP数组,其中每个路径可以有自己不同的组合空间相关矩阵。

依赖关系

属性时应用此属性SpatialCorrelationSpecification财产“组合”

数据类型:
复数支持:万博1manbetx是的

天线选择方案,指定为“关闭”“Tx”“处方”,或Tx和Rx

Tx表示发射天线和处方表示接收天线。当您配置除默认设置之外的任何天线选择时,对象需要一个或多个输入来指定为信号传输选择哪些天线。有关更多信息,请参见天线选择

数据类型:字符

规范化通道输出,指定为真正的

  • 当您将此属性设置为真正的,信道输出按接收天线数量归一化。

  • 当您将此属性设置为,通道输出未归一化。

数据类型:逻辑

信道模型衰落技术滤波高斯噪声正弦函数的和

数据类型:字符

用于模拟衰落过程的正弦波数,指定为正整数。

依赖关系

此属性适用于FadingTechnique正弦函数的和

数据类型:

源来控制衰落进程的开始时间,指定为“属性”输入端口的

  • “属性”—使用InitialTime属性设置初始时间偏移量。

  • 输入端口的属性指定衰落过程的开始时间initialtime对象的输入。输入值可以在对对象的连续调用中更改。

依赖关系

此属性适用于FadingTechnique正弦函数的和

衰落模型的初始时间偏移,以秒为单位,指定为非负标量。

InitialTime不是1/的倍数吗SampleRate时,取整到最近的样本位置。

依赖关系

属性时应用此属性FadingTechnique属性设置为正弦函数的和InitialTimeSource属性设置为“属性”

数据类型:

随机数流的源,指定为“全球流”“mt19937ar with seed”

  • “全球流”—当前全局随机数流用于正态分布随机数生成。在这种情况下,重置对象函数只重置筛选器。

  • “mt19937ar with seed”——采用mt19937ar算法生成正态分布随机数。在这种情况下,重置对象函数将重置筛选器,并将随机数流重新初始化为种子财产。

数据类型:字符

mt19937ar随机数流的初始种子,指定为非负整数。当重置对象函数被调用时,mt19937ar随机数流被重新初始化为种子价值。

依赖关系

属性时应用此属性RandomStream财产“mt19937ar with seed”

数据类型:

选项输出路径增益,指定为真正的.将此属性设置为真正的输出底层衰落过程的通道路径增益。

数据类型:逻辑

通道可视化首选项,指定为“关闭”的脉冲响应的频率响应“脉冲和频率响应”,或的多普勒频谱.当可视化打开时,所选的信道特性,如脉冲响应或多普勒频谱,将显示在单独的窗口中。有关更多信息,请参见渠道可视化

依赖关系

可视化仅适用于FadingTechnique属性设置为滤波高斯噪声

要显示的发射-接收天线对,指定为1 × 2矢量,其中第一个单元对应所需的发射天线,第二个单元对应所需的接收天线。此时,只能显示一对。

依赖关系

此属性适用于可视化不是

显示多普勒频谱的路径,取值范围为1 ~的正整数NP,在那里NP的值PathDelays财产。

依赖关系

此属性适用于可视化设置为的多普勒频谱

要显示的样品百分比,指定为10%25%50%,或100%.增加百分比以牺牲模拟速度为代价提高了显示精度。

依赖关系

此属性适用于可视化的脉冲响应的频率响应,或“脉冲和频率响应”

使用

对于R2016b之前的版本,请使用一步函数来运行System对象™算法。的论点一步是您创建的对象,后面跟着本节中显示的参数。

例如,Y = step(obj,x)而且Y = obj(x)请执行相同的操作。

语法

Outsignal = mimochan(信号)
Outsignal = mimochan(insignal,seltx)
Outsignal = mimochan(insignal,selrx)
Outsignal = mimochan(insignal,seltx,selrx)
信号= mimochan(___initialtime)
[outsignal,pathgain] = mimochan(___

描述

例子

outsignal= mimochan (insignal通过指定的MIMO衰落信道对输入信号进行滤波mimochan并返回结果outsignal

outsignal= mimochan (insignalseltx打开选中的发射天线seltx用于信道处理。

属性时应用此语法AntennaSelection对象的属性“Tx”

例如,选择第一个和第三个发射天线索引为有源:

mimochan = com . mimochannel ('AntennaSelection','Tx');Seltx = [1 0 1];...Outsignal = mimochan(insignal,seltx);

outsignal= mimochan (insignalselrx打开接收天线,由selrx用于信道处理。

属性时应用此语法AntennaSelection对象的属性“处方”

例如,选择第二个接收天线索引为有源:

mimochan = com . mimochannel ('AntennaSelection','Rx');Selrx = [0 1];...Outsignal = mimochan(insignal,selrx);

例子

outsignal= mimochan (insignalseltxselrx打开发射和接收天线,由seltx而且selrx用于信道处理。

属性时应用此语法AntennaSelection对象的属性Tx和Rx

例如:

mimochan = com . mimochannel ('AntennaSelection','Tx and Rx');Seltx = [1 1];Selrx = [0 1];...Outsignal = mimochan(insignal,selrx);

例子

outsignal= mimochan (___initialtime指定衰落进程的开始时间。

属性时应用此语法FadingTechnique对象的属性正弦函数的和InitialTimeSource对象的属性输入端口的.该语法支持以前语法中的万博1manbetx输入选项。

例子

outsignalpathgains= mimochan(___还返回天线选择方案的MIMO信道路径增益。该语法支持以前语法中的万博1manbetx输入选项。

输入参数

全部展开

输入信号,指定为标量N年代元素列向量,anN年代——- - - - - -NT矩阵,或者N年代——- - - - - -N矩阵。

发射天线的数量由TransmitCorrelationMatrixNumTransmitAntennas对象的属性值。

数据类型:|
复数支持:万博1manbetx是的

选择有源发射天线,用1 × -表示NT二进制向量。NT发射天线数。设置为的元素1识别选定的天线指数和0识别非选定的天线指数。

数据类型:

选择有源接收天线,用1 × -表示NR二进制向量。NR接收天线数。设置为的元素1识别选定的天线指数和0识别非选定的天线指数。

数据类型:

衰落模型的初始时间偏移,以秒为单位,指定为非负标量。

初始时间偏移量必须大于最后一帧结束时间。当initialtime不是1/的倍数吗SampleRate时,取整到最近的样本位置。

数据类型:

输出参数

全部展开

输出数据信号,返回为N年代——- - - - - -NRN年代——- - - - - -N矩阵。

输出路径增益,返回为N年代——- - - - - -NP——- - - - - -NT——- - - - - -NR数组未选择的发射-接收天线对的值。

  • N年代是样本的数量。

  • NP的值PathDelays财产。

  • NT是发射天线的个数。

  • NR接收天线数。

对象的功能

要使用对象函数,请将System对象指定为第一个输入参数。例如,释放system对象的系统资源obj,使用这种语法:

发行版(obj)

全部展开

信息 关于衰落信道对象的特征信息
一步 运行系统对象算法
释放 释放资源并允许更改System对象属性值和输入特征
重置 重置System对象的内部状态

请注意

  • 如果你设置RandomStream对象的属性“全球流”,重置对象函数只重置筛选器。

  • 如果你设置RandomStream“mt19937ar with seed”,重置对象函数将重置筛选器,并将随机数流重新初始化为种子财产。

例子

全部展开

通过使用MIMO通道系统对象创建一个4 × 2 MIMO通道。通过信道传递经过调制和空间编码的数据。

生成qpsk调制数据。

数据= randi([0 3],1000,1);modData = pskmod(data,4,pi/4);

创建正交时空块编码器,将调制数据编码为四个空间分离的流。编码数据。

ostbc = com . ostbcencoder (“NumTransmitAntennas”4“SymbolRate”1/2);txSig = ostbc(modData);

创建一个MIMO通道对象,使用名称-值对设置属性。该信道由两个最大多普勒频移为5hz的路径组成。设置SpatialCorrelationSpecification财产“没有”,需要指定发射天线数和接收天线数。发射天线数设置为4根,接收天线数设置为2根。

mimochannel = com . mimochannel (...“SampleRate”, 1000,...“PathDelays”[0 2 e - 3),...“AveragePathGains”, [0 5),...“MaximumDopplerShift”5,...“SpatialCorrelationSpecification”“没有”...“NumTransmitAntennas”4...“NumReceiveAntennas”2);

通过MIMO信道传递调制和编码的数据。

rxSig = mimochannel(txSig);

创建一个时间向量,t,用于绘制接收信号的功率。

ts = 1/mimochannel.SampleRate;t = (0:ts:(size(txSig,1)-1)*ts)';

计算并绘制天线1接收信号的功率。

pwrdB = 20*log10(abs(rxSig(:,1)));情节(t, pwrdB)包含(“时间(s)”) ylabel (的功率(瓦分贝)

在不指定天线选择的情况下,通过2 × 2瑞利衰落信道对psk调制数据进行滤波,并检查信道实现的空间相关特性。使用释放对象函数解锁对象设置AntennaSelection财产Tx和Rx然后确认未选中的收发天线对。

在不指定天线选择的情况下检查空间相关特性

创建一个PSK调制器系统对象™来调制随机生成的数据。

pskModulator = com . pskModulator;modData = pskModulator(randi([0 pskModulator. modulationorder -1],1e5,1));

将调制数据分成两个空间流。

channelInput =重塑(modData,[2 5e4]).';

创建一个2 × 2 MIMO通道系统对象,具有两条离散路径。方法指定的每个路径具有不同的发送和接收相关矩阵TransmitCorrelationMatrix而且ReceiveCorrelationMatrix属性。

mimoChan = com . mimochannel (“SampleRate”, 1000,“PathDelays”(0 1 e - 3),...“AveragePathGains”[3 - 5],“NormalizePathGains”假的,“MaximumDopplerShift”5,...“TransmitCorrelationMatrix”,猫(3,眼睛(2),[1 0.1;0.1 1]),...“ReceiveCorrelationMatrix”,猫(3,[1 0.2;0.2 1],眼睛(2)),...“RandomStream”“mt19937ar with seed”“种子”33岁的“PathGainsOutputPort”,真正的);

使用MIMO通道对象筛选调制数据。

[~, pathgain] = mimoChan(channelInput);

在第一个接收天线处的第一个离散路径的发射空间相关性被指定为单位矩阵TransmitCorrelationMatrix财产。确认通道输出pathGains控件显示相同的统计特征corrcoef函数。

disp ('Tx空间相关性,第一条路径,第一条Rx:');
Tx空间相关性,第一路径,第一Rx:
disp (corrcoef(挤压(pathGains (: 1:, 1))));
1.0000 + 0.0000i 0.0357 - 0.0253i 0.0357 + 0.0253i 1.0000 + 0.0000i

在第二接收天线处的第二离散路径的发射空间相关性指定为[1 0.1;0.1 1]TransmitCorrelationMatrix财产。确认通道输出pathGains显示相同的统计特征。

disp ('Tx空间相关性,第二条路径,第二条Rx:');
Tx空间相关性,第二路径,第二Rx:
disp (corrcoef(挤压(pathGains (2): 2,:,)));
1.0000 + 0.0000i 0.0863 + 0.0009i 0.0863 - 0.0009i 1.0000 + 0.0000i

第二发射天线处的第一离散路径的接收空间相关性指定为[1 0.2;0.2 1]ReceiveCorrelationMatrix财产。确认通道输出pathGains显示相同的统计特征。

disp (Rx空间相关性,第一条路径,第二条Tx);
Rx空间相关性,第一路径,第二Tx:
disp (corrcoef(挤压(pathGains (:, 1, 2,:))));
1.0000 + 0.0000i 0.2236 + 0.0550i 0.2236 - 0.0550i 1.0000 + 0.0000i

在第一发射天线处的第二离散路径的接收空间相关性被指定为单位矩阵ReceiveCorrelationMatrix财产。确认通道输出pathGains显示相同的统计特征。

disp (Rx空间相关性,第二条路径,第一条Tx);
Rx空间相关性,第二路径,第一个Tx:
disp (corrcoef(挤压(pathGains (:, 2, 1:))));
1.0000 + 0.0000i -0.0088 - 0.0489i -0.0088 + 0.0489i 1.0000 + 0.0000i

检查指定天线选择的空间相关特性

使发射和接收天线选择为mimoChan对象。输入帧大小缩短为100。

释放(mimoChan);mimoChan。一个ntennaSelection =Tx和Rx;modData = pskModulator(randi([0 pskModulator. modulationorder -1],100,1));

选择第一发射天线和第二接收天线。

[channelOutput, pathgain] = mimoChan(modData,[1 0],[0 1]);

确认MATLAB®返回的路径增益未选择的发射-接收天线对的值。

disp ('如果第二个发射天线的路径增益为NaN,则返回1:');
如果第二个发射天线的路径增益为NaN,则返回1:
disp (isequal (isnan(挤压(pathGains(:,: 2:))),(100年2 2)));
1
disp ('如果第一个接收天线的路径增益为NaN则返回1:');
如果第一个接收天线的路径增益为NaN则返回1:
disp (isequal (isnan(挤压(pathGains(:,:,: 1))),(100年2 2)));
1

创建一个频率选择性MIMO通道并显示其脉冲和频率响应。

将采样率设置为10 MHz,并使用扩展车辆A (EVA)通道参数指定路径延迟和增益。将最大多普勒频移设置为70hz。

Fs = 10e6;%赫兹pathdelayed = [0 30 150 310 370 710 1090 1730 2510]*1e-9;%交会avgPathGains = [0 -1.5 -1.4 -3.6 -0.6 -9.1 -12 -16.9);% dBfD = 70;%赫兹

使用前面定义的参数创建一个2x2 MIMO通道系统对象,并设置可视化财产脉冲和频率响应使用名称-值对。缺省情况下,显示发射天线1和接收天线1对应的天线对。

mimoChan = com . mimochannel (“SampleRate”fs,...“PathDelays”pathDelays,...“AveragePathGains”avgPathGains,...“MaximumDopplerShift”fD,...“可视化”“脉冲和频率响应”);

生成随机二进制数据并通过MIMO通道传递。脉冲响应图允许您轻松地识别单个路径及其相应的滤波器系数。频率响应图显示了EVA信道的频率选择性特性。

X = randi([0 1],1000,2);y = mimoChan(x);

释放mimoChan并设置AntennaPairsToDisplay属性设置为[2 1],查看发射天线2和接收天线1对应的天线对。由于该属性不可调,有必要释放该对象。

(mimoChan) mimoChan发布。AntennaPairsToDisplay=[21];y = mimoChan(x);

创建并可视化具有两条路径的MIMO信道的多普勒频谱。

构造一个多普勒结构的单元阵列,用于创建信道。所述第一路径的多普勒频谱设置为钟形,而所述第二路径设置为平坦。

Dp{1} =多普勒(“钟”);Dp{2} =多普勒(“平”);

使用名称-值对创建缺省的2x2 MIMO通道,该通道有两条路径,最大多普勒频移为100 Hz。设置可视化财产多普勒频谱并设置PathsForDopplerDisplay为1。将显示第一条路径的多普勒频谱。

mimoChan = com . mimochannel (“SampleRate”, 1000,...“PathDelays”, 0.002 [0],...“AveragePathGains”[0 3],...“MaximumDopplerShift”, 100,...“DopplerSpectrum”dp,...“可视化”的多普勒频谱...“PathsForDopplerDisplay”1);

将随机数据通过MIMO信道,生成第一路径的多普勒频谱。由于多普勒频谱图仅在缓冲区被填满时更新,因此mimoChan函数被多次调用以提高估计的准确性。观察到频谱具有钟形,其最小频率和最大频率都在所设置的范围内MaximumDopplerShift

K = 1:25 x = randi([0 1],10000,2);y = mimoChan(x);结束

释放mimoChan并设置PathsForDopplerDisplay属性为2。由于该属性不可调,有必要释放该对象。多次调用该函数以显示第二条路径的多普勒频谱。观察到光谱是平坦的。

(mimoChan) mimoChan发布。PathsForDopplerDisplay = 2;K = 1:25 x = randi([0 1],10000,2);y = mimoChan(x);结束

创建一个MIMO通道对象,并使用正弦和技术通过它传递数据。该示例演示了在数据不连续传输的情况下如何维护通道状态。

定义整个模拟时间和数据将传输的三个时间段。在这种情况下,信道以1000hz采样率模拟1秒。在时间0传输一个1000个样本的连续数据序列。在时间0.1 s、0.4 s、0.7 s分别发送三个100采样数据包。

T0 = 0:0.001:0.999;%传输0T1 = 0.1:0.001:0.199;%传输1T2 = 0.4:0.001:0.499;%传输2T3 = 0.7:0.001:0.799;%传输3

生成与前面定义的时间间隔相对应的随机二进制数据。

D0 = randi([0 1],1000,2);% 1000个样品D1 = randi([0 1],100,2);% 100个样品D2 = randi([0 1],100,2);% 100个样品D3 = randi([0 1],100,2);% 100个样品

创建一个平坦衰落的2x2 MIMO通道系统对象正弦函数的和衰落的技术。为了使结果可以重复,请使用名称-值对指定种子。随着InitialTime属性未指定时,将从时间0开始模拟衰落信道。启用路径增益输出端口。

mimoChan1 = com . mimochannel (“SampleRate”, 1000,...“MaximumDopplerShift”5,...“RandomStream”“mt19937ar with seed”...“种子”, 17岁,...“FadingTechnique”正弦函数的和...“PathGainsOutputPort”,真正的);

创建MIMO通道系统对象的克隆。设置InitialTimeSource财产输入端口方法的输入参数指定衰落信道偏移时间mimoChan函数。

mimoChan2 =克隆(mimoChan1);mimoChan2。InitialTimeSource =输入端口的

通过第一个通道对象传递随机二进制数据,mimoChan1.数据在所有1000个时间样本上传输。对于本例,只需要复杂路径增益。

[~,pg0] = mimoChan1(d0);

通过第二个通道对象传递随机数据,mimoChan2,其中初始时间偏移量作为输入参数提供。

[~,pg1] = mimoChan2(d1,0.1);[~,pg2] = mimoChan2(d2,0.4);[~,pg3] = mimoChan2(d3,0.7);

比较两个通道处理的样本数量信息方法。你可以看到1000个样品被处理了mimoChan1而只有300个被处理mimoChan2

G = info(mimoChan1);H = info(mimoChan2);(G。NumSamplesProcessed H.NumSamplesProcessed]
ans =1×21000 300

将路径增益转换为与第一发射天线和第一接收天线对应的路径的分贝。

pathGain0 = 20*log10(abs(pg0(:,1,1,1))));pathGain1 = 20*log10(abs(pg1(:,1,1,1))));pathGain2 = 20*log10(abs(pg2(:,1,1,1))));pathGain3 = 20*log10(abs(pg3(:,1,1,1))));

绘制连续和不连续情况下的路径增益。观察到三个部分的增益与连续情况下的增益完全匹配。两者的对齐突出表明,正弦和技术非常适合于模拟分组数据,因为即使在数据不传输时,信道特性也保持不变。

情节(t0、pathGain0“r——”)举行情节(t1, pathGain1,“b”)情节(t2, pathGain2“b”)情节(t3、pathGain3“b”grid xlabel(的时间(秒)) ylabel (路径增益(dB))传说(“连续”“不连续”“位置”“西北”

论证了正弦和衰落技术在模拟具有突发数据的信道时的优越性。

设置仿真参数,采样率为100 kHz,仿真总时间为100秒,突发数据占空比为25%。

Fs = 1e5;%赫兹尖= 100;%秒占空比= 0.25;

使用默认值创建一个平坦衰落的2x2 MIMO通道对象滤波高斯噪声技术。

fgn = com . mimochannel (“SampleRate”fs);

方法创建类似的MIMO通道对象正弦函数的和将衰落过程开始时间作为输入参数给出的技术。

sos = com . mimochannel (“SampleRate”fs,...“FadingTechnique”正弦函数的和...“NumSinusoids”现年48岁的...“InitialTimeSource”输入端口的);

在经过滤波的高斯噪声MIMO信道对象中运行连续的随机比特序列。使用tic/toc秒表计时器函数来测量函数调用的执行时间。

Tic y = fgf (randi([0 1],fs*tsim,2));tFGN = toc;

为每秒传输一个数据突发,通过调用MIMO信道对象将随机位通过正弦和MIMO信道对象紧急求救信号for循环中的函数。使用tic/toc秒表计时器来测量执行时间。

抽搐k = 1:尖z = sos (randi ([0, 1], fs * dutyCycle, 2), 0.5 + (k - 1));结束tSOS = toc;

比较正弦波执行时间和滤波高斯噪声执行时间的比值。其比值小于1,表明正弦和法速度较快。

tso / tFGN
Ans = 0.3154

算法

全部展开

中描述了每个链接的衰落处理模拟多径衰落信道的方法并假设所有(NT×NR) MIMO信道的链路。每个链路包括该链路的所有多路径。

参考文献

[1] Oestges, C.和B. Clerckx。MIMO无线通信:从现实传播到空时码设计,学术出版社,2007年。

[2] Correira, L. M.移动宽带多媒体网络:4G技术、模型和工具,学术出版社,2006。

[3]克莫,J. P.舒马赫,K. I.佩德森,P. E.莫根森和F.弗雷德里克森。“具有实验验证的随机MIMO无线电信道模型。”IEEE通讯选定领域杂志。Vol. 20, no . 6, 2002, pp. 1211-1226。

[4]耶路撒冷,M. P.巴拉班,K. S.尚木干。通信系统模拟,第二版,纽约:Kluwer学术/全会,2000年。

[5] Pätzold,马提亚斯,王成祥,比约恩·奥拉夫·霍格斯坦德。“基于正弦和的两种新方法,用于有效生成多个不相关瑞利衰落波形。”IEEE无线通信汇刊。Vol. 8, Number 6, 2009, pp. 3122-3131。

扩展功能

在R2012a中引入

这个话题有用吗?