主要内容

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

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

检查支持包安装金宝app

检查是否安装了“Windions Toolbox”支持包的“获奖者II通道模型”。金宝app

comm金宝appsupportpackagecheck('cst_winner2');

天线阵的库存

在获胜者II通道模型中,每个BS由一个或多个扇区组成,并且每个BS扇区和MS被分配有天线阵列。我们需要首先建立一组可用于BS部门和MS的阵列,我们称之为天线阵列库存。

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

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

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

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

  • 4个元素,半径为5cm

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

s = rng(21);%的可重复性AA (1) = winner2。AntennaArray ('UCA'16、0.3);AA (2) = winner2。AntennaArray ('UCA'12、0.3);AA (3) = winner2。AntennaArray ('UCA',8,0.3);AA(4)= winner2.antennaArray('UCA'4、0.05);

配置系统布局

在300×300(米)的地图上,我们将设置3 BS,5毫秒和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.scenariovector = [6 6 13 13 11 11];对于C2和C3的B4,11的%6为C4cfgLayout。传播条件向量= [0 0 0 0];NLOS % 0

三个BS在X轴上均匀地间隔在0和300之间,并且在Y轴上具有相同的位置。分配MS位置以确保它们与连接BS的距离处于相应方案的有效路径损耗范围。具体地,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部门设立职位。第三,第四和%第五扇区,因为它们属于一个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 BSS分别为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对象。一旦创建了对象,就可以调用它信息方法来查看一些导出的系统参数。例如,在信息方法返回,numbselements.nummselements.NumPaths字段表示BS扇区的数组元素个数,MSs的数组元素个数和每个链路的路径个数。的SampleRate字段还显示了每个链接的抽样率。

WINNERChan = comm.WINNER2Channel (cfgWim cfgLayout);chanInfo = info (WINNERChan)
chanInfo =结构体字段:numlinks:6个numbselement:[16 16 12 8 8] NumMsElements:[4 4 4 4 4 4] Numpsps:[16 16 16 24 24] Samplate:[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);将脉冲信号通过每个链路

绘制MS的接收信号绘制了衰落信道的脉冲和频率响应如何寻找每个链接的想法。在每个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)));结束maxx = max((cell2mat(cellfun(@(x)查找(abs(x)<1e-8,1),“第一”),...rxSig。’,“UniformOutput”假))- chanInfo.ChannelFilterDelay)。/...chanInfo.SampleRate);风骚女子= -麦克斯(chanInfo.ChannelFilterDelay. / chanInfo.SampleRate);xlim([风骚女子,maxX]);包含('时间'');ylabel (“级”);传奇(“链接1”“链接2”'链接3 ''链接4 '“链接5”“链接6”);标题(“第一个接收天线的脉冲响应”);

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

由于第三和第四链路连接到相同的MS并因此具有相同的采样率,我们使用Spectrum Analyzer系统对象将它们绘制在一起。两个链路每个链路每个路径都有16个路径,并展示了显着的频率选择性。

SA = dsp。简介(...“名字”的频率响应...“SpectrumType”'功率密度'...“SampleRate”,chaninfo.samplerate(3),...'位置',[scrsz(3)*。7-figsize / 2,scrsz(4)*。图25-fimsize / 2,fimsious,fimsize],...'标题'的频率响应...“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月。