mimochannel系统对象
通过MIMO多径衰落信道对输入信号进行滤波
描述
com . mimochannel对象通过多输入/多输出(MIMO)多径衰落信道对输入信号进行滤波。该对象同时对瑞利衰落和瑞利衰落进行建模,并采用Kronecker模型对链接之间的空间相关性进行建模。处理详情请参见算法部分。
通过MIMO多径衰落信道对输入信号进行滤波:
创建com . mimochannel对象并设置其属性。
使用参数调用对象,就像调用函数一样。
有关系统对象如何工作的详细信息,请参见什么是系统对象?(MATLAB)。
创建
语法
mimochan = com . mimochannel
mimochan = com . mimochannel(名称,值)
描述
创建多输入多输出(MIMO)频率选择或频率平坦衰落信道系统对象™。该对象通过多径MIMO信道对真实或复杂的输入信号进行滤波,以获得信道受损信号。mimochan
= comm.MIMOChannel
使用一个或多个名称-值对设置属性。将每个属性名用单引号括起来。mimochan
= comm.MIMOChannel (的名字
,价值
)
comm.MIMOChannel ('SampleRate', 2)
属性
除非另有说明,属性为nontunable,这意味着在调用对象后不能更改它们的值。对象在调用时锁定,而释放
功能解锁它们。
如果属性为可调,您可以随时更改其值。
有关更改属性值的详细信息,请参见使用系统对象的MATLAB系统设计(MATLAB)。
SampleRate
- - - - - -输入信号采样率
1
(默认)|积极的标量
输入信号采样率(以赫兹为单位),指定为正标量。
数据类型:双
PathDelays
- - - - - -离散路径延迟
0
(默认)|标量|行向量
以秒为单位的离散路径延迟,指定为标量或行向量。
当你设置
PathDelays
对于标量,MIMO信道是频率平坦的。当你设置
PathDelays
对于一个矢量,MIMO信道是频率选择性的。
数据类型:双
AveragePathGains
- - - - - -平均路径增益(dB)
0
(默认)|标量|行向量
以分贝为单位的平均路径增益,指定为标量或行向量。AveragePathGains
一定要和?一样的尺寸PathDelays.
数据类型:双
NormalizePathGains
- - - - - -正常化路径增益
真正的
(默认)|假
规范化路径增益,指定为真正的
或假
.
当您将此属性设置为
真正的
时,衰落过程被归一化,使路径增益的总功率随时间平均为0
dB。当您将此属性设置为
假
时,路径增益没有归一化。
路径增益的平均幂由AveragePathGains财产。
数据类型:逻辑
FadingDistribution
- - - - - -衰落分布
“瑞利”
(默认)|“Rician”
用于信道的衰落分布,指定为“瑞利”
或“Rician”
.
数据类型:字符
KFactor
- - - - - -勒斯衰落信道的k因子
3.
(默认)|积极的标量|行向量
瑞斯特衰落信道的k因子,用正标量或1 × -表示NP正值元素的向量。NP类型指定的路径延迟数PathDelays财产。
如果你设置
KFactor
到标量时,第一个离散路径是一个具有专家级k因子的专家级衰落过程KFactor
.剩下的任何离散路径都是独立的瑞利衰落过程。如果你设置
KFactor
向量的正元素对应的离散路径KFactor
向量是一个具有由该元素指定的专家级k因子的专家级衰落过程。的零值元素对应的离散路径KFactor
矢量是一个瑞利衰落过程。
依赖关系
此属性适用于FadingDistribution是Rician
.
数据类型:双
DirectPathDopplerShift
- - - - - -视距分量的多普勒频移(Hz)
0
(默认)|标量|行向量
以赫兹为单位的瑞斯衰落信道的视距分量的多普勒频移,指定为标量或行向量。此属性的大小必须与KFactor.
如果你设置
DirectPathDopplerShift
为标量,表示第一个离散路径的视距分量多普勒频移,为一个瑞斯衰落过程。如果你设置
DirectPathDopplerShift
离散路径是一个罗氏衰落过程,其视距分量多普勒频移由的元素指定DirectPathDopplerShift
对应于正的元素KFactor向量。
依赖关系
此属性适用于FadingDistribution是Rician
.
数据类型:双
DirectPathInitialPhase
- - - - - -视距组件的初始相位(弧度)
0
(默认)|标量|行向量
以弧度为单位的瑞尔斯衰落信道的视距分量的初始相位,指定为标量或行向量。此属性的大小必须与KFactor.
如果你设置
DirectPathInitialPhase
对于标量,它表示第一个离散路径的视距分量初始阶段,这是一个瑞氏衰落过程。如果你设置
DirectPathInitialPhase
的元素指定的视距分量初始相位,则离散路径是一个瑞氏衰落过程DirectPathInitialPhase
对应于正的元素KFactor向量。
依赖关系
此属性适用于FadingDistribution是Rician
.
数据类型:双
MaximumDopplerShift
- - - - - -所有信道路径的最大多普勒频移(Hz)
0.001
(默认)|负的标量
所有信道路径的最大多普勒频移,以赫兹为单位,指定为非负标量。
多普勒频移适用于所有信道路径。当您将此属性设置为0
时,整个输入通道保持静态。您可以使用重置
对象函数生成新的通道实现。
MaximumDopplerShift
必须小于(SampleRate/ 10) /fc对于每条路径,其中fc表示路径的截止频率因子。有关截止频率的更多信息,请参见截止频率因子.
数据类型:双
DopplerSpectrum
- - - - - -所有信道路径的多普勒频谱形状
多普勒(厕所)
(默认)|多普勒(“平”)
|多普勒(‘圆’,…)
|多普勒(“钟”,…)
|多普勒(“不对称杰克”,…)
|多普勒(“受限杰克”,…)
|多普勒(“高斯”,…)
|多普勒(BiGaussian,…)
多普勒频谱形状为所有信道路径,指定为单个多普勒频谱结构返回多普勒
函数还是1 ×NP这种结构的单元阵列。此属性的默认值为Jakes多普勒频谱(多普勒(厕所)
).
如果你把一个电话分配给
多普勒
,所有路径具有相同的指定多普勒频谱。如果你指定一个1 ×NP调用的单元格数组
多普勒
使用任何指定的语法,每个路径都具有由数组中相应的多普勒频谱结构指定的多普勒频谱。在这种情况下,NP的值PathDelays财产。
指定多普勒谱/谱所必需的最大多普勒频移值由MaximumDopplerShift财产。
依赖关系
此属性适用于MaximumDopplerShift大于零。
如果你分配FadingTechnique财产正弦函数的和
,您必须设置DopplerSpectrum
来多普勒(厕所)
.
SpatialCorrelationSpecification
- - - - - -空间相关规范
“分离Tx Rx”
(默认)|“没有”
|“组合”
空间相关规范,指定为“分离Tx Rx”
,“没有”
,或“组合”
.
选择
'Spatial Tx Rx'
分别指定发射和接收空间相关矩阵,其中发射天线的数目(NT)和接收天线数目(NR)是派生的。选择
“没有”
指定发送和接收天线的个数。选择
“组合”
为整个信道指定一个相关矩阵,其中的乘积NT而且NR是派生的。
数据类型:字符
NumTransmitAntennas
- - - - - -发射天线数
2
(默认)|正整数
NumReceiveAntennas
- - - - - -接收天线数
2
(默认)|正整数
TransmitCorrelationMatrix
- - - - - -发射机空间相关性
[1 0;0 1]
(默认)|矩阵|三维数组
将发射机的空间相关性指定为NT——- - - - - -NT矩阵或NT——- - - - - -NT——- - - - - -NP数组中。NT发射天线的数量,和NP的值PathDelays财产。
如果
PathDelays
是标量,信道是频率平坦的,和TransmitCorrelationMatrix
是一个NT——- - - - - -NT埃尔米特矩阵。任何非对角线元素的大小必须不大于两个对应对角线元素的几何平均值。如果
PathDelays
是矢量,信道是有频率选择性的,你能指定吗TransmitCorrelationMatrix
作为一个矩阵。每条路径具有相同的发射空间相关矩阵。或者,您可以指定
TransmitCorrelationMatrix
作为一个NT——- - - - - -NT——- - - - - -NP数组,其中每个路径可以有自己不同的发射空间相关矩阵。
依赖关系
属性时应用此属性SpatialCorrelationSpecification财产“分离Tx Rx”
.
数据类型:双
复数支持:万博1manbetx是的
ReceiveCorrelationMatrix
- - - - - -接收机空间相关性
[1 0;0 1]
(默认)|矩阵|三维数组
将接收器的空间相关性指定为NR——- - - - - -NR矩阵或NR——- - - - - -NR——- - - - - -NP数组中。NR接收天线的数量,和NP的值PathDelays财产。
如果PathDelays是标量,信道频率平坦,和
ReceiveCorrelationMatrix
是一个NR——- - - - - -NR埃尔米特矩阵。任何非对角线元素的大小必须不大于两个对应对角线元素的几何平均值。如果PathDelays是矢量,信道是有频率选择性的,你能指定吗
ReceiveCorrelationMatrix
作为一个矩阵。每条路径具有相同的接收空间相关矩阵。或者,您可以指定
ReceiveCorrelationMatrix
作为一个NR——- - - - - -NR——- - - - - -NP数组,其中每个路径可以有自己不同的接收空间相关矩阵。
依赖关系
属性时应用此属性SpatialCorrelationSpecification财产“分离Tx Rx”
.
数据类型:双
复数支持:万博1manbetx是的
SpatialCorrelationMatrix
- - - - - -组合空间相关矩阵
[1 0 0 0;0 1 0 0;0 0 10 0;0 0 0 1]
(默认)|矩阵|三维数组
组合空间相关矩阵,指定为NTR——- - - - - -NTR矩阵或NTR——- - - - - -NTR——- - - - - -NP数组,NTR= (NT✕NR),NP的值PathDelays财产。
如果PathDelays是标量,信道频率平坦,和
SpatialCorrelationMatrix
是一个NTR——- - - - - -NTR埃尔米特矩阵。任何非对角线元素的大小必须不大于两个对应对角线元素的几何平均值。如果PathDelays是矢量,信道是有频率选择性的,你能指定吗
SpatialCorrelationMatrix
作为一个矩阵。每条路径具有相同的空间相关矩阵。或者,您可以指定
SpatialCorrelationMatrix
作为一个NTR——- - - - - -NTR——- - - - - -NP数组,其中每个路径可以有自己不同的组合空间相关矩阵。
依赖关系
属性时应用此属性SpatialCorrelationSpecification财产“组合”
.
数据类型:双
复数支持:万博1manbetx是的
AntennaSelection
- - - - - -天线选择方案
“关闭”
(默认)|“Tx”
|“处方”
|Tx和Rx
天线选择方案,指定为“关闭”
,“Tx”
,“处方”
,或Tx和Rx
.
Tx
表示发射天线和处方
表示接收天线。当您配置除默认设置之外的任何天线选择时,对象需要一个或多个输入来指定为信号传输选择哪些天线。有关更多信息,请参见天线选择.
数据类型:字符
NormalizeChannelOutputs
- - - - - -规范化通道输出
真正的
(默认)|假
规范化通道输出,指定为真正的
或假
.
当您将此属性设置为
真正的
,信道输出按接收天线数量归一化。当您将此属性设置为
假
,通道输出未归一化。
数据类型:逻辑
FadingTechnique
- - - - - -信道模型衰落技术
滤波高斯噪声
(默认)|正弦函数的和
信道模型衰落技术滤波高斯噪声
或正弦函数的和
.
数据类型:字符
NumSinusoids
- - - - - -使用的正弦波数
48
(默认)|正整数
InitialTimeSource
- - - - - -源来控制褪色过程的开始时间
“属性”
(默认)|输入端口的
源来控制衰落进程的开始时间,指定为“属性”
或输入端口的
.
“属性”
—使用InitialTime属性设置初始时间偏移量。输入端口的
属性指定衰落过程的开始时间initialtime
对象的输入。输入值可以在对对象的连续调用中更改。
依赖关系
此属性适用于FadingTechnique是正弦函数的和
.
InitialTime
- - - - - -初始时间偏移
0
(默认)|负的标量
衰落模型的初始时间偏移,以秒为单位,指定为非负标量。
当InitialTime
不是1/的倍数吗SampleRate时,取整到最近的样本位置。
依赖关系
属性时应用此属性FadingTechnique属性设置为正弦函数的和
和InitialTimeSource属性设置为“属性”
.
数据类型:双
RandomStream
- - - - - -随机数流的源
“全球流”
(默认)|“mt19937ar with seed”
随机数流的源,指定为“全球流”
或“mt19937ar with seed”
.
“全球流”
—当前全局随机数流用于正态分布随机数生成。在这种情况下,重置
对象函数只重置筛选器。“mt19937ar with seed”
——采用mt19937ar算法生成正态分布随机数。在这种情况下,重置
对象函数将重置筛选器,并将随机数流重新初始化为种子财产。
数据类型:字符
种子
- - - - - -mt19937ar随机数流初始种子
73
(默认)|非负整数
mt19937ar随机数流的初始种子,指定为非负整数。当重置
对象函数被调用时,mt19937ar随机数流被重新初始化为种子
价值。
依赖关系
属性时应用此属性RandomStream财产“mt19937ar with seed”
.
数据类型:双
PathGainsOutputPort
- - - - - -输出路径增益的选项
假
(默认)|真正的
选项输出路径增益,指定为假
或真正的
.将此属性设置为真正的
输出底层衰落过程的通道路径增益。
数据类型:逻辑
可视化
- - - - - -渠道可视化
“关闭”
(默认)|的脉冲响应
|的频率响应
|“脉冲和频率响应”
|的多普勒频谱
通道可视化首选项,指定为“关闭”
,的脉冲响应
,的频率响应
,“脉冲和频率响应”
,或的多普勒频谱
.当可视化打开时,所选的信道特性,如脉冲响应或多普勒频谱,将显示在单独的窗口中。有关更多信息,请参见渠道可视化.
依赖关系
可视化仅适用于FadingTechnique属性设置为滤波高斯噪声
.
AntennaPairsToDisplay
- - - - - -发射-接收天线对显示
[1]
(默认)|行向量
PathsForDopplerDisplay
- - - - - -显示多普勒频谱的路径
1
(默认)|正整数
SamplesToDisplay
- - - - - -显示样品的百分比
25%
(默认)|10%
|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
,seltx
)seltx
用于信道处理。
属性时应用此语法AntennaSelection对象的属性“Tx”
.
例如,选择第一个和第三个发射天线索引为有源:
mimochan = com . mimochannel ('AntennaSelection','Tx');Seltx = [1 0 1];...Outsignal = mimochan(insignal,seltx);
打开接收天线,由outsignal
= mimochan (insignal
,selrx
)selrx
用于信道处理。
属性时应用此语法AntennaSelection对象的属性“处方”
.
例如,选择第二个接收天线索引为有源:
mimochan = com . mimochannel ('AntennaSelection','Rx');Selrx = [0 1];...Outsignal = mimochan(insignal,selrx);
打开发射和接收天线,由outsignal
= mimochan (insignal
,seltx
,selrx
)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输入选项。
输入参数
insignal
- - - - - -输入信号
标量|向量|矩阵
输入信号,指定为标量N年代元素列向量,anN年代——- - - - - -NT矩阵,或者N年代——- - - - - -N圣矩阵。
N年代是样本的数量。
NT是发射天线的个数。NT是由TransmitCorrelationMatrix或NumTransmitAntennas对象的属性值。
N圣是否选择发射天线的数量,由元素的数量决定设置为
1
提供给的向量seltx输入。
发射天线的数量由TransmitCorrelationMatrix或NumTransmitAntennas对象的属性值。
数据类型:双
|单
复数支持:万博1manbetx是的
seltx
- - - - - -选择有源发射天线
二进制向量
选择有源发射天线,用1 × -表示NT二进制向量。NT发射天线数。设置为的元素1
识别选定的天线指数和0
识别非选定的天线指数。
数据类型:双
selrx
- - - - - -选择有源接收天线
二进制向量
选择有源接收天线,用1 × -表示NR二进制向量。NR接收天线数。设置为的元素1
识别选定的天线指数和0
识别非选定的天线指数。
数据类型:双
initialtime
- - - - - -初始时间偏移
0
(默认)|负的标量
输出参数
outsignal
-输出信号
矩阵
输出数据信号,返回为N年代——- - - - - -NR或N年代——- - - - - -N老矩阵。
N年代是样本的数量。
NR接收天线数。NR是由ReceiveCorrelationMatrix或NumReceiveAntennas对象的属性值。
N老是否选择接收天线的个数,由元素个数决定设置为
1
提供给的向量selrx输入。
pathgains
-输出路径增益
四维数组
输出路径增益,返回为N年代——- - - - - -NP——- - - - - -NT——- - - - - -NR数组南
未选择的发射-接收天线对的值。
N年代是样本的数量。
NP的值PathDelays财产。
NT是发射天线的个数。
NR接收天线数。
对象的功能
要使用对象函数,请将System对象指定为第一个输入参数。例如,释放system对象的系统资源obj
,使用这种语法:
发行版(obj)
例子
通过4 × 2 MIMO通道传递QPSK数据
通过使用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瑞利衰落信道的空间相关特性
在不指定天线选择的情况下,通过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);
显示多普勒2x2 MIMO通道
创建并可视化具有两条路径的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信道
创建一个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信道的链路。每个链路包括该链路的所有多路径。
克罗内克模型
克罗内克模型假设发射端和接收端的空间相关性是可分离的。等效地,假设出发方向(DoD)和到达方向(DoA)谱是可分离的。全相关矩阵为:
⊗符号代表克罗内克产品。
Rt表示发射端相关矩阵: ,大小NT——- - - - - -NT.
Rr表示接收端的相关矩阵: ,大小NR——- - - - - -NR.
可以得到MIMO信道矩阵的实现形式为:
一个是一个NR——- - - - - -NT均值为零,单位方差为零的独立同分布复高斯变量矩阵。
截止频率因子
下面的信息解释了截止频率因子,fc,是根据不同的多普勒频谱类型确定的:
对于除高斯和bigauss以外的任何多普勒频谱类型,fc=
1
.对于一个
多普勒
(“高斯”)
光谱类型,fc=NormalizedStandardDeviation∙√2∙日志(2))
.对于一个
多普勒
(“BiGaussian”)
光谱类型:如果
PowerGains (1)
而且NormalizedCenterFrequencies (2)
字段值都是0
,然后fc=NormalizedStandardDeviation(1)∙√2∙日志(2))
.如果
PowerGains (2)
而且NormalizedCenterFrequencies (1)
字段值都是0
,然后fc=NormalizedStandardDeviation(2)∙√2∙日志(2))
.如果
NormalizedCenterFrequencies
字段值为(0,0)
和NormalizedStandardDeviation
那么Field有两个相同的元素fc=NormalizedStandardDeviation(1)∙√2∙日志(2))
.在所有其他情况下,fc=
1
.
天线选择
当物体处于天线选择模式时,它使用以下算法来处理输入信号:
所有随机路径增益总是生成的,并为每个链接不断演变,无论是否选择给定的链接。输出非选定链接的路径增益值将被填充
南
.空间相关性仅适用于选定的发射和/或接收天线,相关系数为发射、接收或组合相关矩阵中的对应项。换句话说,所选发射或接收天线的空间相关矩阵是发射、接收或组合空间相关矩阵属性值的子矩阵。
通过路径增益进行的输入过滤仅应用于所选链路。
每当与特定发射机相关联的链路从选定状态转换到非选定状态时,其信道滤波器将被重置。例如,如果天线选择属性设置为
Tx
所选发射天线从2
来1
,天线对应的信道滤波器2
将被重置。信道输出归一化发生在所选接收天线的数量上。
参考文献
[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。
扩展功能
C/ c++代码生成
使用MATLAB®Coder™生成C和c++代码。
使用注意事项和限制:
看到系统对象在MATLAB代码生成(MATLAB编码器)。
另请参阅
系统对象
块
主题
在R2012a中引入
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。万博1manbetx
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。