虚拟示波器的设计报告

上传人:油条 文档编号:115721003 上传时间:2019-11-14 格式:DOC 页数:14 大小:2.22MB
返回 下载 相关 举报
虚拟示波器的设计报告_第1页
第1页 / 共14页
虚拟示波器的设计报告_第2页
第2页 / 共14页
虚拟示波器的设计报告_第3页
第3页 / 共14页
虚拟示波器的设计报告_第4页
第4页 / 共14页
虚拟示波器的设计报告_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《虚拟示波器的设计报告》由会员分享,可在线阅读,更多相关《虚拟示波器的设计报告(14页珍藏版)》请在金锄头文库上搜索。

1、基于LabVIEW 的虚拟示波器的设计The Design of Oscillograph1 设计目的与内容1、掌握利用A/D转换和计算机资源实现示波器的设计方法。2、设计虚拟示波器。3、建立NI-DAQmx仿真设备,选择E系列中的NI PCI-6071E数据采集卡的仿真模块,通过DAQmx物理通道识别,产生模拟信号,然后基于LabVIEW开发平台设计实现虚拟示波器。基本可以实现仪器的性能与可靠性,可以方便的对其编程, 实现对数据的采集、实时显示、数字滤波、截波显示、波形存储、波形回显、频谱分析等多种功能。2 虚拟示波器的软件设计虚拟仪器的软件设计由两部分组成:前面板和流程图。在前面板,输入用

2、输入控件(Control)来实现,程序运行的结果由输出控件(Indicator)来完成。流程图是完成程序功能的图形化源代码,通过它对信号数据的输入和输出进行指定,完成对信号采集及分析处理功能的控制。2.1 虚拟示波器的原理及功能虚拟示波器是在传统示波器体系结构的基础上,借鉴其功能原理设计的。基本原理为:硬件上利用采集卡采集信号,软件上利用NI提供的DAQmx READ采集信号,然后通过波形图进行实时显示。这就实现了一个最基本的示波器,信号显示后又利用写入测量文件将波形保存为LVM文件。这就实现了基本的“存储”功能,反之通过读取测量文件可以将LVM读取显示,从而完成“回显”功能。由于在硬件上是以

3、PC机以及采集卡为基础的,所以本示波器在采样极限速率,带宽,分辨力等参数上受到限制。而程序响应时间上则依赖于PC的配置以及程序的执行效率。本次设计的虚拟示波器所包含的功能主要有以下几个方面。实时显示:通过采集卡采集信号并能对输入信号实时显示在PC机终端上。数字滤波:采用数字IIR滤波器对信号进行滤波处理并实时显示,同时可以任意设置滤波器的最佳逼近函数类型、滤波器类型、阶次、上下截止频率等参数。截波显示:即可满足波形的瞬态显示,同时也可以将瞬态波形进行保存。波形存储:可随时将原始信号或处理后信号以LabVIEW特有的LVM文件格式存储在本地硬盘上,便于日后分析或处理。其中瞬态信号在截波后以BMP

4、图片格式存储在本地硬盘上供日后查看以及分析。波形回显:随时将存储的LVM格式波形文件重新读取然后显示在PC机端。频谱分析:对滤波后信号分别进行幅频相应分析以及相频响应分析并同时采取波形与表格方式实时显示。2.2 程序前面板设计虚拟示波器的控制界面如下图所示。图1 虚拟数字示波器的控制界面其中左边为滤波器设置,左中为可选IIR滤波器参数设置,左下为滤波器的相关信息显示,正中为显示区域(这里用到了容器里的选项卡控件),最上面为各种显示界面的切换按钮。右下分别有物理通道的选择,时间、幅度轴控制,采样模式选择,采样速率,采样点数的设置,文件保存选择按钮以及停止按钮。前面板中的滤波器设置、可选IIR滤波

5、器参数设置和滤波器信息显示是三个簇组件。簇是LabVIEW中比较独特的一个概念,但实际上它就对应于C语言等文本编程语言中的结构体变量。它能够包含任意数目任意类型的元素,包括数组和簇。很多情况下当显示控件繁多而又单一的时候,若用簇来排版界面而用数组来编程会是程序非常简洁漂亮。在本次前面板的设计中,就利用了簇控件,是前面板更简洁漂亮。2.3 虚拟示波器的程序框图设计程序由一个大的while循环构成,主要包括7个主要的部分,分别为:通道选择、采样速率、模式、点数等参数设置部分;数据采集模块;数字滤波器设置模块;波形显示、滤波以及截波等部分;时间以及幅度控制部分;波形保存部分;波形回显部分;幅频响应以

6、及相频响应部分。下面介绍各部分的框图设计。2.3.1通道选择、采样速率、模式、点数等参数设置部分图2 采样参数设置2.3.2 数据采集模块数据采集模块是动态测试中的重要部分,可以进行采集方式相关参数的设置,它直接影响到后面数分析的结果及其他功能的实现。该模块工作状态的好快直接影响到整个系统工作的正常与否,主要完成数据采集的控制,通道控制和时基控制等。LABVIEW集成了功能强大的数据采集函数库Data Acquisition。在本模块选用DAQmx-Data Acquisition函数库来实现数据采集程序的设计。我们也可以通过DAQ Assistant函数来实现对采集卡输入输出类型、采集数据类

7、型以及聚集所用通道选择等进行设置,也可以通过DAQmx Task Name Constant函数和DAQmx Global Channel Constant函数来实现。通过DAQmx Create Virtual Channel.Vi创建虚拟物理通道:通过DAQmx Read villtllDAQmx write.Vi来执行数据的读写操作;通过DAQmx Start.Vi和DAQmx Stop.Vi执行数据采集的开始与结束;通过DAQmx Advanced Task Options函数库中的DAQmx Configure Input Buffer.Vi和DAQmx Configure Outp

8、ut Buffer.Vi来配置采集过程中计算机缓存。对于模拟信号的输入部分,设计的流程图如图3所示。数据采集模块如图4所示。图3 数据采集模块流程图图4 数据采集模块2.3.3数字滤波器设置模块在测试领域中,信号的频域处理主要指滤波,即把信号中感兴趣的部分(有效信号)提取出来,抑制(削弱或滤除)不感兴趣的部分(干扰或噪声)的一种处理。滤波器分为模拟滤波器和数字滤波器,分别处理模拟信号和数字信号,本系统使用数字滤波器,数字滤波器的基本工作原理是利用离散系统特性去改变输入数字信号的波形或频谱,使有用信号频率分量通过,抑制无用信号分量输出。数字滤波的优点是:数字滤波只是一个计算过程,无需硬件,因此可

9、靠性高,并且不存在阻抗匹配问题,尤其是对频率很高或很低的信号进行滤波,这是模拟滤波器所不能比的。数字滤波是用软件算法实现的,因此,在多个输入通道的应用场合可以避免使用多个硬件滤波器,从而降低硬件成本;只要适当改变软件滤波的滤波程序或运算参数,就能方便地改变滤波特性,这对于抑制低频干扰、脉冲干扰、随机噪声等特别有效。本设计中的IIR滤波器设置模块如图5所示。图5 IIR滤波器设置2.3.4波形显示、滤波以及截波等部分 下图包含波形显示、滤波以及截波部分。图6 波形显示、滤波以及截波2.3.5时间以及幅度控制部分 下图为通过幅度以及时间转轴控制显示的时间以及幅度。图7 时间以及幅度控制2.3.6

10、波形保存部分这里用到一个Case结构,分别选择保存类型。信号显示后利用写入测量文件将波形保存为LVM文件。图8 波形保存图9 生成BMP文件此模块用到了下拉列表常量,保存按钮的局部变量,写入测量文件控件,提取截波波形属性节点,写入BMP文件控件,error out簇。这里用到的error out簇和error in 簇是LabVIEW编程中经常遇到的两个预定义簇。在LabVIEW编写大型项目时经常会调用子VI,因此大型项目表现为一种层状结构,为了将底层发生的错误信息原封不动地传递到顶层VI,LabVIEW利用error in 和error out 这两个预定义簇作为传递错误信息的载体。下图为e

11、rror out簇的格式。Error out簇中包含一个status布尔量代表是否有错,code代表错误带代码;source包含了错误的具体信息。图10 error out簇的格式2.3.7波形回显部分图11 波形回显这个条件结构中用到按钮触发,实质是一个独立的程序部分。读取已保存的lvm文件。2.3.8幅频响应以及相频响应部分幅频响应实质是读取的IIR的响应数据,另外频率轴根据需要由采样速率控制(采样速率除以2作为频率轴的最大值),相频响应同理。图12幅频响应和相频响应2.4 总的程序框图图13 虚拟示波器的后面板设计3 数据采集及示波器的实现本文所设计虚拟示波器,通过NI PCI-6071

12、E数据采集卡采集数据,由于硬件上无法满足要求,在这里采用NI-DAQmx 仿真设备中的NI PCI-6071E数据采集卡的仿真模块得到示波器的输入信号。3.1 数据采集(DAQ)设置下图为NI PCI-6071E数据采集卡的仿真模块的设置。双击Measurement & Automation 图标,打开MAX,展开设备和接口,然后展开NI-DAQmx 设备,点击右键创建新NI-DAQmx 设备,然后点击NI-DAQmx 仿真设备,打开NI-DAQ仿真设备选项卡,选择NI PCI-6071E,如图15所示。同时在示波器的前面板中,可以得到Dev1物理通道,如图16所示。图14 NI-DAQmx仿

13、真设备图15 NI PCI-6071E数据卡的仿真模块的建立图16 前面板的物理通道选择3.2 虚拟示波器的实现通过NI PCI-6071E数据采集卡的仿真模块产生的物理通道得到输入信号,再设置IIR示波器各项参数,得到的示波器波形显示及其他响应如下。1、 得到的原始信号波形,如图17。图17 原始信号波形显示2、 滤波后的信号图18 滤波后的信号3、 截波波形显示。截取经过滤波器后的一部分静止(瞬态)波形。图19 截波波形显示4、 幅频响应。滤波后进行的幅频分析,如图20。图20 幅频分析显示5、 相频响应。滤波后进行的相频分析,如图21所示。图21 相频响应显示6、 采样模式选择和保存操作

14、。以上显示的波形是在有限采样模式情况下采集的。而保存文件操作用来将原始信号保存到LVM文件中,从而可以在波形回显中显示。保存图形选项用来将波形保存为BMP文件。图22 采样模式及保存文件格式7、 波形回显。上面提到的波形保存操作,将波形保存在LVM文件中,波形回显即将LVM文件中的波形重新显示。图23 波形回显4 小结本设计根据要求完成了示波器的基本功能,并作了一些扩充,在现有条件下应该是完成了应该达到的或可以达到的功能。不过本设计可以进一步丰富功能,但扩充需要根据需求来添加。通过本次虚拟示波器的设计,对LabVIEW的应用有了很大程度的提高,比如IIR滤波器、局部变量、各种循环结构的应用下拉

15、菜单常量和属性节点的创建都是前几个设计所没有涉及的,所以虚拟示波器的设计使我对LabVIEW的应用有了提高的同时,也提醒了自己还有很多需要学习的地方,想更好的利用好这个软件,就要在以后多做这方面的工作,多设计一些常用的虚拟仪器,这对以后的工作和生活都有很大的帮助。在本设计进行的过程中,就已经知道还有需要改进的地方。但由于知识储备不足和其他一些方面的限制未能完成这些方面的工作。以下是几个可以改进的地方。1)程序是流水线式设计运行,具体体现在前面板的几个界面切换后后台并没有停止运行,而是一直在运行,这样会浪费不少CPU资源,功能只是简单的增加而没有进行有效的整合。2)这里用了六个波形图控件(Waveform Graphs),只是在前面板使用了选项卡控件,看起来是一个“屏幕”,实际上程序作一定的优化后可以大量减少波形图控件的使用。因为理论上只要不是同时显示的需要就可以公用一个“屏幕”。3)人机界面的设计。操作的方便性有待提高。自我感觉界面除了必要的按钮外,按钮应该越少越好。例如界面切换后自动触发程序,而省去一个个的开关按钮。本设计的界面除了图形显示外,还有过多的表格显示,理想的情况是设计成可控制显隐状态的模式。4)

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号