版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
【Word版本下载可任意编辑】LabVIEW和声卡的虚拟仪器设计方案导读:为了在对采样频率要求不高的情况下开展信号的生成和分析,采用声卡取代价格昂贵的数据采集卡开展采样和输出,利用虚拟仪器开发软件LabVIEW,分别设计和实现了基于声卡的虚拟信号发生器和虚拟示波器。信号发生器可以产生方波、三角波等常用波形和自定义波形,示波器具有波形显示、图像暂停和截取以及频谱分析功能,所设计的虚拟仪器具有友好的人机界面,只需两台计算机即可开展完整的自测试。
在电子与通信行业以及试验测试中,信号发生器和示波器是应用广泛的电子测量仪器。传统仪器的技术和性能都已经比较成熟,但存在体积较大、不易携带、功能固定、并且价格昂贵等缺点。虚拟仪器是计算机技术与仪器技术深层次结合产生的产物,代表了当前测试仪器的发展方向之一。虚拟仪器系统的必备组件包括功能强大的编程工具、灵活易用的数据采集硬件及个人电脑。在实际测量中,需根据需求选择相应的数据采集卡,但这些卡的价格均比较昂贵,而同样具备A/D功能的声卡是一个非常的音频信号采集系统,具有16位量化精度,数据采集频率可到达44.1kHz且已成为大多数计算机的标准配置,当所研究信号的频率范围在音频范围内(20Hz~20kHz)时,利用声卡开展数据采集便是一个更好的选择。
文中基于虚拟仪器的设计概念,利用方便廉价的计算机声卡分别设计和实现了虚拟信号发生器和虚拟示波器,特别适合于实验室环境下低频信号的产生与分析。本文使用声卡开展A/D、D/A转换以及信号的采集和播放,使用LabVIEW软件设计了虚拟仪器的前面板并实现相关信号的运算、分析和处理。所设计的虚拟信号发生器和示波器具有传统仪器的功能,相比于传统仪器,具有成本低廉、使用方便、扩展性强等优点。
1虚拟仪器技术和声卡工作原理
1.1虚拟仪器的特点
虚拟仪器首先是由美国国家仪器公司于20世纪80年代中期提出来的,实现“软件即仪器”的概念。随着计算机技术和大规模集成电路的飞速发展,虚拟仪器技术也得到了很大的发展。虚拟仪器的实质是将传统仪器硬件和计算机软件技术结合起来,以实现并扩展仪器的功能。计算机软件是虚拟仪器的,硬件只是为了解决信号的输入输出,虚拟仪器集成了仪器的所有采集、控制、数据分析、结果输出和用户界面等功能,使传统仪器的部分硬件甚至整个仪器都被计算机软件代替。
虚拟仪器实现了仪器的智能化、模块化和多样化,表达出多功能、低成本等操作优点。与传统仪器相比,虚拟仪器具有更广的应用领域,因此它成为仪器行业发展的一个重要方向,并受到许多国家仪器行业的重视。
虚拟仪器开发平台目前主要有两类:一类是基于传统语言的TurboC,Microsoft公司的VisualBasic与VisualC++等,这类语言需要开发人员有较多的编程经验和较强的调试能力;另一类是图形化编程软件,如HP公司的VEE,NI公司的LabVIEW和LabWindows/CVI等。
1.2LabVIEW开发平台
LabVIEW是一个很好的图形化开发环境,专为数据采集和仪器控制而设计,它将信号采集、测量分析和数据显示功能集中在同一个开放式的开发环境中。LabVIEW具有丰富的库函数供用户调用,图形化的编程语言简单直观、开发速度快,在编写程序的同时可以自动生成图形化用户界面,可充分利用计算机强大的计算和显示功能,被广泛应用与自动控制和测试领域中。
1.3声卡工作原理
声音的本质是一种波,表现为振幅、频率和相位等物理量的连续变化。声卡是计算机开展声音处理的适配器,它有3个基本功能:一是音乐合成发音功能;二是混音器(Mixer)功能和数字信号处理(DSP)功能;三是模拟声音信号的输入和输出功能。声卡是一个非常的音频信号采集系统,其数字信号处理包括模数变换器ADC(AnalogueDigitalConverter)和数模变换器DAC(DigitalAnalogueConverter),ADC用于采集音频信号,DAC则用于重现这些数字声音。
声卡的技术指标包括采样频率、采样位数(量化精度)、声道数、复音数量、信噪比(SNR)和总谐波失真(THD)等,其中采样频率、采样位数是主要指标。现在的声卡一般采用PCI接口,具有16位采样精度,支持双通道,采样频率达44.1kHz。
声卡已成为多媒体计算机的一个标准配置,因此基于声卡的虚拟仪器具有成本低,兼容性好,通用性和灵活性强的优点,驱动程序升级方便,可以不受硬件限制,安装在多台计算机上,具有很好的可行性。
2虚拟信号发生器设计
文中在LabVIEW开发平台下设计并实现了双通道虚拟信号发生器,设计中主要利用了LabVIEW提供的声卡驱动函数,所设计的双通道虚拟信号发生器能够产生常用的基本波形,并且实现了频率显示,频率调节,幅值调节,直流偏置调节和频率扫描等功能。整个程序构造设计采用在LabVIEW状态机的根底上引入事件构造的方法,提高了程序的运行效率。
2.1LabVIEW中有关声卡信号输出的主要函数
在虚拟信号发生器的设计中,用到了LabVIEW软件“声音输出”模块部分的函数,如图1所示。下面对设计过程中用到的主要函数及其功能作简单介绍:
1)“配置声音输出”函数。该函数的作用是配置一个生成数据的声音输出设备,初始化声卡的配置,包括采样频率,采样模式,声卡参数等。
2)“设置声音输出音量”函数。该函数用来设置声音输出设备的播放音量。
3)“写入声音输出”函数。该函数将准备好的数据写入声卡驱动程序开展播放输出。
4)“声音输出清零”函数。该函数使设备停止播放音频,清空缓存,将任务返回至默认的未配置的状态,并清空与任务相关的资源,将任务变为无效。
2.2虚拟信号发生器的前面板设计
前面板为用户提供了友好的操作界面,本文根据传统仪器的操作面板和本仪器所能实现的功能设计了虚拟信号发生器的前面板,如图2所示。前面板主要由四个部分组成,包括波形显示部分、公共参数设置部分、CH1通道和CH2通道设置部分。波形显示部分用于显示两个通道的输出波形,公共参数设置部分用于设置声卡的采样率、通道数、采样位数、缓冲区大小和音量,CH1和CH2通道开展设置每个通道生成的波形参数,包括波形类型、频率、偏移量、幅度、方波占空比、噪声等,并可以利用公式输出自定义波形。
2.3虚拟信号发生器的程序框图设计
程序框图是图形化的源代码,前面板中的每个控件在程序框图中都有相应的接线端与之对应,通过数据连线和不同的程序构造即可控制整个程序的流程和数据传递。虚拟信号发生器的程序框图主要包括3个模块:声卡配置模块、波形设置模块和波形输出模块,如图3所示。
声卡配置模块首先设置“配置声音输出”函数,本设计将声卡设置为连续采样,每通道缓冲数和声音格式都可以在前面板开展设置。然后将采样信息传输到“波形设置模块”,选择所要产生波形的类型。
波形设置模块使用条件构造选择不同类型的波形,可以分别选择正弦波、方波、锯齿波、三角波、高斯白噪声、叠加正弦波以及自定义波形。该模块还可以设置相应的波形参数,包括频率、幅度、偏移量和方波占空比。
数据输出模块调用“写入声音输出”函数,通过声音输出设备输出声音信号。由“声音输出清零”清空缓冲区,结束任务。
3虚拟示波器设计
本文利用LabVIEW中的数字声音记录节点,设计并实现了基于声卡的虚拟双踪数字存储示波器,采样频率为44.1kHz,线路输入端口电压限制为1V,对高于1V的信号采用比例运算放大电路衰减后输入,能适合很多场合的需要。
设计的虚拟示波器的技术指标如下:
1)输入频率范围:10~20000Hz;
2)通道数:2;
3)采样频率:44.1kHz;
4)ADC分辨率:16位。
虚拟示波器的两个重要指标分别是分辨力(指能区分一个物体不同部分的能力)和精度。其中分辨力包括水平分辨力和垂直分辨力,精度也包括水平和垂直两种精度。虚拟示波器的水平分辨力是由时钟信号采样点的时间间隔决定的。采样频率越高,水平分辨力就越高。虚拟示波器的垂直分辨力是由模数转换器的位数决定的,n位的转换器有2-n的分辨力。因为所采用的声卡是16位的,其在垂直方向上可以分辨出65536个数据点,分辨力为1/65536。虚拟示波器的垂直精度受模数转换器精度的限制,一般要比分辨力低。
3.1LabVIEW中有关声卡信号采集的主要函数
在LabVIEW的函数选板下有“声音”选项,在该选项下,LabVIEW提供了一系列使用Windows底层函数编写的与声卡有关的函数,这些函数主要分为两大模块:声音输入和声音输出。在虚拟示波器程序设计中主要用到的是“声音输入”模块,如图4所示。
1)“配置声音输入”函数。该函数的作用是配置声音输入设备,采集数据,并把数据存放到缓冲区,后面使用“读取声音输入”VI将数据从缓冲区读入。
2)“读取声音输入”函数。该函数的作用是将数据从缓冲区读入。在使用该VI之前,必须使用“配置声音输入”VI来配置设备。
3)“声音输入清零”函数。一般声音输出设备不可共享,若在某个程序运行之前,设备已经被其他程序占用,则此应用程序不能再使用该设备,所以,在程序中一旦对声卡使用完毕,应该立即释放。该函数的主要作用是使设备停止声音数据采集,清空缓存,从任务返回至默认的未配置的状态,并清空与任务相关的资源,任务变为无效。
3.2虚拟示波器的前面板设计
前面板用来提供用户与虚拟示波器的接口,通过一个友好的图形界面,模拟传统仪器操作,实现对虚拟示波器的控制,并且显示数据处理结果。
本文设计的虚拟示波器的前面板如图5所示,按照功能来分,显示屏可以分别显示原信号波形图和信号的频谱图,波形图开关、频谱图开关可以暂停画面便于保存截图,保存图像按钮可以将截图保存为bmp图像,通道选择部分可以选择单通道或是双通道一起显示,触发部分可以调控信号的触发源、触发极性以及触发电位,标定比率便于标定电压,采样数用于确定采样精度,定位部分可以分别调节显示精度、幅度和偏移,信息按钮可以显示相关制作信息。
3.3虚拟示波器的程序框图设计
3.3.1总体设计
虚拟示波器的程序框图主要包括数据采集模块,波形显示模块,频谱分析模块,XY轴设置模块,触发设置模块,图像暂停与截图模块和信息显示模块7大部分,如图6所示。下面结合虚拟示波器的相关功能模块来分别介绍对应的程序框图。
3.3.2数据采集模块
数据采集模块利用声卡数据采集函数完成声卡采集时一些必要参数的设置,如声卡采样模式、采样数、设备ID等,并将声卡采集到的信号(已由模拟信号转换为数字信号)传送给波形显示模块。其工作流程如下:
1)使用配置声音输入函数确定声卡的参数和数字声音格式,如缓冲区大小、采样速率、采样模式(固定点数采样或连续采样)、采样通道数、样本位数(16bit或8bit),本设计的虚拟示波器采用双通道连续采样,采样频率为44100,样本位数为16,每通道采样数可以在前面板上设置。
2)使用读取声音输入函数从缓冲区中读取采样数据,从采集到的波形数组中选择一个波形送到波形显示模块,使用while循环使采样连续开展。
3)使用声音输入清零函数停止数据采集,清空缓存,从任务返回至默认的未配置的状态,并清空与任务相关的资源,使任务变为无效。
3.3.3波形显示和频谱分析模块
信号从数据采集模块输出后乘以标定比率,然后分成两路,一路直接进入波形图控件在前面板显示信号的时域波形,另一路开展FFT分析后再输入波形图控件在前面板显示信号的频谱图。
3.3.4XY轴设置模块
波形显示模块负责显示波形,并且可以通过旋钮来控制X轴和Y轴量程和偏移,同时根据通道的选择(通道A或者通道B)显示相应的波形。
X轴控制是时间轴调节。“X轴精度”调节每刻度显示的时间长度。在该控件中设置6个档位,档位越小显示的越。“X轴精度”中0.5ms/div档表示时间轴是从0~0.003s,增量为0.5ms,起始时刻为0。由于屏幕大小限制,还需要“X轴偏移”来调节屏幕标尺来显示其他部分的波形,在该控件中设置了14个档位,档位每增加一位屏幕显示向右移动一格。
Y轴控制是幅度调节。“Volts/Div”调节每刻度显示的电压值,在该控件中设置5个档位,档位越高每格显示的电压越大度越低。“Y轴偏移”控制信号在Y轴方向上下移动,该控件与信号相加可以使信号整体向上或者向下移动。设标定比率为N,则Y轴偏移的范围为-N~+N。
3.3.5触发控制模块
示波器的触发功能可以稳定重复的波形,捕获单次波形,这对清楚地检定信号至关重要。虚拟示波器触发控制模块通过子VI来实现,如图7所示。的输入端有波形数据输入(通道A、通道B)、触发极性(Slope)输入(上升沿、下降沿)、触发电平(Ievel)输入、触发源(Source)输入(内触发、外触发)。
程序运行后,首先判断用户触发源的选择,当触发源选择“外触发”时,直接将输出的波形数据输出;当触发源选择“内触发”时,执行边沿子VI。
边沿子VI由一个波形数组索引实现,该子程序实现选择触发源、根据触发电平的大小和触发极性开展触发的功能。其原理如图8所示,首先判断用户设置的触发电平大小是否在波峰和波谷范围内,在此范围内则开展触发。对输入电压信号的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 学习部工作计划范文
- 吉林彩色透水沥青施工方案
- 合肥阳台防水补漏施工方案
- 加油站围墙拆除施工方案
- 2024高一体育教师教学工作计划范文
- 2024部队财务工作计划范文
- 扶贫办工作总结和工作计划
- 2024秋季幼儿园保教工作计划范文
- 《科普健康知识讲座》课件
- 《纳米材料》课件
- 中国钢琴音乐
- (2024年)煤炭生产事故应急预案
- 中天西北集团龙湖总承包工程述标汇报
- (新教材)青岛版六三制四年级下册科学全册教案(含教学计划)
- 《童年》中考试题(附答案)
- 城市轨道交通工程技术专业职业生涯规划
- 2024电力系统安全规定
- 液压路障机施工方案
- 养老中心管理手册
- 六年级上册分数四则混合运算练习100题及答案
- 北京市西城区2023-2024学年七年级上学期期末生物试卷
评论
0/150
提交评论