文档库 最新最全的文档下载
当前位置:文档库 › 虚拟仪器——LABVIEW课程设计报告

虚拟仪器——LABVIEW课程设计报告

虚拟仪器——LABVIEW课程设计报告
虚拟仪器——LABVIEW课程设计报告

)

课程设计任务书

课程名称:虚拟仪器

题目:基于声卡的音频采集分析仪与信号发生器设计

学院:环化学院系:化工系

专业:测控技术与仪器

班级:

学号:

学生姓名:

}

起讫日期: 17 ~ 18 周

指导教师:职称:中级

系分管主任:刘雷

审核日期:

一、课程设计的要求和内容(包括原始数据、技术要求、工作要求)

*

虚拟仪器技术是测试技术和计算机技术相结合的产物,它融合了测试理论、仪器原理和技术、计算机接口技术、高速总线技术以及图形化软件编程技术于一身,实现了测量仪器的集成化、智能化、多样化及可编程化,本课程设计的任务是帮助学生学习和了解虚拟仪器的原理及开发技术,掌握虚拟仪器软件平台LabVIEW的基本的编程方法及调试技术,并结合计算机声卡来完成一个信号发生器与时频分析仪的设计。

具体要求与内容:

1. 具备数字存储示波器、信号发生器和信号分析仪三个主要功能模块;

|

2. 可以通过前面板交互界面实现示波器与信号发生器功能切换;

3. 采集数据可以在单次和连续两种方式进行切换,采集的数据可以进行存储,类型可以在WAV、BIN和TXT三种类型进行切换,数据存储要求用子VI实现;

4. 对于信号发生器,要求可以叠加各种噪声,要求可以改变信号相关参数,同时能够实现两个以上信号叠加为一个复合信号;

5. 时频分析仪应该能够完成大部分时域和频域分析,可实现信号分析前的加窗或滤波器操作,可以对原始数据和结果数据进行保存,示波器的各个参数灵活可调并且可以将已存数据重新载入进行分析观察。对于音频信号可以选择性的进行播放。

`

基于声卡的音频采集分析仪与信号发生器设计:

摘要:要在LABVIEW环境中进行对声卡采集编程,就是运用常用周期信号及测试领域特殊信号的双通道模拟输出。由于专用数据采集卡成本比较昂贵、而且和计算机兼容性比较差等缺点,这个论文就是应用性能良好、价格低廉的计算机声卡设计一套基于 LabVIEW 的信号采集分析系统。该系统具有双通道、高保真、22K 甚至 44KHz 的采样率,实现了音频信号的实时采集、实时存储、回放、信号分析(时域分析和频域分析)等多种功能。实验结果表明:该设计方案具有设计简便、成本低、通用性高、扩展性好、界面大方简洁等优点,可广泛应用于工程测量和科学实验室等环境。

关键词:声卡;数据采集;虚拟仪器;LabVIEW ;

引言:数据采集是信号分析与处理的一个重要环节,在许多工业控制与生产状态监控中,都需要对各种物理量进行数据采集与分析。但是,专用数据采集卡的价格一般比较昂贵,而我们PC机的声卡就是一个很好的双通道数据采集卡。实际测量中,在满足测量要求的前提下,可以充分利用计算机自身资源,完成数据采集任务,从而节省成本。

虚拟仪器是基于计算机的软硬件测试平台。虚拟仪器技术的优势在于可由用户定义自己的专用仪器系统,且功能灵活,很容易构建,所以应用面极为广泛。目前应用最广、发展最快、功能最强的图形化软件集成开发环境是美国国家仪器公司的创新软件产品[1]。它是将仪器装入计算机中, 以通用的计算机

硬件及操作系统为依托, 可以实现各种仪器的功能。

LabVIEW是一种图形化编程语言,广泛应用于工业界、学术界和研究实验室,主要应用于仪器控制、数据采集、数据分析、数据显示等领域,适用于多种不同的操作系统平台。与传统C、C++等编程语言不同,LabView采用强大的图形化语言编程,面向测试工程师而非专业程序员,编程方便,人机交互界面直观友好,具有强大的数据可视化分析和仪器控制能力等特点[2]。

一、声卡信号采集系统总体设计方案

声卡采集系统原理框图如下图1所示。它主要由声源、信号调理模块、计算机声卡以及安装于计算机机上的LabVIEW软件等几部分组成。

图1 声卡采集系统原理框图

工作过程为:输入时,测试信号首先经过信号调理电路,利用PC机声卡的麦克风输入(mic in)或线路输入(line in)作为信号的输入端口,将获取到的模拟音频信号经过左右两个通道和A/D转换后送入计算机,通过LabVIEW编写的采集程序进行各种处理和保存;输出时,经过采集系统处理的数据通过总线将数字化的信号以PCM方式送到D/A转换器,编程模拟的音频信号由线路输出(line out)端口通过耳机或音响转换为音波播放出来。

信号调理电路:在信号进入声卡之前必须经过信号调理,主要包括信号的

放大、滤波、隔离和线性化处理,以使其能够被声卡正确的识别。声卡的麦克风(mic in)输入端具有高增益放大器,会使得信号产生较大失真,所以选择线路(line in)输入信号时,其输入电压应为-1~+1V。

声卡:计算机的声卡作为数据采集卡,其A/D转换功能已经成熟,而且计算机无需添加额外配件便能完成所有音频信号的采集功能,具有价格低廉、采样精度高,与LabView结合编程简单等优点,因此,利用声卡可以构成一个较高采样精度、中等采样频率、灵活性好的信号采集系统。

声卡主要技术指标有采样位数、采样频率、频率范围和频率响应、基准电压等。

(1)采样位数:采样位数可以理解为声卡处理声音的解析度。这个数值越大,解析度就越高,录制和回放的声音就越真实。如今市面上所有的主流产品都是16位的声卡,而一般的数据采集卡大多也才有12位,因此,声卡相较于常用的数据采集卡毫不逊色[3]。

(2)采样频率:采样频率是指录音设备在一秒钟内对声音信号的采样次数,采样频率越高声音的还原就越真实越自然。在当今的主流民用声卡上,采样频率一般共分为8 KHz 、、和四个等级,少数可以达到48 KHz 。对于20Hz~20KHz范围内的音频信号,如果采用48 KHz采样频率,虽然理论上是可行的,但是效果已经不是最好。因而使用声卡的局限性就是不允许用户在最高采样率下随意设定采样频率。对于高于48KHz的采样频率人耳已无法辨别出来了,因此没有实用价值。

(3)频率范围和频率响应:前者是指音响系统能够回放的最低有效回放频率与最高有效回放频率之间的范围;后者是指将一个以恒电压输出的音频信号与系统相连接时,音箱产生的声压随频率的变化而发生增大或衰减、相位随频率而发生变化的现象。以声卡作为虚拟测试仪器的硬件设备必须对其频率特性有所了解。本系统所用计算机主板集成声卡是Reaktek的ALC880 Codec,根据其性能指标,设置采样率为,采样位数为双通道,采样比特数为16位,以保证采样时的干扰较小、波形稳定[4]。

(4)基准电压:声卡没有基准电压,因此无论是A/D还是D/A转换器,

都需要用户参照基准电压进行标定[5]。

.

二、声卡信号采集系统设计实现

LabVIEW软件是一种基于图形语言编程的可视化软件开发平台,与VC,VB 等其他可视化编程语言相比,其函数库丰富、编程简单直观、调试方便,而且界面开发简单,界面风格与传统仪器相似。LabVIEW是一个外观和操作能模仿实际的仪器的程序开发环境,类似于C、BASIC等编程语言。但LabVIEW的特点在于,它使用图形化编程语言G在流程图中创建源程序,而非使用基于文本的语言来产生源程序代码。LabVIEW还整合了诸如满足GPIB、VXI、USB、RS-232和RS-485以及数据采集卡等硬件通讯的全部功能。内置了便于TCP/IP、Active X等软件标准的库函数。虽然LabVIEW是一个通用编程系统,但是它也包含了数据采集和仪器控制等特别设计的函数库和开发工具。由于LabVIEW所使用的术语、图标和概念都是技术人员、科学家、工程师所熟悉的,故而即使用户没有多少编程经验,同样也能利用LabVIEW来开发自己的应用程序[6]。

以LabVIEW为基础的本声卡信号采集系统主要完成了信号采集、存储、回放和频域分析等功能。本设计对于信号采集如此多的功能采用了分模块显示设置,这样使得主程序前面板简单明了,且功能齐全,方便了用户的操作。

三、信号采集的设计

采集音频信号面板图2:

信号采集前面板如图2,信号采集原理是利用计算机声卡的实际特性把外部模拟信号经过转换,实现对数据的保存同时能够实时显示出来。根据计算机声卡的实际特性,将声卡设置为双通道、采样频率、16位采样比特数、连续采样等,如图2所示。本设计根据实际显示需要,当点击开始采集按扭时,该虚拟示波器界面实时显示了所采集歌声的实时信号和保存成音频格式文件。同时,实时显示界面的示波器属性设置为X、Y轴均设置为“自动调整标尺”,从而保证无论信号幅值如何改变,总可以在纵坐标上是清晰显示,这样不仅方便用户操作,而且观察方便。

图2 声卡参数设置以及采集音频信号图

音频信号程序图3

功能实现方法:首先创建好一个音频格式的写文件,另外选择声卡控件,对声卡控件的配置,为了防止数据溢出所以要先准备好写文件才能进行声卡的

读和写,所以一定要在写文件和声卡控件当中连上ERROR,这样才能保证数据不会溢出。同时当我们写完文件时,一定要加上关闭文件的控件。运行程序时,由于利用了一个事件控件,所以当点击开始采集时就能进行声卡信号的采集,实时保存和实时显示等功能的实现。

\

图3 音频信号后面板程序

四、信号发生器的设计

信号发生器的前面板如下图4所示。主要的功能有实现单通道信号发生、或者双通道叠加,同时还能叠加各种噪声信号,在对各种信号操作时,可以对如频率、振幅、相位等的设置。

它的程序框图如图5,

实现方法如下:利用文件的打开方式,选择创建一个音频文件,当文件准备好写以后,然后利用信号发生器控件实现单、双、混合噪声的选择,从而实现信号发生器的功能。

]

信号发生器面板图4:

图4 信号发生器面板设置

信号发生器程序框图如图5:

}

实现方法如下:利用文件的打开方式,选择创建一个音频文件,当文件准备好写以后,然后利用信号发生器控件实现单、双、混合噪声的选择,从而实现信号发生器的功能。

图5 信号发生器和示波器程序图

图6 信号发生器所产生的波形图

三、虚拟示波器的设计

虚拟示波器的前面板是应该根据实际中的仪器面板以及该仪器所要实现的各种功能进行设计的程序交互式图形化用户界面。根据计算机声卡的实际特性,将声卡设置为双通道、采样频率、16位采样比特数、连续采样等,如图6所示。本设计根据实际显示需要,设计的显示前面板如图3所示,该虚拟示波器界面实时显示了所采集歌声的实时信号。同时,实时显示界面的示波器属性设置为X、Y轴均设置为“自动调整标尺”,从而保证无论信号幅值如何改变,总可以在纵坐标上是清晰显示,这样不仅方便用户操作,而且观察方便。

四、虚拟数据分析仪设计

数据分析仪主要包括数据回放、信号参量、幅度相位谱和功率谱的测量等。数据回放主要是将已存储的信号重新读取然后进行分析;数据信号参量测量主要从时域上对信号的周期平均值、周期均方值、峰峰值、均值等测量;幅度相位谱和功率谱主要是从频域上对回放信号的幅度、相位以及功率进行测量。

对手动保存的历史采样信号文件,通过历史数据回放功能,可以逐块地由软件象采集真实数据一样,重新由软件显示、处理;由此可以重现试验过程、检验各种功能、验证用户的各种设置;在软件模块中,用户可以进一步对LabVIEW采集的数据进行进一步分析、处理;历史数据回放功能能让用户在试验前就调试程序、在试验后反复用试验数据验证,即用实际数据仿真试验,减少试验成本、重现关键试验。历史波形回放程序框图如图7所示。对于其程序图是把信号的回放、时域的分析以及频域的分析全部结合在一起,如图9所示。

回放分析仪:

!

图7 波形回放前面板图

时域分析仪:

时域分析是一种直接在时间域中对系统进行分析的方法,具有直观、准确的优点,可以提供数据采集系统时间响应的全部信息。

]

图10 虚拟数据时域分析仪框图程序

频域分析:

频域分析是通过傅里叶变换将时域信号变换到频域,其主要是了解信号的频谱成分以及各种成分的强度。本设计主要实现了对采集信号的幅度谱、相位谱和功率谱分析等功能。实际程序如图7所示。其中,对信号加窗时,使用矩形窗将信号突然截断,在频域上造成很宽的、原信号中不存在的附加频率成分,即有限化带来的泄露问题。为了防止采集信号发生泄露,对所采集信号进行加窗处理,系统选择了汉宁窗。虚拟分析仪的界面如图8所示,该图显示为实际

采集音频信号的FFT变换频谱。

图9 虚拟频谱分析仪界面

波形回放后面板程序以及虚拟数据分析仪框图程序图9所示:

图9波形回放后面板程序以及虚拟数据分析仪框图程序图9程序说明:

该模块的程序把信号的回放、时域的分析以及频域的分析全部结合在一起,利用一个while循环,首先实现信号的回放,通过时域控件从而得到时域相关的数据结果,通过前面板把结果显示出来;在对频域分析时,首先打开一个既能实现傅里叶变换将时域信号变换到频域,再利用一个cast事件得到不同频谱成分以及各种成分的强度。本设计主要实现了对采集信号的幅度谱、相位谱和功率谱分析等功能。

五、结束语

利用计算机声卡代替昂贵的数据采集卡采集数据,以图形化编程语言的虚拟仪器软件LabVIEW为开发工具,充分利用计算机强大的信息处理能力和LabVIEW模块化编程技术,实现了常见音频信号的实时采集、显示、存储,回放以及分析等功能。其有效的利用了计算机资源,节约了数据采集成本,易于构建和升级,并且界面友好,操作简单,成本较低,易于实现,不仅可以应用于科研试验,而且可以应用于检测车辆等方面,具有比较广阔的应用前景。

六、课程设计总结:

本次课程设计我获益良多,首先进一步加深了对LABVIEW以及声卡相关专业知识的理解以及对本专业的深刻理解,并初步掌握利用LABVIEW的控件对电脑声卡参数进行调整。尤其在信号采集进行回放过程中,,对于运作的顺序不一样就很有可能导致错误,所以在运用LABVIEW控件过程中,一定要对每一个控件的功能搞明白,在对错误分析时要学会利用调试等功能,分析产生错误的结果时要注意运行不同的顺序可能会出错,此时要连上ERRO。其次,在控件的选择上,要结合被控对象先进行理论分析,这样在调节的时候才不会盲目,更具针对性,能节省不少时间。感谢老师给我这次课程设计的机会。

七、主要参考资料

1.LabVIEW程序设计与应用杨乐平等编著电子工业出版社

2.计算机虚拟仪器图形编程LabVIEW实验教材,北京:中科泛华测控技术3.LabVIEW基础教程汪敏生电子工业出版社

4.《基于LabVIEW的虚拟仪器设计》刘君华电子工业出版社

相关文档