基于声卡的多功能测试系统

  • A+
所属分类:音频杂谈

王洪伟

 几乎每台电脑或掌上电脑都有一个内置声卡。声卡通常被用来作为音频输入输出设备,用于记录、合成和回放语言、音乐和歌曲。然而,声卡其实可以做得更多。从测控的角度来看,声卡是一个具有双通道模数转换(ADC)和双通道数模转换(DAC)的信号采集和输出设备。它在音频范围内具有平滑的频率响应,采样频率通常为44.1kHz和48kHz,最大可达192kHz,采样位数通常为16bit,最大可达24bit。由于声卡内部都带有增益控制(例如:话筒音量控制、话筒提升控制、线路输入音量控制),即使在不外加信号放大或衰减电路的情况下,它也可以测量从1微伏到1伏左右的信号。声卡支持以连续数据流模式工作,因此可完全利用电脑自身的内存(从数百MB到数GB)或电脑的硬盘(从数十GB到数百GB)来进行数据的不间断存储。与普通的独立式数字存储示波器相比,基于电脑声卡的测试系统的存储深度极大。今日个人电脑的运算速度和存储能力已远非二十年前的286中央处理器、1MB内存、10MB硬盘空间可比,可实时进行包括频谱分析所需要的快速傅里叶变换(FFT)等在内的复杂运算,这使得以前需要采用的极其昂贵的独立式传统仪器才能实现的功能,可通过电脑虚拟仪器软件以极低的成本来实现,而且维护方便,可不断升级。

测量精度由声卡的质量决定。通常是外置声卡最好,其次是内置独立声卡,最后是板载声卡。专业级声卡优于消费级声卡。一块专业级声卡的总谐波失真+噪声(Total Harmonic Distortion  plus Noise,THD+N)可小于0.001%(-100dB),信噪比(Signal-to-Noise Ratio,SNR)可大于110dB,带宽可达1Hz~96kHz,因此能几乎完美地测量音频甚至略微超过音频范围的信号。从价格上讲,即使是专业级声卡,其价格也远低于同类的专业ADC或DAC卡。声卡的时基精度通常为0.00x%,即:几十ppm。例如,一个时基精度为0.002%的声卡,在采样频率为48kHz时,其误差仅为0.96Hz。

那么,声卡适合测量什么呢?它可以近乎完美地测量任何在音频范围内的信号,例如:声音、振动、心肺音、脑电、心电、地震波,电源谐波等,根据所用传感器的不同而不同,当然还要看所采用的软件所提供的功能。目前市面上基于声卡的虚拟仪器软件有不少,从免费的到售价上万元人民币的都有。部分付费软件也提供了免费下载,以让用户试用其部分或全部功能。配上这类软件,无需添加任何ADC和DAC硬件,即可将一台电脑或掌上电脑变成一台集示波器、频谱分析仪、信号发生器、频率计、声压计等多种功能于一体的测试仪器。

一、基于声卡的测试系统的基本架构

 

图1为基于声卡的测试系统的基本架构图,可分为四层。最底层为传感器和执行器层,其上为数据采集和数据输出硬件层,再上面为驱动程序层,最上面为虚拟仪器软件层。

 

1、传感器和执行器层

 

任何在音频范围内甚至略微超过音频范围的物理信号,都可以通过相应的传感器转变为电信号,然后通过声卡的话筒输入或线路输入送到声卡内,进行测试和分析。根据传感器输出信号的强弱、输出阻抗的高低以及声卡的增益和输入阻抗的高低来决定是否需要在传感器与声卡之间插入前置放大器。与普通数据采集卡不同的是,声卡自身已带有前置放大器,能直接接受比较微弱的信号,例如来自话筒的信号。有些声卡还能为需要+15~+48幻象电源的专业话筒提供电源。执行器用于将声卡线路输出口或扬声器输出口送出的电信号,直接或在经过驱动器后转变为物理量,例如扬声器、耳机等。传感器和执行器层也可以是直接对电信号进行输入输出的示波器探头或测试导线。

基于声卡的多功能测试系统

 

2、数据采集和数据输出硬件层

此层由声卡构成。输入进声卡的模拟信号先经过输入混音器,然后进行模数转换(ADC)变为数字量后上传电脑。输入混音器可通过Windows的录音控制面板来控制,以选择录音音源(例如:话筒输入、线路输入、CD唱机、波形输出混音等)并可独立调节各音源的增益。当声卡用作信号采集器时,通常采用线路或话筒输入。话筒输入通常还带有一些高级控件,例如:话筒提升(Microphone Boost)等。若选择"话筒提升"可额外提高话筒增益10倍,即20dB。注意:在将声卡用于测量时,应禁止使用各种音调控制和自动增益控制(AGC),以保持信号的真实性。

电脑输出的数字信号先经过数模转换(DAC)变为模拟信号后,输入到输出混音器,最后从线路或扬声器输出。输出混音器可通过Windows的音量控制面板来控制,以选择放音音源(例如:波形、软件合成器、话筒输入、线路输入、CD唱机等)并可独立调节各音源的增益。当声卡用作信号发生器时,应选用"波形"作为放音音源,而将其它音源静音。

注意:Windows Vista与以前的Windows版本相比,在声卡的输入输出混音器的操作方式和界面上有所不同,但都能实现相同功能。

 

3、驱动程序层

此层由声卡硬件驱动程序、内核模式混音器驱动程序(KMixer)、MME(Microsoft Multimedia Extension)驱动程序或ASIO(Audio Stream Input / Output)驱动程序等构成。声卡硬件驱动程序是最底层的直接与声卡硬件打交道的驱动程序。内核模式混音器驱动程序是Windows XP及以前的几个版本所采用的一个部件,其功能是将不同源头的数据流混合,若有必要的话,自动进行采样频率、采样位数和格式的转变,从而减轻声卡硬件的负担。内核模式混音器的使用通常会给信号的传递带来20~30毫秒的延迟,这在对实时传送要求很高的场合,例如实况广播、专业录音等,会造成问题。但若仅从信号测试的角度来说,这点延迟在绝大多数情况下是可接受的。更应当引起注意是采样频率的自动转换问题。很多声卡其实只支持48kHz和其整数倍的采样频率,但当通过应用软件选择其它采样频率时,声卡仍然能按所要求的任意采样频率采集或输出信号,这是由于内核模式混音器能自动转换采样频率的缘故。从信号测试的角度来说,此功能有利也有弊。例如在分析低频信号时,有时需通过降低采样频率而不是增大FFT点数来提高频谱分析的频率分辨率,这时就可以利用内核模式混音器的自动转换采样频率功能来实现。采样频率的转换有可能造成信号的失真,这在对测量精度要求很高的场合,例如在对设备做失真分析时,要尽量避免,方法是只采用声卡硬件直接支持的采样频率。

MME驱动程序是Windows下的声卡的标准驱动程序之一,适用于任何与Windows兼容的声卡。MME驱动程序必须经过内核模式混音器与声卡硬件驱动程序连接。

ASIO是由德国Steinberg Media Technologies GmbH公司推出声卡驱动接口协议,它直接同声卡硬件驱动程序连接,因而避免了由内核模式混音器造成的延迟问题,同时它不支持采样频率的转换,保证了信号的真实性。ASIO驱动程序只有部分声卡支持,主要在专业音频领域用得很多。对于不支持ASIO驱动程序的声卡,也可以采用一些通用的ASIO驱动程序来实现ASIO功能,最常见的是ASIO4ALL,是免费软件,可到www.asio4all.com下载。

注意:Windows Vista与以前的Windows版本相比,在驱动程序层的结构上有很大改变,但仍然支持MME驱动程序,也能运行ASIO驱动程序。

4、虚拟仪器软件层

此层由虚拟仪器应用软件构成,可对声卡采集到的原始信号进行实时处理、分析和显示,同时也能将软件产生的数据通过声卡输出,可实现示波器、频谱分析仪、频谱瀑布图、声谱图、数据记录仪、振动计、网络分析仪、频率计、声压计、LCR表(即:电感电容电阻表)、相关分析仪、失真分析仪、信号发生器等功能。不同的虚拟仪器软件的性能和功能不尽相同。

5、输出输入回路

声卡能同时进行模拟输出和输入。可利用这一特点,在以上不同的层级处建立回路,实现不同的功能。

第一级回路可建立在声卡硬件的外侧(见图1中箭头1),将信号发生器软件从扬声器输出口或线路输出口输出的信号送入被测系统,然后从话筒输入口或线路输入口采集从被测系统返回来的响应信号,再由虚拟仪器软件进行分析,最后得到被测系统的特征参数。被测系统可以是放大器、扬声器、音响系统、厅堂、甚至电阻、电容、电感等。若仅用一根短导线将声卡的输入输出连接起来,则可对声卡自身的性能参数进行测量。

第二级回路可建立在声卡的混音器级(见图1中箭头2),将信号发生器软件从DAC输出的信号返回到ADC的输入端,再由虚拟仪器软件进行采集分析。可通过Windows的录音控制面板来建立此回路,只需要在录音控制面板中选择"波形输出混音"或类似名称的录音音源即可。这种工作模式很适合于教学,只需要一台电脑,无需其它任何外部设备,即可用信号发生器软件产生各种信号,然后用示波器和频谱分析仪软件进行分析。由于信号通过了声卡中的一些硬件,不是完全的理想信号,因此有真实感。

第三级回路可建立在虚拟仪器软件级(见图1中箭头3),直接将信号发生器软件生成的数字信号送入示波器和频谱分析仪等虚拟仪器软件进行分析,其特点是信号是完全理想的,非常适合于教学。

二、支持声卡的虚拟仪器软件简介

支持声卡的虚拟仪器软件按界面形式可分为两类,一类采用的是与传统仪器面板相似的软件界面,其优点是界面简单,熟悉传统仪器面板的用户比较容易上手,但缺点是软件功能不易扩展,由于传统仪器面板占用了宝贵的屏幕资源,留给数据显示的空间较小,图形窗口不易缩放,因而用户不易看清楚所显示数据的细节。这类界面通常不支持多窗口同时显示(例如:同时显示示波器和频谱分析仪)。另一类采用的是Windows的标准控件和窗口,屏幕资源利用率高,支持多窗口同时显示,图形窗口缩放容易,用户可看清楚所显示数据的细节。这类软件通常功能强大,但初级用户可能感觉不如前一类界面直观。

下面介绍几款国际流行的支持声卡的虚拟仪器软件,入选的必要条件是:

(1)必须在具有独立域名的网站上提供免费下载;

(2)软件可以是免费的,也可以是付费的,但在试用期内,可无限制地使用全部或绝大部分功能;

(3)软件必须是多功能的,最少必须具备示波器、频谱分析仪和信号发生器的基本功能,而且这些基本功能不需要编程实现。

(4)至少支持英文,最好支持中文。

虽然以下介绍的软件都是基于Windows,但也可在其他操作系统中通过相应的Windows仿真软件运行,例如:在Linux下可采用WINE,在Mac OS下,可采用VMware Fusion等。

1、Multi-Instrumnet (万用仪) 3.1

Multi-Instrument是由虚仪科技(Virtins Technology)研发的一款基于电脑的多功能虚拟仪器软件。它支持多种硬件,从几乎所有电脑都配备了的声卡到专用的ADC和DAC硬件,例如:与美国国家仪器公司NI DAQmx兼容的各种ADC和DAC卡、虚仪科技的VT DSO-2810F等,支持声卡MME和ASIO驱动程序,采样位数可为8、16、24bit。它包括下列仪器和功能:

基于声卡的多功能测试系统

图2 Multi-Instrument

(1)示波器

支持双踪波形、波形相加、波形相减、波形相乘、李莎如图、电压表、瞬态信号捕捉、长时间信号录制。支持长波形文件的逐帧读入。支持各种数字滤波:低通、高通、带通、带阻、任意,滤波器种类包括:FFT、FIR、IIR。支持多种触发功能,包括自动触发、正常触发、单次触发、触发延迟等,并支持"卷动"显示方式。可输入传感器的灵敏度,以将电量转变为工程物理量显示。可根据被测信号的特点自动选择采样频率、扫描时间和输入增益。

(2)频谱分析仪

支持幅度谱、倍频程分析(1/1、1/3、1/6、1/12、1/24、1/48、1/96)、参数测量(峰值频率、THD、THD+N、信噪比SNR、信号与噪声加失真之比SINAD、噪声电平NL、互调失真IMD(SMPTE、DIN、CCIF)、带宽、串扰、谐波、多峰检测、用户自定义频带中的能量等)、相位谱、自相关函数测量、互相关函数测量、相干函数测量、传递函数(即频率响应,包括幅频响应和相频响应)测量、冲激响应测量。帧内处理支持频率补偿、频率加权、除去直流、移动平均平滑。帧间处理支持峰值保持、线性平均和指数平均。支持55种窗函数和窗重叠。FFT点数可达4194304。峰值频率的检测精度高于由FFT所决定频率分辨率,即:[采样频率]/[FFT点数]。

(3)信号发生器

包括函数发生器、任意波形发生器、白噪声发生器、粉红噪声发生器、多音合成发生器、MLS(Maximum Length Sequence,最大长度序列)发生器、音阶发生器、DTMF(Dual-Tone Multi-Frequency,双音多频)发生器、扫频/扫幅发生器(线性和对数)、猝发信号发生器等。支持信号发生器与示波器同步运作和输出信号的渐入与渐出。

(4)万用表

包括电压有效值显示、dBV显示、dBu显示、声压dBSPL显示、声压dBA(A加权)显示、声压dBB(B加权)显示、声压dBC(C加权)显示、频率计、计数器、转速计、占空比计、频率/电压变换显示、周期有效值显示、周期平均值显示、振动计。

(5)频谱3D图

频谱3D图用于跟踪频谱随时间的变化,包括瀑布图和声谱图。配有各种调色板,频谱截面可多达200个。

(6)数据记录仪

支持多达129种导出参数(例如:信号的有效值、峰值频率、声压值等)的长时间记录和显示。

(7)LCR表

可测量电感、电容、电阻以及由它们组成的网络的阻抗。用户可自行配置一个或多个测试步骤,并为每个测试步骤选定不同的测试信号频率,以测量被测器件(例如扬声器)在不同频率下的阻抗。

(8)设备测试计划

可配置并运行用户自定义的设备测试步骤。它利用了声卡能同时进行输入输出的特点,来向被测设备(DUT)输出一个激励信号,同时采集从被测设备返回的响应信号进行分析。支持生成不同的激励信号,并能用不同的方法来分析响应信号,可生成测试报告,并对测试结果绘图。可用于对被测设备的合格与不合格检验、测量THD随频率或幅度的变化、用步进扫频信号测量被测系统的频率响应等

Multi-Instrument中的各种仪器可同时工作。该软件采用可任意缩放的图形窗口,窗口内显示的图形可自由缩放,可用光标读取每个数据点的数值,可配置多条参考曲线,可用Windows的剪贴板复制窗口内的文本数据或图像,可保存所配置的参数以便将来调用。该软件支持多种语言包括简体中文,可到www.virtins.com(英文)或www.virtins.com/cn(中文)下载,可无限制地免费试用全部功能21天。Multi-Instrument的软件使用许可证分为六个级别和五个附加模块,售价为24.95美元~499.95美元。

 

Multi-Instrument还有一个掌上电脑版本:Pocket Multi-Instrument 1.0,支持Windows Mobile 2003或以上的掌上电脑操作系统,包括示波器、频谱分析仪和信号发生器,但功能比电脑版少。掌上电脑一般都带有内置话筒,因此可用此软件直接采集和分析声音信号。有的掌上电脑还支持外接话筒,可用其话筒输入来测试外部电信号。此软件提供免费全功能试用,分三个级别,售价为24.95美元~49.95美元。

基于声卡的多功能测试系统

图3 Pocket Multi-Instrument

2、DSSF3 (Diagnostic System for Sound Field 声场诊断系统) 5.1

 

DSSF3是由Yoshimasa Electronic Inc.研发的一款基于电脑声卡的多功能虚拟仪器软件,主要用于声场和音频测试。它支持声卡MME和ASIO驱动程序,采样位数为16bit。整套软件包括三个独立可执行文件:实时频谱分析仪(Real Time Analyzer)、噪声测量系统(Noise Measurement System)、声音分析系统(Sound Analyzing System)。

 

(1)实时频谱分析仪

包括信号发生器、FFT分析仪、示波器、幅频响应、THD分析仪、冲激响应、相关函数3D图、录音机等八个相对独立的模块。其中示波器具有自动触发和单次触发功能,支持双踪波形、波形相加、波形相减和李莎如图,并提供了高通滤波和低通滤波选项。录音机模块可进行长时间录音和放音。FFT分析仪包含功率谱、1/1~1/24倍频程、瀑布图、相关图(包括自相关和互相关)、相位谱、声谱图、互功率谱、相干图、倒谱图等模式。FFT最大点数为65536,支持5种常见的窗函数、频率加权(A、B、C加权)、峰值频率检测、峰值保持、平滑和移动平均,支持对话筒幅频响应的校准。

与前述的Multi-Instrument不同的是,在DSSF3中,幅频响应、THD分析仪、冲激响应是单独的模块,每个模块包含有自己的独立的信号发生器功能和信号分析功能。幅频响应模块支持三种测量系统幅频响应的方法:正弦连续扫频、正弦步进扫频、粉红噪声。THD分析仪能够测量用户指定频率处的THD、用正弦步进扫频方式测量THD~频率曲线、和用正弦步进扫幅方式测量THD~幅度曲线。冲激响应模块支持两种测量系统冲激响应的方法:最大长度序列MLS和时间拉伸脉冲TSP(Time Stretched Pulse),其测量结果可保存并调入DSSF3中的声音分析系统软件进行进一步的声学参数分析。冲激响应和频率响应描述的都是一个线性时不变系统的固有特征,冲激响应是从时域来描述的,而频率响应是从频域来描述的,它们正好是一对傅立叶变换,因此可相互转换。冲激响应测量一般在室内声学测量中用得较多。

相关函数3D图是DSSF3中的一个比较独特的模块,能够测量自相关函数或互相关函数随时间的变化,类似于频谱瀑布图,只不过每个截面不是频谱而是相关函数而已。测量结果可保存并调入DSSF3中的声音分析系统软件进行进一步声学参数分析。

信号发生器模块包括:函数发生器、噪声发生器(包括白噪声、粉红噪声、褐色噪声)、扫频/扫幅发生器、脉冲发生器、多音合成发生器、音阶发生器、任意波形发生器。

 

(2)噪声测量系统

噪声测量系统主要用于环境噪声的记录和噪声的参数测量(例如最大噪声声压等)。支持手动触发噪声录音、电平触发噪声录音、定时触发噪声录音。

 

(3)声音分析系统

声音分析系统可导入三种类型的数据进行声学参数分析:由实时频谱分析仪输出的冲激响应数据、相关函数3D图数据和由噪声测量系统记录的噪声数据。它主要用于室内声学参数分析,可根据所导入的冲激响应数据推导出音乐厅声学的安藤参数、ISO3382标准的室内声学参数(例如混响时间等)、语音清晰度(包括语音传输指数STI和调制传递函数MTF)、系统的频率响应等;可根据所导入的相关函数3D图数据推出声音的时间和空间的各种属性(例如声强、音调、混响、声源位置、声源宽度等);可将所导入的噪声数据进行相关分析后推导其时间和空间的各种属性。

DSSF3中的有些模块可同时工作,例如示波器、FFT分析仪、信号发生器等。有些可能起冲突的模块则不能,例如信号发生器和THD分析仪等,这是由于THD分析仪中已含有专用的信号发生器的缘故。该软件的参数调节控件和图形显示在同一面板上,优点是调节比较方便,但同时也局限了用于图形显示的屏幕幅面。它支持屏幕图形拷贝和按文本方式输出分析结果。DSSF3在建筑物声学分析方面的功能较强,其开发者与在音乐厅声学研究方面造诣颇深的日本神户大学安藤实验室有一定渊源。该软件目前有英文版和日文版,可到www.ymec.com下载,可无限制地免费试用全部功能30天。DSSF3的软件使用许可证分为四个级别,售价为83美元~990美元。

 

基于声卡的多功能测试系统

图4 DSSF3

 

3、SpectraPLUS 5.0

SpectraPLUS是由Pioneer Hill Software研发的一款基于声卡的多功能音频分析仪软件,目前只支持声卡MME驱动程序,采样位数可为8、16、24bit。它包括时间序列(即:示波器)、频谱、瀑布图、声谱图、相位谱等几个独立的主窗口,以及信号发生器、峰值频率、峰值频率幅度、总能量、THD、THD+N、THD+N~频率曲线、IMD、SNR、SINAD、噪声系数NF、左右通道的延迟检测器、立体声相位图(其实就是李莎如图)、混响时间(RT-60)、宏命令处理器、等效噪声级(LEQ)、数据记录仪等工具窗口。

其中示波器支持电平触发、边沿触发、延迟触发和超前触发,允许采用不同的工程单位来显示所采集的数据。例如,若所测得的信号为加速度,则可采用加速度的单位g来显示。该示波器还提供了一些的数据编辑功能,可选取某段数据来进行数字滤波处理,可选择低通、高通、带通、带阻或任意滤波器,也可将所选取的数据段全部置零或调节其增益。频谱分析中的FFT点数最大可达1048576,支持8种常见的窗函数并允许窗重叠,支持多种频谱平均方法包括线性平均、指数平均、向量平均,并可按与普通声压计的快、中、慢三档相同的平均方式工作,还可对频谱进行峰值保持、频谱的平滑等操作。该频谱分析仪还支持互功率谱、相干函数、传递函数、倒谱、功率谱密度PSD、频率加权(A、B、C)、话筒幅频响应补偿、倍频程分析(1/1、1/3、1/6、1/12、1/24、1/48、1/96)等功能。与DSSF3类似,SpectraPLUS也提供了一个独立的测试THD+N~频率曲线的窗口,测试信号为正弦步进扫频信号,而这在Multi-Instrument中需要通过调入该软件的预先定义好的设备检测计划或自行配置设备检测计划来实现。

 

前面曾经提到,FFT的频率分辨率等于[采样频率]/[FFT点数],因此为了提高FFT的频率分辨率,可增加FFT点数或降低采样频率。在某些时候有必要通过降低采样频率来提高频率分辨率,对于Multi-Instrument或DSSF3等软件来说,可直接利用Windows的内核模式混音器的采样频率自动转换功能来实现,其缺点是降低采样频率后的数据的质量由Windows的内核模式混音器决定,无法从外部进行控制。而SpectraPLUS提供了一个降低采样频率的选项,称为Decimation,降频比在1~50之间可调,并可选择是否在降低采样频率之前对原始数据施加低通数字滤波,以滤除奈奎斯特频率(即:1/2采样频率)以上的高频信号在采样频率降低后对数据的影响,避免所谓的频率混叠现象发生。

信号发生器可输出以下信号:白噪声、粉红噪声、猝发白噪声或猝发粉红噪声、1kHz正弦测试信号、多音合成信号、猝发正弦信号、IMD测试信号、线性/对数连续扫频信号、线性/倍频程步进扫频信号、对数连续扫幅信号、锯齿波、三角波、脉冲、矩形波、DMTF、WAV波形文件。

SpectraPLUS支持宏命令编程,这与Multi-Instrument的设备检测计划类似,用户可通过级连多个简单的指令来配置并运行自定义的测试步骤,实现整套测试方案的自动化执行。SpectraPLUS也具有数据记录仪功能,能长时间连续地记录十几种参数,包括:峰值频率、THD,THD+N等。SpectraPLUS还支持动态数据交换(DDE,Dynamic Data Exchange),可与支持DDE的第三方软件(例如Excel)连接或供第三方软件进行二次开发。

SpectraPLUS有三种工作模式:实时模式、后处理模式和录音模式,软件的有些功能只能在某些模式下使用。在录音模式下,可连续不断地利用硬盘进行长时间录音,同时屏幕上的示波器和频谱分析将维持刷新。为了确保不间断地录制,优先权将给予录制过程而不是数据分析和显示过程。各种仪器可同时工作。该软件采用可任意缩放的图形窗口,窗口内显示的图形可自由缩放,可用光标读取每个数据点的数值,可配置多条参考曲线(在该软件中称为Overlay),可用Windows的剪贴板复制窗口内的文本数据、图像、或WAV波形数据。很多待测参数,例如THD等,都有独立的可缩放的窗口显示。可以保存参数配置,以供将来调用。

 

由于历史原因,SpectraPLUS有几个变种,包括SpectraRTA、SpectraPRO和SpectraLAB,但自从其原开发者从Sound Technology分离出来后,就只维护SpectraPLUS了。SpectraPLUS只支持英文,可到www.spectraplus.com下载,免费试用30天。SpectraPLUS的软件使用许可证分为多个级别,售价为295美元~1295美元。

基于声卡的多功能测试系统

图5 SpectraPLUS

4、Soundcard Oscilloscope 1.3

Soundcard Oscilloscope是由Christian Zeitnitz个人采用NI Labview开发的一款基于电脑声卡的多功能虚拟仪器软件,只支持声卡MME驱动程序。它包括示波器、X-Y图(即:李莎如图)、频谱分析仪、信号发生器和录音机功能。它的软件界面部分地模拟了传统仪器的面板,便于初学者操作。其缺点是不能同时显示以上各仪器,只能分页显示。示波器支持自动触发、正常触发和单次触发,采样时间长度的选择范围时为1毫秒~10秒,可根据被测信号自动选择采样时间长度和触发电平,可显示信号的峰-峰值、有效值和峰值频率。在X-Y图中,采样长度在10毫秒到1秒内可选。在频谱分析仪中,横坐标和纵坐标皆可按线性或对数比例显示,并可设置一个十阶贝塞尔数字滤波器,可将其设置为高通、低通或带通滤波器,并可从示波器中观察滤波后的效果。信号发生器可输出正弦波、三角波、锯齿波、白噪声和扫频信号。该软件只支持44100Hz的采样频率和16bit的采样位数。在显示频谱分析仪时,采样时间长度被强制固定在100毫秒上,这是一个明显的局限。

Soundcard Oscilloscope目前支持几种语言包括英文,但不支持中文。软件对于个人或用于非商业用途的教学机构是免费的,可到:www.zeitnitz.de下载。

基于声卡的多功能测试系统

图6 Soundcard Oscilloscope

5、VisualAnalyzer 2009

VisualAnalyzer 2009是由Alfredo Accattatis个人开发的一款基于电脑声卡的多功能虚拟仪器软件,只支持声卡MME驱动程序,采样位数可为8、16和24bit。它由示波器、频谱、相位谱、信号发生器、频率计、电压表、数字滤波器等模块构成。示波器支持触发功能,而且两个通道的触发参数能独立调节,可实现交替触发(ALT)。可显示双踪波形、波形相加、波形相减、李莎如图以及通过频谱分析后得到的倒谱。频谱分析仪支持7种常见的窗函数,FFT点数可达65536点。支持多帧频谱平均、峰值保持、频率补偿、倍频程分析(1/1、1/3、1/6、1/9、1/12、1/24)。信号发生器可输出正弦、方波、三角波/锯齿波(角度可调)、白噪声、粉红噪声、正弦连续扫频、脉冲等信号。它还包含一个多音合成发生器,允许多个不同频率、不同振幅、不同初始相位的正弦波,先各自通过一个常数、正弦、方波或三角波进行调幅后,再叠加在一起。数字滤波器支持FIR低通、FIR高通、FIR带通、FIR带阻、IIR陷波器、IIR倒置陷波器、半波整流。该软件还能测量THD和THD+N等参数。

 

VisualAnalyzer还有一个比较独特功能,那就是它可以在示波器中重构原模拟信号波形,此功能在该软件中称为D/A。我们知道,数字示波器一般上是直接将所采集到的数据点用直线连接起来形成波形图的,有的数字示波器也支持用曲线拟合的方式将数据点连接起来,为了在示波器中比较真实地反映原信号的波形,一般要求示波器的采样频率大于被测信号的5~10倍,也就是说一个信号周期中最少要求采集5~10数据点。而根据奈奎斯特采样定理,采样频率只需要大于被测信号中最高频率的2倍即可准确地测量出被测信号的频谱,并重构原模拟信号。该软件正是利用这个原理来实现模拟信号的重构的。例如,当采用44100Hz的采样频率来采集一个20kHz的正弦信号时,每个信号周期只采集了2.205点,直接利用采集点绘制出来的图形将完全不是正弦波形,但是在频谱分析仪中却能准确地得到该信号的频谱,通过一定的算法,即可重构原模拟信号,在示波器中得到一个完美的正弦波。

在VisualAnalyzer中,各种仪器可同时工作,图形窗口可任意缩放,窗口内显示的图形也支持缩放功能。当程序退出时,能自动保存当前的参数设置。不过笔者在测试中发现,该软件屏幕图形的刷新有较明显的闪烁感。该软件只支持英文,到目前为止仍然是免费软件,可到www.sillanumsoft.org下载。

 

基于声卡的多功能测试系统

图7 VisualAnalyzer

三、输入及输出连接

 

对于基于声卡的系统,被测信号应连接到声卡的话筒输入口或线路输入口。生成的信号可从扬声器输出口或线路输出口输出。

基于声卡的多功能测试系统在通常情况下,声卡话筒输入口的输入阻抗在600欧~50千欧之间(取决于声卡),它的模/数转换满程电压在±1mV~±500mV之间(取决于声卡),可通过Windows控制面板中的录音控制进行调节。若声卡带有外部硬件增益调节旋钮,也可由该旋钮进行调节。话筒输入口通常只允许单通道输入。

 

对于声卡线路输入口,它的输入阻抗通常在1千欧~50千欧之间(取决于声卡),它的模/数转换满程电压在±500mV~±2V之间(取决于声卡),可通过Windows控制面板中的录音控制进行调节。若声卡带有外部硬件增益调节旋钮,也可由该旋钮进行调节。在可能的情况下应尽量使用声卡的线路输入来检测信号,因为它的信噪比(SNR)和带宽都比话筒输入口好。

声卡线路输出口的输出阻抗在20欧~500欧之间(取决于声卡),能输出大约2V的信号。它比扬声器输出口的信噪比(SNR)好。

声卡扬声器输出口的输出阻抗在4欧~8欧之间(取决于声卡),能输出大约2W的功率。声卡的耳机输出口的输出阻抗在4欧~100欧之间(取决于声卡)能输出约100mW的功率。

最简单的输入连接就是直接将被测信号连到声卡的线路输入口或话筒输入口,如下图所示。请注意这种连接要求您额外小心,在连接前必须保证被测信号的幅度在声卡所允许的范围内。否则可能会烧坏声卡甚至电脑。声卡通常只允许不超过3V的电压输入(取决于声卡)。

 

基于声卡的多功能测试系统

图8 最简单的输入连接方式

 

为了避免过大的电压意外地进入声卡,可采用如下的限压电路。两个串联的硅二极管将输入电压钳制在2×0.65=1.3(V)左右。如果声卡的模/数转换满程范围因此受到限幅影响,则可多串联一个硅二极管以将输入声卡的电压钳制在3×0.65=1.95(V)左右。当被测信号幅度超过声卡模/数转换满程电压时,应将它衰减后再连入声卡。最简单的衰减方法就是在信号与声卡之间添加一个串联电阻,由此电阻与声卡的输入阻抗构成一个分压电路,电阻的阻值越大,衰减比越大,此测量电路的输入阻抗越高。为保证测量的准确性,被测电路在被测点处的输出阻抗应小于声卡测量电路的输入阻抗,否则被测信号将不能正常地传递给声卡。

基于声卡的多功能测试系统

图9 具有简单过压保护的输入连接方式

声卡的输出连接如下图所示。在不小心将输出短路的情况下,串联的电阻可起保护作用。如果您非常小心,则该电阻可以省掉。由于声卡的输出阻抗很小,当连接到外部电路时通常将不会遇到任何阻抗匹配的问题。

基于声卡的多功能测试系统图10 具有简单短路保护的输出连接方式

应当强调的是,许多声卡(例如台式机的内置声卡和内置交流电源适配器的笔记本电脑的内置声卡)的输入输出地线通常与交流电源地线相连,当被测电路是浮地(即与电源地线隔离)时,并不会有什么问题。否则,您必须确保声卡的地线与被测电路的连接点处于同样的地电位。

 

四、声卡选择及自测方法

 

如前所述,基于声卡的测试系统的测量精度取决于声卡硬件,因此应根据对测量精度的要求来选择适当的声卡。一般来说,若只要求看看波形和频谱分布,电脑自带的声卡应基本够用,因为目前的声卡至少是16位的,比一般数字示波器的8位或12位的采样位数高。但若要用声卡来测试其他设备的性能参数,例如:THD、THD+N、SNR、IMD等,则建议所用声卡的参数应比被测设备的相同参数高几倍。例如,若声卡的THD为0.0003%(即:-110.5dB),则它可用于测量THD小于或等于0.001%(即:-100dB)的设备。选择声卡的时候,可参考声卡制造商提供的性能参数。对于测量来说,应选择低噪音、低失真、频带宽、输入阻抗高的声卡。

对于所使用的声卡的性能也可以进行自测,方法是将声卡的输出端与输入端通过一条立体声电缆连接起来,即:左声道输出连接到左声道输入、右声道输出连接到右声道输入,形成一个回路,然后选择一款多功能声卡虚拟仪器软件,利用其信号发生器输出测试信号,再利用其示波器和频谱分析仪来采集并分析返回的信号。下面我们以前面介绍过的Multi-Instrument为例,来介绍声卡自测的操作方法。以下测试皆属相对测量,无须对声卡进行绝对幅度的标定。

 

1、THD、THD+N、SINAD、SNR、NL测量

通常采用1kHz左右的正弦信号来测试这些参数,测试电平宜控制在-1dBFS(即ADC满程范围的89%)左右,这样既保证了在测试过程中有足够的信噪比,又不至于造成输入通道出现饱和失真。具体测试步骤如下:(1)运行该软件后,选择主菜单上的[设置]>[模数转换设备],屏幕上将弹出一个对话框,在该框中的"设备型号"栏选择"Sound Card MME"驱动程序,然后在"设备号"栏选择所要测试的声卡,最后按"确认"键。(2)选择主菜单上的[设置]>[数模转换设备],屏幕上将弹出一个对话框,在该框中的"设备型号"栏选择"Sound Card MME"驱动程序,然后在"设备号"栏选择所要测试的声卡,最后按"确认"键。(3)选择主菜单上的[设置]>[加载面板设置],屏幕上将弹出一个文件选择对话框,在该软件的安装目录下的psf子目录下选择一个以THD开头的面板设置文件名,例如:"THD_FFT16384_SR48000.psf"。调入该面板设置文件后,软件的各参数将自动被设置到可测量以上THD等参数的状态:FFT点数为16384,采样频率为48kHz,测试频率为999.0234375Hz,采样位数为16bit,采样时间为1秒,窗函数为矩形窗,窗重叠率为0%。若声卡支持24位采样,宜将输入输出的采样位数改为24位,其它的参数则不宜改动,否则可能会严重影响测量结果。(4)分别按动信号发生器和示波器的启动按钮。则示波器和频谱分析仪将显示所采集到的数据及其频谱。(5)通过点击该软件工具条上的话筒和扬声器按钮,或通过Windows的控制面板,分别调出该声卡的录音控制面板和音量控制面板,然后调节有关的输出和输入增益滑块,使该软件右上方的输入电平峰值指示器显示在-1dBFS左右。这时,频谱分析仪上部显示的THD、THD+N、SINAD、SNR、NL数值即为所测得的结果。注意,声卡的输出和输入增益需要进行组合调节,不能将输出增益设得过大和而输入增益设得过小,或者反之,以使所测得的参数最佳。图11是一台普通的USB声卡的扬声器输出和线路输入的测量结果:THD=0.0056%(-85.1dB),THD+N=0.0104%(-79.6dB),SINAD=79.6dB,SNR=81.1dB,NL=-81.08dBr。

 

基于声卡的多功能测试系统

图11 声卡自身的THD、THD+N、SINAD、SNR、NL测量

2、IMD测量

互调现象是指两个或两个以上的不同频率的信号源混合后产生出一些新的频率成份,这些新的频率不是任何一个信号源的谐波。互调失真IMD就是用来衡量这类失真的严重程度的。互调失真IMD的测量有多种标准。其中SMPTE/DIN IMD是最常见的。SMPTE RP120-1983标准和DIN 45403标准相似。两者都规定采用双正弦测试信号,由一个幅度较大的低频信号和一个幅度为前者的1/4的高频信号线性混合。SMPTE定义的是60Hz和7kHz按4:1混合;而DIN定义了多种双频率组合,其中最常见的是250Hz和8kHz。此类IMD定义为边带功率与高频信号功率之比的开方,以百分比或dB表示。计算中所采用的边带为:fH-fL、fH+fL、fH-2fL、fH+2fL,其中fH和fL分别为测试信号中的高频信号和低频信号。CCIF IMD是另外一种常见的IMD测量,它采用两个频率相近的等幅信号线性混合来作为测试信号。此类IMD定义为互调失真部分的功率与两个信号源功率之比的开方,以百分比或dB表示。它可进一步细分为两类:CCIF2 IMD和CCIF3 IMD。对于CCIF2 IMD,通常采用的双频组合为19kHz和20kHz,互调失真部分的功率只考虑fH-fL,即:只用到了低频的二阶分量。对于CCIF3 IMD,通常采用的双频组合为13kHz和14kHz、14kHz和15kHz、15kHz和16kHz。互调失真部分的功率只考虑fH-fL、2fL-fH、2fH-fL,即:用到了二阶和三阶分量。具体测试步骤与前述的THD等参数的测试步骤类似,只是需要调用不同的面板设置文件。图12是同一台USB声卡的SMPTE IMD的测量结果:IMD=-73.8dB。测试中调用了一个名为"IMD_SMPTE_60Hz(4)_7kHz(1)_FFT16384.psf"的面板设置文件,FFT点数为16384,采样频率取为48kHz,采样位数为16bit,采样时间为1秒,测试频率为60Hz和7kHz,幅度比为4:1,窗函数为Kaiser6窗,窗重率比为0%。若声卡支持24位采样,宜将输入输出的采样位数改为24位,其它的参数则不宜改动。

基于声卡的多功能测试系统

图12 声卡自身的IMD测量

3、串扰测量

串扰是指信号从一个通道泄漏到另一个通道,一般定义为有信号的通道与没信号的通道中测试信号基波的功率比,以dB表示。没有测试信号的通道的输入端必须接信号地,以避免引入噪声。测试信号是单频的,所测得的串扰是对于该频率的串扰。具体测试步骤与前述的THD等参数的测试步骤类似,只是需要调用不同的面板设置文件。图13是同一台USB声卡的从A通道到B通道的串扰的测量结果:-79.7dB。测试中调用了一个名为"CrosstalkAB_FFT16384_SR48000.psf"的面板设置文件,FFT点数为16384,采样频率为48kHz,采样位数为16bit,采样时间为1秒,测试频率为999.0234375Hz,窗函数为矩形窗,窗重叠率为0%。若声卡支持24位采样,宜将输入输出的采样位数改为24位,其它的参数则不宜改动。

基于声卡的多功能测试系统

图13 声卡自身的串扰测量

4、幅频响应测量

幅频响应的测量有多种方法,例如:可采用白噪声+频谱分析、正弦连续扫频+频谱分析、正弦步进扫频+频谱分析、单位冲激+频谱分析、多音信号+频谱分析、粉红噪声+倍频程分析等。具体测试步骤与前述的THD等参数的测试步骤类似,只是需要调用不同的面板设置文件。图14是同一台USB声卡的幅频响应的测量结果,图中可见该声卡在几Hz和20kHz之间具有很平坦的幅频响应,测得的-3dB带宽为5.9Hz~21279Hz。测试中调用了一个名为"MagnitudeFrequencyResponse_WhiteNoise(InterframeAverage).psf"的面板设置文件,FFT点数为16384,采样频率取为48kHz,采样位数为16bit,采样时间为200毫秒,测试信号为白噪声,窗函数为矩形窗,窗重叠率为0%,设置了帧间线性平均,以使所测得的曲线更光滑。若声卡支持24位采样,宜将输入输出的采样位数改为24位;若声卡支持比48kHz更高的采样频率,则可选择更高的采样频率,看在更高的采样频率下,声卡的带宽上限是否会更高,有的声卡在192kHz下,带宽上限可达96kHz;其它的参数则不宜改动。

基于声卡的多功能测试系统

图14 声卡自身的幅频响应测量

Multi-Instrument还预先配置了一个自动测量声卡的各种参数的设备检测计划,运行该计划的方法是:按前面介绍的方法选择好待测声卡,然后选择[仪器]>[设备检测计划],屏幕上将弹出设备检测计划对话框。点击对话框上部的文件打开按钮,屏幕上将弹出一个文件选择对话框,在该软件的安装目录下的dtp子目录下选择"AudioParameter_SR48000_AB.dtp",然后点击设备检测计划对话框右上角的运行按钮,即可在一分钟左右生成一份完整的测试报告并显示在屏幕上。

五、应用举例

 

下面介绍几个常见的应用。

1、实时频谱分析仪

电脑声卡配上相应的虚拟仪器软件和测量话筒,即可构成一台实时频谱分析仪(RTA)。测量话筒一般在音频范围内有很平坦的幅频响应,在必要时,还可利用虚拟仪器软件的频率补偿功能对声卡和话筒的幅频响应进行补偿。实时频谱分析仪可用来调节音响系统的频率均衡器,以使整个系统包括放音设备、放大器、音箱在内的幅频响应是平坦的。这类调节通常采用粉红噪音+倍频程分析。测试信号可从放音设备的输入口注入,或将测试信号刻录到CD上,制作成测试CD,再由放音设备播放。可用前面介绍的虚拟仪器软件的信号发生器来生成WAV波形文件格式的测试信号,再用互联网上的一些免费的音频格式转换软件将WAV波形文件转换为与放音设备兼容的文件。这套测量系统若经过声压标定(例如可采用一个参考声压计来标定),则还可用来测量绝对声压。

2、音频分析仪

独立式音频分析仪的价格从数千人民币到数万人民币,采用基于声卡的多功能测试系统来测试设备的音频参数可获得很高的性价比。前面已经介绍了声卡自身的音频参数的测试方法,这些方法同样适用于对其它设备的测量,只需将信号发生器输出的测试信号送入被测设备的输入端,再将经过被测设备后的信号返回到声卡的输入端即可。可用于测试放大器、扬声器、音响系统、手机、电话、CD机、MP3播放器等设备。若被测设备不支持直接的电信号输入,也可利用软件的信号发生器功能生成测试CD、测试MP3文件等方法来进行测试。

3、频率响应测试

频率响应测试与前面介绍的幅频响应测试所用的方法有所不同,因为频率响应测试既包括了幅频响应测试,也包括了相频响应测试,而且这里所说的幅频响应不是相对概念的幅频响应,而是绝对概念的增益~频率曲线。频率响应测试也可称为传递函数测试、增益与相移测试、波德图(Bode Plot)测试等。频率响应测试应采用图15的连接方式,测试信号由声卡的输出通道A输出,输出后分为两路:一路送入被测系统的输入端,经过被测系统后,由被测系统的输出端送回声卡的输入通道A;而另一路则直接通过导线送入声卡的输入通道B。测试信号通常采用白噪声或正弦扫频信号。频率响应测试要求所用的声卡的两个输入通道的频率响应必须完全相同,这对于声卡来说并不是大问题,可采用同样的频率响应测试方法进行自测,只需要将图15中的被测试系统用一条导线取代即可。当两个输入通道的频率响应完全相同时,所测得的增益~频率曲线应为一条位于0dB的水平线,而所测得的相移~频率曲线应为一条位于0°的水平线。

基于声卡的多功能测试系统

 

图15 频率响应测试连线图

以Multi-Instrument为例,测试频率响应的具体步骤为:(1)启动软件后,按前述方法选择声卡。(2)将示波器的扫描时间设为1秒,示波器和信号发生器采样频率设为48kHz、采样位数设为16bit或24bit(若声卡支持的话)。FFT点数设为16384,窗函数设为矩形窗,窗重叠率设为0%。在屏幕下端的频谱分析仪的工具条上选择"传递函数"模式。(3)若希望得到更光滑的曲线,可右击频谱分析仪的窗口,然后选择[频谱分析仪处理],在随后弹出的窗口中选择[帧间处理]>[线性平均]。(4)在信号发生器面板上选择白噪声。(5)最后分别按动信号发生器和示波器的启动按钮,约一秒后,频谱分析仪将显示所测得的增益~频率曲线和相移~频率曲线,左边纵轴为以dB为单位的增益,右边纵轴为以°为单位的相移。

 

图16为一个一阶RC低通滤波器,电阻为200W,电容为2.2m,可计算出其理论截止频率为1/(2pRC)=362Hz。图17为用以上方法实测的该低通滤波器的频率响应,从图中可见,在截止频率以下的低频端,增益是一条略微小于0dB的水平直线。增益略微小于0dB是因为200W的电阻与声卡的输入阻抗(该声卡的输入阻抗为16k)构成的分压电路对信号造成了一点衰减。在截止频率以上的高频端,增益每倍频程下降约6dB。从图中实测截止频率为360Hz。该低通滤波器的相移从最低频端的0°逐渐变为最高频端的-90°。了解一个系统在不同频率处的增益和相移是很重要的,例如对于一个负反馈放大器,当放大器的相移达到180°时,其增益必须小于1,否则放大器将是不稳定的。

基于声卡的多功能测试系统

 

 

 

图16 一阶RC低通滤波器

 

基于声卡的多功能测试系统

图17 一阶RC低通滤波器频率响应测量

 

六、总结

 

利用电脑及声卡,配上适当的多功能虚拟仪器软件,即可将电脑变为的一台在音频甚至略超音频的范围内工作的多功能测试仪器。它可集多个独立昂贵仪器的功能于一身,且成本低廉。测试的精度跟声卡硬件和虚拟仪器软件的质量有关,可根据具体的测试目的和对测试精度的要求来选择虚拟仪器软件和声卡硬件。当然基于声卡的测试系统也有其局限性,主要是通常不能测量和输出直流信号,而且用于绝对幅度的测量时要先标定。其实大多数情况下的波形观察、频谱分析、音频参数测量(THD、THD+N、SNR、IMD等)都是相对测量,并不要求对声卡先进行幅度标定。即便是真的需要标定,也只需以一台普通万用表来测量声卡ADC和DAC的满程电压即可。


发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: