主要内容

美国职业足球大联盟

最大长度序列

描述

=美国职业足球大联盟返回使用最大长度序列(MLS)技术产生的激励信号。这种类型的序列是伪随机二进制序列。

例子

= mls (l指定输出长度l激励信号的。

例子

= mls (l名称,值使用一个或多个选项指定选项名称,值对参数,除了前面语法中的输入参数。

例子

全部折叠

使用audioread读取脉冲响应记录。创建一个dsp。FrequencyDomainFIRFilter对象使用已知的脉冲响应执行频域滤波。

[irKnown,fs] = audioread(“ChurchImpulseResponse-16-44p1-mono-5secs.wav”);systemModel = dsp.FrequencyDomainFIRFilter(irKnown');

创建MLS激励信号,使用美国职业足球大联盟函数。MLS激励信号必须比脉冲响应长。请注意,MLS激励的长度扩展到2 - 1的下一个幂。

激励= mls(数字(未知)+1);情节(激发)标题(“激励”

图中包含一个轴对象。标题为Excitation的axis对象包含一个类型为line的对象。

重复激励信号四次,以测量三次测量的平均值。第一个MLS序列的记录包含了所有的脉冲响应信息,所以impzest放弃它作为一个热身运行。用零填充激励信号,以考虑滤波器延迟。

numRuns = 4;排泄= repmat(激励,numRuns,1);0(数字(未知)+1,1)];

将激励信号通过已知滤波器,然后添加噪声以模拟实字记录(系统响应)。削减一开始由滤波器引入的延迟。

rec = systemModel(排泄);Rec = Rec + 0.1*randn(size(Rec));rec = rec(数字(irKnown)+2:结束,:);情节(rec)标题(系统响应的

图中包含一个轴对象。标题为“System Response”的axes对象包含一个类型为line的对象。

在现实场景中,MLS序列在被测试系统中回放,同时进行记录。录音将被切断,以便它在MLS序列被拾取的那一刻开始,并被截断以持续重复序列的持续时间。

将激励信号和系统响应传递给impzest函数来估计脉冲响应。绘制已知的脉冲响应和模拟估计的脉冲响应进行比较。

iestimate = impzest(兴奋,rec);样本= 1:数字(未知);情节(样本,irEstimate(样品),“波”...样本,irKnown(样品),“m”。)传说(已知脉冲响应“估计脉冲响应的模拟”

图中包含一个轴对象。axis对象包含2个line类型的对象。这些对象代表已知的脉冲响应,模拟估计的脉冲响应。

生成一个MLS信号,长度为2^14-1个样本,电平为-5 dB。

L = 2^14-1;Level = -5;激发= mls(L,“ExcitationLevel”、水平);

在时间和时间频率上想象激发。对于时域图,只绘制前200个样本的可见性。模式是不变的。

情节(励磁(1:200))

图中包含一个轴对象。axis对象包含一个line类型的对象。

光谱图(激发,512,0,1024,“桠溪”

图中包含一个轴对象。axis对象包含一个image类型的对象。

输入参数

全部折叠

要产生的激励信号的长度,指定为范围[3,2]中的标量29).

请求的输出长度l一定是2 - 1的幂。否则,输出长度增加到下一个有效长度。

请注意

如果使用激励信号所产生的美国职业足球大联盟函数来记录和估计系统的脉冲响应,那么激励信号的长度必须至少与要估计的脉冲响应一样长。

数据类型:|

名称-值参数

指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名称和价值对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。

在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字在报价。

例子:“ExcitationLevel”,5

要产生的激励信号的电平,以dB为单位,指定为范围内的标量(-42 0)

数据类型:|

输出参数

全部折叠

使用最大长度序列(MLS)技术产生的激励信号,作为列向量返回。

数据类型:|

参考文献

Guy-Bart, Stan, Jean-Jacques Embrechts和Dominique Archambeau。不同脉冲响应测量技术的比较音频工程学会杂志.第50卷,2002年第4期,第246-262页。

扩展功能

C/ c++代码生成
使用MATLAB®Coder™生成C和c++代码。

版本历史

在R2018b中引入