第一篇:高中信息技术教学论文 基于声卡的数据采集及波形发生器设计
基于声卡的数据采集及波形发生器设计
摘 要:介绍了一种利用vc++实现基于声卡的双通道数据采集系统,实现了波形发生器与频率测量等基本功能,为低成本下构建数据采集系统与波形发生器提供了一种思路。
关键词:声卡 数据采集 频率测量
一、概述
数据采集是信号分析与处理的一个重要环节,在许多工业控制与生产状态监控中,都需要对各种物理量进行数据采集与分析。但是,专用数据采集卡的价格一般比较昂贵,而我们PC机的声卡就是一个很好的双通道数据采集卡。实际测量中,在满足测量要求的前提下,可以充分利用计算机自身资源,完成数据采集任务,从而节省成本。
本文利用vc编程实现了声卡的双通道数据采集,并且对信号进行频谱分析同时实时测量出信号的频率。还利用声卡的DA通道,实现了正弦波、方波、三角波输出的信号发生器。波形发生器产生的信号同时还可以作为内部测试用信号,检验数据采集的准确性。
二、声卡数据采集系统硬件组成Line Out
图1 声卡数据采集的硬件组成图
利用声卡进行数据采集的硬件组成如图1所示。通常,利用声卡的Line In端作为信号输入端口,两路被测的模拟信号经过左右声道,A/D转换进入计算机,通过vc编写的虚拟仪器界面显示出来。声卡一般都具有单、双声道输入,从而可实现单双通道的采集.双通道采集时,声卡采用并行采集,并具有采样保持功能,两个通道的数据不存在时间差,第一通道和第二通道数据存储在同一个数据缓冲区中,且等间隔存储,奇数序列是一个通道数据,偶数序列为另一个通道数据.读取数据时,将缓冲区中的数据全部读入到一个数组中,然后对该数组数据,采用隔一点取一点的方法,将数据分开并分别存到另外的两个数组中,即将两个通道的数据分开,从而实现了双通道的采集.单通道采集时,缓冲区中仅仅是一个通道的数据,直接保存到一个数组即可。同时,信号发生器产生的波形也可经过Line out端输出。
为了保护声卡,被测信号并不是直接进入声卡,而是先经过一个信号调理电路,对信号进行放大或限幅,滤波等处理,信号调理电路如图2所示。(a)图是直流电平叠加模块:C1代
用心
爱心
专心
表信号的输入,D1代表叠加直流电平后信号的输出,电位器R8控制输入直流电平的大小;(b)图是信号叠加模块:A1、A2代表叠加信号的输入,B1代表叠加后信号的输出;(c)图是模拟滤波模块:LPIN代表滤波器的输出,LPOUT代表滤波器的输出,调节R6可以控制输出的、幅度大小。当然可以根据需要在调理电路中加入一些其它的模块。
图2 信号调理电路
三、声卡采集系统的软件编程
微软公司已经提供了一系列API函数用于对声卡的操作,为了将需要用到的函数封装成了一个类,编程时只需直接调用。使用的API函数有:
waveInGetDevCaps
实现声卡的性能测试
waveInOpen
打开波形输入设备
waveInPrepareHeader 为波形输入准备缓冲区
waveInAddBuffer
将数据缓存发送给波形输入设备驱动
waveInStart
启动向波形输入缓冲区存储数据
waveInUnprepareHeader 释放波形输入缓冲区
waveInStop
停止向波形输入缓冲区存储数据
waveInClose
关闭波形输入设备
设计的软件界面如图3所示。目前所实现的功能有: 图3
软件界面设计
1.两路波形发生器。可产生正弦波、方波和三角波,并且频率和幅值可调。
2.频谱分析仪。可以对采集的信号进行频谱分析。频谱分析采用了快速傅立叶变换(FFT)算法,并且将其封装成独立的函数,方便调用。
用心
爱心
专心
3.频率计。同时还可以实时地测量出采集到的信号的频率。在利用程序计算频率时,一般采用两种方法。一种是利用快速傅立叶变换,它的优点是不仅能对标准的周期波形进行测量,而且能够计算出各种复杂波形和信噪比非常低的信号的频率值,缺点是分辨率受到限制。另一种计算频率的方法是采用脉冲计数法。它的优点是测量低频信号时精度高,但它不适合波形复杂和信噪比低的信号频率测量。所以在测量过程中,程序先判断信号上述的性质,根据信号的性质,自动地采用相应的测量方法。
四、小结
采用声卡制作的信号采集系统,具有廉价、方便等优点,它可用于振动、噪声、位移、温度、压力等各种物理量的测试。但是一般的声卡支持的采样频率有11025、22050和44100,对高频信号的采集会出现失真。总之,运用廉价的声卡,辅以适当的软件编程,可以构成一个较高采样精度,中等采样频率且具有很大灵活性的数据采集系统。
用心
爱心
专心 3
第二篇:波形发生器设计实验报告
波形发生器设计实验报告
一、设计目的
掌握用99SE软件制作集成放大器构成方波,三角波函数发生器的设计方法。
二、设计原理
波形发生器:函数信号发生器是指产生所需参数的电测试信号的仪器。按信号波形可分为正弦信号、函(波形)信号、脉冲信号和随机信号发生器等四大类。而波形发生器是指能够输出方波、三角波、正弦波等多种电压波形的信号源。它可采用不同的电路形式和元器件来实现,具体可采用运算放大器和分立元件构成,也可用单片专用集成芯片设计。设计原理图:
三、设计元件
电阻:R1 5.1K、R2 8.2K、R3 680、R4 3K、R5 39K
R6 1K、R7 39K、R8 39K 电容:C 1uF 运算放大器:U1A LM324、U1B LM324 二极管:D1 3.3V、D2
3.3V 滑动变阻器:RW1 10K 接口:CON3 地线、GND
四、设计步骤 大概流程图
1、打开99SE,建立Sch文件。绘制原理图。
绘制原理图时要注意放大器的引脚(注意引脚上所对应的数字)和二极管的引脚(注意原理图和PCB中的引脚参数是否一致)。元件元件库代码 电阻:RES2 滑动变阻器:POT2
电容:CAP 放大器:OPAMP 二极管:ZENER3 元件封装代码
电阻: AXIAL0.4 滑动变阻器:VR5 放大器:DIP14
二极管:DIODE0.4 电容:RB.2/.4
2、生成网络表格
本步骤可完成建立材料清单(可执行report中的Bill of Material)、电器规则检查(Tools中 ERC)、建立网络表(Design中Create Netlist,点击OK即可)
3、PCB文件的设置 建立PCB文件
单双面板设置:Design中Options进行设置单双面板,及面板大小(8cm*7cm)建立原点(Edit中 Origin中的set)并在KeepOutLayer层中制板
4、引入网络表
执行Design中Load Nets载入网络表,屏幕弹出对话框,点击Browse按钮选择网络表文件(*net),载入网络表,单机Execute,便成功引入网络表。
5、修改封装与布局
按照原理图调试布局,美观整齐即可
6、设置PCB规则
Design中Rules即可设置规则 例:设置地线,电源线等的粗细参数。双面布线及单面布线的设置等等。
7、自动布线
Auto Route中All即可
8、手工调整布线 微调即可
此时,从PCB建立网络表:点击Design中Netlist Manager,但后单机Menu,选择倒数第三项Create Netlist From Connected Copper…… 使用两个网络表文件进行比较:
在原理图界面 点击Reports中Netlist Compare……即可
9、存盘
保存好,退出程序。
五、设计结果 文件清单
原理图:
PCB
设
计
:
因为版面有限,网络表、材料清单及网络表比较等文件就不放图展示了。
六、心得体会
开始的时候由于没有经验,不知如何下手,所以就上网搜了很多关于函数发生器的资料,并翻阅了一些相关书籍。经过此课程设计我积累了一点设计经验,最后成功运行出结果的时候也有些小小的成就感。虽然最后原理图和PCB图做的还欠缺火候,但是,以后多加训练,一定会熟练的。
第三篇:LabVIEW声卡数据采集信号分析音频信号虚拟仪器
LabVIEW声卡数据采集信号分析音频信号虚拟仪器
摘要:虚拟仪器是20世纪80年代兴起的一项新技术,是现代仪器仪表发展的重要方向,在建模仿真、设计规划和教育训练等方面都有应用目前NI公司所提供数据采集设备性能好,但是价格昂贵,构建信号分析系统成本偏高计算机声卡具备数据传输和AD转换功能,作为数据采集卡具有价格低廉、开发容易和系统灵活等优点 基于上述分析,本文用计算机声卡代替普通采集卡作为硬件,在LabVIEw平台上设计了一个信号分析系统,并在信号分析实验中进行了应用主要贡献为下述几点 1提出了采用声卡作为数据采集设备构建虚拟音频信号分析系统并应用于实验教学的设想通过高校实验室现状的调研和对声卡性能的分析,分析了由声卡组建可以用于实验教学的信号分析系统的必要性和可行性 2构建了基于LabVIEw的音频信号采集分析系统,具有信号采集、分析、波形显示、存储以及数据文件再调用分析等功能分析、解决了设计及实现过程中出现的问题 3对提出的设计方法进行了大量的仿真实验,通过实验结果证明了系统设计的合理性和可行性 所生成的采集软件交互性好、操作方便,并且可以根据用户的需求进行功能扩充,为低成本下构建数据采集系统提供了一种思路,可以应用到语音识别、环境噪声监测和实验室测量等多种领域,应用前景广阔
标题:LabVIEW声卡数据采集信号分析音频信号虚拟仪器
第四篇:波形发生器设计+数电课程设计+数字电路课程设计
数字电路课程设计
专业:09自动化 姓名 :程淑欣
学号:2009014045
班级:09自动化
指导老师:李敏君
目录
一.目录.................................2
二.设计介绍.............................3
三.设计任务和要求.......................4
四.选用器材.............................4
五.设计方案.............................4
六.电路图...............................8
七.电路说明及原理分析...................8
八.设计总结及心得体会...................9
九.参考文献.............................10
波形发生器设计
设计介绍
波形发生器是用来产生一种或多种特定波形的装置,这些波形通常有正弦波.方波.三角波.锯齿波,等等。以前,人们常用模拟电路来产生这种波形,其缺点是电路结构复杂,所产生的波形种类有限。随着数字电子技术的发展,采用数字集成电路产生各种波形的方法已变的越来越普遍。虽然,用数字量产生的波形会呈微小的阶梯状,但是,只要提高数字量的位数即提高波形的分辨率,所产生的波形就会变的非常平滑。用数字方式的优点是电路简单,改变输出的波形极为容易。下面将说明以数据存贮器为核心来实现波形发生器的原理。
用波形数据贮存器记录所要产生的波形,并将其在地址发生器作用下所产生的波形的数字量经过数-模转换装置转换成相应的模拟量,以达到波形输出的目的。其实现的原
设计任务和要求
设计一个多种波形发生器,其具体要求如下: 1.实现多种波形的输出。这些波形包括正弦波.三角波.锯齿波.反锯齿波.梯形波.台型阶梯波.方波.阶梯波,等等。2.要求输出的 波形具有8位数字量的分辨率。3.能调整输出波形的 周期和幅值。4.能用开关方便的选择某一种波形的输出。
选用器材
1.NET系列数字电子技术实验系统 2.稳压电源
3.集成电路:74LS161.2716.DAC0832.NE4558 4.电阻.开关.可变电阻 5.计算机.EPROM编程器 6.万用表.示波器
设计方案
按地址发生器.波形数据存贮器.数/模转换器三个部分分别说明。1.地址发生器组成
地址发生器说输出的地址位数决定了每一种波形所能拥有的数据存贮量。但在同一地址发生频率下,波形贮存量越大输出越低。考虑到我们要求输出波形具有8位数字量的分辨率,因而可将地址发生器设计成8位,以获得较好的输出效果。如果地址发生器高于8位,那么输出波形的分辨率将会收到影响。
选用2片4位二进制计数器74LS161组成8位地址发生器,其最高工作频率可达到32MHZ。
2.波形数据存贮器
8位地址发生器决定了每种波形的数据贮存量为256字节。因为总共要输出8种波形,故贮存量为2K字节。可选用2716 EPROM作为波形数据存贮器。8种波形在存贮器中的地址分配如图: 5
0000H三角波00FFH0100H方波01FFH0200H锯齿波02FFH0300H反锯齿波03FFH0400H梯形波04FFH0500H阶梯波05FFH0600H台型阶梯波06FFH0700H正弦波07FFH贮存在EPROM中的波形数据是通过一个周期内电压变化的幅值按8位
D/A分辨率分成256个数值而得到的。例如正弦波的数据可按公式 D=128(1+sin360/255x),x=0…255 3.数据转换器
可采用具有8位分辨率的D/A转换集成芯片DAC0832作为多种波
形发生器的数模转换器。由于多种波形发生器制使用一路D/A转换,因而DAC0832可连续接成单缓冲器方式。另外,因DAC0832是一种电流输出型D/A转换器,要获得模拟电压输出时,需外接运放来实现电流转换为电压。
由于在实际使用中输出波形不仅需要单极性的(0-+xV 或0--xV)有时还需要双极性的(+-xV),因而可用两组运算放大器作为模拟电压输出电路,运放可选用NE4558,其片内集成了两个运算放大器。
主要电路图
+5V2716VppE/POED7D6D5D4D3D2D1D0+5V74LS161+5V+5V4.7Ωx3波形选择开关A10A9A8A7A6A5A4A3A2A1A074LS161TPCRLDQ3Q2Q1Q0CPTPCP+5V4CRLDQ3Q2Q1Q0CPD3D2D1D0D3D2D1D048+5VText15KΩ15KΩDAC0832DI0VccDI1ILEDI2VREFDI3WR1DI4RFBDI5DI6Iout1DI7CSIout2XFERWR2AGNDGND23NE4558-+1A7.5KΩ+15V86-5+Text710KΩBVout-15V
电路说明及原理分析
1.2716 EPROM的地址信号
两片74LS161级练成八位计数器,其两组Q3-Q0输出作为2716的低八位地址A7-A0,这样,读出一个周期的波形数据需要256个CP脉冲,故输出波形的频率为CP时钟脉冲频率的1/256.2716的高三位地址(A10-A8)用作必须选择,他们与三个选择开关相连。利用开关的不同设置状态,可选用八种波形种的任意一种。2.DAC0832的单缓冲器方式
在电路中DAC0832被接成单缓冲器方式。它的ILE与+5V相连,CS,XFER,WR2与GND相连,WR1与CP信号相连。这样DAC0832的8位DAC寄存器始终处于导通状态,因此当CP变成低电平时,数据线上的数据便可直接通过8位DAC寄存器,并有其8位D/A转换器进行转换。
3.波形的输出和调整
在上图种,DAC0832输入的电流信号经过双运放NE4558被转换成0--5V 再经过一级运放后得到了 双极性输出+-5V 通过改变CP脉冲的频率,可得到不同周期的输出波形。而对图种可变电阻的调节,则可以改变输出波形的幅值。4.波形数据
波形的数据可 用EPROM编程器将这些数据写入2716EPROM中。
设计总结及心得体会
这次实验是一次将理论知识和实践动手能力相结合的一次,它大大锻炼了我的动手和分析能力,巩固了我的知识,从而增加了我的信心,也明确了我的努力方向。这次课程设计,让我对电气这门学科更加热爱了,总之,这次的课程设计让我受益匪浅,尤其是掌握了PROTEL99的应用,虽然花费了不少时间,但是比起我的收获,这算得了什么,这次的课程设计让我记忆深刻,很感谢这次的设计,感谢老师给我这个锻炼的机会,希望今后还能有这样的课程设计。
参考文献
1.《电子技术基础-数字部分》 华中理工大学教研室编 康华光主编
2.《电子技术基础-实验与课程设计》 电子工业出版社 高吉祥主编
3.《电子技术课程指导书》 河南理工大学 付子仪等编
4.《电子技术试验与课程设计》机械工业出版社 毕满清编
5.《数字电子技术基础》
阎石主编
第五版
高等教育出版社
第五篇:数据采集系统设计研究论文
摘要:针对LabVIEW及MSP430F5529单片机构成的多路数据采集系统研究及设计,分为上位机和下位机两个主要模块来进行阐述。MSP430F5529作为前端数据采集系统进行数据采集,采集到的电压通过串口传到上位机LabVIEW界面。
关键词:MSP430F5529,单片机,数据采集,LabVIEW
LabVIEW程序设计方面相对来说比较简单,但是,Lab-VIEW的使用灵活性和功能完整性也很强大。MSP430F5529单片机多路电压数据采集系统的设计,从结构上来看比较简单,此类单片机工作电压区间比较低,耗能相对较低,内部集成了许多功能模块,功能完整性比较强大。结构简单的单片机系统与LabVIEW上位机的串行通信的功能结合,增加了系统灵活性。同时,又利用了MSP430F5529的超低耗功能,降低成本,使用简便。另外,虚拟仪器除了在物理形式上实现之外,也可以实现系统内的软件、硬件资源共享。将两者结合的多路电压数据采集系统无论是从运行效率还是编程方式,都展现了强大的优势。
1数据采集系统
1.1数据采集系统需求基于LabVIEW及单片机构成的多路电压数据采集系统研究和设计,其中MSP430F5529单片机、ADC转换器组成的下位机数据采集系统实现采集电压的功能;采集到的多路电压信号被发送至LabVIEW程序功能模块进行分析和处理,并显示数据处理的结果;研究电平的转换。下位机的TTL电平转换成上位机能够接收的RS232电平。首先系统进行初始化,然后单片机通过串口进行多路数据采集,打开ADC转换器,开始转换,读取转换结果。然后发送到上位机界面,显示得到的数据处理结果。1.2数据采集系统方案设计的采集系统以上位机数据显示界面和数据采集系统实物的形式呈现,研究上位机与下位机的数据交互机制,实现数据的交互。方案:在上位机与下位机之间需要研究一个电平转换,采用MSP430系列单片机作为下位机采集模块,LabVIEW作为上位机处理模块;两个模块之间加入电平转换模块,采用的是CP2102转换芯片。此方案编程简单且方便,成本也相对较低,从整体来说也比较严谨。系统初始设计时,第一部分设计下位机单片机模块,启动A/D转换,得到的转换结果发送到单片机处理。并且加入了LCD显示模块;第二部分设计上位机LabVIEW程序处理模块,将采集到的结果上传到上位机显示。设计方案的流程图如图1所示。
2下位机采集系统设计此次设计采用
MSP430F5529Launchpad,MSP430F5529开发板内部集成A/D转换模块,多路电压采集系统下位机的重点在于A/D转换,所谓A/D转换即指模拟量等转换为数字量。MSP430F5529单片机可以自定义参考电压,此次设计的参考电压设计的是3.3V。所以本数据采集系统可采集的电压范围是0~3.3V。本设计是采集多路电压,转换的方法模式是采用转换速度较快的序列通道多次转换,提高转换速率。在程序设计里面是用ADC12CONSEQ_3来选择采样模式。同时,定义了ADC12SHP等于1,来定义信号的来源是采样定时器。ADCMEMx存储器用来存储转换结果。此类存储器是CSTARTADDx位定义的。参考电压和通道是需要经过定义才能工作的,一般是通过ADC12MCTLx寄存器。多路电压数据采集的下位机流程图如图2所示。首先执行端口初始化,第一步便是关闭看门狗,在MSP430单片机中,主程序首先要关闭看门狗,如果不关闭看门狗,程序执行一段时间后,可能会导致程序无法运行。因为看门狗有定期重置CPU的功能。然后端口定义,ADC转换和串口通信的工作模式的初始化,之后进入中断采集数据,在有信号输入的时候才会进入中断,如果没有外部电压信号的输入不会进行中段。采集电压信号后开始转换,转换完成之后数据被传送两个方向:一是传送到LCD显示,二是发送到上位机LabVIEW程序界面显示。在AD转换的过程中是进入中断进行数据测量的,此次多路数据采集系统的下位机设计的中断标志位采用ADC12IFG寄存器设置。MSP430单片机的中断可以说是非常大的一个亮点。想要有效提高程序运行的速率,在程序中加入中断便可实现。MSP430单片机的每个片上运行后,CPU便被唤醒,此时低功耗模式是不存在的,中断完成后,CPU脱离唤醒模式。此时的单片机回到低功耗状态。在下位机串口发送方面,U-CA0CTL控制寄存器来定义了时钟源,需要通过相应的时钟源来确定波特率,此控制寄存器的第0位是USCWRST,它具有软件复位的功能,在设计中需要使它置1,那么逻辑将会在复位状态一直保持。第6到7位的UCSSEL,用来选择时钟源,时钟源选择的是AMCLK,那么UCSSEL的状态是01,此时的波特率需要求出相应的分频细数来定义,AMCLK的频率是32768Hz。跟据定义,在低频时钟的情况下,分频参数是时钟频率与波特率的比重,此次设计的波特率是9600,因此可以得出的是分频参数是3.41,所以,UCA0BR0等于3。
3显示界面上位机设计
3.1上位机LabVIEW设计此次多路电压数据采集系统的上位机LabVIEW程序流程图如图3所示。上位机的部分,首先设计了单路的电压数据采集系统,其程序框图如图4所示。上位机LabVIEW的设计首先是配置串口参数,参数的配置与下位机端要保持一致,参数配置完成后要进入while循环中的VISAREAD,读取从下位机传来的数据。单路数据采集就是直接显示电压。加入while循环的目的是使程序可以一直运行,而且是直接只运行读取缓冲区数据部分,不用每次都配置串口参数,提高了程序运行速率。3.2TTI与RS232电平转换MSP430单片机输出的L电平与上位机接收的电平不是同一种,分别为TTL和RS232。所以上位机与下位机之间需要进行转换,15V~5V指的是RS232电平逻辑1时的状态,而逻辑0的话,是在+5V~+15V,而TTL电平逻辑0在0~0.8V之间,逻辑1在2.4V~5V之间,所以在TTL电平与RS232之间,需要进行正负逻辑的转换。在此次设计中选用的是主要由CP2102转换芯片构成的转换模块。同时里面也集成了MAX2485和MAX232通信芯片。CP2102是一种品质较好,工作比较稳定的且性能强大的转换芯片。整个转换模块体积小,便于移动。此次设计用MSP430F5529专门用于串口发送的P3.3口与RX引脚连接。如图5所示。CP2102的RX引脚专门用来接收TTL电平。CP2102的另一端与电脑相连,打开上位机LabVIEW程序,串口信息配置好之后,便可以显示采集的电压数据。
4多路电压数据采集系统测试
为了便于系统能够成功采集数据,采集的电压采取就近原则,直接采集单片机管脚电压,此次测试三次电压分别为:3.3V电源管脚电压、普通管脚电压(1.78V)以及GND管脚电压(0V)。由于误差作用,系统不能准确测到3.3V,以及3.3V会对旁边线路产生影响,所以第二路电压信号会从1.78V拉高到2.76V,第三路接地,所以是0.00V。除去显示结果以外,增加了波形显示,使采集到的电压变化变得一目了然。此外加入了串口工作灯指示,在串口正常工作的情况下,串口灯是绿色,在串口工作异常的情况下,串口灯是红色。改变某一路电压后,把第三路采集电压的管脚从接地端拔了下来,悬空时的电压是1.78V,同样会被3.3V的电压拉高,电压的变化直接在上位机界面呈现出来,直观明了,如图7所示。波形显示的坐标是可以自动变换的,根据数据的大小智能变换,改变采集管脚的电压后,如图8所示。
5结束语
基于MSP430F5529和LabVIEW进行多路电压数据采集系统,实际应用的结果,下位机与上位机的通信功能正常,操作也非常简单方便,完成了设计之初的要求,可以实现的功能有:①采集三路0V~3.3V的电压;②采集到的电压在LCD屏显示;③采集到的电压上传至LabVIEW上位机数据采集编写模块显示;④上位机LabVIEW界面显示电压数据及电压波形。研究并实现了MSP430F5529单片机的数据采集及处理、ADC转换、TTL电平转RS232电平、上位机与下位机之间的串口通信。同时,此次设计也存在些许不足:①只能采集三路数据;②不能调取历史采集数据。
参考文献
[1]陈美玉.基于单片机及LabVIEW的多路数据采集系统设计[J].企业技术开发,2017,36(1):69-71
[2]王克胜.系统软件设计及控制分析[J].科技与企业,2013(4):81-81
[3]段新燕.单片机液晶显示系统的设计[J].电子科技,2012,25(8):13
[4]周丽,裴东兴.基于MSP430单片机的超低功耗温度采集系统设计[J].电子测试,2011(10):35-38