使用LabVIEW简化音频测量
仪器信息网 · 2011-04-05 09:29 · 54127 次点击
概览
音频测量是要求最高的任务之一,它需要高质量的信号采集、复杂的换算、深入的分析以及多种图形化表示。虚拟仪器为定制音频测量应用提供了新的可能性。利用工业标准计算机的强大性能和LabVIEW的灵活性,您可以完成自定义的音频测量。本文描述了如何使用LabVIEW以及声音与振动工具包对音频数据进行采集、分析与显示。我们将会演示最常见的测量以及在音频测量过程中完成多个任务的LabVIEW代码。
介绍
世界上第一次尝试对音频信号的测量发生在1627年,FrancisBacon试图测量开放空间中声音的速度1。虽然他的想法很好,但是由于技术上的局限性,他没有能够得到有效的测量结果。现在,我们使用软件和硬件能够分析包括速度在内的声音信号的许多特性。诸如LabVIEW等编程软件让我们能够在短时间内,利用易用、强大的功能开发复杂的测量应用。本文描述了开发提供更高性能和可扩展性音频系统的步骤。系统将基于LabVIEW工业标准测量软件进行开发。
[attach]45721[/attach]现代音频测量是数字测量系统要求最高的任务之一。要成功完成音频测量,软件必须能够完成多个任务(例如数据换算、滤波、分析与可视化)。从采集数据到显示数据,LabVIEW具有确保精确测量的灵活性与模块性。NI提供了为简化声音与振动测量而设计的工具包来扩展LabVIEW功能。NI硬件与软件能够无缝整合在一起,从而替换了大量箱式仪器,并且提供了更多功能自定义的空间。
下一小节对音频测量中的常见任务进行了一般性解释。本文中的实例使用LabVIEW开发系统专业版或开发系统完整版开发,其中部分使用LabVIEW声音与振动工具包。这些实例可以方便地整合到定制的音频测量系统中。
数据采集、换算与加权
大多数测量系统都包含按照一定物理现象产生电子信号的传感器。测量这些电子信号并将它们输入到计算机进行处理的过程成为数据采集。例如音频等动态信号需要使用高分辨率和高动态范围的数字化设备。NI4461设备提供了24位模数转换(ADCs)以及24位数模转换(DACs),可以同步采集并产生带宽从直流到92kHz的模拟信号以确保高分辨率的测量结果。图1是一个LabVIEWVI的程序框图和部分前面板,它在一台PXI系统中使用17块4461设备进行同步数据采集。当使用多PXI机箱系统的时候,同步通道数可达到1000以上。采集到的数据绘制在图表中。
[attach]45722[/attach]
图1:以每采样24位的精度对112个通道进行同步采样和绘图信号换算
LabVIEW声音和振动工具包(SVT)提供了上层封装VI,以合适的单位显示数据,包括以工程单位表示的时域数据和以分贝为单位的频域数据等等。然而,使用数据采集设备采集到的数值往往与传感器的输出电压呈线性关系,原始数据通常是以电压为单位进行表示。信号换算是将电压数值转换为正确的工程单位的过程。SVSScaleVoltagetoEU.vi提供了将电压信号变换为例如帕斯卡、g、m/s2等单位的简单方法。换算VI是来自数字化仪的原始数据与正在使用的麦克风或传感器相关的有用数值之间的桥梁。图2给出了使用SVT表示数据的VI,它使用合适的单位范围表示对应于实际观察到的物理现象的数值。
[attach]45723[/attach]
图2:使用LabVIEW声音与振动工具包将原始数据换算为合适的工程单位为了得到信号的精确换算,需要对系统进行标定。在被测数值与标准数值之间存在已知关系时,可以进行标定。在音频测量系统中,标定过程需要一个已知数值的外部声音源,它通常来自活塞发声器或声学标定器。SVT提供了标定VI,它能够确保整个测量系统的精度。
加权滤波器
测量硬件通常被设计为在音频带宽中具有线性响应。另一方面,人耳具有非线性性响应。因为在许多情况下,最终的传感器是人耳,我们需要对测量按照人耳模型进行补偿。使用加权滤波器是描述声音主观感知的最佳标准方法。加权滤波器通常使用模拟组件进行构建,不过,SVT提供了时域数据与频域数据的数字加权滤波器。图3是使用加权滤波器的VI,它和NI硬件结合在一起,符合美国国家标准学会(ANSI)的标准。
[attach]45724[/attach]
图3:将加权滤波器应用于SVT的换算数据使用LabVIEW进行音频测量
在完成音频信号的采集、换算与加权之后,我们现在可以利用计算机的处理能力完成复杂的信号分析。本小节描述了行业中所使用的常见音频测量。在简单的说明之后,我们将给出演示如何使用SVT进行这些测量的实例代码。第一部分涵盖了仅仅使用LabVIEW就能够完成的标准测量;第二部分演示了借助SVT如何使用简单的LabVIEW代码进行高级音频测量。
单频信息
音频测量中的多种标准方法需要利用单音频信号进行激励和分析。LabVIEW提供了从信号中提取关于一定音频的重要信息的高级VI。ExtractSingleToneInformation.vi可以找出信号中幅值最大的频率成分,并且计算其幅值、频率和相位。这个VI还提供了导出所提取的音频或去除此音频后的原始信号的选项。此VI还可以在某个频带内进行更细分的搜索,以获取更准确的结果。如图4所示,为ExtractSingleToneInformation.vi对带有噪声的正弦波信号进行分析的结果。这个范例仅限于对单通道信息进行分析,但只要稍加修改,即可实现对多个通道信号的同步分析。
[attach]45725[/attach]
图4:提取信号中单音频的频率、幅值和相位RMS
对于一些应用而言,信号幅值并不能提供足够信息。在例如需要计算增益与功率、信号均方根值等许多测量中,LabVIEW提供了可以通过对瞬间信号数据取平方、对给定时间进行积分、计算开根号结果功能方便地计算均方根数值。BasicAveragesDC-RMS.vi还能够对对信号计算得到的均方根数值取平均值。这个VI还包含了时间窗选项,可以得到更好的测量结果。图5展示了如何使用LabVIEW使用汉宁窗计算线性平均直流与均方根数值。
[attach]45726[/attach]
图5:获得采集信号的平均均方根数值增益
增益是在音频系统中进行的一项基本测量。系统取得激励信号并产生响应信号。系统对信号进行放大的因数称为增益。在不同频率下计算一系列增益测量时,能够生成系统的频率响应函数。图6给出了根据采集激励与响应,计算系统增益的基本VI。这个例子通过计算响应的均方根数值对输入均方根数值的比例得到增益。这个实例用分贝表示增益,它是衡量响应的常用方法。
[attach]45727[/attach]
图6:根据采集信号计算系统增益通道间串扰
通常串扰定义为从一个通道向另一个通道的信号泄漏。要完成这个测量,将信号施加到一个输入上,测量这个信号在其他非驱动通道中的大小。对于不同情况和特定的应用,这个类型测量的定义有不同的标准。通常将这个测量表示为非驱动通道与驱动通道比例的分贝数。图7是完成两个采集信号串扰分析的VI。
[attach]45728[/attach]
图7:计算来自两个采集信号的串扰总谐波失真
谐波失真是输入信号整数倍频率的多余信号。这种失真通常是模拟电路产生的,在确定音频质量中是一个重要的测量参数。谐波失真通过一定阶次谐波电平对原始信号电平的比例进行计算。总谐波失真(THD)是输入信号谐波引入的总失真的度量。
噪声与失真信号
进行THD测量的另一个选择包含在LabVIEWSINADanalyzer.vi中。信号噪声及失真比(SINAD)是输入信号能量与噪声以及谐波中能量之和的比例。音频质量可以用SINAD测量进行评估,因为这个结果让我们了解被测信号相对于不需要的噪声和失真相比占多少比重。
总谐波失真加噪声
得到信号的SINAD使其他测量变得更加简单,例如,总谐波失真加噪声(THD+D)可以通过SINAD方便地计算得到。THD+N通常用百分比表示。用分贝表示的THD+N与SINAD互补,所以要得到用百分比表示的THD+N需要进行转换。激励信号的实际电平是十分重要的,因为SINAD和THD+N与施加的激励信号有关。
图8中的例子展示了如何使用声音与振动工具包中的ToneMeasurementsExpressVI来方便的获得输入信号的THD,SINAD,以及THD+N等信息。
[attach]45729[/attach]
图8:使用LabVIEW测量总谐波失真(THD),噪声与失真信号(SINAD)以及总谐波失真加噪声(THD+N)动态范围
动态范围是音频系统的常见指标,即整个信号范围相对于系统中最小信号的比例。动态范围可以视为信号噪声比,因为系统中的最小信号通常是噪声,主要区别在于动态范围是在信号存在时,使用系统的背景噪声进行计算的。动态范围通常用分贝表示,可以在加权背景信号中进行计算,从而得到加权动态范围。图11计算包含单音频信号的动态范围。可以使用SVT加权VI进行加权得到A加权的动态范围测量结果。
[attach]45730[/attach]
图9:确定单音高信号的动态范围。声音强度测量
最常见的音频测量可能是声音强度。声音强度定义为声压的动态变化。通常测量参照人类可以产生听觉的临界值(通常为20µP)进行度量,并且按照对数强度比例用分贝进行表示。在进行声音强度测量时,您通常使用加权滤波和平均。SVT能够方便地进行多种声音强度测量。在图12中,我们给出了计算基于采集数据的不同声音压力。还可以进行重复测量,计算反响次数或是一定时间内的等效噪声强度。
[attach]45731[/attach]
图10:使用SVT从采集数据计算多个声音强度测量音阶分析
分数音阶分析是分析音频与声学信号中广泛使用的技术,因为这种分析展示了类比于人耳响应的特性。这个过程包括通过带通滤波器发送时域信号,计算信号的均方值以及在方块图上显示这些数值。ANSI与国际电工委员会(IEC)标准定义了音阶分析仪的规范。带通滤波器特性与图表通过所需的频率带和所需的音阶分数定义。NIDSA板卡以及SVT能够创建与国际标准完全兼容的分数音阶分析仪。SVT包含符合ANSI和IEC标准的VI,它们可以进行全音阶直至1/24音阶分析。图11展示了使用SVT进行三分之一音阶分析。
[attach]45732[/attach]
图11:基于ANSI标准完成1/3音阶分析频带功率
频率测量常用于音频应用中。SVT包含用于频率分析的强大工具。我们有用于基带FFT、基带子集分析与zoomFFT的工具,它们能够获取功率谱、功率谱密度等等。SVTPowerinband.vi是频率谱分析VI之一。它计算指定频率范围内的总功率。如图12所示,您可以从功率谱、功率谱密度、幅值谱或连续输出功率谱中获得频带功率。结果根据输入单位,用适当的单位进行表示。
[attach]45733[/attach]
图12:找出指定频带中的功率频率响应
进行频率响应分析的目的通常是得到被测系统频率响应函数(FRF)的特征。FRF表示在频域中输出对输入的比例。FRF曲线是音频设备中的典型规范。有多种方法可以得到FRF,双通道频率分析可能是其中最快的方法。交叉频谱方法根据两个输入生成频率曲线,它们通常是被测单元(UUT)的激励和响应。
频率响应分析需要的常见配置要求使用UUT的宽带激励(通常是噪声信号或多音高信号)。然后同时采集UUT的激励和响应。完成双通道频率分析可以获得UUT的频率响应和相位响应以及信号连续性。为了改进FRF测量,您可以对响应取平均值,通过对FRF取平均值,您可以获得更为精确的响应曲线。这个方法的优点是能够克服噪声、失真和非相关效应。它唯一的局限性是频率信噪比可能比扫频测量低。图13展示了基于SVT从采集到的激励与响应中获得波特图的VI。
[attach]45734[/attach]
图13:使用跨频谱方法获得频率响应函数结论
这里讨论的测量只是LabVIEW用于音频测量的简介。将硬件与软件整合在一起完成整个测量过程,包括采集数据、分析与显示。LabVIEW的强大功能和灵活性可以扩展系统,生成多个测量结果、自动化测试、生成报告,从而可以提高性能并且降低总成本。