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

黑龙江白癜风QQ交流群 http://nvrenjkw.com/nxzx/5719.html

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

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

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

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

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

、传感器和执行器层

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

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

此层由声卡构成。输入进声卡的模拟信号先经过输入混音器,然后进行模数转换(ADC)变为数字量后上传电脑。输入混音器可通过Windows的录音控制面板来控制,以选择录音音源(例如:话筒输入、线路输入、CD唱机、波形输出混音等)并可独立调节各音源的增益。当声卡用作信号采集器时,通常采用线路或话筒输入。话筒输入通常还带有一些高级控件,例如:话筒提升(Microphone Boost)等。若选择”话筒提升”可额外提高话筒增益0倍,即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,是免费软件,可到

转载请注明:http://www.abuoumao.com/hyfw/811.html

网站简介| 发布优势| 服务条款| 隐私保护| 广告合作| 网站地图| 版权申明

当前时间: 冀ICP备19029570号-7