您的当前位置:首页正文

基于声卡的数据采集实验报告

2020-04-27 来源:爱站旅游
导读基于声卡的数据采集实验报告


中国石油大学(北京)

实 验 报 告

实验名称: 基于声卡的数据采集 班级:过程10-4班 学号:2010063124 姓名: 任团结

基于声卡的数据采集实验报告

一、实验目的

1、掌握Labview软件的基本使用方法;

2、掌握利用Labview功能模板进行虚拟仪器设计; 3、了解声卡的工作原理

4、学习用Labview进行数据采集的基本过程。

5、利用Labview8.2软件设计并实现一台虚拟数字录音机,完成音频数据采集、显示、保存、处理、回放的功能。通过练习使用Labview设计数字录音机。 二、实验仪器和设备

1. 计算机1台、MIC 1只、耳机1只 2.编程环境 WindowsXP操作系统 3. Labview实验软件 1套 三、实验原理

1、 声卡的工作特点

本设计采取的方法是在LabVIEW虚拟仪器环境中利用Windows自带声卡采集语音信号。从数据采集的角度来看,PC声卡本身就成为一个优秀的数据采集系统,它同时具有A/D和D/A转换功能,不仅价格低廉,而且兼容性好、性能稳定、灵活通用,软件特别是驱动程序升级方便。如果测量对象的频率在音频范围(20 Hz-20 kHz)内,而且对采样频率等指标又没有太高要求,就可以考虑使用声卡。而语音音频范围一般在5kHz以内,满足声卡采集的要求。在采集语音信号前,要检查声卡的设置,保证已配置的输入功能(录音功能)不处于静音状态。主机通过总线将数字化的声音信号送到数模转换器(D / A),将数字信号变成模拟的音频信号同时,又可以通过模数转换器(A/D)将麦克风或CD的输入信号转换成数字信号,送到计算机进行各种处理。衡量声卡的技术指标包括复音数量、采样频率、采样位数(即量化精度)、声道数、信噪比(SNR)和总谐波失真(THD)等。复音数量代表声卡能够同时发出多少种声音,复音数越大,音色就越好,播放声音时可以听到的声部越多、越细腻;采样频率是每秒采集声音样本的数量,采样频率越高,记录的声音波形越准确,保真度就越高,但采样数据量相应变大,要求的存储空间也越多。采样位数是指将声音从模拟信号转化为数字信号的二进制位数(bit) ,位数越高,在定域内能表示的声波振幅的数目越多,记录的音质也就越高,例如16位声卡把音频信写的大小分为216 =65536个量化等级来实施上述转换。常用声卡可对音频信号实现双声道16位、高保真的数据采集,最高采样率可达44.1k H z,具有较高的采样频率与精度。对于许多科学实验和工程测量:来说,声卡对信号的量化精度和采样率都是足够高的,甚至优于一些低档的数据采集卡性能。

2、 LabVIEW采集语音信号

LabVIEW中提供了一系列使用Windows底层函数编写的与声卡有关的函数.由于使用Windows底层函数直接与声卡驱动程序打交道,因而封装层次低,速

度快,而且可以访问、采集缓冲区中任意位置的数抓,具有很大的灵活性,能够满足实时不间断采集的需要。在LabVIEW中,利用Windows声卡对语音信写进行采样,SI Config 设置声卡中与数据采集相关的硬件参数,将device设置为0,采样位数为单声道16位,采样频率11025Hz,缓冲区长度为默认值8192字节 ;SI Start通知声卡开始采集外部数据;SI Read将数据缓冲区中的内容读取到用户程序的数组中,一次可读取缓冲区长度的一半((4096字节);SI Stop通知声卡停止采集外部数据;SI Clear完成最终的清理工作,释放请求的一系列系统资源,Sound wave显示语音波形、While Loop有两个语句,第一个语句“Wait for Record Button”是在程序运行后通知开始录入语音数据,第二个语句主要是为了能够连续的读入语音数据,在此语句中,“Case structure” 在True情况下执行停止录音( False为默认值),移位寄存器是为了读出数据的连续性,循环利用120ms延时以降低循环的频度,减少CPU负担。 四、实验步骤

(一)、实现声卡声音信号的采集并保存

利用【声音】函数选板的【输入】和【文件】子选板可以编程实现对声音信号的采集并保存。 操作步骤:

1、进入LabVIEW 8.20的启动界面后,执行【文件】/【新建VI】菜单命令,

创建一个新的VI。

2、切换到前面板设计窗口下,放置一个“波形图”控件,用于显示采集到

的声音,并设置波形图控件的标签为“声音信号波形”,再放置一个“确定按钮”和一个“停止按钮”,并分别更名为“声音采集”和“停止采集”,用于启动和停止声音采集。

3、切换到程序框图设计窗口下,在设计区放置一个“打开声音文件”函数

节点,并将其下拉选项的值设为“写入”。

4、在设计区放置一个“配置声音输入”节点、一个“读取声音输入”节点、

一个“写入声音文件”节点、一个“声音输入清零”节点,一个“关闭声音文件”节点,两个“While循环”方框节点和一个“条件结构”节点,并按错误!未找到引用源。连线。

5、切换到前面板设计窗口下,调整各个控件的位置。

6、设置“路径”输入框为“e:\\soundtest.wav”。单击工具栏上程序运行按钮,

点击【声音采集】按钮,对着麦克风放一段音乐,即可将声音数据写入到指定的文件“e:\\soundtest.wav”中去。

7、在波形图控件中可以查看声音信号的波形,如图表一所示。

单击【停止采集】按钮,结束程序运行,可在E盘根目录下看到声音文件“soundtest.wav”。

图表 1声卡声音信息采集及保存实验原理图

图表 2声卡声音信息采集及保存程序运行图

(二)实现对保存的声音信号进行读取、播放并进行频谱分析

利用【声音】函数选板的【输出】和【文件】子选板,加上【信号分析】选板的“频谱测量”节点可以实现对保存的声音信号进行读取、播放并进行频谱分析。 操作步骤:

1、进入LabVIEW 8.20的启动界面后,执行【文件】/【新建VI】菜单命令,

创建一个新的VI。

2、切换到前面板设计窗口下,放置一个“确定按钮”,并更名为“分析播放”。 3、切换到程序框图设计窗口下,在设计区放置一个“打开声音文件”函数节点,并将其下拉选项的值设为“读取”。

4、在设计区放置一个“读取声音文件”节点、一个“关闭声音文件”节点、

一个“播放波形”节点、一个“While循环”节点、一个“条件结构”节点和两个“频谱测量”节点,并配置两个“频谱测量”节点使其分别测量“幅度(峰值)”和“功率谱”。

5、按错误!未找到引用源。连线。

6、切换到前面板设计窗口下,调整各个控件的位置。

7、设置“路径”输入框为“e:\\soundtest.wav”。单击工具栏上程序运行按钮,

点击【分析播放】按钮, 系统会读取声音文件“e:\\soundtest.wav”,可以

听到来自电脑扬声器的声音。

8、在波形图控件中可以查看声音信号的频谱波形和功率谱波形,如图表3

所示。

图表 3声音信号读取、播放、频谱分析实验原理图

图表 4声音信号读取、播放、频谱分析程序运行图

(三)、实现对保存的声音信息进行滤波处理后再播放和进行频谱分析

要实现对保存的声音信息进行滤波处理后再播放和进行频谱分析,只要在(二)的基础上添加【信号分析】选板的“滤波器”节点就可以完成,另外为了加强系统的功能,本录音机实现了既可以对原信号进行频谱分析,也可以对处理后的信号进行频谱分析。

操作步骤:

1、 打开步骤(二)的VI文件,切换到前面板设计窗口下,添加一个“垂

直摇杆开关”,并更名为“播放前是否滤波”。

2、

切换到程序框图设计窗口下,在设计区放置一个“滤波器”节点,并设置其滤波器类型为“带通”,再放置一个“条件结构”节点,并按照图表3连线。

切换到前面板设计窗口下,调整各个控件的位置。

设置“路径”输入框为“e:\\soundtest.wav”。单击工具栏上程序运行按

3、 4、

钮,将【播放前是否滤波】开关打开,点击【分析播放】按钮, 系统会读取声音文件“e:\\soundtest.wav”,可以听到来自电脑扬声器的声音,这声音是经过了滤波后的声音。

5、

在波形图控件中可以查看进行滤波处理后的声音信号的频谱波形和功率谱波形,如图表5所示。

图表 5对声音进行滤波、频谱分析实验原理图

图表 6声音信号滤波、频谱分析程序运行图

(四)、将声音信号采集、滤波处理、播放和频谱分析功能整合到一起 前面已经完成了(一)实现声卡声音信号的采集并保存、(二)实现对保存的声音信息进行滤波处理后再播放和进行频谱分析,在(一)和(二)的基础上就可以轻松地将声音信号采集、播放和频谱分析功能整合到一起。只要将(二)前面板的控件直接复制到(一)的前面板上,再将(二)中的程序框图设计窗口的除最外的层的“While循环”的其他节点直接移植到(一)的最外层“While循环”里,然后将(二)中的路径控件删除,将其留下的线头连接到(一)的路径控件上就完成了。

图表 7综合程序实验原理图

图表 8程序运行图表(已装饰)

五、实验分析 1、改变采样模式(连续和有限)。分别在这2种模式下录音观察对录音质量有何影响?并分析为什么? 在连续采样的模式下,可以无限德采集声音信息,无论声音信息有多大,都可以被采集下来,而有限采样就不能,他只能保证一次采样的时间在3s左右,而其他的声音信息都会丢失。这是由于采样方式的变化,使得采样的结果变化。实验结果图像如图所示:

图表 9连续采样录音播放波形 图表10有限采样录音播放波形

2、(1)增加每通道采样数10倍任选一个倍数观察对录音质量有何影响?并记录在实验报告里,并分析为什么? 在连续采样模式下,改变每通道采样数,对录音的结果没有太大的影响,因

为连续采样的时间太长,使得每通道采样数对数据采集的影响基本没有。在有限采样模式下,当把每通道采样数增大10倍的时候,录音上网质量比之前好很多,更加接近原始声音了,这是由于增加了通道采样数,增加了采样频率和采样时间,使得采集到的数据更加多,所以录音质量比之前要好。

(2)减小每通道采样数10倍任选一个倍数观察对录音质量有何影响?并记录在实验报告里,并分析为什么?

在有限采样的模式下,减小每通道采样数,由于采样时间和采样频率的减小,声音质量变差。实验波形图如下图所示:

图表11有限采样增大每通道采样数录音播放波形 图表12有限采样减小每通道采样数录音播放波形

3、对声音格式项的实验:

改变采样率观察对录音质量有何影响?并记录在实验报告里,并分析为什么? 随着采样率的增大,声音会慢慢地失真,声音质量越来越差。由于采样率增大,采样时间也增大,相同时间里采集的数据就相对少了许多,使得声音越来越不清晰。实验过程波形图如图所示:

图表 13改变采样率对录音质量的影响波形图

4、观察滤波前和滤波后的声音的变化?并改变滤波的上下截止频率,观察声音随滤波截止频率变化的情况,并说明为什么会这样变化。

滤波前的声音没有变化,滤波后声音变得模糊不清,有的甚至失真。不同的上下截止频率产生的滤波后的声音质量也有所差异,上下截止频率相差大的对声音的

影响小。如图所示:

图表 14滤波前录音的波形图 图表 15滤波后录音的波形图

六、总结

(一) 优点:

能在录音前对录音设备的各项参数进行调整,并能够在录音后,完成播放、频谱分析、滤波去除噪声这些一系列的工作。 (二) 缺点:

1、只能采用声卡对声音进行采用,声音位数相对固定,声音信号的保真度有一定的问题。

2、声音播放后无法停止。

3、界面上的错误输入和错误输出,基本没有用,但在界面上影响了界面的美观。 (三) 改进:

1、只能采用声卡这是经济问题,无法解决。 2、在程序中加上一个播放停止的开关。

3、可在程序中去掉错误输入和输出的端口。

七、思考题

总结一下什么因素影响录音的质量?

答:影响录音质量的因素有以下几个方面:采样频率,采样精度和通道数.

采样精度: 精度越高,系统性能越好-分辨率 采样速度: 速度越快,系统性能越好-采样率

通道数:通道数是指数据采集板卡能够同时输入的信号路数。

因篇幅问题不能全部显示,请点此查看更多更全内容