




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、目 录1 前言11.1问题的提出11.2虚拟仪器21.2.1 虚拟仪器的起源21.2.2 虚拟仪器的概念31.2.3 虚拟仪器工作原理41.2.4虚拟仪器的优势71.2.5虚拟仪器的现状和应用82虚拟示波器设计方案93软件开发环境123.1关于LabVIEW123.2LabVIEW的工作原理123.3LabVIEW开发环境133.3.1 LabVIEW 8.2 启动界面143.3.2 LabVIEW 8.2 前面板和流程图设计窗口143.3.3 LabVIEW 8.2的三大选板184虚拟示波器设计264.1虚拟示波器的程序设计264.1.1数据采集264.1.2数据处理274.1.3结果显示3
2、34.2前面板设计344.3小结35结束语37致谢38参考文献391 前言随着计算机技术、大规模集成电路技术和通信技术的飞速发展,仪器技术领域发生了巨大变化。从最初的模拟仪器发展到现在的数字化仪器、嵌入式系统仪器和智能仪器;新的测试理论、测试方法不断应用于实际;新的测试领域随着学科门类的交叉发展而不断涌现;仪器结构也随着设计思想的更新而不断发展。仪器技术领域的各种创新积累起来使现代测量仪器的功能和作用发生一质的飞跃。尤其是以计算机为核心的设计思想以及仪器系统与计算机软件技术的紧密结合,导致了仪器的概念发生了突破性的变化,出现了一种全新的仪器概念虚拟仪器(Virtual Instrumentat
3、ion,VI)。虚拟仪器实际上是一个按照仪器需求组织的数据采集系统。虚拟仪器研究中涉及的基础理论主要有:计算机数据采集和数字信号处理。1.1问题的提出在高等院校电工及电子类课程中,实验是一种重要的教学手段,学生通过做实验,可以加深对所学知识的理解,增强学习的兴趣,提高动手能力,锻炼在实践中发现问题、分析问题和解决问题的能力。但是,近年来各大高校纷纷扩招,学生人数急剧增加,实验室的设备和规模都难以满足需要,实验室常规设备有的己经老化,有的技术上有些落后,在当前学校经费较少的情况下,如果大量增加常规仪器、仪表的配置,学校财力难以支付。又因为基础实验室是面向所有的工科专业,任务异常繁重,实验室常常只
4、能应付学生按教学大纲要求做一些最简单的验证实验,学生很少有机会去反复熟悉常用仪器仪表的使用,更很少有机会做设计性实验,这对调动学生积极性,培养创新精神,加强实践动手能力都十分不利。虚拟仪器的出现很好的解决了这个问题。虚拟仪器是指具有虚拟仪器面板的个人计算机仪器。在虚拟仪器系统中,用计算机灵活强大的软件代替传统仪器的某些部件,用人的智力资源代替许多物质资源,通过一组软件和硬件,形成既有普通仪器的基本功能,又有一般仪器所不具备的特殊功能的新型仪器。结合数据库技术和软件技术,可以在虚拟仪器的基础上形成虚拟仪器实验室。与传统的实验室相比,虚拟仪器实验室具有以下优势:(1)减少实验设备资金的投入。首先,
5、在一台计算机上就可以买现诸如示波器、函数发生器、电压表、频谱分析仪等仪器的功能,大大节约了仪器成本。其次,传统仪器维护费用高,需要耗费大量的人力物力。虚拟仪器基于软件的体系结构大大节省了开发和维护费用。 (2)便于开放式管理,扩大教学规模。虚拟仪器实验室系统可以通过网络进行数据传送,指导老师通过计算机监控实验过程,可以同时管理几十甚至上百个学生做实验。1.2虚拟仪器1.2.1 虚拟仪器的起源虚拟仪器技术是现代计算机系统和仪器系统相结合的产物,是当今计算机辅助测试领域的一项重要技术。它推动着传统仪器朝着数字化、智能化、模块化、网络化的方向发展。电子测量仪器发展至今,大体上可以分为四代:模拟仪器、
6、数字化仪器、智能仪器和虚拟仪器。第一代模拟仪器,这类仪器在某些实验室仍能看到,如指针式万用表、晶体管电压表等。它们的基本结构是电磁机械式的,借助指针来显示最终结果。第二代数字化仪器,这类仪器目前相当普及,如数字电压表、数字示波器、数字频率计等。这类仪器将模拟信号的测量值转化为数字信号,并以数字方式输出最终结果,适用于快速响应和较高准确度的测量。第三代智能仪器,这类仪器内置微处理器,既能进行自动测试又具有一定的数据处理能力,可取代部分脑力劳动,习惯上称为智能仪器。它的功能块全部都是以硬件或固定软件的形式存在,无论是开发还是应用,都缺乏灵活性。第四代虚拟仪器,它是现代计算机技术、通信技术和测量技术
7、相结合的产物,是传统仪器观念的一次巨大变革,是将来仪器产业发展的一个重要方向。虚拟仪器(Virtual Instruments,简称VI)的概念,是美国国家仪器公司(National Instruments Corp.简称NI)于1986年提出的。NI公司同时也提出了“软件即仪器” 的口号,彻底打破了传统仪器只能由厂家定义,用户无法改变的局面,从而引起了仪器和自动化工业的一场革命。随着现代软件和硬件技术的飞速发展,仪器的智能化和虚拟化已经成为各级实验室以及研究结构发展的方向。虚拟仪器,它既具有传统仪器的功能,又有别与其他传统仪器。它能够充分利用和发挥现有计算机的先进技术,使仪器的测试和测量及自
8、动化工业的系统测试和监控变得异常方便和快捷。1.2.2 虚拟仪器的概念虚拟仪器是指通过应用程序将计算机、软件的功能模块和仪器硬件结合起来,用户可以通过友好的图形界面(通常叫做虚拟前面板,简称前面板)来操作这台计算机就像在操作自己定义、自己设计的一台个人仪器一样,从而完成对被测信号的采集、分析、判断、显示、数据存储等。虚拟仪器以透明的方式,通过软件对数据的分析处理、表达以及图形化用户接口,把计算机资源(如微处理器、显示器等)和仪器硬件(如A/D, D/A、数字I/O、定时器、信号调理等)的测量能力、控制能力结合在一起。虚拟仪器突破了传统仪器以硬件为主体的模式,实际上使用者是在操作具有测试软件的电
9、子计算机进行测量,犹如操作一台虚设的电子仪器。虚拟仪器技术的实质是充分利用最新的计算机技术来实现和扩展传统仪器的功能。软件是虚拟仪器的关键,当基本硬件确定以后,就可以通过不同的软件实现不同的功能。用户可以根据自己的需要,设计自己的仪器系统,满足多种多样的应用要求。利用计算机丰富的软、硬件资源,可以大大突破传统仪器在数据的分析、处理、表达、传递、储存等方面的限制,达到传统仪器无法比拟的效果。它不仅可以用于电子测量、测试、分析、计量等领域,而且还可以用于进行设备的监控以及工业过程自动化。虚拟仪器还可以广泛应用于电力工程、物矿勘探、医疗、振动分析、声学分析、故障诊断及教学科研等多个方面。1.2.3
10、虚拟仪器工作原理与传统仪器一样,虚拟仪器同样划分为数据采集与控制、数据分析处理、结果表达三大功能模块(如图11)。虚拟仪器以透明的方式把计算机资源和仪器硬件的测试能力结合起来,实现了仪器的功能运作。信号处理数字滤波统 计分 析信号处理数字滤波统 计分 析PC-DAQ采集卡GPIB仪器串口仪器VXI仪器PXI仪器图11 虚拟仪器的功能模块虚拟仪器用各种图标或控件来表示传统仪器面板上的各种器件。由各种开关图标来实现仪器电源的通断;由各种按钮图标来设置被测信号的“放大倍数” 、“通道” 等参数;由各种显示控件以数值或波形的方式显示测量或分析结果;由计算机的鼠标和键盘操作来模拟传统仪器面板上的实际 操
11、作;以对图形化软件流程图的编程来实现各种信号测量和数据分析功能。虚拟仪器由硬件平台和应用软件两大部分构成。本节将分别从硬件、软件和系统三个方面来介绍虚拟仪器的工作原理及具体构成。(1) 硬件平台 虚拟仪器的硬件平台由计算机和I/O接口设备组成,如图12所示。计算机是硬件平台的核心,一般是工作站,也可用普通的PC机。 I/O接口设备负责被测信号的采集、调整、放大、模/数转换。常用的I/O接口设备有以下5种:PC-DAQ接口、GPIB接口、串行接口、VXI接口和PXI接口。其中PC-DAQ接口是最基本、最常用的接口方式。 (2)软件平台工作站或台式机PC-DAQ接口串行接口GPIB接口VXI接口P
12、XI接口被测信号图12 虚拟仪器的构成虚拟仪器软件将可选硬件(如DAQ、GPIB、RS-232、VXI、PXI)和可以重复使用源码库函数等软件结合起来,实现模块间的通信、定时与触发,源码库函数为用户构造自己的虚拟仪器系统提供了基本的软件模块。当用户的测试要求变化时,可以方便地由用户自己增减软件模块,或重新配置现有系统以满足现有系统的测试要求。虚拟仪器软件包括应用程序和I/O接口设备驱动程序。应用程序又由实现虚拟仪器前面板功能的软件程序和定义测试功能流程图的软件程序两部分构成。I/O接口设备驱动程序实现对特定外部硬件设备的控制。(2) 整体系统虚拟仪器整体系统结构如图13所示。 面板程序应用程序
13、虚拟仪器开发平台被测信号传感器信号调整电路数据采集卡设备驱动工作站或PC机图13 虚拟仪器整体系统结构虚拟仪器信号流程如图14所示。数据采集卡采集模拟信号,并转为数字信号设备驱动程序将数字信号读入计算机信号经调整电路调整为标准信号在开发平台上设计信号测量流程及面板编译成应用程序传感器将被测信号转为电信号图14 虚拟仪器信号测量流程图1.2.4虚拟仪器的优势 一台性能优良的虚拟仪器不仅可以实现传统仪器的大部分功能,而且在许多方面有传统仪器无法比拟的优点,如使用灵活方便、功能丰富、价格低廉、可一机多用、可重复开发等。虚拟仪器优势主要有:(1)性能高虚拟仪器技术是在PC技术的基础上发展起来的,所以完
14、全“继承”了以现成即用的PC技术为主导的最新商业技术的优点,包括功能超卓的处理器和文件I/O,使您在数据高速导入磁盘的同时就能实时地进行复杂的分析。此外,不断发展的因特网和越来越快的计算机网络使得虚拟仪器技术展现其更强大的优势。 (2)扩展性强NI的软硬件工具使得工程师和科学家们不再圈囿于当前的技术中。得益于NI软件的灵活性,只需更新您的计算机或测量硬件,就能以最少的硬件投资和极少的、甚至无需软件上的升级即可改进您的整个系统。在利用最新科技的时候,您可以把它们集成到现有的测量设备,最终以较少的成本加速产品上市的时间。 (3)开发时间少 在驱动和应用两个层面上,NI高效的软件构架能与计算机、仪器
15、仪表和通讯方面的最新技术结合在一起。NI设计这一软件构架的初衷就是为了方便用户的操作,同时还提供了灵活性和强大的功能,使您轻松地配置、创建、发布、维护和修改高性能、低成本的测量和控制解决方案。 (4)无缝集成 虚拟仪器技术从本质上说是一个集成的软硬件概念。随着产品在功能上不断地趋于复杂,工程师们通常需要集成多个测量设备来满足完整的测试需求,而连接和集成这些不同设备总是要耗费大量的时间。NI的虚拟仪器软件平台为所有的I/O设备提供了标准的接口,帮助用户轻松地将多个测量设备集成到单个系统,减少了任务的复杂性。1.2.5虚拟仪器的现状和应用目前流行的虚拟仪器软件开发工具有两类:文本式编程语言和图形化
16、编程语言。文本式编程语言有C、C+、VB、Labwindows/CVI等;图形化编程语言有LabVIEW、AgilentVEE等。其中LabVIEW最流行,是目前应用最广、发展最快、功能最强的图形化软件。虚拟仪器作为新兴的仪器仪表,用户可以定义其结构和功能,构建灵活,转变容易,因此它在各个领域尤其是在超在规模集成电路测试、工厂测试、现代家用电器测试以及军事、航空、航天、通信、汽车、半导体和生物医学等领域得到了广泛应用。2虚拟示波器设计方案虚拟示波器是采用基于计算机的虚拟技术,用以模拟通用示波器的面板操作和处理功能,也就是使用个人计算机及其接口电路来采集现场或实验室信号,并通过图形用户界面(GU
17、I )来模仿示波器的操作面板,完成信号采集、调理、分析处理和显示输出等功能。虚拟仪器由仪器硬件和功能模块软件两部分组成,虚拟示波器的设计也不例外。系统框图如图2.1所示。数据采集数据处理结果显示时基控制数据存储频谱分析截 图波形显示频谱显示目录截图显示图2.1 虚拟示波器系统框图软件设计部分主要是软件的选择、前面板设计和程序设计。此处采用的软件是NI公司的LabVIEW 8.2。前面板设计和程序设计是本文阐述的重点,也是本次设计的主要任务,图2.2为虚拟示波器程序设计程序流程图。虚拟示波器启动后,首先进行初始化,然后开始采集数据,将采集来的数据送入缓冲区,根据触发方式判断是否触发,若不符合触发
18、条件,则重复采集过程,否则将缓冲区值送去显示,再判断是否有按键按下去执行相应的子程序。触发点按 键信号采集采样值存入缓区冲触发识别显示缓冲区的值按键处理初始化图2.2 虚拟示波器程序流程图数据采集部分由软件配以一定的硬件来实现,主要为接口驱动程序设计和外部硬件电路。接口采用计算机串口,故硬件主要实现采集数据的模数转换和电平转换。接口驱动的程序设计将在第四章虚拟示波器设计中详细介绍。硬件部分采用了常见的基于单片机的 图2.3 数据采集电路数据采集系统,如图2.3所示,将待测电信号送入模数转换器件 AD574A,转换后的数据传送给51单片机,再由单片机与计算机串口进行数据传输。单片机与计算机串口遵
19、守RS232协议。本设计除了能够实现传统示波器的一些基本功能外,也在功能扩展方面做了一些尝试,如截图,频谱分析等功能。3软件开发环境3.1关于LabVIEWLabVIEW(Laboratory Virtual instrument Engineering Workbench)是一种图形化的编程语言,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。LabVIEW集成了与满足GPIB、VXI、RS-232和RS-485协议的硬件及数据采集卡通讯的全部功能。它还内置了便于应用TCP/IP、ActiveX等软件标准的库函数。这是一个功能强大且灵活的软件。利用它可以方便
20、地建立自己的虚拟仪器,其图形化的界面使得编程及使用过程都生动有趣。图形化的程序语言,又称为“”语言。使用这种语言编程时,基本上不写程序代码,取而代之的是流程图或流程图。它尽可能利用了技术人员、科学家、工程师所熟悉的术语、图标和概念,因此,LabVIEW是一个面向最终用户的工具。它可以增强你构建自己的科学和工程系统的能力,提供了实现仪器编程和数据采集系统的便捷途径。使用它进行原理研究、设计、测试并实现仪器系统时,可以大大提高工作效率。利用LabVIEW,可产生独立运行的可执行文件,它是一个真正的32位编译器。像许多重要的软件一样,LabVIEW提供了Windows、UNIX、Linux、Maci
21、ntosh的多种版本。3.2LabVIEW的工作原理LabVIEW是一种通用的编程系统,但它也包括各种专用于数据采集和仪器控制的函数库和开发工具。由于LabVIEW程序的运行及其表现形式都是仿照实际的仪器,所以,LabVIEW程序称为虚拟仪器VIs(Virtual Instruments)。然而,VIs仍然类似于传统语言程序的作用。一个VI包括一个人机对话用户界面、一个作为源代码的数据流框图及图标。一个VI的图标使得其高一层的VI可以调用这个VI。更为确切地说,VI具有如下特点:(1) VI的人机对话用户界面由于VI的形式是依照实际仪器的面板,所以又称为前面板。前面板可以包括旋钮、按键、图形显
22、示器、其它的控制器和显示器等。用户可以使用键盘或鼠标输入数据,在计算机屏幕上看到结果。(2)VI从方框图中得到指令方框图使用图形化的编程方式。方框图也是VI的源代码。(3)VI是层次化和模块化的用户既可以把VI作为顶层程序,也可以把它作为其它程序中的子程序。在一个VI中的另一个VI称为子VI。VI的图标和连接器如同图形化参数列表,用于与其它子VI传递数据。由于具有以上特征,LabVIEW实际上采用的是模块编程的概念。设计一个应用程序时,先把它分解成一系列任务,然后再把每个任务分解,直到分解成一系列简单的子任务。为每个子任务建立一个VI,然后用这些VI建立一个方框图,以完成一个更大的任务,最后,
23、顶层的VI包含这些子VI。由于每个子VI都可以与应用的其它VI分开执行,调试十分方便。更进一步,许多底层的VI经常完成的是相同任务的若干应用,用户可以专门建立一个子VI,以方便使用。3.3LabVIEW开发环境本节对LabVIEW的开发环境即常用模块作一简要介绍。主要有启动界面、设计窗口、选板等。3.3.1LabVIEW 8.2 启动界面运行LabVIEW 8.2 主程序,屏幕显示如图3.1所示的窗口。菜单栏有文件、操作、工具和帮助四项,菜单栏下面是新建、打开、相关资源选项,在此处可以创建新VI、VI项目或者用模板来创建VI,也可以打开一个已存在的VI或VI项目,同时也可以打开最近使用过的VI
24、,或者浏览相关资源。图3.1LabVIEW 8.2 启动界面3.3.2 LabVIEW 8.2 前面板和流程图设计窗口虚拟仪器的设计包含两个部分,一个是仪器前面板,一个是信号流程图。这两个部分的设计分别在前面板设计窗口和流程图设计窗口中完成。下面分别介绍这两个设计窗口。(1)前面板设计窗口前面板设计窗口如图3.2所示。前面板是图形用户界面,也就是VI的虚拟仪器前面板,这一界面上有用户输入和显示输出两类控件,具体表现有开关、旋钮、图形以及其他控制和显示控件。虚拟仪器前面板的设计只需工具模板中相应的工具去取用控制模板中的相关控件,并排列到前面板设计窗口中的合适位置即可。图3.3 VI前面板设计窗口
25、(2)流程图设计窗口流程图设计窗口如图3.4所示,流程图提供VI的图形化源程序。在流程图中对VI编程,以控制和操纵定义在前面板上的输入和输出功能。流程图中包括前面板上控件的连线端子,还有一些前面板上没有但编程必须有的东西,例如函数、结构和连线等。虚拟仪器流程图的设计需用工具模板中相应的工具去取用功能模板中的相关控件,排列到流程图设计窗口中的合适位置,并用相应功能的连线连接成信号流程图。图3.4 流程图设计窗口(3)模板和控件的调用在缺省情况下,工具模板随两种设计窗口显示,控制模板随前面板设计窗口显示,功能模板随流程图设计窗口显示。用鼠标单击工具模板中的相关工具,即可完成工具状态的选定。用鼠标单
26、击控制模板或功能模板中的相关控件,然后在前面板设计窗口或流程图设计窗口中的合适位置单击,即可完成控件的调用。如果三大模板没有显示在设计窗口中,可以用如下方法调用。1)工具选板选择主菜单查看工具选板,即弹出如图3.3和图3.4所示的工具模板。2)控件选板在前面板设计窗口中,选择主菜单查看控件选板,即弹出如图3.3所示的控件模板。3)函数选板在流程图设计窗口中,选择主菜单查看函数选板,即弹出如图3.4所示的函数选板。(4)主菜单及快捷按钮1)文件菜单选项完成VI文件的新建、打开、打印、关闭、页面设置、退出等操作。2)编辑菜单选项完成剪切、复制、粘贴、删除、查找和替换、对齐所选项等操作。3)查看菜单
27、选项完成各选板、错误列表等的显示和隐藏。4)项目菜单选项完成项目的新建、打开、关闭、保存、运行、生成、属性等操作。5)操作菜单选项主要完成对程序的相关操作,如运行、停止、单步步入、单步跳过、数据记录等。6)工具菜单选项主要有生成可执行文件、源代码控制、性能分析、安全、用户名等相关操作。7)窗口菜单选项主要是前面板和程序框图窗口的转换、窗口显示模式。8)帮助菜单选项完成显示即时帮助、查找范例、查找仪器驱动、搜寻网络资源等。快捷按钮栏如图3.5所示,从左至右依次为运行、连续运行、图3.5快捷按钮停止、暂停、文本设置、对齐对象、分布对象、调整对象大小、重新排列、显示即时帮助窗口。在程序框图窗口中,快
28、捷按钮上还有高亮显示执行过程、保存连线值、开始单步执行、单步步出按钮。3.3.3LabVIEW 8.2的三大选板LabVIEW 8.2提供了三大操作选板:工具、控件、函数。这些选板集中反映了LabVIEW的功能与特征。在虚拟仪器的设计过程中,用户主要利用这三大选板来完成VI前面板和信号流程图的设计。工具选板可以同时出现在VI前面板设计窗口和流程图设计窗口中,因为这两个设计窗口均需要使用工具选板。控件选板只出现在VI前面板设计窗口中。前面板设计窗口所需的各种控制控件均包含在控制模板中。前面板设计只需要选择工具模板中的相应工具,从控件选板中取出有关的控件,摆放到前面板设计窗口中的合适位置,并设置好
29、相关属性。函数选板只出现在信号流程图设计窗口中。流程图设计窗口所需的各种功能控件均包含在函数选板中。流程图设计只需要选择工具选板中的相应工具,从函数选板中取出有关的控件,摆放到合适位置,并用相应的连线将它们组成流程图。下面分别介绍工具选板、控件选板和函数选板中的相关内容。1)工具选板如图3.6所示,工具选板提供了各种用于创建、修改和调试VI程序的工具。当从选板内选择了任一种工具后,鼠标箭头就会变成该工具相应图3.6 工具选板的形状。工具选板中的工具简介如表3.1表3.1图标名称功能Operate Value(操作值)用于操作前面板的控制和显示。使用它向数字或字符串控制中键入值时,工具会变成标签
30、工具Position/Size/Select (选择)用于选择、移动或改变对象的大小。当它用于改变对象的连框大小时,会变成相应形状。Edit Text(编辑文本)用于输入标签文本或者创建自由标签。当创建自由标签时它会变成相应形状。Connect Wire(连线)用于在流程图程序上连接对象。如果联机帮助的窗口被打开时,把该工具放在任一条连线上,就会显示相应的数据类型。Object Shortcut Menu(对象菜单)用鼠标左键可以弹出对象的弹出式菜单。Scroll Windows(窗口漫游)使用该工具就可以不需要使用滚动条而在窗口中漫游。Set/Clear Breakpoint(断点设置清除)
31、使用该工具在VI的流程图对象上设置断点。Probe Data(数据探针)可在框图程序内的数据流线上设置探针。通过控针窗口来观察该数据流线上的数据变化状况。 Get Color(颜色提取)使用该工具来提取颜色用于编辑其他的对象。Set Color(颜色设置)用来给对象定义颜色。它也显示出对象的前景色和背景色。2)控件选板如图3.7所示,控件选板包括多种子选板,图中每个图标代表一类子模板。图3.7 控件选板控件选板中的各子模板功能简介如表3.2,其中最常用的是数值子模板、布尔量子模板、数组子模板、图形子模板。表3.2图标子模板名称功能Numeric(数值量)数值的控制和显示。包含数字式、指针式显示
32、表盘及各种输入框。Boolean(布尔量)逻辑数值的控制和显示。包含各种布尔开关、按钮以及指示灯等。String & Path(字符串和路径)字符串和路径的控制和显示。Array & Cluster(数组和簇)数组和簇的控制和显示。List & Table(列表和表格)列表和表格的控制和显示Graph(图形显示)显示数据结果的趋势图和曲线图。Ring & Enum(环与枚举)环与枚举的控制和显示。I/O(输入/输出功能)输入/输出功能。于操作OLE、ActiveX等功能。Refnum参考数10Digilog Controls(数字控制)数字控制11Clussic
33、 Controls(经典控制)经典控制,指以前版本软件的面板图标。12Activex用于ActiveX等功能。13Decorations(装饰)用于给前面板进行装饰的各种图形对象。14Select a Controls(控制选择)调用存储在文件中的控制和显示的接口。15User Controls(用户控制)用户自定义的控制和显示。3)函数选板如图3.8所示,函数选板是创建流程图程序的工具。功能模板包括多种子模板,图中每一个顶层图标都表示一个子模板。图3.8 函数选板函数选板中常用的子模板的功能简介如表3.3,其中最常用的是结构、布尔、数组、数值子模板等。表3.3图标子模板名称功能Structu
34、re(结构)包括程序控制结构命令,例如循环控制等,以及全局变量和局部变量。Numeric(数值运算)包括各种常用的数值运算,还包括数制转换、三角函数、对数、复数等运算,以及各种数值常数。Boolean(布尔运算)包括各种逻辑运算符以及布尔常数。String(字符串运算)包含各种字符串操作函数、数值与字符串之间的转换函数,以及字符(串)常数等。Array(数组)包括数组运算函数、数组转换函数,以及常数数组等。Cluster(簇)包括簇的处理函数,以及群常数等。这里的群相当于C语言中的结构。Comparison(比较)包括各种比较运算函数,如大于、小于、等于。Time & Dialog(时
35、间和对话框)包括对话框窗口、时间和出错处理函数等。File I/O(文件输入/输出)包括处理文件输入/输出的程序和函数。Data Acquisition(数据采集)包括数据采集硬件的驱动,以及信号调理所需的各种功能模块。Waveform(波形)各种波形处理工具Analyze(分析)信号发生、时域及频域分析功能模块及数学工具 。Instrument I/O(仪器输入/输出)包括GPIB(488、488.2)、串行、VXI仪器控制的程序和函数,以及VISA的操作功能函数。4Mathematics(数学)包括统计、曲线拟合、公式框节点等功能模块,以及数值微分、积分等数值计算工具模块。5Communi
36、cation(通讯)包括TCP、DDE、ActiveX和OLE等功能的处理模块。6Application Control(应用控制)包括动态调用VI、标准可执行程序的功能函数。7Graphics & Sound(图形与声音)包括3D、OpenGL、声音播放等功能模块。包括调用动态连接库和CIN节点等功能的处理模块。8Tutorial(示教课程)包括LabVIEW示教程序。4虚拟示波器设计在本章中将详细介绍各个功能模块的程序设计和前面板。虚拟示波器程序设计部分主要有数据采集、数据处理、结果显示三大模块。数据采集主要由硬件来实现,如采用数据采集卡、计算机声卡等来实现,本文采用计算机串口并配
37、以模数转换电路来实现。4.1虚拟示波器的程序设计4.1.1数据采集数据采集部分是外部数据与虚拟示波器之间沟通的桥梁,是硬件与软件的结合,数据采集系统的构成如图4.1所示。硬件部分主要是进行数据采集和模数转换的电子电路,具体电路已在本文第二章中做了说明。软件部分则是所用接口的读写程序。内存BufferA/D信号 驱动程序LabVIEW程序硬件显示图4.1 数据采集系统的结构LabVIEW中的接口配置和读写程序如图4.2所示,该程序作为图4.2 接口配置和读写程序图一子程序在主程序中调用。设计中采用了LabVIEW中的VISA Configure Serial Port函、VISA Write函数
38、和VISA Read函数来完成对串口的读写。4.1.2数据处理本设计的数据处理模块包括数据保存、读取、触发和截图。(1)数据保存和读取本部分是对硬件采集到的数据做简单的处理后,进行保存,其程序图如图4.3所示,此处还调用了两个子程序:读取和保存子程序。图4.3 数据保存和读取示波器有正常和记忆两种状态,在记忆状态下,可以直接开启保存功能对从外部采集来的数据进行保存,结果以文本格式进行存放,如图4.4所示,也可以进行数据的读取。图4.4 保存的采集数据其中保存和读取子程序的框图如图4.5和图4.6所示图4.5 保存子程序图图4.6 读取子程序图两个子程序中都用到了子子程序:写入电子表格文件.vi
39、,该vi为LabVIEW 8.2自带的,如图4.7所示,此子子程序的各引脚说明如图中所述。图4.7 写入文件子子程序图标及其帮助(2)触发模块在虚拟示波器中的触发同步与传统示波器有某些相同的地方,也有很多不同的地方。基本方法是:把采集到数据与设定的某个作为触发电平的值进行比较,满足触发条件时,启动触发,并输出数组中对应元素的索引值,将这些值形成一个新的数组,并确定其长度,然后将这组数据做为波形数据的Y值。如图4.8所示,在此模图4.8 触发模块程序图块中,调用了一个触发选择子程序,其程序框图如图4.9所示,触发选择子程序有四个输入:数据输入、是否触发、极性、电平。两个输出:触发后数据输出和索引
40、。在此子程序中,还用到了一个图4.9 触发选择子程序图LabVIEW 8.2自带的一个子VI-slope.vi,此处记作触发如图4.9中所示,其程序框图如图4.10,数组元素进入该程序后,分为三路。最下面一路作为循环次数,中间一路给定数组的第一个元素,最上面的直接进入判断。首先判断设定的电压是否相等,且大于或小于数组上一个值,然后触发内部CASE结构。触发内部结构后,该数组的某个元素(此元素和电平相等)和上一个元素相互比较大小,来确定波形是从上方还是从下方通过该设定触发值,该部分的逻辑由内部小CASE结构的判断来进行,不同的上触发和下触发是通过电平来选择的,相应的内部判断是大于或小于,当判断成
41、功后,输出索引值,即该触发点在数组中的位置,然后返回上一个子程序。图4.10 触发选择子子程序图(3)截图截图模块主要借助一些函数实现,如图4.11所示,用到的函数主要图4.11 截图程序图是调用节点函数和写入BMP文件.vi。4.1.3结果显示结果显示包括波形显示、所截图形的显示和频谱图显示,如图4.12所示。此处用到了Build Waveform函数,本文忽略其波形输入端,重新定义参数构建波形数据,并在输出端输出。Y作为波形图中纵轴的显示参数,t0表示波形图中横轴的起始点坐标,dt表示横轴的步进值。其输出数据分为三路,送给波形图4.12 结果显示程序图图、截图的数据直接显示,另一路送给FFT频谱(幅度相位).vi(如图4.13所示)处理后显示。图4.13 FFT频谱(幅度相位).vi图标4.2前面板设计前面板上主要是图形显示区、坐标控制区和功能按钮区。如图图4.14 虚拟示波器前面板4.14所示,图形
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年音乐版权运营策略:结合科技创新的产业升级报告
- 2025-2030工程机械二手设备评估标准体系建设与交易平台发展报告
- 2025-2030工业软件云化转型路径与挑战报告
- 2025-2030工业视觉检测设备在3C行业替代人工的经济效益测算研究报告
- 2025-2030工业视觉检测算法精度提升与制造业质量管控应用分析报告
- 2025-2030工业物联网边缘计算芯片能效优化
- 广告投放效果数据可视化创新创业项目商业计划书
- 天然保健成分提取技术创新创业项目商业计划书
- 政务云安全评估与加固服务创新创业项目商业计划书
- 宠物寄养服务创新创业项目商业计划书
- 2025年宪法知识竞赛试题库(含答案)
- 2025年专业服务行业专业咨询服务市场前景展望报告
- GB 5725-2025坠落防护安全网
- 2025海南三亚市市场监督管理局招聘下属事业单位工作人员5人考试参考试题及答案解析
- 2025年高考真题分类汇编选择性必修一 《当代国际政治与经济》(全国)(解析版)
- 2025中国银行校招笔试真题及答案
- 钛合金课件教学课件
- 钢厂安全用电培训课件
- (完整版)高压成套配电柜安装施工方案
- 隧道运营安全培训
- 2024城市综合管廊工程技术标准
评论
0/150
提交评论