配色: 字号:
基于LabVIEW实现的声卡数据采集与测试系统
2022-02-23 | 阅:  转:  |  分享 
  
基于LabVIEW实现的声卡数据采集与测试系统



摘要:本文,。。文中对比较廉价的笔记本声卡进行了数据的采集,利用LabVIEW软件实现这一操作.软件环境中了信号的采集分析以及数据的数据采集,,Thesoundcard?dataacquisitionandtesting?systembasedonLabVIEW

Abstract:Inthispaper,LabVIEWisdiscussedasthecarrier,toexplortheuseofthissoftwarefordataacquisitionandanalysisconductedbyitssound,Ithinkit’srelativelysimpletopracticethisidea,andiitscostisrelativelylow.Usingthissoftwarecaneasilybesimulatedfunctionalityforitspracticality,itisstillconsiderable.Thepaperisjustrelativelycollectinginexpensivenotebooksounddata,usingLabVIEWsoftwaretoachievethisoperation.Anddostorethesoundsignalacquisition,analysisanddatainthesoftwareenvironment,weseetheprospectofitsapplicationstillmorevast.

Keywords:?dataacquisition,,现如今市场销售的数据采集卡均是已经包含了完整的数据采集电路以及与计算机的接口电路,但是它的价格和其自身的性能一般都是成正比的,所以一般都比较昂贵。DSP技术,声卡,A/D和D/A转换功能,价格,兼容性好、性能稳定、灵活通用,特别是驱动程序升级十分方便。的问题,ISA总线PCI总线的DSP芯片的性能。声卡用DMA的方式,。16位的A/D转换精度,12位A/D卡的精度,到测量实验,已经可以很好地解决问题了,而且其价格比后者便宜很多。

因此性价比高的数据采集与分析系统。当然,输入信号频率要处于20Hz~20000Hz范围内采集音频域的信号,如果,那么的声卡数据采集与分析的方案,再加上数字信号处理技术LabVIEW所拥有的多线程技术,简单、、性能在环境中信号采集分析数据。PC上多块声卡。可以到环境噪声实验测量等,。

(虚拟测量仪器)概念的出现,,(1) 插卡型:计算机内的数据采集卡与

(2) 并行口式:把仪器

(3) GPIB总线方式:传统的操作方式形成自动测量系统。

(4) VXI总线方式:有(5) PXI总线方式:

虚拟仪器与传统的测量技术相比有着其无与伦比的优势。首先它以PC技术为跳板,虚拟仪器技术应运而生。可以说虚拟仪器技术不仅沿袭了PC技术的简单直接的优点,而且还有着自己的创新,相比于传统的仪器技术而言,它的如下优势也是为人们所津津乐道的:例如其性能特别卓越的处理器以及文件I/O,真正的做到了“分心二用”,不仅可以使数据快速的被录入磁盘,而且还可以同时进行比较复杂的运算以及分析。除此之外,随着互联网的快速发展,越来越先进的网络技术更是使得虚拟仪器技术如虎添翼,让其表现出了令人刮目相看的能力。

就目前的技术而言,受限制的方面还是比较多的,但是NI的软硬件工具却让我们眼前一亮。这是由于NI软件自身所具有的多变以及创新的特点,当我们还在为以前那种死板笨重的系统唉声叹气的时候,NI则只需要轻松的为测量所需的硬件或者计算机系统进行一次更新,就能以最少的投资和几乎不必要的软件更新来获得一个全新的系统,这可以说是一场里程碑式的改革。如此之高的性价比简直难以想象,还可以把它配到现有的测量设备中,加快产品进入市场的同时也大幅度的所见了成本,一举两得。

NI的强大不止上述的那些方面,在程序驱动以及软件应用上,其超高效率的软件框架促使它能与PC、仪器和不同的通信工程联系到一起,使得两种技术能够很好地融合到一起。本着人性化的设计理念,NI软件为使用者提供了几乎是傻瓜式的操作,异常方便,同时还有各种各样的功能以及强大的多样性和灵活性,可以做到“足不出户而便知天下事”,轻松自如的进行创建,发布,自我维护,甚至是在极低成本下的提高其性能从而进行测量以及控制。可以做出一套最为完美的方案。

虚拟仪器所拥有的技术就是集众多功能于一身,也就是所谓的集成化的概念。人们总是希望一个软件的集成度很高,这也就使得它的功能越来越多,开发越来越复杂,所以设计师就需要将多个不同功能的测量设备集中到一起来做成一个较为完善的测试,但是想要完成这一过程就要耗费很大的人力物力,得不偿失。NI软件也意识到了这一点,因此它为平台的所有的I/O设备都是提供了一个规范化,也就是模式化的标准接口,这一举措使得上述的头疼问题迎刃而解,利用这一软件将多个不同的测量设备集成到同一个系统里面,不仅大量的减少了人力物力,也大幅的减少了完成这一任务所需要的时间。



图2.1总体框图

由图可知,数据采集中需要对前面板进行创建与设计,虚拟仪器的前面板可以给人以直观的印象,它的设计有着举足轻重的作用。因为前面板是面向整个用户群体的,所以其设计的美观程度大大的影响到其使用效果。

前面板主要被用来输入数据或者是用来进行观察的。由于是图形化编程语言,因此和实际仪器的面板有着异曲同工之妙。包括图像,时间显示,按钮,指示灯等等,那么这些控件的合理安放就显得颇为重要了,既要美观还要简明扼要的突出设计主题。

系统主页面里面包括了信号参数设置以及信号分析,那么完成了前面板的创建工作以后,按Ctrl+E就可以切换到程序框图的窗口,然后我们就可以做到“予取予用”,即找到相应的节点并把它们安置进你的框图程序里面,合理的摆放顺序以及摆放方式会让别人觉得你是一个有条不紊的人。最后用不同的数据线将图标连接起来就大功告成了。LabVIEW作为图形化编程语言,它的VI图标,也就是所谓的连接端口就像是一个图形参数。图标或者连接的时候我们可以认为这个仪器是最高级的程序,当然也可以认为它是子程序或者别的程序。





3硬件实现

声音传感器信号通过LineIn和MicIn连接到声卡。采集声音时的所有的设置都是定位于操作系统,所以要是对一些较为高级的声卡进行数据采集的时候,一定要特别注意关闭一下类似于混响一类的特效,避免影响测量结果的真实性。





3.1声卡的基本结构



不同的连接器和电子器件构成了声卡。其中连接器主要是用来对输出输入信号进行连接的,而电子器件则主要是被用来完成各种不同的特定功能。声卡主要包括了如下的组成部分

1)DSP(数字信号处理器声音控制芯片

FM合成芯片



4)波形合成表

跳线

跳线是用来设置声卡的硬件设备,包括CD-ROM的I/O地址、声卡的I/O地址的设置。I/O口地址

220H~260H。DMA通道

。如图为声卡工作流程图

图3.2声卡工作图





3.3声卡的作用

通过声卡及相应的驱动程序的控制,采集信号,压缩后存放在计算机系统的内存或硬盘中。激光盘压缩的数字化声音文件还原成高质量的声音信号,放大后通过扬声器放出。声音文件进行加工,以达到某一特定的音频效果。音量对各种音源进行组合,实现混响器的功能。音频识别功能,让操作者用口令指挥计算机工作。我们亦可将数字文件还原成音频信号,通过扬声器进行回放,例如对电视剧电影进行配音,播放VCD、DVD、MP3等。值得注意的是,在录制和回放的时候,不光要进行A/D和D/A转换,同时还要进行压缩和解压的处理。利用MIDI接口和波表合成,可以记录和回放各种几乎可以以假乱真的乐器原声。

采样位数可以理解为声卡处理声音的解析度。这个数值越大,解析度就越高,录制和回放的声音就越真实。采样位数用来表征声卡采集数据或者播放文件时的准确程度,同时也反映出了数字信号与模拟信号相比的准备程度。事实表明,数值越大,那么录制或者回放时的声音准确程度就越高,也就说明了采样位数实际上就是一种处理声音的度量。对于相同的一段音频信号来说,不同的声卡所造成的的采样效果也是有的。单位时间内对一段音频信号所做的采样的次数就被称为采样频率采样位数越大,声音的准确度越高,因此较大的采样位数导致了较高的采样频率,所以声音的还原度也就越高。采样频率大体分为22.05Khz,44.1Khz,48Khz三种,那么自然越高的频率就能享受到越好的音质。超高的采样频率其实并没有很好地方法来分辨,因此高于48Khz的采样频率对电脑来说并没有多大的价值。的数据传输速率将被大幅度的提高,读取缓冲区数据所用的时间也将被大幅的缩短。不仅如此,缓冲区的存在也很好的保护了CPU,降低了它响应的频率,所以说对系统的资源来说,也做到了合理利用。同理,D/A变换也差不多。

对于X86这一个系列的处理器而言,在Windows系统默认的CPU工作模式下,声卡均是使用缓冲长度的默认值,也就是8192字节。由于想要对内存进行一定的访问的时候都是按照页进行的,而对于内存而言,它总是被8K单位长度切割成很多很多页。这样一来,CPU一般情况下就不会被别的事情所干扰,而且速度十分快并且一直工作在8K的内存缓冲区。根据经验来说,当设置为8K或者它的整数倍大小的内存缓冲区的时候,就可以做到声卡与CPU的和谐相处,也就是保证了其协调工作。









4软件设计



4.1LabVIEW的特点



4.1.1图形化编程

LabVIEW与编程语言相比,有一个重要的不同点:使用图形化编程语言编写程序文本语言,产生的程序是框图的形式,用框图代替了传统的程序代码。如图所示LabVIEW与其它基本的PC编程语言相比有很大的优势,但是图形化编程而,有通用编程系统的特点。LABVIEW有一个函数库完成任何编程任务包括数据采集、GPIB、串口控制、数据分析、数据显示及数据存储等。LABVIEW也继承了传统的调试工具便于程序的调试。LABVIEW也有其独特的一套动态连续跟踪方式,可以动态地观察程序中数据变化情况,其他语言方便有效。小模块基本节点和函数,另外,虚拟仪器模块除了作为子VI其他程序使用独立程序运行数据采集分为三个部分,声音录制,声音播放,声音保存。前面板中用到图形模块,Chart,。在XScale、YScale中分别设置AutoScaleX和LooseFit使得波形随着X而变。在ChartHistoryLength中设置为32768保证波形准确显示。后面板程序框图中用到LOOP控件WhileLoop、ForLoop等循环使得程序更加实用,控制比较方便。在声音格式中设置采样频率、采样位数等,。,从而从声卡里面得到数据。由于LabVIEW的图形化编程的特点,因此数据和它的频谱特性均会以图形的方式直观的被我们所接受,而且这个模块还有一个十分不错的功能,那就是可以保存部分的数据甚至于全部的数据并且把它转移到信号分析的模块。我们可以挑选输出质量比较好的音频格式进行传输,这样的话就可以保证良好的数字化处理以及存储等等。数据采集分为:1.配置声卡2.采样3.释放声卡。



4.2.1声卡配置

声卡是音频信号输出的一个载体,但是一般情况下都不在较为正常的工作状态下。所以一开始的时候要使用耳机和MIC检查声卡功能,尤其是录音功能是否能够正常工作。如果不能够正常工作,就需要检查声卡的设置。首先,要配置所需功能,其次要保证本来已经配置正常的功能不处于静音状态。下面对LineIn和MicIn的检查和设置。

打开右下角任务栏的扬声器图标(如果没有,打开控制面板里“声音与音频设备”然后将音量图标放入任务栏后一个喇叭形状的图标就会出现在电脑屏幕右下角任务栏上)

双击小喇叭后,可以看到一排选项,把麦克风上静音的勾去掉打开高级控制



图4.2音量的高级控制设置



④打开麦克风的高级控制,在MicBoost上打勾,强音量。如图

图4.3麦克风高级控制设置



⑤窗口左上角有个“选项”,然后点“属性”,这时可看到窗口



图4.4录音控制选项设置



⑥在混音器的下边有个“调节音量”在它的下面有三个选项,1播放2录音3其他,点击“录音”,然后下边找到麦克风立体声输入选项StereoMixer,并且打勾,如图StereoMixer和Mic两个选项也在,在选项的“选择”打上勾,然后所有音量开到最大,关闭该窗口,剩下的就是用麦克风试试了。如图







图4.6麦克风选择





2)硬件连接

一般有两种连接线:①一头3.5mm插孔,另外一头鳄鱼夹②均为3.5mm插孔的音频连接线。框图程序图4.8声音采集框图程序025kHz和8kHz,缓冲区大小设为8192B。如图4.9





图4.10SIStart控件

2)SIStart控件控制程序运行对采样通道进行选择如选择输入/输出设备0。如图4.10



图4.11SIRead控件

3)SIRead是使输入设备开始工作读取从SIConfig进入的数据,并进行数据传输,进行下面操作。如图4.11



图4.12SIStop控件

4)在程序运行结束时有SIStop判断程序是否继续运行,以进行下面操作。如图4.12





图4.13是保存局部框图程序,用到了FileWave、File、BulidpathFileWave控件

1)FileWave控件是声卡输入控件,保存采集到的数据并以“.Wav”格式保存。所得文件能通过SndReadWaveFileVI读出。





图4.15打开/创建/替换文件控件

2)对话方块能叙述对一个文件或目录的路径。使用这一个对话方块选择现有的文件并且为一个新的文件或目录选择位置和名字。



图4.16创建路径控件

3)这是建立通道的控件,是重新创立一个通道通过已经存在的或关联的通道。



4.2.3释放声卡



播放局部框图程序通过SOWrite写数据给输出设备,如果输出设备正在工作就会将数据暂存缓冲区,如果输出设备处于暂停模式,直到SOStart开始工作为止。由于LabVIEW的特殊性,所以声卡声道分为单声道立体声8位16位。采集完数据后,点Play可以播放刚才的采集到的声音,也可以将刚才采集到的声音保存为“.Wav”文件,这样可以保存采集到的数据。



图框图程序

,包括频谱的分析等任务。利用低通滤波器,对原始信号进行滤波,消除噪音干扰,提高采集精度。

LabVIEW还有自动处理错误功能,图模块的前面板。的出现,使得我们对最初的信号进行滤波处理的时候,能够消除其失真还有噪声的干扰,从而提高了信噪比。与之相比的模拟滤波器,就需要很高精度的组件,而且受限制的方面也比较多,它会随着温度,环境的变化,湿度的变化等等自然因素而产生很多误差,但是数字滤波器就弥补了这些缺点,因此应用的较为广泛。



图5.1滤波模块前面板



通过上图所示的滤波后的波形可以知道,横坐标为时间,纵坐标为波形的幅值,是伏的数量级。一般情况下都是使用低通滤波器,截止频率如图所示。所谓的低通滤波器就是允许某一个特定截止频率的音频信号通过,对于高于截止频率的音频信号,其速率会下降,是按照其平方下降。所以说数字滤波器对于模拟滤波器来说还是具有很大的优势的,因为它不仅一定程度上的解决了音频信号的失真问题,而且对于环境中存在的噪声也有一定的抵制作用,所以能够提高信噪比。滤波后,波形会有细微的改变,主要是因为音频信号通过滤波器以后,谐波被消减而且振幅发生了变化,所以会有变化。





5.2幅度谱/相位谱分析



如图5.3为幅度谱\相位谱模块



































图5.3幅度谱\相位谱模块前面板



如图所示,横坐标皆为频率,纵坐标则为幅值,所以说不论是幅度谱还是相位谱都是幅度或者相位随着频率而变化的曲线。它们表示了各个不同的频率分量在时间原点的幅度和相位。幅度谱主要表示的是能量,通过上图幅度谱信号的分布情况我们就可以知道信号的能量分布,幅度和相位的傅里叶变化其实只是时域与频域之间的转换。图中所示的波形较为密集,可能是由于在录制声音信号的时候环境噪声的干扰比较大,所以波形比较混乱。



5.3功率谱分析



如图5.4所示为功率谱的前面板



图5.4功率谱前面板



由图可知,横坐标为频率,纵坐标为幅值,也就是伏特。功率谱实际上是功率与频率之间的关系曲线。功率谱作为研究信号的各种不同的频域特征而言,是数字信号处理的重中之重。其研究目的就是捕捉到那些由于环境噪声的干扰而被埋没的信号,当然也不是全部的信号,而是在有限范围内的频域数据。如图所示,图形周期性较差,所以研究起来就得想其他的方法。其实功率谱只是一个随机挑选的过程,然后进行平均化的处理,这一过程的功率谱为一个确定的函数。











结语本文利用LabVIEW软件加上部分的PC技术,从而达到了对音频信号进行、的采集及处理。通过实践的过程来看,这种尝试较为简单、性价比高,且实现的可能性大。采集软件,,且在现如今的硬件市场里,声卡的性能都很优越,且制造成本也变得相对来说比较低廉,其使用率越来越高的情况下,这种方法可以在测量应用及相关实验室中有一个较为长远的发展与应用。比如在日常生活中,环境噪声的实时监测,其声音信号的采集分析以及处理,这种方法就给了我们一种新的尝试。

[2]杨乐平,李海涛,肖相生.LabVIEW程序设计与应用北京电子工业出版社

[3]周爱军,马海瑞.基于声卡的LabVIEW数据采集与分析系统设计微计算机信息

[4]谢三毛;基于LabVIEW虚拟数字滤波器的设计[J];华东交通大学学报;2005年01期[5]蒋帅锋,施展,鲍恝;基于声卡的数据采集系统设计[J];仪器仪表学报;2005年S2期

[]孙爱晶;刘毓;马贺洲基于LabVIEW的声卡数据采集及滤波处理设计[期刊论文]-自动化与仪表2009(05)[7]孟武胜;朱剑波;黄鸿基于LabVIEW数据采集系统的设计[期刊论文]-电子测量技术2008(11)[8]陈捃;黄用勤;王永涛基于虚拟仪器的实时数据采集系统的设计[期刊论文]-武汉理工大学学报2007(06)[9]梅秀庄宋京伟刘举平.基于声卡的信号采集系统设计[J].华东交通大学学报.第21卷第2期.2004.4

[10]王庆龙.基于声卡和MATLAB的语音信号采集系统[J].四川工业学院学报增刊.2004

[11]杨忠仁饶程邹建彭珍莲.基于LabVIEW数据采集系统[J].重庆大学学报.第27卷第2期.2004.2

[12]陈敏汤晓安.虚拟仪器软件LabVIEW与数据采集[J].小型微型计算机系统.第22卷第4期.2001.4

[13]张辉郁凯元龙涛王建强.基于LabVIEW软件的动态连接库和数据采集[J].仪表技术第6期.2002

[14]郑利锋杨小雪张汉全.基于LabVIEW的虚拟频谱分析仪设计[J].自动化与仪器仪表第5期.2002

[15]NationalInstruments.LabVIEWhelp.2004.3

[16]NationalInstruments.LabVIEWAnalysisConcepts.2003.4

[17]NationalInstruments.LabVIEWMeasurementsManual.2003.4

[18]NationalInstruments.LabVIEWUserManual.2003.4

[19]RickBitter,TaqiMohiuddin,MattNawrocki.LabVIEWAdvancedProgrammingTechniques.CRCPress.2001

[20]冯伟东;韩雪冰;;LabVIEW与MATLAB在声音信号采集与小波降噪中的应用[J];长春工业大学学报(自然科学版);2006年01期[21]?于琳陈健.基于LabVIEW的声卡信号采集及其分析系统设计[J].仪器仪表用户.39-41

[22]?尚晓辉王健刘锐等.基于LabVIEW的声卡数据采集与实时处理系统设计[J].军亊通讯技术.77-80



















































1







数据采集器



系统主页面



信号参数设置



信号分析



声卡参数设置



滤波器参数设置



功率谱分析



时域分析



谱分析



相位谱分析



幅度谱分析



倒频谱分析







献花(0)
+1
(本文系燃烧的烤串原创)