主要内容

基于WINNER II信道模型的多衰落信道并行仿真

此示例演示如何设置一个具有多个基站(BS)、多个移动基站(MS)和从一个BS扇区到一个MS的多个MIMO下行链路的系统。您必须下载并安装用于通信工具箱™Add-On的WINNER II信道模型来运行此示例。每个链接都分配了一个传播场景和条件。同时生成所有链路的衰落信道系数。脉冲信号通过每个链路的衰落信道传递。对选定的链路绘制接收到的脉冲和频率响应。

检查支持包安装情况金宝app

检查是否安装了“通信工具箱的WINNER II通道模型”支持包。金宝app

comm金宝appSupportPackageCheck (“CST_WINNER2”);

天线阵的库存

在WINNER II信道模型中,每个BS由一个或多个扇区组成,每个BS扇区和MS被分配一个天线阵列。我们首先需要建立一套阵列,可供BS扇区和MS使用,我们称之为天线阵列库存。

在本例中,所有可用的天线阵列都是均匀圆形阵列(UCA)。清单中有四种不同的UCAs:

  • 16个半径为30厘米的元素

  • 12个半径为30厘米的元素

  • 8个半径为30厘米的元素

  • 4个半径为5厘米的元素

UCAs中的每个天线单元都是全向的。

s = rng (21);%的可重复性AA (1) = winner2。AntennaArray (“台湾”16、0.3);AA (2) = winner2。AntennaArray (“台湾”12、0.3);AA (3) = winner2。AntennaArray (“台湾”8, 0.3);AA (4) = winner2。AntennaArray (“台湾”4、0.05);

配置系统布局

在一张300 × 300(米)的地图上,我们将设置3个BS, 5个MS和6个链接。第一个BS有一个扇区,该扇区配备了16个单元的UCA。第二个BS也有一个扇区,配备了12个单元的UCA。第三个BS有三个扇区,每个扇区都配备了8个单元的UCA。每个MS都有一个4元素的UCA。

BSIdx = {1;2;(3 3 3)};%索引在天线阵列库存向量MSIdx = [4 4 4 4];%索引在天线阵列库存向量numLinks = 6;%链接数= 300;布局范围(米)cfgLayout = winner2.layoutparset (MSIdx BSIdx numLinks, AA,范围);

系统中建模了六个环节。第一个BS连接到第一个和第二个MSs。第二BS连接到第三第三BS女士第一次部门连接到第三和第四海量存储系统(MSs)中,第二部门连接到第五女士,女士及其第三部门没有连接到任何从女士的角度来看,每个人都连接到一个废话,除了第三个,第二个和第三个BSs连接。每个链路分配一个传播场景,从B4(室外到室内)、C2(城市宏单元)和C4(城市宏室外到室内)中选择。对每个链路建立了非视线模型。

cfgLayout。配对= [1 1 2 3 3 4;6 7 8 8 9 10];% cflayout中的索引。站cfgLayout。scenario vecector = [6 6 13 13 11 11];% 6为B4, 11为C2, 13为C4cfgLayout。传播条件向量= [0 0 0 0];NLOS % 0

三个BSs在x轴上均匀分布在0到300之间,在y轴上位置相同。MS位置的分配是为了确保它们到所连接BSs的距离在相应场景下的有效路径损失范围内。其中,B4、C2和C4情景的范围分别为[3,1000]、[50,5000]和[50,5000]米。默认情况下,每个BS扇区的高度为32米,MS扇区的高度为1.5米。每个MS随机分配一个在X、Y和Z方向上不超过0.5 m/s的速度。

%系统中BS扇区和ms数量numBSSect =总和(cfgLayout.NofSect);numMS =长度(MSIdx);为BS部门设立职位。第三,第四和%第5个行业,因为他们属于一个BS。cfgLayout.Stations (1) .Pos (1:2) = (50;150);cfgLayout.Stations (2) .Pos (1:2) = (150;150);cfgLayout.Stations (3) .Pos (1:2) = (250;150);cfgLayout.Stations (4) .Pos (1:2) = (250;150);cfgLayout.Stations (5) .Pos (1:2) = (250;150);%设置MS位置cfgLayout.Stations (6) .Pos (1:2) = (10;180);% 50万从第一个BScfgLayout.Stations (7) .Pos (1:2) = (60;50);% 11180万,从第1位BScfgLayout.Stations (8) .Pos (1:2) = (194;117);从第2位和第3位分别增加了55%和65%cfgLayout.Stations (9) .Pos (1:2) = (260;270);% 1.204亿从第3位BScfgLayout.Stations (10) .Pos (1:2) = (295;90);% 7500万来自第三邦%随机绘制MS速度i = numBSSect + (1:numMS) cfgLayout.Stations(i)。速度= rand(3,1) - 0.5;结束

为了说明系统设置,我们将BSs、MSs以及它们之间的链接绘制在一个2d地图上。在图中,每个BS扇区用一个圆表示,每个MS用一个十字表示,每个链接用对应的BS和MS之间的一条直线表示。第三个BS有三个扇区,在地图上只显示三个圆。

获得所有BS和MS的位置BSPos = cell2mat ({cfgLayout.Stations (1: numBSSect) .Pos});MSPos = cell2mat ({cfgLayout.Stations (numBSSect + 1:结束).Pos});scrsz =得到(大的,“拉”);figSize = min (scrsz ([3,4])) / 2.3;图(“位置”, (scrsz (3) * .5-figSize / 2, scrsz (4) * .7-figSize / 2, figSize, figSize]);持有;网格;哈佛商学院=情节(BSPos (1:), BSPos (2:)”或“);%的阴谋废话hMS =情节(MSPos (1:), MSPos (2:)“xb”);%绘制女士linkIdx = 1: numLinks%的阴谋联系pairStn = cfgLayout.Pairing (:, linkIdx);pairPos = cell2mat ({cfgLayout.Stations (pairStn) .Pos});情节(pairPos (1:), pairPos (2:)“- b”);结束xlim (300 [0]);ylim (300 [0]);包含(“X位置(米));ylabel (“Y位置(米))传说((哈佛商学院,hMS),“废话”“女士”“位置”“西北”);

图中包含一个坐标轴。轴线包含8个线型对象。这些对象代表BS, MS。

配置模型参数

控件创建的结构中可以调整多个模型参数winner2.wimparset函数。本例中中心频率为5.25 GHz。为每个链路建立了路径损耗和阴影衰落模型。为了支金宝app持高达100mhz的带宽,每个链路的两个最强的集群被分成3个子集群,每个子集群相距5ns。所有的链路都以不同的速率采样,这取决于MSs的速度。因为第三和第四个链接连接到同一个MS,所以它们拥有相同的采样率。

frameLen = 1600;%生成的样本个数cfgWim = winner2.wimparset;cfgWim。NumTimeSamples = frameLen;cfgWim。IntraClusterDsUsed =“是的”;cfgWim。CenterFrequency = 5.25 e9;cfgWim。UniformTimeSampling =“不”;cfgWim。ShadowingModelUsed =“是的”;cfgWim。PathLossModelUsed =“是的”;cfgWim。RandomSeed = 31415926;%的可重复性

创建WINNER II通道系统对象™

我们现在可以使用模型和布局配置来创建一个WINNER II通道System对象。一旦创建了对象,就可以调用它信息方法来查看一些导出的系统参数。例如,在信息方法返回,NumBSElementsNumMSElementsNumPaths字段表示BS扇区的数组元素个数,MSs的数组元素个数和每个链路的路径个数。的SampleRate字段还显示了每个链接的抽样率。

WINNERChan = comm.WINNER2Channel (cfgWim cfgLayout);chanInfo = info (WINNERChan)
chanInfo =结构体字段:NumLinks: 6 NumBSElements: [16 16 12 8 8 8] NumMSElements: [4 4 4 4 4 4 4] NumPaths: [16 16 16 16 16 16 24 24] SampleRate: [1x6 double] ChannelFilterDelay: [7 7 7 7 7 7] NumSamplesProcessed: 0

处理每个链路的脉冲信号

我们通过每个链接传递一个脉冲信号,并观察在ms处的脉冲和频率响应。为此,我们需要为每个链接创建脉冲信号,并将它们聚合到一个单元阵列中。这是通过使用NumBSElements场的信息方法返回和cellfun函数。脉冲信号单元阵列由信道对象处理。

txSig = cellfun (@ (x) [1 (1, x); 0 (frameLen-1 x)),...num2cell (chanInfo.NumBSElements)”,“UniformOutput”、假);rxSig = WINNERChan (txSig);将脉冲信号通过每个链路

在MSs处绘制接收信号,可以了解衰落信道的脉冲和频率响应如何寻找每个链路。在每个MS的4个天线中,只有第一个天线接收的信号被标绘。在脉冲响应图中可以捕捉到链路以不同速率采样的事实。对于每个链路,从信道滤波器延迟的前几个样本被绘制在负时间轴上,如果有的话。

图(“位置”, (scrsz (3) * .3-figSize / 2, scrsz (4) * .25-figSize / 2, figSize, figSize]);持有linkIdx = 1:numLinks delay = chanInfo.ChannelFilterDelay(linkIdx);茎(((0:(frameLen-1))延迟)/ chanInfo.SampleRate (linkIdx),...abs (rxSig {linkIdx} (: 1)));结束max((cell2mat(cellfun(@(x))))“第一”),...rxSig。’,“UniformOutput”假))- chanInfo.ChannelFilterDelay)。/...chanInfo.SampleRate);风骚女子= -麦克斯(chanInfo.ChannelFilterDelay. / chanInfo.SampleRate);xlim([风骚女子,maxX]);包含(“时间(s)”);ylabel (“级”);传奇(“链接1”“链接2”'链接3 ''链接4 '“链接5”“链接6”);标题(“第一个接收天线的脉冲响应”);

图中包含一个坐标轴。以第一次接收天线脉冲响应为标题的轴包含6个干式对象。这些对象代表Link 1, Link 2, Link 3, Link 4, Link 5, Link 6。

由于第三和第四链接连接到相同的MS,因此具有相同的采样率,我们使用频谱分析仪系统对象将它们绘制在一起。这两个链接各有16条路径,并显示出显著的频率选择性。

SA = dsp。简介(...“名字”的频率响应...“SpectrumType”的功率密度...“SampleRate”chanInfo.SampleRate (3),...“位置”, (scrsz (3) * .7-figSize / 2, scrsz (4) * .25-figSize / 2, figSize, figSize),...“标题”的频率响应...“ShowLegend”,真的,...“ChannelNames”, {'链接3 ''链接4 '});SA (cell2mat (cellfun (@ (x) x (: 1), rxSig(3:4, 1)”,“UniformOutput”、假)));

频率响应包含一个轴和其他类型的uiflowcontainer, uimenu, uitoolbar对象。标题为“频率响应”的轴包含两个类型为line的对象。这些对象表示Link 3, Link 4。

rng(年代);%恢复RNG

进一步的探索

该示例展示了如何配置一个WINNER II衰落信道系统对象来建模一个从BSs到MSs的多MIMO链路系统。进一步的勘探包括对油田的改造cfgLayoutcfgWim以模拟不同的天线阵列,如均匀线性阵列(ULA)、BS/MS位置和配对、传播场景和条件等。

因为第三和第四链路连接到同一个MS,你可以结合从两个链路接收到的信号,通过适当地抵消样本来考虑两个链路上的信道滤波器延迟。

选定的参考书目

  1. istwinner II,“WINNER II渠道模型”,D1.1.2, 2007年9月。