欢迎来到沃文网! | 帮助中心 分享知识,传播智慧!
沃文网
换一换
首页 沃文网 > 资源分类 > DOC文档下载
 

基于MATLAB的数据采集系统的设计.doc

  • 资源ID:1282       资源大小:388.90KB        全文页数:34页
  • 资源格式: DOC        下载权限:注册会员/VIP会员    下载费用:20积分 【人民币20元】
下载资源需要20积分 【人民币20元】
已注册用户请登录:
账号:
密码:
  忘记密码?
    
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,既可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰   

基于MATLAB的数据采集系统的设计.doc

1一、主要内容和基本要求本项目的目的是实现基于小本的计算机应用系统。1、系统结构系统结构如下图所示系统结构图系统的实验电路实现模块化,每一个模块利用本所总线与链接模块相连接。操作流程图2、系统设计内容本系统的目的,是提供一个利用Matlab和小本资源实现的实验系统。Matlab的程序必须编译成可执行文件,以便在小本中运行。硬件电路要求提供音频(10kHz)信号处理电路。具体包括1)向PC的输出信号调理电路输入放大器抗混叠滤波器幅度可调输出放大器2)接收PC信号的输入信号调理电路缓冲放大器(40kHz)驱动电路3)5V/10mA电源电路,有PC机的USB口为电路模块提供电源。硬件电路需提供模拟电路和测试电路接口。开始初始化展开界面选择执行相应处理2信号接口电路板图三、系统功能本系统具有如下功能1.10kHz以内信号采集2.信号采集系统模型分析3.可连接相关处理程序4.可发送音频范围内的测试信号5.信号存储和调用6.信号显示7.信号处理结果显示与对比分析二、主要参考资料[1]美JanAxelson著,陈逸译.USB应用大全.北京中国电力出版社,2001[2]刘志俭等编著.MATLAB应用程序接口用户指南[M].科学出版社,2000[3]飞思科技产品研发中心编著.MATLAB6.5应用接口编程[M].电子工业出版社,2003[4]廖济林编著.USB2.0应用系统开发实例精讲[M].电子工业出版社,2006[5]程伟;程文波;李灿平;;基于MATLAB的实时数据采集与分析研究[J];电子测量技术;2008年08期[6]程国英;基于usb2.0的声音采集系统的研制[D];东北师范大学;2006年[7]健莲科技改编,许永和编著.USB外围设备设计与应用[M].中国电力出版社,2002[8]韩新风.基于USB接口的信号发生与采集系统的研究[D].华中科技大学2007三、进度要求1、第一周查询文献和资料,对课题进行调研。2、第二周根据调研资料撰写开题报告。3、第三周完善开题报告,准备开题答辩。34、第四周对外文文献进行翻译。5、第五周查找资料,确定总体方案。6、第六周设计具体的方案。7、第七周程序的初步编写。8、第八周程序初步仿真与测试9、第九周继续丰富系统功能。10、第十周进一步的进行程序仿真和调试,论文结构撰写。11、第十一周系统整体调试。12、第十二周毕设论文撰写,系统调试。13、第十三周继续修改论文,系统功能测试。14、第十四周毕设论文修改。15、第十五周制作ppt并且进行模拟答辩。16、第十六周完成所有毕设论文,最后答辩。指导教师(签字)专业负责人/系主任(签字)I摘要该设计是一个声音信号采集和分析系统,实现了对语音信号采集和显示,并对其进行了频谱分析。设计以计算机为核心构成一个数据采集系统,系统的可以分为传感器、声卡和计算机三大模块。在此基础上设计了系统的总体方案,最后通过硬件和软件实现了各个功能模块。系统首先通过传感器采集声音信号,再经过声卡对信号进行模数转换(采集、量化、编码)处理后,存入计算机进行信号的一系列处理。硬件部分引用了麦克风作为声音信号的传感器,以声卡作为信号的A/D转换模块,计算机用作信号的存储和处理。软件用的是MATLAB并且主要用到的是MATLAB中的数据采集工具箱。关键词MATLAB数据采集工具箱麦克风声卡IIAbstractThedesignisasoundsignalacquisitionandanalysissystem,itimplementsspeechsignalacquisitionanddisplay,anditmadethespectrumanalysisofsignals.Designwithcomputerasthecoreconsistsofadataacquisitionsystem,thesystemcanbedividedintothreesensors,soundcardandcomputermodule.Basedonthis,theoverallschemeofthesystemhasbeenaccomplished.Finally,allfunctionalmodulewereimplementedthroughhardwareandsoftware.Firstofall,thesystemacquiresoundsignalthroughthesensors.Thentheacquiredsignalaccomplishedanalog-to-digitalconversionthroughthesoundcardsampling,quantizationandcoding.Finally,itisstoredinthecomputerandthecomputerwillcarryoutaseriesofprocessing.Thehardwarepartusedthemicrophoneforvoicesignalsensor,andittooksoundcardasA/Dconversionmodule,thecomputerisusedtostoreandprocesssignal.SoftwareusedMTALABandmainlyuseddataacquisitiontoolboxofMATLAB.KeyWordsMATLABDataacquisitionboxThemicrophoneSoundcardIII目录摘要...............................................................IAbstract..........................................................II引言...............................................................11绪论..............................................................21.1课题背景及意义..............................................21.2数据采集系统的研究状况......................................31.3课题的研究目的和任务........................................42数据采集系统分析..................................................52.1数据采集系统的构成..........................................52.2基于MATLAB的数据采集系统原理...............................63基于MATLAB和声卡的数据采集器的设计...............................83.1方案选取....................................................83.2传感器的选择...............................................103.3声卡在A/D转换中的应用.....................................113.3.1声卡在A/D转换中的原理...............................113.3.2声卡的驱动软件.......................................123.3.3声卡的参数设置.......................................124软件设计.........................................................144.1基于MATLAB和声卡的软件流程................................144.2基于MATLAB和声卡采集的示波器的实现........................184.2.1GUI的创建............................................184.2.2GUI的设计............................................184.2.3代码的实现...........................................195程序的调试与分析.................................................23结论..............................................................26致谢..............................................................27参考文献..........................................................281引言伴随着计算机的广泛应用和信息化时代的到来,计算机与外部物理世界连接需要通过数据采集来实现。随着计算机技术的迅猛发展和广泛普及,数据采集系统也迅速地得到了广泛的应用。在工业生产过程中,我们需要应用该系统对生产现场的各种参数实施采集,监视和记录,提高产品的质量,降低成本。在我们的科学研究中,使用数据采集系统可以帮助我们获取大量的动态信息,更是研究瞬间物理过程的强有力工具,也是我们获取科学奥秘的重要手段。总之,在各个应用领域中,数据采集与处理越发的及时,工作效率就会越高,从而取得的经济效益和生活品质也就会越高。本篇就是针对语音信号的采集和处理设计的基于MATLAB的数据采集器,文中提出了系统构成、设计方案、设计过程。21绪论1.1课题背景及意义计算机和信息技术自出现以来一直在飞速的发展。时至今日,我们的生活和工作已经离不开了计算机。信号以各种各样的表现形式出现在我们的日常生活中,信息的传递、存储和获取都要通过信号来实现。所以,实时的信号采集和分析处理对于计算机和信息技术有着非常重要的意义。利用MATLAB的数据分析处理功能进行采集处理,则首先需要将语音信号转换成MATLAB的数据格式,因此,我们不能直接对硬件端口进行操作。随着计算机技术的势不可挡地发展与广泛应用,数字设备正在逐步的取代模拟设备,在生产过程中的控制和科学研究以及生活中的各个领域,计算机测控技术正发挥着无法取代的作用。我们外部世界当中的大部分信息是随着时空变化而变化的物理量形式出现的,比如温度、压力、位移等等。要将这些信息送入到计算机里进行处理,就势必要先将这些连续变化的物理量进行离散化,并进行量化和编码,从而最终变成数字量,这个过程就是通常我们所说的数据采集。计算机在监测和控制这个系统的过程中,获取原始数据的主要手段就是数据采集。数据采集是计算机是获取信息的重要途径,也是计算机与外面世界进行沟通的桥梁。数据采集技术是计算机技术和信息科学的一个不可或缺的部分,它已经广泛应用于我们的国民经济和国防建设的各个领域,而且随着科学技术的发展,尤其是信息技术的发展与普及,数据采集技术它有着广阔的发展前景。MATLAB是MathWorks公司很早推出的一种科学计算仿真软件,已经被广泛地应用于各种计算机上。现在已经发展成为功能强大的科学软件,它能够进行数据采集、信号分析、数学运算和可视化解释等。利用MATLAB设计数据采集器有很多各方面的优点,会使得我们对数据的后面分析和处理将更加的方便。MATLAB语言简单,介于汇编语言和高级语言之间,入手会简单很多,使用起来会很方便,输入简单明了,用户也可以对其自行发展,它是全球绝大多数国家进行科学研究都要用到的重要工具。MATLAB由于其丰富的数值分析和处理功能、简单的接口编程和强大的仿真功能而受到广大的用户推崇,但若要对量比较大的数据进行实时的采集,MATALB会显得相形见绌。在我们传统工业检测中,采集到的数据需要存储起来,后经过处理和转换,才能使用MATLAB进行最后的分析并作相应的处理,毋庸置疑这是一个相当复杂的过程,这势必会影响到MATLAB在开发测控系统的范围和在实践中对实时数据的处理速度。我们若是能够在MATLAB环境下直接采集实时数据,无疑所有的难题都会迎刃而解。3MATLAB7.0下的数据采集工具箱提供了直接对硬件端口进行实时数据采集的功能。只要利用该工具箱再加上合适的数据采集卡就可以进行实时数据采集和实时控制,由此就可以很容易地组建自动控制分析系统。利用计算机的声卡和MATLAB中的图形用户接口软件界面就可以构造一个简单的实时信号分析仪器。显而易见,在MATLAB开发环境下进行数据采集是确实可行的而且开发起来也会比较方便。在进入21世纪以来,世界变的越来越国际化,一个国家的发展必定会落后与世界的发展,全球化的趋势没法阻挡,竞争日益激烈,所有的国家所有的企业都在追求实时的信息处理和高效的工作效率,以最少的成本获得最大效益,所以基于MATLAB的数据采集的开发和应用是非常有必要的。它的实时数据采集处理特性会提高我们的工作效率以及对生产的管理水平,最终提高企业的经济效益。1.2数据采集系统的研究状况目前,数据采集系统主要有以下4种设计方案⑴使用RS232串行通信将采集模块采集到的数据传输到PC机。采集模块采集到的数据通过RS232串行通信传输到PC机,借助MATLAB中的仪器控制工具箱封装的串口对象,可以像操作文件一样控制串行端口与外设进行通信。先使用serial函数创建串口对象,再设置波特率、数据位、停止位等属性,使PC机和数据采集模块间具有相同的通信模式。传输数据时,用函数打开串口,再用fwrite函数和fread函数以二进制或ASCII码格式对进行读写操作。数据通信过程中,通过读串口对象属性可以实时了解串口的工作状态。数据传输结束后用fclose函数关闭串口。用智能数据采集模块采集系统的输入激励信号和输出响应,将采集到的数据通过串行通信传输到MATLAB。⑵用AT89C51单片机MCS51系列与美国TITexasInstruments公司的A/D芯片TLC2543制作数据采集卡。该采集系统移动性比较好,而且成本也不高,它利用AT89C51单片机MCS51系列与美国TITexasInstruments公司的A/D芯片TLC2543制作了一块数据采集卡,由单片机完成具体的数据采集任务,采集到的数据同时传送给计算机进行分析处理。数据采集卡的结构是设计成外置式的,模拟信号通过A/D转换转化成数字信号,然后串行传输给后台控制的计算机。TLC2543是拥有11个输入端的12位模数转换芯片,并且是串行控制的,内置有采样保持器,转换时间最长不能超过10Ls,还有S/H和多路选择开关,单5V供电,0~5V模拟输入,需要外接参考电压。选用2211184MHz作为单片机的振荡频率,这样可使AT89C51与PC通信的波特率能够非常精确地达到115200bps,确保计算机能够实时的接收到的高速采集的数据。模拟信号通过TLC22744高速低噪声运放进行缓冲,它的输出是满幅度的即rail-to-rail,采用单5V供电时,可产生0~5V输出,所以说它非常适合用在这里。TLC2543参考电压是电压源芯片AD586产生的5V精密基准电压。由计算机传送采集设置,采集到的数据通过串行口实时传输给计算机。(3)使用USB总线的数据采集器。USB总线的速度快,而且易扩展,能够采用总线供电,所以使用起来比较灵活。可以在MATLAB的环境下通过USB总线进行实时的信号采集,但是MATLAB自身是不能实现对USB总线的控制功能。在C语言环境下,是可以非常方便地对USB的驱动进行开发和控制。如果对USB的数据采集部分进行驱动和控制利用C语言进行开发,编译成MEX文件,然后在MATLAB中需要时调用即可。4基于ARM和GPRS的嵌入式多路数据采集系统。该系统是运行于32位微处理器和嵌入式Linux操作系统的架构上,与传统的解决方案相比,速度更快,数据处理能力更强,功能也扩展了,更加的可靠。并且它有向其它的行业应用的发展前景。1.3课题的研究目的和任务设计声音采集系统,该系统利用计算机和声卡的资源完成10kHz以内的声音信号的采集和显示以及对其做一个简单的频谱分析,并且能够实现信号的存储和调用示。设计是以计算机为核心构成数据采集系统,主要模块包括麦克风、声卡和计算机。系统具体的完成如下功能1.10kHz以内信号采集2.信号采集系统模型分析3.可连接相关处理程序4.可发送音频范围内的测试信号5.信号存储和调用6.信号显示7.信号处理结果显示与对比分析基本要求根据主要内容提出整体设计方案,确定设计方案满足题目要求及课设要求、明确系统所需的软硬件,并编写系统正常运行所需程序,完成软硬件的调试,使系统正常运行。52数据采集系统分析2.1数据采集系统的构成近年来,微电子技术与数字信号处理技术的火速发展使得数字信号处理变的非常容易和方便。因此,如果采用数字信号处理技术来处理信号,那么在进行信号处理之前就必须完成数据采集。数据采集技术是信息科学技术的一个必不可少的分支,它主要研究数据的采集、存储、处理以及控制的问题。在信息处理、智能化仪器以及工业自动化控制等领域,都无法避免数据的采集、传输与控制等问题,将外面世界真实存在的压力、温度、位移以及速度等物理量转化为数字信号,再传输到计算机中并进一步予以显示、处理、传输与记录的过程,称为数据采集。相应的系统也就是数据采集系统。下图1是数据采集系统的系统框图图1数据采集系统的系统框图传感器是能够感受到特定的被测物理量,并且会呈现一定的规律变化,它通常是由敏感元件和转换元件两部分组成。其中,敏感元件是传感器中能直接感应被测物理量的部分;转换元件是能将敏感元件的输出量转化为方便传输或测量的电信号部分,转换元件是传感器中能够直观感受或响应被测物理量的部分。传感器在一些其他领域中又会被称为检测器或探测器。随着传感器集成技术的发展渐趋成熟,其应用将会越来越广泛。传感器的功能是把非电的物理量转化成模拟电信号(电流或电压),例如热电偶、热电阻电阻大小随温度变化而变化;转速传感器通常是把转速转换为电脉冲信号。通常把传感器转化成的电信号输入到A/D转换器中,输入的这一段信号电路称为模拟通道。对传感器输入的信号进行放大滤波就是信号调整模块,用输入放大器来放大和缓冲输入信号,后用抗混叠滤波器滤波。传感器输出的电信号太小,所以需要对其进行放大,以满足A/D转换器的满量程输入的要求。除此之外,一些传感器内阻很大,输6出功率太小。这样同时放大器还起到了的来缓冲输入信号作用,也就是阻抗变换器的功能。下图2是传感器的工作框图图2传感器的工作框图A/D转换器的功能就是把不好处理的模拟信号转化为数字信号,具体的转化流程是采样、量化、编码,并且把转化后的数字信息储存在缓存当中,等待中央处理器的读取。要将模拟信号的转换必须由A/D转换器完成,伴随着大规模乃至超大规模集成电路的发展,为了满足各类不同的检测和控制任务的要求,大量的各式A/D转换电路应运而生,有的结构不同,有的性能不同。积分型、传统并行型、逐次逼近型是层出不穷以及新发展起来的∑一△型和流水线型等,所以在选取A/D转换器时我们就要根据应用场合和所需性能指标的要求来选取A/D转换器。低功率、高速度、高分辨率是大家所追求的,也是是A/D转换器的发展方向,所以A/D转换器的这一发展方向肯定是适应现代数字电子技术的发展方向。2.2基于MATLAB的数据采集系统原理基于MATLAB的数据采集需要用到数据采集工具箱,使用它可以极大地简化和加快数据采集工作。它将实验测量、数据分析、和可视化的应用集合在一起会更加的容易,它提供了一整套的命令和函数,通过调用这些命令和函数,可以实现各种与计算机兼容的硬件设备的数据采集和通信。因为现在的MATLAB软件自身是集成有数据采集工具箱的,所以一边在实时采集数据,一边就可以对采集到的数据进行分析,或进行相应的处理,或者因为数据分析的需要实时地更新测试条件。数据采集工具箱给硬件驱动程序和MATLAB环境之间提供了“对话”所需的3种组件,分别是M文件函数、数据采集引擎和硬件驱动接口。MATLAB程序通过这3种组件与数据采集硬件的互联和信息传递,它们之间的关系如图3所示。7图3MATLAB数据采集箱提供的三种组件硬件之间的关系硬件驱动适配器在硬件驱动程序和数据采集引擎之间交换属性数值、数据和事件;数据采集引擎用来存储各个设备对象,以及每个设备对象的属性值;对采集到的数据进行存储并且使不同事件同步;M-文件用来创建设备对象、采集或输出数据、检查数据采集设备和数据采集的状态和配置属性值。只有使用工具箱提供的设备对象才能访问硬件端口。设备对象给访问硬件设备带来了方便,数据采集的应用程序需要设备对象来控制。每个设备对象它都会对应着一个规定的硬件子系统,如下图4所示。MATLAB数据采集工具箱提供了3个设备对象,分别是模拟输入设备对象AI、模拟输出设备对象AO和数字输入/输出设备对象DIO。在每次采样之前,要创建合适的设备对象。图4设备对象和硬件子系统83基于MATLAB和声卡的数据采集器的设计3.1方案选取当今在推进信息化建设的实践中,数据采集技术是不可缺少的重要环节,对设施的影响尤为深远。目前,比较常见的数据采集系统设计方案主要有以下几种(1)使用RS232串行通信将采集模块采集到的数据传输到PC机RS232是PC机与通信工业中应用最广泛的一种串行接口,RS232被定义为一种在低速率串行通讯中增加通讯距离的单端标准。RS232采取不平衡传输方式,即所谓单端通讯,同时又有通信距离短、速率低的缺点。(2)用AT89C51单片机MCS51系列与美国TITexasInstruments公司的A/D芯片TLC2543制作数据采集卡该采集系统具有较好的可移动性并降低成本,但AT89C51的精确度不高。(3)应用USB总线的数据采集器。该方案有速度快、易扩展、能够采用总线供电、设备安装和配置容易和使用灵活等优点,但是设计和调试比较麻烦,成本相对较高。(4)基于ARM和GPRS的嵌入式多路数据采集系统。该系统运行于32位微处理器和嵌入式Linux操作系统的架构上,与传统的解决方案相比,在可靠性、速度、数据处理能力、功能扩展等方面有了显著改进,并且有向其它场合下的行业应用扩展的前景。信号采集工程是工程中信号分析和处理的前提,基于MATLAB的数据采集器是为了实现MATLAB与外部环境的交互,达到直接对硬件端口进行读写操作,实现这个目的,要利用MATLAB的数据采集工具箱。数据采集工具箱是MATLAB计算环境中M文件函数、MEX文件和MEX-file动态链接库的集合。硬件驱动接口也就是硬件驱动程序和数据采集工具箱它们之间的接口,主要目的是通过驱动程序在硬件设备和MATLAB之间传送信息。数据采集工具箱是不会提供硬件驱动的,一般设备供应商提供是会提供硬件驱动的。那么在系统中安装相应的版本NIDAQ驱动即可,它可从硬件的驱动程序实现接收数据的采集,并送入MATLAB。功能包括实时模拟输入AI,ADC,数据采集、模拟输出AO,DAC、数字量输入输出DI/DO。支持流行的硬件,例如声卡、NationalinstrumentsE系列和1200系列数据采集卡、Hewlett-PackardE1432A系列VXI数据采集卡等。表1是目前支持的供应商和接口卡的名称。9表1供应商和接口卡名称供应商Vendor接口卡名称AdaptorNameNationalInstrumentsnidaqComputerBoardscbiAgilentTechnologiesHpel432Windowssoundcards声卡winsound数据采集硬件的不同操作都是一致的界面,不同的采集硬件只需简单地修改相应的程序即可。集成于MATLAB内的数据采集工具箱不仅支持标准的数据采集卡,而且支持通过声卡进行采集数据和输出数据。所以,以声卡作为数据采集卡就不需要再加A/D和D/A转换器了,一台个人计算机就可以作为一个数据采集系统。再进一步利用MATLAB内的数据采集工具箱,从而就可以组成一个系统进行实时采集和仿真控制。可以将MATLAB内的Simulink、DialsGauges、DSPBlockset、Fixed-PointBlockset等固有的模型用Real-TimeWorkshop快速地转化为C语言,从而进行对外界实时地测量、信号分析处理和监控。数据采集卡一般包括多路开关、放大及采样保持、A/D转换、计算机I/O接口等部分,性能比较完善,但价格比较昂贵,同时硬件安装及软件驱动需占用一定的系统资源。计算机上都装有声卡,声卡具有对信号滤波、放大及采样保持、A/D和D/A转换等功能,这些功能与数据采集卡相当。使用声卡进行直接A/D转换、以话筒的插孔作为信号源输入端,就可实现单、双通道对信号的采集。一般常用声卡会以双声道16位并且高保真的采集语音信号,最高上限采样率可以达到44.1KHz,采样的频率与精度是比较高的。通常比12位市售D/A卡的精度高,声卡在信号的量化精度和采样率方面是绝对满足当前的科学实验和工程测量要求的,相对于一些低档的数据采集卡它的性能甚至更好。因此可用声卡配合相应软件构建信号采集系统。MATLAB中提供了数据采集工具箱和信号处理工具箱,完全可以满足控制声卡进行数据采集和分析数据的要求。前面四种方案虽然各有优点,但是,基于MATLAB和声卡的数据采集器与它们比起来更廉价和简单,我对其掌握也更充分。所以,我选择了基于MATLAB和声卡的数据采集器设计方案。基于MATLAB的数据采集器的设计以声卡为核心,既能充分利用MATLAB的信号处理功能,又能充分发挥声卡所具有的廉价和能对模拟信号的放大、滤波、采样、A/D和D/A转换。本方案的系统框图如图510图5系统框图3.2传感器的选择声音传感器是一种将声音信号转变为电信号的声电转换器件,或者说声音传感器是将机械能转化为电能的转换装置。常规的声音信号的频率范围一般在20Hz-20kHz,并要求传感器在此频率范围内对声音的响应。传声器就是声音传感器,我们通常称呼其为麦克风,它的作用与扬声器恰恰相反,是将声音信号转化成电信号。目前,传声器的种类很多,其外形、规格、型号等更是不胜枚举。但是按工作原理分为传声器可分为动圈式传声器、压电晶体式传声器、带式传声器、和电容式传声器等等。驻极体式传声器在其振动面粘贴了聚酯膜,它能够拾取直达声,减少反射声,增加了声音的保真度。它有着电声性能好、结构简单、价格低,、灵敏度高、耐用等特点,因此其应用是较广泛的。驻极体式EM一9767型号的麦克风,它有着最高可达30dB的灵敏度,可以响应20Hz一20kHz带宽的音频信号,频响特性也是比较平坦的,信噪比一般大于60dB,从以上几点来说是完全满足我们所设计的系统的要求。在设计该系统过程中,因为难以获得像这样高灵敏度的麦克风,所以选用的是市面上一般的麦克风,这样的麦克是没有明显的电气参数的,但是通过实践表明其特性是完全满足本系统要求的。使用时,传声器直接插入PC机的麦克风插孔。周围环境所引起的空气震动传至传声器时,在线圈上就会产生感应电动势,即形成一个电信号。这个电信号经由线圈引出线输出,经信号调整电路放大、滤波后,再经过A/D转换成数字信号传入计算机进行信号处理。麦克风的衡量指标有输出阻抗、灵明度、频率响应、指向性。驻极体式EM一9767麦克风的主要电气特性如表2表2驻极体式EM-9767麦克风主要电气特性参数指标指向性单向性灵敏度-463dB,-483dB,-503dB声音麦克风声卡计算机11输出阻抗680Ω最大频率范围10016000Hz最大工作电压10.0V标准工作电压1.5VDC工作电流0.5mA3.3声卡在A/D转换中的应用3.3.1声卡在A/D转换中的原理声卡是电脑中用来处理声音的接口卡,有三个基本功能①音乐合成发音功能。②混音器(Mixer)功能和数字声音效果处理器(DSP)功能。③模拟声音信号的输入和输出功能。声卡可以把来自话筒、收录音机、激光唱机等设备的语音、音乐等声音变成数字信号交给电脑处理,并以文件形式存盘。计算机上都装有声卡,声卡不仅价格低廉,而且兼容性好、性能稳定,软件特别是驱动程序升级方便,具有对信号滤波、放大及采样保持、A/D和D/A转换等功能,而且声卡采用DMA直接内存读取方式传送数据,极大地降低了CPU占用率。一般声卡具有16位的D/A转换精度,通常比12位市售D/A卡的精度高,对于许多工程测量和科学实验来说都是足够高的,而其价格却比后者便宜得多。声卡的硬件结构由以下几部分组成声音控制/处理芯片,功放芯片,声音输入/输出端口等。声音控制/处理芯片是声卡的核心,集成了采样保持、A/D转换、D/A转换、音效处理等电路,声卡的优劣主要是由它决定的,它的基本功能是对声波进行采样和对声波回放的控制以及处理MIDI指令等,声音输入/输出端口是音频信号的输入和输出,它主要有外接端口和内接端口。外接端口中有“LineIn”线性输入端口,“MICIn”麦克风输入端口,还有MIDI端口,可以连接游戏控制器和电子乐器。内接端口是声卡内置的输入/输出端口,是CD音响接口。声卡对声音的A/D转化图如图6所示,本文中声卡对声音的输入采用“MICIn”麦克风输入端口。12图6声卡对声音的A/D转化图声音信号由麦克风采集到经过声卡的前置处理再进行模数转换后变成数字信号,送入输入缓冲区,然后利用各种数字信号处理的技术对输入到缓冲区的数据进行处理,从而完成音效处理、声音消噪、声音合成等功能,最后可以把已经处理好的数据保存到可存储的存储设备中,这完成了声音信号的录制过程。3.3.2声卡的驱动软件声卡驱动软件也就是声卡的驱动程序,实现对通道数、采样频率、采样位数等参数设置及对音量的大小、数据缓冲区等控制功能,它能够使得声卡各组成部分相互协调的工作,从而实现对声音的采集、存储和回放等功能。驱动软件的结构可分为两部分,分别是低层音频服务部分和高层音频服务部分。低层音频服务能够让代码程序直接与驱动程序传递信息,可以很好地控制声音播放和录制,播放和录制过程就可以得到很好的管理,它也可以控制各种各样的音频设备。高层音频服务同样也能实现声音的录制和播放的功能,但它不能直接控制底层数据。由于低层音频服务可直接与驱动程序通讯,实现对底层数据的直接控制,而且本系统是对信号波形输入设备的操作,作为工程上使用的信号采集系统,需要考虑信号的采集频率、采样长度、采样位数等。数据采集时,调用底层音频函数来完成。首先对声卡定义为设备对象,使MATLAB将声卡设备作为对象处理,用于建立模拟信号输入,创建一条专用的通道用于模拟信号数据的传输,然后对通道数、采样频率、采样位数(A/D转换位数)、采样长度等参数进行设置,最后选择触发方式。3.3.3声卡的参数设置声卡的技术参数主要有两个采样位数和采样频率。1)采样位数采样位数也就是采样值或取样值,是声卡处理声音的解析度,采样值越大,解析度就越高,声音的录制和播放效果会越好。声卡位数和数据采集卡的位数是同一个概念,是指模拟信号转化为二进制数字信号的位数,它反映的是描述信号的准确程度。模拟的声音信号(CD、线路输入)信号前置处理A/D转换数据输入缓冲区数字信号处理13显而易见,位数是越高越好。目前,市面上绝大数的声卡是16位,然而一般市场上的数据采集卡只有12位,所以从这个角度来说,声卡的准确度是非常高的。2采样频率由于声卡只能处理语音信号,所以声卡的采样频率通常比较低的。目前,采样频率的最大值是44.1kHz,只有少数能达到48kHz。通常声卡的采样频率设为4个档位,分别是44.1kHz、22.05kHz、11.025kHz和8kHz。22.05kHz的频率仅仅能达到FM广播的音质,理论上的CD音质界限是44.1kHz,当然48kHz的效果会更好。对于20kHz以内的音频信号,采样频率设为48kHz理论上是没问题的,但是余量似乎不大。由采样定理得到,采样频率应该至少是被采样信号的2倍,所以声卡的采样频率决定了可以采样信号的范围。不允许用户在最高的采样频率一下任意设置采样频率,只能分为4挡,这个是使用声卡作为数据采集卡的一个缺点。这样虽然使得制造成本降低,但是使用起来不是很方便。用户一般不可能控制整周期采样,非整周期采样带来的问题只能通过信号处理来弥补。144软件设计4.1基于MATLAB和声卡的软件流程本系统的软件设计使用了面向对象的程序设计方法。图7给出整个程序的模块构成图。本软件的设计方法,力求简单明了,操作方便。图7程序的模块组成图首先设置采集数据时需要的参数,再进行采集数据,对于采集到的数据可对其进行保存、波形显示和频谱变换,下面可以调用已保存的数据作一些分析处理。该设计要利用数据采集工具箱,在MATLAB环境下实现实时数据采集的步骤如图8所示。软件功能模块测试采集数据波形显示保存时域分析频域分析读取播放15图8数据采集命令流程首先需要利用命令函数analog来创建输入设备对象,并且再定义一个MATLAB变量来代替这个设备对象,以后只要是对该设备对象的操作就转化为对刚定义的这个变量操作。当上面的输入设备对象建立完成后,就需要根据实际情况给该输入设备设置数据采集通道。接着就需要设置输入设备对象在采集过程中所需的参数,不同的采集卡它的采集特性参数会都是各不一样的。当上述的所有工作完成之后,就可以开始启动数据采集命令了,此时由数据采集引擎管理数据采集卡的状态,上面设定的参数数据采集引擎响应和监控数据采集卡都会自动地严格遵守,并且数据采集引擎会将采集到的数据输入给其管理的内存区,在MATLBA中通过对应的命令可以查看系统数据采集的状态和抽取数据到MATLAB的工作空间中,并在MATLAB工作空间中可对抽取到的数据处理分析。当采系统集到的数据满足预先设定的参数时,采集任务也就结束了。这时可以利用delete和clear两个简单的命令来清除建立的设备对象,如果不清除该设备对象,数据采集引擎的会一直监管该设备,下次再创建相同设备对象时,系统发生错误。数据采集工具箱针对数据采集对象支持两种特性,第一种特性是通道特性,它只适用于单个通道,第二种特性是公共特性,它可以定义数据采集卡所有采集通道的特性;具体到每个不同的数据采集卡的特性会有所不同,其中有一组是通用的基本特性1.创建设备对象analog2.添加采集通道addchannel3.设定特性参数set4.启动数据采集和数据处理start5.清除设备对象delete;clear16设置适合于大多数的应用,这些基本特性包括触发方式和采样率。数据采集工具箱支持的触发方式有4种,它们分别是手动触发、立即触发、软件触发和硬件触发(‘Manual’、‘Immediate’、‘Software’、‘Hardware’)。(1)通过编程将MATLAB与声卡连接起来。声卡设备仅仅是MATLAB中的一个对象,之后的所有的操作都不会直接作用于硬件,而是直接对已经建立的声卡设备对象的操作作用于外部的硬件设备。对于这个系统来说,采集数据用的是声卡,所以系统输入和输出的信号都是模拟信号。在MATLAB中将MATLAB与声卡连接起来是非常容易的,编程是只需利用相应的语句就成,MATLAB中的analog命令是专门用于建立模拟信号输入设备对象的,下面的语句是其语法

注意事项

本文(基于MATLAB的数据采集系统的设计.doc)为本站会员(星星008)主动上传,沃文网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知沃文网(发送邮件至2622162128@qq.com或直接QQ联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服点击这里,给沃文网发消息,QQ:2622162128 - 联系我们

网站客服QQ:2622162128   

沃文网 版权所有  | ©2017-2022

  |陕ICP备19002583号

  陕公网安备 61072602000132号

   违法和不良信息举报:0916-4228922