主要内容

comm.RayleighChannel

滤波器输入信号经过多径瑞利衰落信道

描述

comm.RayleighChannel系统对象™过滤器一个输入信号经过多径瑞利衰落信道。衰落模型处理的更多信息,请参阅方法模拟多径衰落信道

过滤输入信号使用多径瑞利衰落信道:

  1. 创建comm.RayleighChannel对象并设置其属性。

  2. 调用对象的参数,就好像它是一个函数。

了解更多关于系统对象是如何工作的,看到的系统对象是什么?

创建

描述

rayleighchan= comm.RayleighChannel创建一个频率选择或frequency-flat多径瑞利衰落信道的系统对象。这个对象过滤器一个真实的或复杂的输入信号通过多路径通道获取channel-impaired信号。

例子

rayleighchan= comm.RayleighChannel(名称,值)使用一个或多个名称-值对参数设置属性。在报价附上每个属性的名字。例如,comm.RayleighChannel ('SampleRate',2)设置输入信号采样率为2。

属性

全部展开

属性,除非另有注明nontunable后,这意味着你不能改变它们的值调用对象。对象锁当你叫他们,释放函数打开它们。

如果一个属性可调在任何时候,你可以改变它的值。

改变属性值的更多信息,请参阅系统设计在MATLAB使用系统对象

输入信号采样率在赫兹,指定为一个积极的标量。

数据类型:

离散路径延迟秒,指定为一个标量或行向量。

  • PathDelays是一个标量,频道频率平坦。

  • PathDelays是一个矢量,信道的频率选择性。

数据类型:

平均收益离散路径的分贝,指定为一个标量或行向量。AveragePathGains必须是相同的大小PathDelays财产。

数据类型:

规范化路径平均收益0分贝,指定为一个逻辑1(真正的)或0()。

  • NormalizePathGains真正的,衰落过程规范化的路径的总功率,平均随着时间的推移,是0分贝。

  • NormalizePathGains的总功率路径收益不是标准化的。

数据类型:逻辑

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

多普勒频移的最大限制适用于每个通道路径。当你设定这个属性0,整个输入的通道仍然是静态的。您可以使用重置目标函数生成一个新的通道实现。的MaximumDopplerShift属性值必须小于SampleRate/ 10 /fc为每一个路径。fc代表的截止频率因子路径。对于大多数多普勒频谱类型的值fc是1。高斯和biGaussian多普勒光谱类型,fc依赖于多普勒频谱结构字段。如何为更多的细节fc定义,请参阅截止频率的因素

数据类型:

多普勒频谱形状对所有通道路径,指定为一个多普勒频谱结构或1 -NP多普勒频谱结构的单元阵列。这些多普勒频谱结构必须返回的输出的形式多普勒函数。NP是离散延迟路径的数量,也就是说,的长度吗PathDelays财产。

  • DopplerSpectrum被定义为一个单一的多普勒频谱结构,所有路径指定的多普勒谱相同。

  • DopplerSpectrum被定义为一个单元阵列的多普勒频谱结构,每个路径都有指定的多普勒频谱中相应的结构单元阵列。

选择指定的光谱类型specType的输入多普勒函数。如果你设置FadingTechnique财产正弦信号的总和,你必须设置DopplerSpectrum多普勒(厕所)

依赖关系

要启用这个特性,设置MaximumDopplerShift积极的价值属性。的MaximumDopplerShift属性定义了最大的多普勒频移值允许在指定的多普勒频谱。

数据类型:结构体|细胞

通道模型衰落技术,指定为“过滤高斯噪声”正弦信号的总和

数据类型:字符|字符串

的正弦曲线用来模拟衰落的过程,指定为一个正整数。

依赖关系

要启用这个特性,设置FadingTechnique财产正弦信号的总和

数据类型:

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

  • InitialTimeSource被设置为“属性”,可以使用InitialTime属性设置初始时间偏移量。

  • InitialTimeSource被设置为输入端口的,指定开始时间的衰落过程通过使用itime系统对象的输入。连续的输入值可以改变调用系统对象。

依赖关系

要启用这个特性,设置FadingTechnique财产正弦信号的总和

数据类型:字符串|字符

初始时间偏移量,在几秒钟内,衰落模型,指定为负的标量。InitialTime必须大于最后一帧的结束时间。InitialTime围捕到最近的样品位置当它不是一个多个1 /SampleRate

依赖关系

要启用这个特性,设置FadingTechnique财产正弦信号的总和InitialTimeSource财产“属性”

数据类型:

的随机数流来源,指定为“全球流”“与种子mt19937ar”

  • “全球流”——当前全球随机数流用于正态分布随机数的一代。在这种情况下,重置目标函数重置通道过滤器。

  • “与种子mt19937ar”——mt19937ar算法用于正态分布随机数的一代。在这种情况下,重置目标函数重置通道过滤器和重新初始化随机数流的价值种子财产。

数据类型:字符串|字符

的初始种子mt19937ar随机数流发生器算法,指定为一个非负整数。当重置对象函数被调用时,mt19937ar随机数流是被重新初始化种子属性值。

依赖关系

要启用这个特性,设置RandomStream财产“与种子mt19937ar”

数据类型:

选择输出路径,指定为0()或1(真正的)。将此属性设置为1(真正的)输出通道路径获得潜在的衰落过程。

数据类型:逻辑

渠道可视化,指定为“关闭”,的脉冲响应,的频率响应,冲动和频率响应,或的多普勒频谱。有关更多信息,请参见渠道可视化

数据类型:字符串|字符

比例的样本显示,指定为“25%”,“10%”,“50%”,或“100%”。显示更少的样品提高(降低)显示更新速度减少可视化精度为代价的。

依赖关系

要启用这个特性,设置可视化财产的脉冲响应,的频率响应,或冲动和频率响应

数据类型:字符串|字符

多普勒显示路径,指定为一个正整数。使用这个属性来选择离散路径用于构建一个多普勒频谱图。指定的路径必须是一个元素{1,2,…,NP}。在这个集合中,NP是离散延迟路径的数量,也就是说,的长度吗PathDelays属性值。

依赖关系

要启用这个特性,设置可视化财产的多普勒频谱

数据类型:

使用

描述

y= rayleighchan (x)过滤输入信号x通过一个多径瑞利衰落信道,并返回的输出信号y

(y,pathgains)= rayleighchan (x)返回通道路径获得底层多径瑞利衰落的过程pathgains。使这个语法设置PathGainsOutputPort属性设置为1(真正的)。

___= rayleighchan (x,itime)通过多径瑞利衰落信道传递数据开始在指定的初始时间itime。要启用这种语法,设置FadingTechnique财产正弦信号的总和InitialTimeSource财产输入端口的

输入参数

全部展开

输入信号,指定为一个N年代1的向量,N年代是样品的数量。

数据类型:|
复数的支持:金宝app是的

最初的时间间隔,以秒为单位,指定为负的标量。的itime输入必须大于最后一帧的结束时间。当itime不是多个1 /SampleRate,围捕到最近的样品位置。

数据类型:|

输出参数

全部展开

输出信号,作为一个返回N年代1矢量复杂的值与输入信号相同的数据精度xN年代是样品的数量。

路径,作为一个返回N年代——- - - - - -NP数组中。N年代是样品的数量。NP是离散延迟路径的数量,也就是说,的长度吗PathDelays属性值。pathgains包含复杂的值作为输入信号相同的精度x

对象的功能

使用一个目标函数,指定系统对象作为第一个输入参数。例如,释放系统资源的系统对象命名obj使用这个语法:

发行版(obj)

全部展开

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

例子

全部折叠

这个例子展示了如何产生相同的多径瑞利衰落信道响应通过使用两个不同的随机数生成方法。多径瑞利衰落信道系统对象™包括随机数生成的两种方法。您可以使用当前全球流或mt19937ar算法与指定的种子。通过与全球流交互、系统对象可以从这两个方法产生相同的输出。

创建一个相移键控调制系统对象来调节随机生成的数据。

pskModulator = comm.PSKModulator;channelInput = pskModulator (randi ([0 pskModulator.ModulationOrder-1], 1024 1));

创建一个多径瑞利衰落信道的系统对象,指定随机数生成方法my19937ar算法和随机数种子22。

rayleighchan = comm.RayleighChannel (“SampleRate”,10 e3,“PathDelays”1.5[0]的军医,“AveragePathGains”3 [2],“NormalizePathGains”,真的,“MaximumDopplerShift”30岁的“DopplerSpectrum”{多普勒(“高斯”0.6)、多普勒(“平”)},“RandomStream”,“与种子mt19937ar”,“种子”,22岁,“PathGainsOutputPort”,真正的);

过滤调制数据利用多径瑞利衰落信道系统对象。

[chanOut1, pathGains1] = rayleighchan (channelInput);

设置系统对象使用全球流随机数生成。

释放(rayleighchan);rayleighchan。RandomStream=“全球流”;

设置全局流有相同的种子,当创建指定多径瑞利衰落信道的系统对象。

rng (22)

滤波器调制数据利用多径瑞利衰落信道系统对象。

[chanOut2, pathGains2] = rayleighchan (channelInput);

验证通道和路径增益输出的两个方法都是相同的。

isequal (chanOut1 chanOut2)
ans =逻辑1
isequal (pathGains1 pathGains2)
ans =逻辑1

这个例子展示了如何创建一个频率选择多径瑞利衰落信道系统对象和显示它的冲动和频率响应。

设置采样率为3.84 MHz。指定路径延迟和收益通过ITU行人B通道配置。设置最大的多普勒频移至50赫兹。

fs = 3.84 e6;%赫兹pathDelays = [0 200 800 1200 2300 3700] * 1 e-9;%交会avgPathGains = [0 8 -0.9 - -4.9 -7.8 - -23.9];% dBfD = 50;%赫兹

创建一个多径瑞利衰落信道系统对象通过使用前面定义的属性和形象化的脉冲响应和频率响应图。

rayleighchan = comm.RayleighChannel (“SampleRate”fs,“PathDelays”pathDelays,“AveragePathGains”avgPathGains,“MaximumDopplerShift”fD,“可视化”,冲动和频率响应);

生成随机二进制数据,通过多径瑞利衰落信道。脉冲响应图允许您识别单个路径和相应的滤波器系数。的频率响应图显示了频率选择特性ITU行人通道。

x =兰迪([0,1],1000,1);y = rayleighchan (x);

图频率响应包含一个uiflowcontainer类型的轴和其他对象,uimenu uitoolbar。轴2类型的对象包含文本,行。这个对象表示通道1。

数字脉冲响应包含一个uiflowcontainer类型的轴和其他对象,uimenu uitoolbar。轴3杆类型的对象,包含文本。这些对象代表路径增益,通道滤波器系数。

中的示例展示了信道状态是如何维护情况下,数据是间断地传播。创建一个多径瑞利衰落信道系统对象,通过使用sum-of-sinusoids技术传递数据。

设置通道属性。

fs = 1000;%采样率(赫兹)pathDelays = [0 2.5 e - 3];%路径延迟(s)pathPower = [0 6];%路径功率(dB)fD = 5;%最大的多普勒频移(赫兹)ns = 1000;%的样本数量nsdel = 100;%延迟路径的样本数量

定义整个模拟时间和三个部分的数据传输。在这种情况下,信道模拟为1 s 1000 Hz采样率。一个1000 -样本连续传输数据序列在时间为0。三100 -示例数据包传输在乘以0.1 s, 0.4,和0.7 s,分别。

0 = 0.0;奖金= 0.1;拽着= 0.4;版本= 0.7;t0 = (0: ns-1) / fs;% 0传播t1 =奖金+ (0:nsdel-1) / fs;%传输1t2 =拽着+ (0:nsdel-1) / fs;%传输2t3 =版本+ (0:nsdel-1) / fs;%传输3

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

d0 =兰迪([0,1],ns, 1);d1 =兰迪([0 1]nsdel 1);d2 =兰迪([0 1]nsdel 1);d3 =兰迪([0 1]nsdel 1);

创建一个frequency-flat多径瑞利衰落系统对象,指定sum-of-sinusoids衰落技术。这结果可以重复,指定一个种子值。使用默认的InitialTime属性设置,这样衰落信道将模拟时间0。使收益输出的路径。

rayleighchan1 = comm.RayleighChannel (“SampleRate”fs,“MaximumDopplerShift”5,“RandomStream”,“与种子mt19937ar”,“种子”,17岁,“FadingTechnique”,正弦信号的总和,“PathGainsOutputPort”,真正的);

创建一个克隆多径瑞利衰落信道的系统对象。设置初始时间的来源,以便衰落信道补偿时间可以指定作为输入参数在使用系统对象。

rayleighchan2 =克隆(rayleighchan1);rayleighchan2。InitialTime年代ource =输入端口的;

通过随机二进制数据通过第一个多径瑞利衰落信道系统对象,rayleighchan1。数据传输所有1000个样品的时间。对于这个例子,只需要复杂的路径获得。

[~,pg0] = rayleighchan1 (d0);

随机数据通过第二多径瑞利衰落信道系统对象,rayleighchan2,初始时间偏移量作为输入参数提供。

[~,pg1] = rayleighchan2 (d1,奖金);[~,pg2] = rayleighchan2 (d2,拽着);[~,pg3] = rayleighchan2 (d3,版本);

比较样本的数量处理的两个渠道使用信息对象的功能。的rayleighchan1对象处理1000个样本,rayleighchan2对象只处理300个样本。

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

收益的路径转换成分贝。

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

画出路径获得连续和不连续的情况。三个部分的收益匹配连续情况下的增益。的对齐两个强调了sum-of-sinusoids技术是适合通过数据的仿真,由于信道特性保持即使数据不会传播。

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

图包含一个轴。坐标轴标题连续和不连续传输路径增益包含4线类型的对象。这些对象是连续的,不连续。

这个例子展示了如何使用ChannelFilterCoefficients属性返回的信息对象的函数comm.RayleighChannel系统对象复制多径瑞利衰落信道的输出多个帧。

创建一个多径瑞利衰落信道的系统对象,定义两个路径并指定数据通过英吉利海峡。

rayleighchan = comm.RayleighChannel (“SampleRate”,1000,“PathDelays”[0 1.5 e - 3),“AveragePathGains”[0 3],“PathGainsOutputPort”,真正的)
rayleighchan = comm.RayleighChannel属性:SampleRate: 1000 PathDelays: 0.0015 [0] AveragePathGains: [0 3] NormalizePathGains:真正的MaximumDopplerShift: 1.0000 e 03 DopplerSpectrum: [1 x1 struct]显示所有属性
data =兰迪([0,1],600,1);

通过通道传递数据。分配ChannelFilterCoefficients属性值的变量多项式系数。在一个for循环,计算分数延迟路径延迟的位置存储在输入信号多项式系数应用收益的路径,和所有路径的结果。比较多径瑞利衰落信道的输出系统对象(chanout1)输出使用路径收益和复制ChannelFilterCoefficients多径瑞利衰落信道系统的属性对象(chanout2)。

chaninfo = info (rayleighchan);多项式系数= chaninfo.ChannelFilterCoefficients;Np =长度(rayleighchan.PathDelays);状态= 0(大小(多项式系数,2)1、大小(多项式系数,1));nFrames = 10;chkChan = 0 (nFrames, 1);jj = 1: nFrames data =兰迪([0,1],600,1);[chanout1, pg] = rayleighchan(数据);fracdelaydata = 0(大小(数据,1),Np);%计算分数延迟输入信号。2 = 1:Np (fracdelaydata(:,(二),状态(:,(二)]=过滤器(多项式系数(ii):), 1,数据状态(:,ii));结束%应用路径收益和所有路径的结果。比较%通道输出,chanout1 chanout2。chanout2 =总和(pg . * fracdelaydata 2);chkChan (jj) = isequal (chanout1 chanout2);结束chkChan”
ans =1×101 1 1 1 1 1 1 1 1 1

验证路径的自相关瑞利信道增益输出系统对象是一个贝塞尔函数。基于[1]中的结果和附录A[2],我们知道,当路径增益的自相关输出是一个贝塞尔函数,和多普勒频谱Jakes-shaped。

初始化仿真参数。

Rsym = 9600;%输入信号符号速率(符号/秒)sps = 10;%每个输入的样本数量的象征Fs = sps * Rsym;%输入信号采样频率(样本/秒)Ts = 1 / f;%输入信号采样周期(秒)numsym = 1 e6;%的总数输入符号来模拟numsamp = numsym * sps;%的通道来模拟样品总数fd = 100;%最大的多普勒频移(赫兹)num_acsamp = 5000;%的样本自协方差的计算复杂的衰落过程numtx = 1;%的发送天线数量numrx = 1;%的接收天线numsin = 48;%的正弦曲线frameLen = 10000;numFrames = numsamp / frameLen;

配置一个瑞利信道系统对象。

陈= comm.RayleighChannel (“FadingTechnique”,正弦信号的总和,“NumSinusoids”numsin,“RandomStream”,“与种子mt19937ar”,“PathDelays”0,“AveragePathGains”0,“SampleRate”Fs,“MaximumDopplerShift”fd,“PathGainsOutputPort”,真正的);

DPSK调制应用于随机比特流。

tx =兰迪([0,1],numsamp numtx);%随机比特流dpskSig = dpskmod (tx, 2);% DPSK信号

调制信号穿过英吉利海峡。

outsig = 0 (numsamp numrx);pg_rx = 0 (numsamp numrx numtx);frmNum = 1: numFrames [outsig ((1: frameLen) + (frmNum-1) * frameLen:), pathGains] =陈(dpskSig ((1: frameLen) + (frmNum-1) * frameLen:));i = 1: numrx pg_rx ((1: frameLen) + (frmNum-1) * frameLen我:)= pathGains(::,:,我);结束结束

使用通道路径收益收到每个天线,计算每个收发两用的衰落过程的自协方差的道路。

autocov = 0 (frameLen + 1, numrx numtx);autocov_normalized_real = 0 (num_acsamp + 1, numrx numtx);autocov_normalized_imag = 0 (num_acsamp + 1, numrx numtx);我= 1:numrx%计算自协方差的模拟复杂的衰落过程j = 1: numtx autocov (:, i, j) = xcov (pg_rx (:, i, j), num_acsamp);归一化自协方差%真实的一部分真正autocov_normalized_real (:, i, j) = (autocov (num_acsamp + 1:最后,我,j) / autocov (num_acsamp + 1, i, j));%的虚部规范化自协方差autocov_normalized_imag (:, i, j) =图像放大(autocov (num_acsamp + 1:最后,我,j) / autocov (num_acsamp + 1, i, j));结束结束

使用besselj计算复杂的衰落过程的理论自协方差函数。

存款准备金率= 0 (1,num_acsamp + 1);n = 1:1:存款准备金率num_acsamp + 1 (n) = besselj(0, 2 *π* fd * (n - 1) * Ts);结束Rrr_normalized =存款准备金率/存款准备金率(1);

显示自协方差比较结果从瑞利信道系统对象和besselj函数。

次要情节(2,1,1)情节(autocov_normalized_real,“b -”)举行情节(Rrr_normalized的r -)举行传奇(“使用comm.RayleighChannel”,使用第一类贝塞尔函数的)标题(“真正的瑞利过程的一部分的自协方差”次要情节(2,1,2)情节(autocov_normalized_imag)传说(“使用comm.RayleighChannel”)标题(瑞利过程的虚部的自协方差)

图包含2轴。轴1标题自协方差的瑞利过程的一部分包含2线类型的对象。这些对象使用comm.RayleighChannel表示,使用第一类贝塞尔函数。轴2标题自协方差的虚部的瑞利过程包含一个类型的对象。该对象代表使用comm.RayleighChannel。

计算均方误差。

act_mse_real = ((autocov_normalized_real-repmat (Rrr_normalized。', 1, numrx, numtx)) ^ 2, 1) /尺寸(autocov_normalized_real, 1)
act_mse_real = 7.0043 e-08
act_mse_imag =总和((autocov_normalized_imag-0)。^ 2, 1) /尺寸(autocov_normalized_imag, 1)
act_mse_imag = 4.1064 e-07

引用

1。影响,P。,G.E. Bottomley, and T. Croft. “Jakes Fading Model Revisited.”电子信件29日,没有。13 (1993):1162。https://doi.org/10.1049/el: 19930777。

2。Patzold,马蒂亚斯。移动衰落信道。英国奇切斯特:约翰威利& Sons,有限公司,2002年版。https://doi.org/10.1002/0470847808。

更多关于

全部展开

引用

[1]Oestges,克劳德和布鲁诺Clerckx。MIMO无线通信:从现实世界传播时空代码设计。第1版。波士顿,MA:爱思唯尔,2007年。

[2]科雷亚是路易斯·M。,和欧洲an Cooperation in the Field of Scientific and Technical Research (Organization), eds.移动宽带多媒体网络:为4 g技术、模型和工具。第1版。阿姆斯特丹 ;波士顿:爱思唯尔/学术出版社,2006年。

[3]Kermoal,摩根大通,L. Schumacher, K.I. Pedersen, P.E. Mogensen, and F. Frederiksen. “A Stochastic MIMO Radio Channel Model with Experimental Validation.”IEEE在选定地区通讯》杂志上20日,没有。6(2002年8月):1211 - 26所示。https://doi.org/10.1109/JSAC.2002.801223。

[4]Jeruchim米歇尔•C。,Philip Balaban, and K. Sam Shanmugan.模拟通信系统。第二版。波士顿,MA:施普林格,2000年。

[5]Patzold, M。,Cheng-Xiang Wang, and B. Hogstad. “Two New Sum-of-Sinusoids-Based Methods for the Efficient Generation of Multiple Uncorrelated Rayleigh Fading Waveforms.”IEEE无线通信8,不。(2009年6月6日):3122 - 31所示。https://doi.org/10.1109/TWC.2009.080769。

扩展功能

介绍了R2013b