主要内容

comm.rayleighchannel.

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

描述

comm.rayleighchannel.System对象™通过多径瑞利衰落通道过滤输入信号。有关衰落模型处理的更多信息,请参阅模拟多路径褪色频道的方法

使用多径瑞利衰落信道对输入信号进行滤波:

  1. 创造comm.rayleighchannel.对象,并设置其属性。

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

要了解更多关于System对象如何工作的信息,请参见什么是系统对象?

创建

描述

瑞利坎= comm.RayleighChannel创建频率选择或频率平坦的多径瑞利渐次频道系统对象。该对象通过多径通道滤除真实或复杂的输入信号以获得通道损坏的信号。

例子

瑞利坎= Comm.RayLeighChannel(名称,值)使用一个或多个名称值对参数设置属性。将每个属性名称括在引号中。例如,comm.rayleighchannel('采样率',2)将输入信号采样率设置为2。

特性

展开全部

除非另有说明,否则属性是不可努力,这意味着在调用对象后无法更改其值。当您调用它们时,对象锁定释放函数打开它们。

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

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

输入信号采样率(Hz),指定为一个正标量。

数据类型:双倍的

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

  • pathdelays.是标量,频道是频率平。

  • pathdelays.是一个矢量,频道是频率选择性。

数据类型:双倍的

分贝中的离散路径的平均收益,指定为标量或行向量。AveragePathGains必须与pathdelays.财产。

数据类型:双倍的

将平均路径归一化为0 dB,指定为逻辑1真的)或0错误的)。

  • 验证阑尾真的,衰落过程被归一化,使路径增益的总功率随时间的平均为0 dB。

  • 验证阑尾错误的,则路径增益的总功率不归一化。

数据类型:逻辑

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

最大多普勒频移限制适用于每个通道路径。当您将此属性设置为时0,通道仍然是整个输入的静态。你可以使用重置对象函数生成一个新的通道实现。的MaximumdDopplershift.财产价值必须小于采样率/ 10 /fc对于每条路径。fc表示路径的截止频率因子。对于大多数多普勒频谱类型,值fc是1.对于高斯和Bigaussian多普勒频谱类型,fc取决于多普勒频谱结构场。有关如何的详细信息fc已定义,见截止频率系数

数据类型:双倍的

所有通道路径的多普勒频谱形状,指定为多普勒频谱结构或1-by-NP多普勒频谱结构单元阵列。这些多普勒频谱结构必须是从多普勒函数。NP是离散延迟路径的数量,即,的长度pathdelays.财产。

  • 多普勒斯波姆由单个多普勒频谱结构定义,所有路径都具有相同的指定多普勒频谱。

  • 多普勒斯波姆由多普勒频谱结构的单元阵列定义,每个路径具有由单元阵列中的相应结构指定的多普勒频谱。

属性指定频谱类型的选项Spectype.输入到多普勒函数。如果你设置Fadingtechnique财产正弦信号的总和,则必须设置多普勒斯波姆多普勒('杰克')

依赖性

要启用此属性,请设置MaximumdDopplershift.属性设置为正值。的MaximumdDopplershift.属性定义在指定多普勒频谱时允许的最大多普勒换档值。

数据类型:结构体|细胞

信道模型衰落技术,具体为'过滤高斯噪音'要么正弦信号的总和

数据类型:char|细绳

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

依赖性

要启用此属性,请设置Fadingtechnique财产正弦信号的总和

数据类型:双倍的

来源来控制衰落过程的开始时间,指定为'财产'要么输入端口的

  • initialtimesource.被设置为'财产',可以使用InitialTime属性设置初始时间偏移量。

  • initialtimesource.被设置为输入端口的,指定渐退过程的开始时间迭代输入到System对象。输入值可以在对System对象的连续调用中更改。

依赖性

要启用此属性,请设置Fadingtechnique财产正弦信号的总和

数据类型:细绳|char

初始偏移,以秒为单位,用于衰落模型,指定为非负标量。InitialTime必须大于最后一个框架的结束时间。InitialTime当它不是1倍的倍数时,圆形到最近的样本位置采样率

依赖性

要启用此属性,请设置Fadingtechnique财产正弦信号的总和initialtimesource.财产'财产'

数据类型:双倍的

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

  • '全球流'- 当前全局随机数流用于正常分布的随机数生成。在这种情况下,重置Object函数仅重置通道过滤器。

  • “与种子mt19937ar”- MT19937AR算法用于正常分布的随机数。在这种情况下,重置对象函数重置通道过滤器并将随机数流重新升级到值为值种子财产。

数据类型:细绳|char

MT19937AR随机数流生成器算法的初始种子,指定为非负整数。当。。。的时候重置对象函数时,将mt19937ar随机数流重新初始化为种子适当的价值。

依赖性

要启用此属性,请设置随机阵容财产“与种子mt19937ar”

数据类型:双倍的

选项输出路径增益,指定为0错误的)或1真的)。将此属性设置为1真的)输出底层衰落过程的信道路径增益。

数据类型:逻辑

通道可视化,指定为'离开'的脉冲响应的频率响应“脉冲和频率响应”, 要么'多普勒频谱'.有关更多信息,请参见频道可视化

数据类型:细绳|char

显示样品的百分比,指定为“25%”“10%”'50%', 要么“100%”.显示更少的样本可提高(减少)以减少可视化精度的代价来提高(减少)显示更新速率。

依赖性

要启用此属性,请设置可视化财产的脉冲响应的频率响应, 要么“脉冲和频率响应”

数据类型:细绳|char

多普勒显示路径,指定为正整数。使用这个属性来选择用于构造多普勒频谱图的离散路径。指定的路径必须是{1,2,......,NP.在这个集合中,NP是离散延迟路径的数量,即,的长度pathdelays.适当的价值。

依赖性

要启用此属性,请设置可视化财产'多普勒频谱'

数据类型:双倍的

使用

描述

y=瑞利奇坎(x过滤输入信号x通过多径瑞利衰落通道并返回输出信号y

y遗址) = rayleighchan (x返回底层多径瑞利衰落过程的信道路径增益遗址.启用此语法设置pathgainsotputport.物业设为1真的)。

___=瑞利奇坎(x迭代通过MultiPath Rayleigh衰落通道通过多径瑞利衰落通道通过迭代.要启用此语法,请设置Fadingtechnique财产正弦信号的总和initialtimesource.财产输入端口的

输入参数

展开全部

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

数据类型:单身的|双倍的
复数支持:万博1manbetx是的

初始时间(以秒为单位),指定为非负标量。的迭代输入必须大于最后一帧的结束时间。当迭代不是1的倍数采样率,它被围绕到最近的样本位置。

数据类型:单身的|双倍的

输出参数

展开全部

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

路径收益,作为一个返回N年代-经过-NP大批。N年代是样品数量。NP是离散延迟路径的数量,即,的长度pathdelays.适当的价值。遗址包含具有与输入信号相同精度的复数x

对象功能

要使用对象函数,请将System对象指定为第一个输入参数。例如,要发布命名的系统对象的系统资源obj.,使用此语法:

释放(obj)

展开全部

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

例子

全部收缩

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

创建PSK调制器System对象来调制随机生成的数据。

pskmodulator = comm.pskmodulator;ChannelInput = PSKModulator(RANDI([0 pskmodulator.modulationorder-1],1024,1));

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

Rayleighchan = Comm.RayLeighChannel(...'采样率',10e3,...“PathDelays”,[0 1.5E-4],...'平均水平'3 [2],...'验证阑尾',真的,...“MaximumDopplerShift”,30,...'dopplerspectrum',{doppler('高斯',0.6),多普勒(“平”)},...'ronorstream'“与种子mt19937ar”...“种子”, 22岁,...“PathGainsOutputPort”,真正的);

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

[chanout1,pathgains1] = rayleighchan(channicinput);

设置System对象使用全局流来生成随机数。

释放(rayleighchan);rayleighchan。随机阵容='全球流'

将全局流设置为具有在创建多径瑞利衰落通道系统对象时指定的相同种子。

RNG(22)

再次使用多径瑞利衰落信道系统对象对调制数据进行滤波。

[chanOut2, pathGains2] = rayleighchan (channelInput);

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

isequal (chanOut1 chanOut2)
ans =逻辑1
Isequal(pathgains1,pathgains2)
ans =逻辑1

此示例显示了如何创建频率选择性多径瑞利衰落通道系统对象,并显示其脉冲和频率响应。

将采样率设置为3.84 MHz。使用ITU PeStrian B Channel配置指定路径延迟和增益。将最大多普勒移位设置为50 Hz。

fs = 3.84 e6;%Hz.路径延迟= [0 200 800 1200 2300 3700]*1e-9;%交会avgpathgains = [0 -0.9 -4.9 -8 -7.8 -23.9];% D bFD = 50;%Hz.

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

Rayleighchan = Comm.RayLeighChannel('采样率',fs,...“PathDelays”pathDelays,...'平均水平',avgpathgains,...“MaximumDopplerShift”,FD,...'可视化'“脉冲和频率响应”);

生成随机二进制数据并通过多径瑞利衰落信道。脉冲响应图使您能够识别单个路径及其相应的滤波系数。频率响应图显示了国际电联行人B通道的频率选择特性。

X = RANDI([0 1],1000,1);y =瑞利奇(x);

图频率响应包含UiflowContainer,Uimenu,UIToolbar类型的轴和其他对象。轴包含2个类型的文本,线路。该对象表示频道1。

图形脉冲响应包含轴和其他对象的UiflowContainer,Uimenu,UIToolbar类型。轴包含3型阀杆,文本的对象。这些对象表示路径增益,通道滤波器系数。

该示例示出了在不连续发送数据的情况下如何维护信道状态。创建多径瑞利渐渐衰减通道系统对象,并使用正弦曲线技术通过它通过数据。

设置频道属性。

fs = 1000;采样率(Hz)路径延迟= [0 2.5e-3];%路径延迟pathpower = [0 -6];%PATH POWER(DB)FD = 5;%最大多普勒班次(Hz)ns = 1000;%样本数量nsdel = 100;%延迟路径采样数

定义要传输数据的整体仿真时间和三个时间段。在这种情况下,通过1000 Hz采样率模拟通道的1S。在时间为0.在0.1 s,0.4 s和0.7 s时发送三个100样本的连续数据序列。

to0 = 0.0;to1 = 0.1;to2 = 0.4;to3 = 0.7;t0 =(to0:ns-1)/ fs;%传输0.t1 =奖金+ (0:nsdel-1) / fs;%变速器1t2 = to2 +(0:nsdel-1)/ fs;%传输2t3 =版本+ (0:nsdel-1) / fs;%传输3.

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

d0 = randi([01],ns,1);d1 = randi([01],nsdel,1);d2 = randi([0 1],nsdel,1);d3 = randi([01],nsdel,1);

创建一个频率平坦的多径瑞利衰落系统对象,指定正弦和衰落技术。为了使结果可以重复,请指定一个种子值。使用默认的InitialTime属性设置使衰落通道将从时间模拟0.使得路径增益输出。

rayleighchan1 = comm.RayleighChannel ('采样率',fs,...“MaximumDopplerShift”,5,...'ronorstream'“与种子mt19937ar”...“种子”,17,...'fadingtechnique'正弦信号的总和...“PathGainsOutputPort”,真正的);

创建多径瑞利渐渐衰落通道系统对象的克隆。将源设置为初始时间,以便在使用系统对象时可以将衰落信道偏移时间指定为输入参数。

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

将随机二进制数据通过第一多径瑞利衰落信道Rayleighchan1..通过所有1000个时间样本传输数据。对于此示例,仅需要复杂的路径增益。

[〜,pg0] =瑞利奇坎1(D0);

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

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

通过使用通过使用两个通道处理的样本数量信息对象的功能。的Rayleighchan1.对象处理1000个样本,而且Rayleighchan2.对象仅处理300个样本。

g =信息(瑞利琴1);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));

绘制连续和不连续病例的路径增益。三个部分的收益与连续案例的增益相匹配。两种亮点的对准使得正弦曲线技术总和技术适合于模拟分组数据,因为即使在不发送数据时也保持了信道特性。

绘图(T0,Pathgain0,'r--')举行绘图(T1,Pathgain1,'B')绘图(T2,Pathgain2,'B')绘图(T3,Pathgain3,'B')网格Xlabel('时间(秒)')ylabel('路径增益(DB)') 传奇('连续的''不连续''地点''nw') 标题(“连续和不连续传输路径增益”

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

此示例显示了如何使用ChannelWilterCoeffients.归还的财产信息的目标函数comm.rayleighchannel.系统目标重现多帧多径瑞利衰落信道输出。

创建多径rayleigh衰落通道系统对象,定义两个路径并指定数据以通过通道。

Rayleighchan = Comm.RayLeighChannel('采样率',1000,“PathDelays”,[0 1.5E-3],...'平均水平',[0 -3],“PathGainsOutputPort”,真的)
Rayleighchan = Comm.RayLeighChannel具有属性:SAMPLERE:1000 PATHDELAYS:[0 0.0015]普通PATHALGAINS:[0 -3] InclandizePathgains:True MaximumDopplersHift:1.0000E-03 DopplersPectrum:[1x1 struct]显示所有属性
数据= randi([0 1],600,1);

通过频道传递数据。分配ChannelWilterCoeffients.变量的属性值COEFF..在一个for循环中,计算存储在路径延迟位置处的分数延迟输入信号COEFF.,应用路径增益,并将结果和所有路径的结果总和。比较Multipath Rayleigh衰落通道系统对象的输出(chanout1)的输出复制使用路径增益和ChannelWilterCoeffients.Multipath Rayleigh衰落通道系统对象的属性(chanout2)。

chaninfo =信息(瑞利赫坎);coeff = chaninfo.cannelfiltercoeffients;np = length(rayleighchan.pathdelays);状态=零(尺寸(coeff,2)-1,尺寸(coeff,1));nframes = 10;chkchan =零(nframes,1);为了jj = 1: nFrames data = randi([0 1],600,1);[chanout1, pg] = rayleighchan(数据);fracdelaydata = 0(大小(数据,1),Np);%计算延迟输入信号的分数。为了II = 1:NP [Fracdelaydata(:,ii),状态(:,ii)] =...过滤器(Coeff(ii,:),1,数据,状态(:,ii));结束%应用路径增益并将结果与​​所有路径一起。比较%通道输出,chanout1和chanout2。chanout2 = sum(pg。* fracdelaydata,2);Chkchan(JJ)= Isequal(Chanout1,Chanout2);结束chkChan”
ans =1×101 1 1 1 1 1 1 1 1 1

验证从瑞利通道系统对象输出的路径增益的自相关是一个贝塞尔函数。根据[1]和[2]附录A的结果,我们知道当路径增益输出的自相关为贝塞尔函数,多普勒谱为杰克形时。

初始化仿真参数。

Rsym = 9600;%输入信号符号率(符号/秒)SPS = 10;每个输入符号的样本数量Fs = sps * Rsym;%输入信号采样频率(采样/秒)Ts = 1 / f;%输入信号采样周期(秒)numsym = 1e6;模拟输入符号的%总数numsamp = numsym * sps;%要模拟的信道样本总数FD = 100;%最大多普勒频移(Hz)num_acsamp = 5000;计算复杂衰落过程的自动变量的百分比数量numtx = 1;百分比的发射天线数量numrx = 1;%接收天线数numsin = 48;%正弦波数frameLen = 10000;numFrames = numsamp / frameLen;

配置RAYLEIGH频道系统对象。

陈= comm.RayleighChannel ('fadingtechnique'正弦信号的总和...“NumSinusoids”,numsin,'ronorstream'“与种子mt19937ar”...“PathDelays”,0,'平均水平',0,'采样率',fs,...“MaximumDopplerShift”,FD,“PathGainsOutputPort”,真正的);

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

Tx = RANDI([0 1],NUMSAMP,NUMTX);%随机比特流dpsksig = dpskmod(tx,2);% DPSK信号

将调制过的信号通过信道。

outsig = zeros(numsamp,numrx);pg_rx = zeros(numsamp,numrx,numtx);为了frmNum = 1:numFrames [outsig((1:frameLen)+(frmNum-1)*frameLen,:),路径增益]= chan(dpskSig((1:frameLen)+(frmNum-1)*frameLen,:);为了i = 1:numrx pg_rx((1:framelen)+(frmnum-1)* framelen,i,:) = pathgains(:,:,:,i);结束结束

使用每个天线接收的通道路径增益,计算每个发送接收路径的衰落过程的自电转换。

autocov = 0 (frameLen + 1, numrx numtx);autocov_normalized_real = 0 (num_acsamp + 1, numrx numtx);autocov_normalized_imag = 0 (num_acsamp + 1, numrx numtx);为了i = 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)= imag(autocov(num_acsamp + 1:end,i,j)/ autocov(num_acsamp + 1,i,j));结束结束

使用besselj函数计算复杂衰落过程的理论自体转换。

RRR =零(1,num_acsamp + 1);为了n = 1:1:num_acsamp + 1 rrr(n)= besselj(0,2 * pi * fd *(n-1)* ts);结束rrr_normalized = rrr / rrr(1);

显示Autocovariance比较瑞利频道系统对象和贝塞尔函数的结果。

子图(2,1,1)plot(autocov_normalized_real,“b -”)举行绘图(RRR_NORMALIZE,'r-')举行离开传奇(“使用comm.RayleighChannel”使用第一类贝塞尔函数) 标题(“Rayleigh Process的真实部分的自动转移”) subplot(2,1,2) plot(autocov_normalized_imag) legend(“使用comm.RayleighChannel”) 标题(“瑞利工艺的虚构部分的自动转移”

图中包含2个轴。瑞利过程实部的自协方差轴1包含2个类型为线的对象。这些对象分别表示Using comm.RayleighChannel, Using Bessel function。瑞利过程虚部自协方差的轴2包含一个类型为线的对象。这个对象表示Using 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 = sum((autocov_normalized_imag-0)。^ 2,1)/大小(autocov_normalized_imag,1)
ACT_MSE_IMAG = 4.1064E-07

参考文献

1. DET,P.,G.E.billowley,和t. croft。“杰克斯衰落模型重新审视。”电子字母29,不。13(1993):1162。https://doi.org/10.1049/el:19930777。

2.Pätzold,马蒂亚斯。移动褪色渠道.奇琴斯特,英国:约翰瓦利&Sons,Ltd,2002. https://doi.org/10.1002/0470847808

更多关于

展开全部

参考文献

[1]oestges,claude和bruno clerckx。MIMO无线通信:从真实世界的传播到空时编码设计.1 ed。波士顿,马:elsevier,2007年。

[2]Correia,Luis M.和欧洲合作在科技研究(组织),EDS领域。移动宽带多媒体网络:4G技术、模型和工具.1 ed。阿姆斯特丹;波士顿:elestvier /学术出版社,2006年。

[3]kkermoal, j.p., L. Schumacher, k.i Pedersen, P.E. Mogensen和F. Frederiksen。随机MIMO无线信道模型与实验验证IEEE通信选定领域期刊20日,没有。6(2002年8月):1211-26。https://doi.org/10.1109/JSAC.2002.801223。

[4]Jeruchim, Michel C., Philip Balaban,和K. Sam Shanmugan。仿真通信系统.第二版。波士顿,马:斯普林克美国,2000年。

[5]Patzold,M.,Cheng-Xiang Wang和B. Hogstad。“两种基于新的正弦曲线的方法,用于高效生成多个不相关的瑞利衰落波形。”IEEE无线通信汇刊8,不。6(2009年6月):3122-31。https://doi.org/10.1109/twc.2009.080769。

扩展能力

介绍了R2013b