毕业设计(论文)-基于虚拟仪器界面的信号发生器的设计与实现.doc_第1页
毕业设计(论文)-基于虚拟仪器界面的信号发生器的设计与实现.doc_第2页
毕业设计(论文)-基于虚拟仪器界面的信号发生器的设计与实现.doc_第3页
毕业设计(论文)-基于虚拟仪器界面的信号发生器的设计与实现.doc_第4页
毕业设计(论文)-基于虚拟仪器界面的信号发生器的设计与实现.doc_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于虚拟仪器的信号发生器的设计与实现摘要:传统的信号发生器其功能完全靠硬件实现,功能单一而且用户的购置、维护费用高。更重要的是,对于传统的信号发生器,其功能一旦确定便不能更改,用户要想使用新的功能则必须重新购买新的仪器,传统信号发生器的不足是显而易见的。本课题完成了“虚拟信号发生器”的理论研究,在很大程度上解决了传统信号发生器的诸多弊端。本文主要研究虚拟仪器在信号发生器领域里的软件编程。本虚拟仪器可完成输出多种信号波形的同时产生与输出,信号输出频率、幅度等参数实时可调。本文研究的虚拟信号发生器主要具有如下优点:用户可自由定义其功能;系统功能升级扩充方便快捷、可与电脑等设备方便的互联。关键词:虚拟仪器 信号发生器 虚拟信号发生器 LabVIEWDesign And Achieve Signal Generator Base On Virtual InstrumentAbstract :The functions of traditional signal generators are carried out solely on hardware, and at the same time the functions of traditional signal generators are singleness and costly for purchasing and maintaining, What is more important is that the functions of traditional signal generators can not be altered once they are fixed. Users must get new ones so long as they want new functions. Thus, the defects of traditional signal generators are obvious. This dissertation has accomplished the theoretical research, and made up the various shortcomings of traditional signal generators to great degree. This virtual signal generator can achieve the input and output of multi signals, and such parameters as signal output frequency and amplitude can be adjusted timely. The advantages of this virtual signal generator include the following: low cost of hardware, user custom functions, convenience of the upgrading and enlargement of systematic functions, and connectable with computers.Keywords: Virtual Instrument Signal Generator Virtual Signal Generator LabVIEW目 录引言1第1章 信号发生器21.1 信号发生器概述21.2 信号发生器分类及原理21.2.1 模拟震荡式信号发生器21.2.2 数字式中的数模转换型信号发生器31.2.3 采用ROM方式构成高精度信号发生器31.2.4 DSP型高精度信号发生器41.3 本章小结5第2章 虚拟仪器概述62.1 虚拟仪器的基本概念62.2 虚拟仪器的组成62.2.1 个人计算机或工作站62.2.2 软件72.2.3 仪器72.3 虚拟仪器的功能及特点72.3.1 虚拟仪器的功能72.3.2 虚拟仪器的特点72.4 LabVIEW的软件开发环境82.5 LabVIEW在实际中的应用82.5.1 概述82.5.2 LabVIEW简介82.6 虚拟仪器的发展前景92.7 本章小结9第3章 虚拟仪器的简单应用113.1 创建虚拟仪器113.2 为前面板添加控件133.3 改变信号的类型143.4 将程序框图上的对象连线153.5 运行VI153.6 修改信号163.7 在图形上显示两个信号183.8 自定义旋钮控件及波形193.9 本章小结21第4章 虚拟仪器实现多功能信号发生器224.1 虚拟信号发生器的软件设计思路224.2 “信号发生器1”的实现224.2.1 “信号发生器1”的前面板设计224.2.2 “信号发生器1”的程序框图的设计234.3 “信号发生器2”的设计与实现254.3.1 “信号发生器2”的前面板设计254.3.2 “信号发生器2”的程序框图设计264.4 “信号发生器3”的设计与实现274.4.1“信号发生器3”的前面板设计274.4.2“信号发生器3”的后面板程序设计284.5 本章小结29结论30参考文献31后记32附录A 程序清单33附录B 外文资料翻译35外文资料原文部分35外文资料译文部分47- 57 -中国民航大学本科毕业设计论文引言虚拟信号发生器是在信号处理技术、计算机技术、电子测量技术高速发展的背景下进行研究的。该虚拟信号发生器主要具有的功能及特点有:完成各种常用调制信号波形的输出;各种常见波形及模拟量的输出;可同时输出满足某种严格相位关系的多路信号,信号幅度、频率、相位等参数通过前面板设定调整;软件的前面板使用图形化界面,操作简单快捷,而且成本低。 根据虚拟信号发生器的设计要求,系统实现及完成毕业论文期间所做的工作主要分为以下几章: 1、信号发生器 本章主要讲述信号发生器的概述,阐述信号发生器的原理及分类,各种信号发生器的优缺点。 2、虚拟仪器概述 本章讲述了虚拟仪器的历史发展背景及现状。重点突出使用虚拟仪器的优势,最后阐述与本论文编程有关的虚拟仪器在信号处理中的应用。 3、虚拟仪器的简单应用用LabVIEW编程实现正弦信号发生器,并且对联系到的控件进行简单的介绍。4、虚拟仪器实现多功能信号发生器本章是全文的重点,设计了多功能信号发生器。该信号发生器可以产生方波,三角波,锯齿波和正弦波。信号的频率、幅值可调,同时可以实现任意两种信号的叠加。在设计信号发生器之余,还添加了信号的频域波形,可以显示信号的时域和频域的波形图。第1章 信号发生器1.1 信号发生器概述信号发生器是指可以按要求产生所需信号的装置。按照工作性质区分,可分为电信号发生器和非电信号发生器,产生的信号可以分为规则信号和随机信号,规则信号中又可以分为周期信号和非周期信号;按照信号表达式时间函数取值的连续性和离散性又可以分为连续时间信号和离散时间信号。在许多数据采集和测量系统中需要自身带有一定精度的信号发生器,为系统提供标准的测试信号。在产品开发过程中,能够对电子产品进行测试和校正。1.2 信号发生器分类及原理 信号发生器是许多电子设备特别是测试设备必备的一部分,用以输入基准源信号给被测设备,通过接收被测设备返回的信息,来分析研究被检测设备的情况。广义的信号发生器有许多种类,如光纤传感器中光纤陀螺仪的发光二极管等。狭义上讲,信号发生器是指电子设备中的纯粹电信号发生器。我们衡量或评定一个信号发生器的精度时,主要是对其中最基本和最重要的部分即正弦信号进行检测。检测正弦信号性能的重要指标是频率准确度和频率稳定度、信噪比和谐波畸变。信号发生器大致可分为两类:模拟震荡式和数字式。模拟震荡式信号源又可以分为反馈式和负阻式两类。对于数字式信号发生器来说,按照所用数模转换器所起的作用来区分又可分为数模转换型和数字调制型,对于数字调制型来说,按照一位码的生成方式又可以分为ROM型和DSP型。1.2.1 模拟震荡式信号发生器首先要讲到就是模拟震荡式信号发生器,震荡器是一种可自动地将直流电源的能量转换为一定波形的交变震荡能量的装置。震荡器的种类有很多。从震荡电路中有源器件的特性和形成震荡的原理来看,可把震荡器分为反馈式震荡器和负阻式震荡器两类。前者是利用有源器件和选频电路根据正反馈原理所组成的震荡电路,后者是把一个呈现负阻特性的二端有源器件直接与震荡点连接。按照输出信号又可以分为正弦波震荡器和非正弦波振荡器(张弛振荡器)。模拟震荡式信号发生器是最简单的一种信号发生器。优点是器件数量少,线路简单,制造成本低,易于调试;缺点是模拟震荡式信号发生器难以获得很高的输出信号精度和稳定度。1.2.2 数字式中的数模转换型信号发生器数字式中的数模转换型信号发生器基本原理是:首先将连续正弦信号抽样并量化使之成数字正弦信号存入ROM或EPROM中,然后通过查表周期地读出这些数字样值并送往D/A转换器转换,最后经模拟低通滤波器平滑后,输出所需要的模拟正弦信号,其基本工作框图如图1-1所示。ROM或EPROMD/A转换器模拟低通滤波器输出图1-1 模数转换型基本结构现在从理论上对数模转换型信号发生器进行分析,采用这种数字方式时,设每周期正弦信号的等间隔抽样点数为N,ROM表的时钟频率为,则所产生的正弦信号频率,因为N是确定的值,所以所产生正弦信号的频率准确度与稳定度完全由读码频率决定,而读码频率可由晶体振荡器通过数字分频得到,晶体振荡器的输出精度能达到几十个PPM,因此数模转换型信号发生器有较高的频率准确度和稳定度。但是检验正弦信号的重要指标除了频率准确度和频率稳定度外,还有信噪比和谐波畸变两项。数模转换型信号发生器的信噪比和谐波畸变主要取决于数模转换器的位数和精度,由于高位的数模转换器制造困难,造价较高,使得该类高精度的信号发生器制造成本很高,而且也限制了信号发生器精度的进一步提高。但由于数模转换型信号发生器不仅是可以内置于测试设备中的,而且这类信号发生器精度还能满足一部分中等精度要求测试设备的需求。所以数模转换型信号发生器是使用最广的一类内置式信号发生器。1.2.3 采用ROM方式构成高精度信号发生器在采用ROM方式构成高精度信号发生器时,ROM中存入根据调制器的数字模型计算得到的正弦信号的位的代码。产生正弦信号时该代码在时钟及控制电路的引导下,周期地顺序读出送给位的数模转换器,1转换成正矩形脉冲,0转换成负矩形脉冲。数模转换器的输出经模拟低通滤波器进行滤波,滤除其中的高频噪声成分,即可输出高精度的模拟正弦信号。同数模转换型信号发生器类似,输出正弦信号频率f等于读取一位代码的时钟频率F除以正弦信号每周期采样点数R。因为采样点数R是固定的数字,所以输出正弦信号的频率精度和稳定度完全由读码频率F决定,而读码频率F可由晶体震荡器通过数字分频准确地得到,所以这种方法也具有很高的频率准确度和频率稳定度。利用通过抽样调制技术生成位代码时,它对输入的多位数字信号进行二次量化,将之转换成高精度的一位的数字信号。在进行数模转换时,就只需位的D/A转换器。由于位的D/A转换器很容易实现,所以成本也比较低。根据数字调制器的噪声形成理论,正弦信号的信噪比和谐波畸变指标主要有位代码的质量决定,通过仔细调整数字调制器的数学模型,就可以得到高质量的代码。综上所述,在采用ROM方式制作信号发生器时,较好的解决了正弦信号的所有四个指标,而且也比较稳定。ROM型信号发生器的功能框图如图1-2所示。R O M并 串 转 换控 制 逻 辑 电 路Clock模拟低通滤波器1位D/A转换器图1-2 ROM型高精度信号发生器功能框图1.2.4 DSP型高精度信号发生器DSP型高精度信号发生器基本原理及特点:DSP型信号发生器是所有种类信号发生器中功能最齐全、精度最高的一类信号发生器系统。它和上面ROM型信号发生器的区别在于获得高质量的代码的方法有所不同,在采用ROM方式生成数字正弦信号时,每个周期就按照抽样的要求进行取点,直接得到高质量的代码。而采用DSP方式生成数字正弦信号时,是利用DSP硬件技术来实时模拟调制器的响应。可以每周期只取较少的点,然后对这些点进行插值滤波以满足抽样的要求,所以DSP型高精度信号发生器可以实时产生各种不同频率的正弦信号。DSP型信号发生器原理框图如图1-3所示。计 算 机ClocDSP一位的DAC时序控制逻辑低通滤波器图1-3 DSP型高精度信号发生器图1.3 本章小结 信号发生器是许多电子设备特别是测试设备必备的一部分,用以输入基准源信号给被测设备,通过接收被测设备返回的信息,来分析研究被检测设备的情况。广义的信号发生器有许多种类,如光纤传感器中光纤陀螺仪的发光二极管等。狭义上讲,信号发生器是指电子设备中的纯粹电信号发生器。本章主要讲述了信号发生器的原理及分类,并分别叙述了各类信号发生器的功能以及实现过程,其中数模转换型信号发生器是使用最广的一类内置式信号发生器。第2章 虚拟仪器概述2.1 虚拟仪器的基本概念由于微电子技术、计算机技术、软件技术、网络技术的高度发展及其在电子测量技术与仪器上的应用,新的测试理论、新的测试方法、新的测试领域以及新的仪器结构不断出现,在许多方面已经突破的传统仪器的概念,电子测量仪器的功能和作用已经发生了质的变化。在这种背景下,八十年代末美国率先研制成功虚拟仪器。虚拟仪器就是利用现有的计算机,加上特殊设计的仪器硬件和专用软件,形成既有普通仪器的基本功能,又有一般仪器所没有的特殊功能的高档次、低价位的新型仪器。虚拟仪器的出现是仪器发展史上的一场革命,代表着仪器发展的最新方向和潮流,对科学技术的发展和工业生产的进步将产生不可估量的影响。虚拟仪器利用个人计算机强大的图形环境和在线帮助功能,建立虚拟仪器面板,完成对仪器的控制,数据分析与显示,代替传统仪器,改变传统仪器的使用方式,提高仪器的功能和使用效率,大幅度降低仪器价格,使用户可以根据自己的需要定义仪器的功能。虚拟仪器可广泛应用于电子测量、电力工程、物矿勘探、医疗、振动分析、声学分析、故障诊断及教学科研等诸多领域。2.2 虚拟仪器的组成虚拟仪器一般由个人计算机或者工作站、软件以及仪器硬件组成。2.2.1 个人计算机或工作站 虚拟仪器使用的个人计算机中,微处理器和总线成为最重要的因素。其中,微处理器的发展是最迅速的,它使虚拟仪器的能力极大地提高。八十年代末制造的虚拟频率分析仪完成了一个1024点的快速傅立叶变换需要1秒种的时间,今天的系统可以在1毫秒内完成同样的运算,速度提高了一千倍。这意味着,如果以前人们是用虚拟仪器来做快速傅立叶变换观察信号,那么今天可以利用它进行高速的实时运算,并将之应用于过程控制和其它控制系统中。2.2.2 软件 软件包括应用软件和I/0驱动软件。 用于虚拟仪器开发的应用软件目前大致有两类:一类是文本式的编程语言,另一类是图形化编程语言,这种语言比较人性化,具代表性的语言是LabVIEW。大部分虚拟仪器开发环境均提供一定程度的I/O设备支持。许多I/O驱动程序已经集成在开发环境中。以LabVIEW为例,它能够支持串行接口、GPIB、VXI等标准总线和多种数据采集板,LabVIEW还可以驱动许多仪器公司的仪器。2.2.3 仪器仪器部分包括各种通用接口总线,以及仪器硬件,信号发生器等。通用接口总线用来把独立的仪器连接到计算机上。原来的虚拟仪器差不多都是使用台式仪器作为输入输出部件。在虚拟仪器技术中,I/O设备集成在仪器硬件上,直接插到计算机总线上。仪器硬件进行数据采集或产生各种信号输出,并且即时地把各种所需的数据存放到RAM。微处理器可以立即访问这些数据。数据由微处理器和仪器硬件共享。所以,对于微处理器而言,仪器硬件实际上是一种I/O设备。仪器硬件的技术极大地推动着虚拟仪器的发展,因为它把微处理器和总线技术的进步直接演变为I/O设备的改进和系统能力的提高。2.3 虚拟仪器的功能及特点2.3.1 虚拟仪器的功能虚拟仪器最常见的应用是取代传统的台式仪器。随着仪器硬件速率的提高和触发技术的改进,仪器硬件技术使台式仪器获得了新生。在虚拟仪器所取代的仪器中,最常见的是示波器。通过利用虚拟仪器开发软件编制出的虚拟仪器程序,用户可以调整数据采集板的动作,使软件就像一台示波器一样显示输出波形,同时虚拟示波器还可以进行许多分析工作。2.3.2 虚拟仪器的特点现代化生产要求电子仪器品种多、功能强、精度高、自动化程度高,而且要求测试速度快、实时性好、具有良好的人机界面。虚拟仪器正可以实现这些要求,与传统仪器相比,虚拟仪器具有如下优点:软件使得开发与维护费用降至最低;技术更新周期短(1-2年);关键是软件,系统性能升级方便;价格低、可复用与可重配置性高;用户可定义仪器功能;开放、灵活,可与计算机技术保持同步发展;数据可编辑、存储、打印;图形化界面,计算机直接读取数据并分析数据;与网络及其他周边设备方便地互联。2.4 LabVIEW的软件开发环境 虚拟仪器的软件开发环境目前大致有两类:一类是文本式的编程语言,另一类是图形化编程语言。本文主要用到LabVIEW图形化编程语言,下面主要介绍这个软件。 目前 LabVIEW的最新版本为LabVIEW8.i。LabVIEW还提供了专门用于程序开发的工具箱,使得用户能够设置断点,动态执行程序来观察数据的传输过程,以便进行方便的调试。与此同时,LabVIEW可调用Windows动态连接库和用户自定义的动态连接库中的各种函数,用以解决LabVIEW对某些非NI公司支持的硬件在使用过程中的驱动问题。LabVIEW的CIN节点使用户可以使用由其它语言,如ANSI C编译的程序模块,使LabVIEW成为一个完全开放式的开发平台1。2.5 LabVIEW在实际中的应用2.5.1 概述 编程对工程技术人员来说是件麻烦事,LabVIEW软件用图形编程语言,直观简单、易于操作。使用LabVIEW用户可以随意创建程序,并把它当作子程序调用,以创建更复杂的程序,且调用的层次没有限制LabVIEW这种创建和调用子程序的方法,使创建的程序结构模块化,更易于调试、理解和维护。同时,LabVIEW能够虚拟很多常规仪器,通过计算机仿真完成不同的功能,这样既可节省设备投人的开支,又提高了效率。因此,学习和掌握它的使用方法是十分必要的。 2.5.2 LabVIEW简介 使用LabVIEW 开发平台编制的程序称为虚拟仪器程序(virtual instrument),简称为VI。VI包括三个部分:程序前面板、框图程序和图标连接器。程序的前面板用于设置输人数值和观察输出量,用于模拟真实仪表的前面板。在程序前面板上,输人量被称为控制,输出量被称为显示。控制和显示是以各种图标形式出现在前面板上的,如旋钮、开关、按钮、图表、图形等,这使得前面板直观易懂。每一个程序前面板都对应着一段框图程序。框图程序用LabVIEW图形编程语言编写。可以把它理解成传统程序的源代码。框图程序由端口、节点、图框和连线构成。其中端口被用来传递程序前面板的控制和显示数据;节点被用来实现函数和功能调用,图框被用来实现结构化程序控制命令。而连线代表程序执行过程中的数据流定义了框图内的数据流动方向。图标连接器是子VI被其它VI调用的接口。图标是子VI在其他程序框图中被调用的节点表现形式。而连接器则表示节点数据的输人/输出口,就像函数的参数。用户必须指定连接器端口与前面板的控制和显示一一对应 。 LabVIEW具有多个图形化的操作模板,用于创建和运行程序。这些操作模板可以随意在屏幕上移动,并可以放置在屏幕的任意位置。操作模板共有三类:工具模板、控制模板和功能模板。工具模板(Tools Palette)为编程者提供了各种用于创建、修改和调试VI程序的工具。控制模板(Controls Palette)可以给前面板添加输人控制和输出显示。功能模板(Functions Palette)是创建框图程序的工具2。2.6 虚拟仪器的发展前景 虚拟仪器依靠其自身的优势使它在仪器市场的竞争力不断增强。许多大型仪器公司均在虚拟仪器市场上占有一席之地。1988年国际上开始有虚拟仪器产品面市,当时只有五家制造商推出的30种产品。此后,虚拟仪器产品每年成倍增加,到1994年底,虚拟仪器制造厂己达95家共生产 1000多种虚拟仪器产品,销售额达2.93亿美圆,占整个仪器销售额73亿的4%。 目前,我国正处于科学技术蓬勃发展的新时期,对仪器设备的需求将更加强劲。虚拟仪器赖以生存的PC计算机近几年正以迅猛的势头席卷全国,这为虚拟仪器的发展奠定了基础。2.7 本章小结 本章主要讲述了虚拟仪器的基本概念以及虚拟仪器的组成。虚拟仪器利用个人计算机强大的图形环境和在线帮助功能,建立虚拟仪器面板,完成对仪器的控制,数据分析与显示,代替传统仪器,改变传统仪器的使用方式,提高仪器的功能和使用效率,大幅度降低仪器价格,使用户可以根据自己的需要定义仪器的功能。虚拟仪器可广泛应用于电子测量、电力工程、物矿勘探、医疗、振动分析、声学分析、故障诊断及教学科研等诸多领域。虚拟仪器跟现实仪器相比有很多的优势,本章的最后介绍了虚拟仪器的现状与发展前景,虚拟仪器的发展势头是很强大的。第3章 虚拟仪器的简单应用3.1 创建虚拟仪器下面创建一个VI,该VI产生一个信号并将信号在图形中显示。启动 LabVIEW时将出现启动窗口如图 3-1所示。在这个窗口中可创建新VI、选择最近打开的 LabVIEW文件、查找范例以及打开LabVIEW帮助。图3-1 虚拟仪器的启动界面打开现有文件或创建新文件后启动窗口将消失。关闭所有已打开的前面板和程序框图后启动窗口将再次出现。在前面板或程序框图窗口中选择查看启动窗口,也可显示启动窗口。 LabVIEW提供内置VI模板,包括用于创建常规测量应用程序所需的子VI、函数、结构和前面板对象。按照下列步骤,创建一个生成信号并在前面板中显示该信号的VI。1. 启动LabVIEW。2. 在启动窗口中单击新建或基于模板的VI链接,显示新建对话框。3. 在新建列表中选择VI基于模板使用指南(入门)生成和显示。 该VI模板可生成并显示信号。VI模板的预览和简要说明位于窗口右侧的说明部分。 图3-2为新建对话框以及“生成和显示”VI模板的预览。图3-2 虚拟仪器的新建窗口4. 单击确定按钮即可创建一个基于该模板的VI。也可通过在新建列表中双击VI模板的名称来创建基于该模板的VI。LabVIEW显示两个窗口:前面板窗口和程序框图窗口。5. 查看前面板窗口。 用户界面(即前面板)背景色为灰色,包含输入控件和显示控件。前面板的标题栏表明该窗口为“生成和显示”VI的前面板。 6.选择窗口显示程序框图并检查VI的程序框图。程序框图包含了用于控制前面板对象的各种VI和结构,其背景为白色。程序框图的标题栏表明该窗口为“生成和显示”VI的程序框图。7. 单击前面板工具栏上的运行按钮。也可以按键来运行VI。前面板上的图形中将显示一个正弦波。8. 如要停止VI,单击前面板上的停止按钮。3.2 为前面板添加控件 前面板上的控件相当于物理仪器中的输入装置,即为VI的程序框图输送数据。许多物理仪器都具有旋钮,转动旋钮将改变输入值。按照下列步骤,为前面板添加一个旋钮控件。在整个过程中,可选择编辑撤消或按键来撤消新近的操作。在前面板或程序框图中的任意空白处右键单击,也可显示临时的控件或函数选板。控件及函数选板的左上角有一个图钉图标。单击该图钉可将浮动的选板锁定3。1.当控件选板未在前面板上显示时,可选择查看控件选板。 2.默认状态下,初次使用LabVIEW时打开控件选板将显示Express子选板。如Express子选板未显示,单击控件选板上的Express可显示Express子选板。图3-3为控件选板。图3-3 控件选板3.将光标移至Express子选板,找到数值输入控件。当光标在控件选板的图标上移动时,光标所至的子选板、输入控件或显示控件的名称将在图标下方的提示框中出现。4.单击数值输入控件,显示数值输入控件选板。5.单击数值输入控件子选板上的旋钮控件,当旋钮控件附着在光标上时,将其放置在前面板上波形图的左侧。 6. 选择文件另存为,将VI命名为采集信号.vi,并保存在易于访问的位置。3.3 改变信号的类型 按照下列步骤,将信号改为锯齿波。1.按 键或单击程序框图,显示程序框图。找到“仿真信号”Express VI。 Express VI作为程序框图的一部分,可对其进行配置以执行常规测量任务。2.右键单击“仿真信号”Express VI并从快捷菜单中选择属性,显示配置仿真信号对话框。3.从信号类型下拉菜单中选择锯齿波。结果预览区域中显示的图形将变为锯齿波。 配置仿真信号对话框应如图3-4所示。图3-4 配置仿真信号对话框4.单击确定按钮,保存当前配置并关闭配置仿真信号对话框。5.将光标移到“仿真信号”Express VI底部的下拉箭头处。拖Express VI的下拉箭头,可显示被隐藏的输入和输出端。6.出现双箭头时,单击双箭头并将 Express VI的边框向下方拖曳两行。 释放光标,出现幅值输入端。此时,可在程序框图上对锯齿波的幅值进行配置。图 3-4中的幅值是配置仿真信号对话框的一个选项。3.4 将程序框图上的对象连线如要通过旋钮改变信号幅值,必须将程序框图上的两个对象连线。按照下列步骤,将旋钮与“仿真信号”Express VI的幅值输入端连线。1.在程序框图上,将光标移至旋钮的接线端上方,此时光标变为一个箭头,即定位工具。定位工具用于对象的选择、定位,以及为对象调整大小。2.用定位工具选中旋钮接线端,将其放置在“仿真信号”Express VI的左侧的灰色循环的内部。接线端是前面板和程序框图之间信息交换的入口和出口。3.单击程序框图中的空白处便可取消选定旋钮接线端。如需在对象上使用其它工具,必须先取消选定对象,才可切换工具。4.将光标移至旋钮接线端的箭头上方。此时光标变为一个线圈,即连线工具,如左图所示。连线工具用于连接程序框图上的对象。5.出现连线工具时,单击旋钮接线端的箭头,再单击“仿真信号”Express VI的幅值输入端的箭头可将二者相互连接。6.选择文件保存,保存VI。3.5 运行VI运行VI即执行VI程序。按照下列步骤,运行采集信号VI。1.按 键或单击前面板以显示前面板。2.单击运行按钮或按 键以运行VI。3.将光标移至旋钮控件上方。此时光标变为一个手形,即操作工具。 操作工具用于改变控件的值。4.用操作工具转动旋钮以调节锯齿波的幅值。转动旋钮时,锯齿波的幅值随之改变。改变幅值时,操作工具在提示框中显示旋钮的数值。图形的Y轴会根据幅值的改变自动调整标尺。当运行按钮变为黑色箭头时,表示VI正在运行。VI运行时可改变大多数输入控件的值,但是无法编辑VI。5.单击停止按钮,如左图所示,可停止VI运行。停止按钮会在VI完成当前循环后停止VI的运行。单击中止执行按钮,将在VI完成当前循环前立即停止VI的运行。中止使用了外部资源(如外部硬件)的VI可能会导致外部资源无法恰当复位或释放并停留在一个未知状态。设计VI时添加一个停止按钮可避免此类问题。3.6 修改信号按照下列步骤,将信号缩放10倍并在前面板上的图形中显示结果。1.在程序框图上,双击“仿真信号”与Waveform Graph接线端之间的连线。2.按 键删除该连线。3.如未显示图3-5所示的函数选板,可选择查看函数选板。 打开函数选板时默认显示 Express子选板。图3-5 函数选板4.在算术与比较选板上,选择“公式”Express VI并将其放置在程序框图上,位于循环内部“仿真信号”与Waveform Graph接线端之间的位置。可将 Waveform Graph接线端适当右移,以使 Express VI与该接线端之间有更多空间。将Express VI放置于程序框图上时,配置公式对话框会自动弹出。通常将一个Express VI放置于程序框图上时,该VI的配置对话框会自动弹出。5.单击配置公式对话框右下角的帮助按钮。显示LabVIEW帮助中该 Express VI的帮助主题。公式帮助主题描述了Express VI、配置对话框选项,以及 Express VI的输入和输出。每个Express VI都有相应的帮助主题。单击Express VI各自配置对话框中的帮助按钮,或右键单击Express VI并从快捷菜单中选择帮助即可查看相关的帮助主题。6.通过公式的帮助主题对相关对话框选项的描述,得知需为公式输入一个变量。7.将LabVIEW帮助窗口最小化,返回配置公式对话框。8.根据帮助主题中对话框选项的相关描述,将标签列中的 X1 改为锯齿波,如左图所示,从而指定“公式”Express VI的输入值。单击配置公式对话框的公式文本框时,文本被改变为刚才输入的标签。9.在公式文本框的锯齿波后输入*10,指定缩放因子的值。配置缩放因子时,可使用配置对话框中的输入按钮,也可使用键盘上的*、1,和 0 键直接输入。如使用配置对话框中的输入按钮,LabVIEW将在公式文本框中的锯齿波后放置所输入的公式。如使用键盘直接输入,在公式文本框的锯齿波后单击,然后输入公式。 配置公式对话框应如图 3-6所示。图3-6 配置公式对话框10.单击确定按钮,保存当前配置并关闭配置公式对话框。11.将光标移至“仿真信号”Express VI的锯齿波输出端的箭头上方。12.当连线工具出现时,单击锯齿波输出端的箭头,再单击“公式”Express VI的锯齿波输入端的箭头将两个对象连线。13.用连线工具连接“公式”Express VI的结果输出端和波形图接线端。查看该 Express VI与接线端之间的连线。Express VI和接线端上的箭头表示数据沿着连线流动的方向。程序框图如图3-7所示。图3-7 产生锯齿波的程序框图14.按键或选择文件保存以保存VI。3.7 在图形上显示两个信号按照下列步骤,在同一个图形中显示两个信号。1.在程序框图上,将光标移至“仿真信号”Express VI的锯齿波输出端的箭头上方。2.用连线工具将锯齿波输出端连线至Waveform Graph接线端。如所示,“合并信号”函数出现在两条连线连接处,“合并信号”函数接收两个独立信号然后将其合并,这样两个信号便可在同一个图形中显示。程序框图如图3-8所示。图3-8 合并信号的程序框图3.按 键或选择文件保存以保存VI。4.返回到前面板,运行VI,转动旋钮控件。根据“公式”Express VI中指定的配置,图形显示了原始的锯齿波以及幅值10倍缩放后的锯齿波。转动旋钮控件时,y轴的最大值将自动缩放。5.单击停止按钮,停止VI的运行。3.8 自定义旋钮控件及波形由于旋钮输入控件改变的是锯齿波的幅值,因此为其使用幅值这一标签可更准确地描述旋钮的作用。按照下列步骤,自定义旋钮的外观。图3-9 旋钮属性对话框1.在前面板上,右键单击旋钮并从快捷菜单中选择属性,显示旋钮属性对话框。2.在外观选项卡上的标签区域,删除旋钮标签,输入“幅值”的字样。旋钮属性对话框应如图3-9所示。3.单击标尺选项卡,勾选标尺样式区域的显示颜色梯度控件复选框。前面板上的旋钮将相应更新。4.单击确定按钮,保存当前配置并关闭旋钮属性对话框。5.保存 VI。6.重新打开旋钮属性对话框,尝试一下旋钮的其它属性。例如,在标尺选项卡上,单击标记文本颜色旁的颜色盒以改变其颜色。7.单击取消按钮则在尝试过程中所作的任何修改将不生效。如想保存所作的修改,单击确定按钮。波形图显示控件显示了两个信号。为了区分缩放信号和仿真信号的曲线,可对曲线进行自定义。按照下列步骤,自定义波形图显示控件的外观。1.在前面板上,将光标移至波形图图例的顶端。虽然图形中有两条曲线,但图例中仅显示一条曲线。2.如图3-10所示,出现双箭头时,单击并拖动图例边框,使图例显示出第二条曲线。 释放鼠标后,出现第二条曲线的名称。图3-10 产生波形结果3.右键单击波形图并从快捷菜单中选择属性,显示波形图属性对话框。4.在曲线选项卡上,从下拉菜单中选择锯齿波。在颜色区域,单击线条颜色框,显示颜色选择器。选择一个新的线条颜色。5.从下拉菜单中选择锯齿波(Formula Result)。6.勾选忽略波形或动态属性,包括曲线名称复选框。7.在名称文本框中,删除当前标签,并将曲线名称更改为缩放锯齿波。8.单击确定按钮,保存当前配置并关闭波形图属性对话框。 前面板上曲线的颜色和图例将改变。9.重新打开波形图属性对话框,尝试一下图形的其它属性。例如,在标尺选项卡上,可尝试将自动调整标尺禁用并改变Y轴的最大值和最小值。10.单击取消按钮则在尝试过程中所作的任何修改将不生效。如想保存所作的修改,单击确定按钮。11.保存并关闭 VI。本章所完成的前面板如图3-11所示。图3-11 程序的前面板3.9 本章小结本章主要通过设计一个简单的程序来说明LabVIEW的使用步骤和方法,本章通过设计了在一个窗口中显示两个信号波形,并且可以通过旋钮控制波形的幅值,有停止按钮用于控制程序的停止和运行,并且涉及到了很多控件属性的设置。第4章 虚拟仪器实现多功能信号发生器本章主要讲述虚拟信号发生器的设计,由最简单的一个窗口显示两个类型的信号着手,以下称此信号发生器为“信号发生器1”,进而由这个简单的信号发生器进行改进,由两个窗口分别显示两路信号,在另一个窗口中可以实现任意两路信号的叠加,以下称此信号发生器为“信号发生器2”。最后由前两个信号发生器进一步改进,能够实现信号功率频谱的显示,来烘托出此信号发生器的多功能性。以下的叙述称此信号发生器为“信号发生器3”。本文分别阐述这三种信号发生器的前面板和后面板的设计,以及这三种信号发生器的功能。用这三种信号发生器的功能来说明虚拟仪器的特点,虚拟仪器和现实的仪器相比,具有更大的优势。4.1 虚拟信号发生器的软件设计思路 虚拟信号发生器是基于LabVIEW软件进行编程的。要设计一个虚拟信号发生器首先要进行前面板的设计,前面板的设计主要要考虑到所要设计的信号发生器要实现什么功能,再根据这些功能,在控件选板中选择相应得控件,放在前面板相应的位置上,摆放也有一定的讲究,使前面板看起来比较协调。再者是后面板的设计。后面板的设计主要用到函数模板,根据本程序要实现的功能,在函数选板中选择相应的函数,由于程序不是只执行一次,所以要涉及到循环结构,本章的程序用到的循环结构有while循环结构,条件结构。程序调试成功后就产生一个虚拟信号发生器。4.2 “信号发生器1”的实现4.2.1 “信号发生器1”的前面板设计本章的开始已经叙述了“信号发生器1”是能够在一个图形窗口中同时显示两路不同的信号,所以“信号发生器1”的前面板必须设有一个波形显示窗口用于显示两路不同的信号。又由于在同一个窗口中显示的两路信号频率和幅值可调,所以要在前面板添加4个旋钮,其中两个旋钮用于调节第一个信号波形的频率和幅值,另两个旋钮用于控制第二个信号波形的频率和幅值。由于要选择任意两路信号波形,所以要添加两个下拉列表来选择不同的信号类型,信号类型包括正弦波、方波三角波和锯齿波四种。运行着的程序显示的是动态的波形。所以要加一个停止按钮,按下停止按钮,信号由动态变为静态的波形,利于用户的观察和记录。综上所述,“信号发生器1”的前面板应该包括1个波形显示窗口、4个旋钮、2个信号选择窗口和1个停止按钮。“信号发生器1”的前面板如图4-1所示。图4-1 虚拟信号发生器产生信号波形的前面板通过选择信号类型,虚拟信号发生器能够实现正弦波、方波、三角波和锯齿波信号的输出,而且,通过调节旋钮可以改变所选输出波形的幅值和频率。如图4-1所示,在选择信号类型框中选择信号,转动幅值调节旋钮可以调节幅值,转动频率调节旋钮可以调节频率。“停止”按钮的作用是使整个运行着的程序停止。虚拟信号发生器很容易地实现了信号的调节4。4.2.2 “信号发生器1”的程序框图的设计 LabVIEW软件中包括很多种模块,用户可以从软件中调用任意的模块供用户使用。其中有一个模块是基本函数发生器。用这个模块可以很方便地设计信号发生器。本章的编程涉及到基本函数发生器、循环结构、波形显示和输入框等模块,但最主要的模块是基本函数信号发生器这个模块,现在对这个模块进行详细的介绍,对本章下面的编程会起到很大的帮助。基本函数发生器如图4-2所示。图4-2 基本函数发生器模块偏移量指定信号的直流偏移量,默认值为0.0;重置信号值为TRUE,相位将被重置为相位控件的值,时间标识将被重置为0;信号类型是要生成的波形的类型;频率是波形频率,以Hz为单位,默认值为10;幅值是波形的幅值,幅值也是峰值电压,默认值为1.0;相位是波形的初始相位,以度为单位,默认值为0,如重置信号的值为FALSE,VI将忽略相位;错误输入表明VI或函数运行前发生的错误,默认值为无错误,如错误发生在VI或函数运行之前,VI或函数将把错误输入值传递至错误输出,如在VI或函数运行前没有发生错误,VI或函数将正常运行,如在VI或函数运行时发生错误,VI或函数将正常运行并在错误输出中设置自身的错误状态,错误输入和错误输出用于检查错误并通过将一个节点的错误输出和另一个节点的错误输入连线指定执行顺序;状态的值为TRUE时表示在VI或函数运行前已发生错误,值为FALSE时表示警告或无错误,默认值为FALSE;代码是错误或警告代码;源表示错误或警告的源,大多数情况下表示出现错误或警告的VI或函数名,默认值为空字符串;采样信息包含采样信息;仅当信号类型是方波时,VI使用该参数;信号输出是生成的波形;相位输出是波形的相位;错误输出包含错误信息,如错误输入表明在VI或函数运行前已发生错误,错误输出将包含相同的错误信息。下面设计“信号发生器1”的后面板程序。前面已经说明,此信号发生器可以在一个窗口中同时显示两路信号。所以要添置两个基本信号发生器模块,用于产生两路不同的信号。对两个模块分别对应频率、幅值的输入控件,用于控制两路信号的频率和幅值。然后设定该信号发生器的采样频率。再将这两个基本信号发生器的输出进行合并,两个信号的合并可以通过“与”控件来实现。合并后的信号的输出,用连线连接到波形显示器中,就可以实现在同一波形显示器中显示两路不同类型的信号。到此为止,信号发生器的程序已经能够产生信号,并且可以在波形显示器中显示出来了。由于该程序只能执行一次,所以在程序的外围添加一个while循环。While循环能够对程序的执行次数进行计数,并且能对程序进行控制,可以随时停止程序的运行。所以信号发生器1的程序框图如图4-3所示。图4-3 信号发生器1的程序框图4.3 “信号发生器2”的设计与实现“信号发生器2”的功能与“信号发生器1”相比,主要多了一个功能,可以将正弦波、方波、三角波和锯齿波中的任意两种进行叠加,并且用于叠加的信号的频率和幅值可以通过旋钮来调节。下面对“信号发生器2”进行设计和实现。4.3.1 “信号发生器2”的前面板设计与“信号发生器1”相比,“信号发生器2”是在两个窗口中显示两种不同的信号,这样便于观察信号,在第三个窗口中显示前两个窗口中信号叠加后的波形。因此,前面板需要设置3个波形显示窗口。用于相加的两种信号的频率和幅值可调,因此需要添加4个旋钮控件,这4个旋钮控件分别用于控制窗口1中信号的频率和幅值以及窗口2中信号的频率和幅值。另外与“信号发生器1”一样,需要添置两个下拉列表,用于选择两个信号显示窗口中的信号类型,可供选择的信号类型有正弦波、方波、三角波和锯齿波。“信号发生器2”可以随时实现两种信号的叠加,因此,需要设置一个开关用于选择合时实现两个信号的叠加。开关开,两个信号进行叠加。反之,则第3个窗口不显示任何波形。另外,与“信号发生器1”一样,要设置个停止按钮。“信号发生器2”的前面板如图4-4所示。图4-4 “信号发生器2”前面板4.3.2 “信号发生器2”的程序框图设计“信号发生器2”也要产生两路信号,所以要用到两个基本函数发生器模块,对这两个模块分别对应连接频率输入框和幅值输入框,另外要设置采样频率的值。另外要添加信号类型选择框用于信号类型的选择。基本函数发生器中默认的可供选择的信号有正弦波、方波、三角波和锯齿波。由于要用到开关来控制何时进行两路信号相加的操作,在程序窗口中添加条件结构。条件为真时,进行两路信号的相加,条件为假时,则不采取任何操作。把条件结构设为真是,在条件结构框中添加逻辑与模块,并将两个基本函数发生器的输出分别连至逻辑与的两个输入端,逻辑与的输出信号就是两路信号叠加后的波形。再在条件框中添置一个波形显示器,用于显示叠加后的信号波形。将逻辑与的输出,用连线接至波形显示窗中。一般情况下,在波形运动太快时不利于信号的观察,添加一个时间延时(在“函数”面板中选择“编程” “定时” “等待下一个整数倍毫秒”定时,在“函数”面板中选择“编程” “数值” “数值常量”,放于while循环中,输入数值500,并与定时器相连。)就可以解决该问题。在条件循环框中实现对两个信号进行相加。在程序的最外围添加一个while循环就可以连续执行程序。while循环可以控制程序的连续执

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论