基于声卡的数据采集

第二章 基于声卡数据采集系统的总体设计方案

2.1 硬件的选择
目前的独立声卡或者板载声卡都包括有晶振、A/D、D/A转换芯片和数字信号处理芯片及其它辅助电路,因此它可作为数据采集卡使用。现在的声卡一般都采用PCI接口,完全满足最高16bit的采样精度、44.1kHz的采样频率所需705.6kb的数据采集传输率要求。而且,声卡是用DMA方式进行数据采传送的,这样就级大地降低CPU的占有率。
LabVIEW对声音采集的设置默认于其所处的操作系统,本文使用的是最普通的声卡,计算机配置为AMD2400+/512M内存,板载C-Media AC97声卡。对于高级的声卡采集信号时,要注意关闭如混响之类的一些特效,避免影响测量结果的真实性。
LabVIEW数据采集库包含了许多有关采样和生成数据的函数,它们与NI的插卡式或远程数据采集产品协同工作。数据采集卡是进行高速直接控制以及低速控制的理想设备。由于数据采集卡价格低廉、操作携带方便,因此大大的降低了每个通道的成本。
商用的数据采集卡虽具有较大的通用性,但其价格昂贵,在具体的应用场合,有些功能可能并不实用。普通声卡,具有16位的量化精度、数据采集频率是44 kHz完全可以满足特定应用范围内数据采集的需要,个别性能指标还优于普通商用数据采集卡,而价格却为商用数据采集卡的十几分之一甚至几十分之一,本文选用普通声卡作采集卡大大降低了成本。
数据采集系统的任务是采集原始的数字信号,其主要指标有采样精度、采样速度。采样精度由转换器的位数来决定,而采样速度是与采样频率不可分的。从提高精度的角度出发,模数转换器的位数与采样频率之间是相互制约的。
数据采集卡的选择主要与采样率、测量通道、分辨率和测量精度有关。采样率即在单位时间内的测量次数,一般用H:即采样频率来表示。采样率的选择,取决于被测量的信号的变化速度,根据奈奎斯特采样定理,所需的采样频率应为所测信号的最高频率分量的两倍以上,即应选用100kH的板卡才能完成最高频率为50kHz的被测信号的侧量工作。测量中都需将模拟信号经A/D转换成二进制的数字信号,分辨率就是将满量程信号经A/D转换后得到的二进数的位数。分辨率越高,意味着可检测出来的电压变化越小,它和测量范围(可测量的最高电平和最高电平)及增益(板卡的放大倍数)一起决定了该板卡可测的最小电压变化量,也称为二进码的宽度,现在产品中有8位、12位、16位的最多。
2.2 软件的实现
如图2-1所示,这个流程与一般数据采集卡并无多大差别,这也是本设计的最基本的骨干。

图2-1 声卡数据采集流程图
声卡数据采集虚拟示波器是采用基于计算机的虚拟技术,用以模拟通用示波器的面板操作和处理功能,也就是使用个人计算机及其接口电路来采集现场或实验室信号,并通过图形用户界面(GUI)来模仿示波器的操作面板,完成信号采集、调理、分析处理和显示输出等功能。
我所设计的虚拟示波器,是在数据采集硬件的支持下,配备一定功能的软件,完成波形的存储、分析、显示等功能。一般测试仪器由信号采集、信号处理和结果显示三大部分组成,这三部分均由硬件构成。虚拟示波器也是由这三大部分组成,但是除了信号采集部分是由硬样实现之外,其它两部分都是由软件实现。
总体设计方案软件方面的实现:

图2-2 设计方案软件流程图
Fig Design project software flow chart
第四章 声卡

4.1 从数据采集角度认识声卡
4.1.1声卡工作原理及性能指标
声音的本质是一种波,表现为振幅、频率、相位等物理量的连续性变化。声卡作为语音信号与计算机的通用接口,其主要功能就是将所获取的模拟音频信号转换为数字信号,经过DSP音效芯片的处理,将该数字信号转换为模拟信号输出。声卡的基本工作流程为:输入时,麦克风或线路输入(Line In)获取的音频信号通过A/D转换器转换成数字信号,送到计算机进行播放、录音等各种处理;输出时,计算机通过总线将数字化的声音信号以PCM(脉冲编码调制)方式送到D/A转换器,变成模拟的音频信号,进而通过功率放大器或线路输出(Line Out)送到音箱等设备转换为声波,人耳侦测到环境空气压力的改变,大脑将其解释为声音。
图4-1是声卡的工作框图,模拟声信号经过声卡前置处理及A/D转换后变成数字信号,送人输人缓冲区,然后通过各种数字信号处理的方法对波形输人缓冲区的数据进行处理,完成声音消噪、音效处理、声音合成等功能,最后把处理好的数据把保存到存储设备,这就是声音信号的录制过程。相应的声音信号回放过程为:把处理好的数据送到输出缓冲区,再由声卡的D/A转换,将数字音频转换为模拟信号,经过功率放大,送到喇叭。如果将工程中所需采集的信号仿照声音信号输人,即可实现对信号的采集和存储。

图4-1声卡工作框图
Fig4-1 working diagram of sound card
衡量声卡的技术指标包括复音数量、采样频率、采样位数(即量化精度)、道数、信噪比(SNR)和总谐波失真(TDH)等,主要介绍如下:
(1)复音数量代表了声卡能够同时发出多少种声音。复音数越大,音色就越好,播放声音时可以听到的声部越多、越细腻。
(2)采样频率每秒采集声音样本的数量。采样频率越高,记录的声音波形就越准确,保真度就越高,但采样数据量相应变大,要求的存储空间也越多。
(3)采样位数将声音从模拟信号转化为数字信号的二进制位数(bit)。位数越高,在定域内能表示的声波振幅的数目越多,记录的音质也就越高。例如,16位声卡把音频信号的大小分为216=65536个量化等级来实施上述转换。
4.3 声卡用于数据采集时的一些设置
一般声卡主要用于输出声音,输入部分可能没有处于正常工作状态。建议首先使用耳机和MIC检查声卡的功能,特别是输入功能(录音功能)是否正常。如果不正常。需要检查声卡的设置。一般来说,这里的设置有两层含义,首先是要配置所需要的功能,其次就是要保证已经配置的功能不处于关闭状态。下面介绍对Line In和Mic In的检查和设置。
按图4-4所示,在“选项”菜单下选“属性”,得到下半部分所示的对话框,在此对话框上选择“录音”,并配置列表中的选项即可。注意图4-4中相关的功能都不在静音状态。

第五章 数据采集和数据采集卡

5.1 数据采集系统的构成
数据采集是LabVIEW的核心技术之一。要将数据采集到计算机里,并对其进行合理的组织,需要构件一个完整的数据采集(Data AcQuisition,DAQ)系统。它包括:传感器和变换器、信号调理设备、数据采集卡(或装置)、驱动程序、硬件配置管理软件、应用软件和计算机等。使用不同的传感器和变换器可以测量各种不同的物理,并将他们转化为电信号;信号调理设备可对采集到的电信号进行加工,使它们适合数据采集卡等设备的需求;计算机通过数据采集卡等获得测量数据;软件则控制着整个测量系统,它告诉采集设备什么时候从哪个通道采集获得的数据,同时还对原始数据作分析处理,并将最后结果表示成容易理解的方式,例如图表或文件等。下面为DAQ功能:
(1)A/D
A/D转换器是把输入模拟量转换为输出数字量的器件,也是DAQ的核心。就工作原理而言,A/D转换有3种方法:逐次逼近法A/D、双积分法A/D和并行比较法A/D 。在DAQ产品中应用较多的方法是逐次逼近法A/D 。双积分法A/D 主要应用与高速采样,比如数字示波器、数字采样器等应用场合。衡量A/D 转换器性能好坏主要有两个指示:一是采样分辨率。即是A/D 转换位数;二是A/D 转换速度。这两者都与A/D 转换器的工作原理有关。
(2)D/A
DAQ系统经常需要为被测对象提供激励信号,也就是输出模拟量信号。D/A转换器就是将数字量转换为模拟量输出的器件。D/A转换器的主要性能参数是分辨率和线性误差分辨率,分辨率取决于D/A转换器的位数,线性误差则刻画了D/A转换器的精度。
(3)数字I/O
在DAQ应用中经常需要采集外部设备的工作状态,建立与外部设备的通信,此时就需要用到DAQ设备的数字I/O功能。一般的数字I/O板卡均采用I/O板卡均采用TTL电平。需要强调的一点是,对于大功率外部设备的驱动需要设计专门的信号处理装置。
(4)定时/计数器
在DAQ应用中还经常用到定时/记数功能,比如脉冲周期信号测量、精确时间控制和脉冲信号产生等。定时/记数器的两个主要性能指示是分辨率,分辨率越大,计数器位数越大,计数值也约高。
如图5-1为数据采集系统的构成

图5-1 数据采集系统结构
Fig5-1 the date collects system structure

浏览系统中的设备和仪器,并快速检测及配置硬件和软件;
通过测试面板验证和诊断硬件的运作情况;
创建新的通道、任务、接口和比例等。
MAX给每块DAQ卡分配一个逻辑设备号,以提供LabVIEW调用时使用。在数据采集卡配置程序主界面里,左栏里有Data Neighborhood,Devices and Interfaces和Scales等目录。
声卡数据采集LabVIEW程序如图5-2:

图5-2 基于声卡的数据采集系统的部分G代码
Fig5-2 Collect parts of G codes of system according to the data of audio card
第六章 波形显示及其采样

6.1 波形输入设备
在打开波形输入设备前,首先要利用waveInGet2NumDevs函数获取波形输入设备的数量。若返回值为N,则可知有N个输入设备,其设备ID依次为0~N-1。接着调用waveInGetDevCaps函数查询指定输入设备的性能。然后根据设备的性能及实际需要,对声卡的输入通道数、采样频率、采样位数、量化精度、数据格式等参数进行设定。这些设置是通过填写WAVEFORMATEX数据结构来实现的,该结构用于描述波形音频格式,其定义如下:
Typedefstructwaveformat - extended - tag {
WORDwFormatTag; //采样数据格式,目前只能用PCM格式
WORDnChannels; //通道数目 ( 1或2)
DWORDnSamplesPerSec; //采样速率
DWORDnAvgBytesPerSec; //每秒采样得到的字节数
WORDnBlockAlign; //记录区块对齐的单位
WORDwBitsPerSample; //量化位数
WORDcbSize; //可能的长度扩充
} WAVEFORMATEX;
然后以该结构体的指针为一个参数,调用waveInOpen函数打开波形输入设备。
第七章 信号分析与处理
7.1 概述
数字信号在我们周围无所不在。因为数字信号具有高保真、低噪声和便于信号处理的优点,所以得到了广泛的应用,例如电话公司使用数字信号传输语音,广播、电视和高保真音响系统也都在逐渐数字化。太空中的卫星将测得数据以数字信号的形式发送到地面接收站。对遥远星球和外部空间拍摄的照片也是采用数字方法处理,去除干扰,获得有用的信息。经济数据、人口普查结果、股票市场价格都可以采用数字信号的形式获得。因为数字信号处理具有这么多优点,在用计算机对模拟信号进行处理之前也常把它们先转换成数字信号。本章将介绍数字信号处理的基本知识,并介绍由上百个数字信号处理和分析的VI构成的LabVIEW分析软件库。
目前,对于实时分析系统,高速浮点运算和数字信号处理已经变得越来越重要。这些系统被广泛应用到生物医学数据处理、语音识别、数字音频和图像处理等各种领域。数据分析的重要性在于,无法从刚刚采集的数据立刻得到有用的信息,如下图所示。必须消除噪音干扰、纠正设备故障而破坏的数据,或者补偿环境影响,如温度和湿度等。

图7-1未分析和处理前采集到的数据曲线图
Fig7-1 the data curve diagram collected before doing not analyze with processing
通过分析和处理数字信号,可以从噪声中分离出有用的信息,并用比原始数据更全面的表格显示这些信息。下图显示的是经过处理的数据曲线。

图7-2 分析和处理后采集到的数据曲线图

7.8 信号分析与处理模块程序
信号分析模块从采集模块获得数据,或者从文件重载以前采集并存盘的数据;对全部数据进行时域和频域分析并显示相应的时域图和频域图;重新做增强的数据保存工作,即保存所选时段数据的谱信息,以便作进一步的分析。用户还可以对数据进行分段处理,甚至对该段数据按频段进行分析。
LabVIEW完全图形化的编程环境和数据流的驱动方式使用户可以非常直观的观察到程序代码的并行执行。该系统充分利用LabVIEW的多线程(Multithreading)技术,为整个系统中的用户接口、数据采集、信号分析以及文件读写等多个操作自动分配优先级,让它们相互独立运行,避免了单线程系统中的调用阻塞,且不会浪费CPU时间[3]。例如,用户接口操作被分配在一个特定的线程并被赋予较低的优先级,移动面板窗口这样的事件不会影响数据采集等对时间要求非常严格的操作,从而保证了系统的可靠性。
LabVIEW还有自动错误处理功能[1],利用其函数节点的error in和error out端口可在程序运行中某一个函数发生错误时自动挂起,弹出错误信息对话框,高亮显示出错函数的图标并将出错信息依次向后传递,后续函数将不再进行任何操作,直到程序最后做出相应的错误处理。
如图6-8为信号分析模块的框图程序。该VI主要使用了LabVIEW中While Loop结构来实现整个程序的信号采集、存储和运行退出等功能,并且应用了Sound Input和Signal Processing模板中的节点完成信号采集、时域图实时显示、加窗和功率谱分析等操作。在信号分析之前加入了Butterworth低通滤波器,对原始信号进行平滑滤波处理以消除高次谐波失真和噪声干扰,提高信噪比。和模拟滤波器相比,该数字滤波器不需要精度组件,不会因温度、湿度的变化产生误差。

图7-8数据采集和谱分析程序框图
Fig7-8 the data collects to analyze procedure frame diagram with table

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1210156.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于PLC的立体车库控制系统设计

第2章 自动化立体车库的简介 2.1 自动化立体车库的类型 国外立体车库控制系统的研究和应用已有很长历史,随着PLC技术的日趋成熟和自动化程度的不断提高,立体车库控制技术得到广泛推广。发达国家的诸多城市,均采用自动化立体车控制系统&#x…

图论入门--图的存储和遍历

无向图的对称性:g[i][j]=g[j][i],开两倍数组!!重要! 邻接矩阵的建立: 初始化正无穷大时若为int数组memset(g,0x7f,sizeof g) 若为0则memset(g,0,sizeof g) 若为很小数则为memset(g,0xaf,sizeof g) double数组…

2026年质量好的西安水泵厂家权威推荐及采购参考

2026年质量好的西安水泵厂家权威推荐及采购参考2026年,西安城市建设、工业生产、民生工程等领域持续发力,供水、排污、供暖、消防等场景对西安水泵的质量稳定性、适配性、供应时效性需求愈发严苛。西安水泵作为各类工…

《把脉行业与技术趋势》-80-《全球科技通史》- “科学的本质是对认知的颠覆”、“造反的本质是对政权的颠覆”、“技术的本质是对生产的颠覆”

“科学的本质是对认知的颠覆” “造反的本质是对政权的颠覆” “技术的本质是对生产的颠覆” ——高度凝练、富有张力,且触及本质。它们不是修辞游戏,而是以“颠覆”为透镜,精准锚定了三类历史性力量的作用机制与根本功能。下面我将从哲学深度…

基于 Flutter × OpenHarmony 的个人理财助手开发实战 —— 支出记录模块设计与实现

文章目录 基于 Flutter OpenHarmony 的个人理财助手开发实战 —— 支出记录模块设计与实现前言背景Flutter OpenHarmony 跨端开发介绍架构组合方式 开发核心代码(详细解析)一、支出模块入口:_buildExpensesModule1. 搜索过滤逻辑2. 顶部区域…

运维系列python系列【仅供参考】:Centos7 安装 Python 3.7.2(2021.03.02)

Centos7 安装 Python 3.7.2(2021.03.02) Centos7 安装 Python 3.7.2 1. 安装环境 2. 下载安装包 3. 安装 4. 添加软链接 5.国内镜像源列表 6. 配置镜像源 [Linux] 临时: 永久: [Windows] 7. venv命令使用 8. pip导出所有模块和pip一件导入所有模块 1. 导出命令 2. 安装命令 C…

Flutter × OpenHarmony 实战:个人理财助手底部模块导航栏的设计与实现

文章目录 Flutter OpenHarmony 实战:个人理财助手底部模块导航栏的设计与实现前言背景Flutter OpenHarmony 跨端开发介绍为什么选择 Flutter OpenHarmony? 开发核心代码(详细解析)一、完整实现代码二、模块枚举设计&#xff08…

安徽佑邦智能口碑如何?其产品质量靠谱吗?

在工业自动化与能源安全领域,优质的智能装备解决方案是企业降本增效、保障生产安全的核心支撑。面对市场上众多智能装备服务商,如何挑选契合自身需求的合作伙伴?以下依据不同应用场景,为你介绍5家靠谱的智能装备企…

深聊真空波纹管生产企业,合肥哪家性价比高靠谱呢?

问题1:碳钢真空波纹管制造厂哪家技术强?如何判断技术实力? 在工业真空系统中,碳钢真空波纹管的技术实力直接决定了系统的稳定性与安全性,而判断制造厂技术强弱需聚焦三个核心维度:材质把控、工艺精度与场景适配能…

探究河北亦辰减震台座实力厂家,看其产品质量如何?

2026年工业设备减振降噪需求持续攀升,专业减震器厂家的产品品质与技术方案已成为企业降低设备损耗、提升生产环境舒适度的核心支撑。无论是风机、水泵等通用设备的减震适配,还是变压器、空调机组等专用设备的定制化隔…

衡阳回收寄卖品牌企业哪家靠谱,博锐钟表了解一下

2026年国内奢侈品消费市场持续升温,闲置名表、珠宝、奢侈品包包的变现需求日益增长,但行业内鉴定不准、报价虚高、隐性收费等乱象频发,让消费者难以找到靠谱的回收寄卖渠道。无论是古董表的情感价值兑现、闲置名包的…

总结云迹客户线索系统公司介绍,选哪家靠谱不用愁

在数字化营销浪潮中,企业销售团队的核心竞争力已从人力密集转向技术驱动,而一套能打通获客—筛选—管理全链路的系统,正是企业突破增长瓶颈的关键。面对市场上纷繁的销售技术服务商,如何找到真正能解决客户难找、效…

2026年盘点,海鲜礼盒批发加工厂合作案例多且口碑好的厂家排名

在海鲜消费升级与企业福利采购需求增长的双重驱动下,海鲜礼盒作为兼具品质感与实用性的礼品选择,正成为众多企业与家庭的。然而,面对市场上鱼龙混杂的海鲜礼盒批发加工厂,如何找到合作案例丰富、口碑过硬的源头厂家…

收藏级大模型学习路线|从入门到实战,小白程序员转型必备

对于想要入门AI大模型领域的小白,或是计划转型深耕的程序员而言,一套清晰系统、可落地的学习路线,能帮你少走数月弯路。本文整理了从基础铺垫到高阶落地的完整大模型学习体系,每个阶段均搭配经典书籍、优质课程与实战项目&#xf…

牛批了,人声伴奏分享神器

今天给大家推荐三款工具,一款人声伴奏分享,一款发票合并打印,一款局域网共享,有需要的小伙伴可以下载收藏。 第一款:SoundifyVocalRemover SoundifyVocalRemover是一款人声伴奏分享软件,软件采用AI深度学习…

收藏备用!程序员AI小白必看:大模型应用核心逻辑拆解(从会用到懂原理)

对于程序员和AI小白而言,2025年的技术圈里,大语言模型(LLM)早已不是悬浮的概念——它是能一键生成代码、破解业务痛点、批量处理文档的“生产力神器”。但多数人仅停留在ChatGPT、DeepSeek等工具的表层使用,对其底层逻…

临界区(Critical Section)与原子操作

为什么有时候看似正确的 C 语言代码,在加上中断后,运行结果会偶尔出错?在上一期中,我们讨论了中断优先级的“抢占”。今天我们要讨论一种更隐蔽、更危险的情况:当主程序和中断(或两个中断)同时修…

收藏备用!大模型开发必懂的8个核心技术概念(小白程序员入门指南)

大语言模型(LLM)技术正以破竹之势渗透各行各业,从日常办公的智能助手到企业级的智能决策系统,其应用场景持续拓宽。但对开发者而言,大模型学习之路往往充满阻碍:繁杂的专业术语让人望而却步,零散…

收藏!程序员必看:别让传统技术栈,困住你的职业上升路

说真的,每次和身边的程序员朋友聊天,听他们吐槽职业困境时,都忍不住替他们捏一把汗。 放在几年前,行业生态完全是另一番景象:只要深耕Java、C这类主流编程语言,把Spring Cloud、Dubbo那套微服务架构摸透练…

论文阅读:CHI 2025 “Don’t Forget the Teachers“: Towards an Educator-CenteredUnderstanding of Harms from L

“Don’t Forget the Teachers”: Towards an Educator-CenteredUnderstanding of Harms from Large Language Models inEducation 总目录 大模型相关研究:https://blog.csdn.net/WhiffeYF/article/details/142132328 https://dl.acm.org/doi/epdf/10.1145/370659…