张怡彪毕业设计课件_第1页
张怡彪毕业设计课件_第2页
张怡彪毕业设计课件_第3页
张怡彪毕业设计课件_第4页
张怡彪毕业设计课件_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

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

文档简介

1、安徽工程大学毕业设计(论文)引 言随着人们生活节奏的加快,不同的工作对人提出了不同的要求,在某些场合中,传统的信号发生器已不能满足工作和学习的需要,例如,在上课的过程中,为了能形象的模拟出各种信号的变换过程,传统的信号发生器容易受到外界的干扰及由于误差等的原因导致结果相差很大,而用虚拟仪器模拟出来的波形则能很好的避免这些原因。LabVIEW能够虚拟很多常规仪器,通过计算机仿真完成不同的功能,这样既可节省设备投人的开支,又提高了效率。因此,基于LabVIEW实现多功能信号发生器具有重大意义。传统的信号发生器其功能完全靠硬件实现,功能单一而且用户的购置、维护费用高。更重要的是,对于传统的信号发生器

2、,其功能一旦确定便不能更改,用户要想使用新的功能则必须重新购买新的仪器,传统信号发生器的不足显而易见。这里研究的虚拟信号发生器可以接收输入信号并产生多种输出信号,信号输出频率、幅度等参数实时可调。信号发生器作为科学实验必不可少的装置,被广泛地应用到教学、科研等各个领域。高等学校特别是理工科的教学、科研需要大量的仪器设备,例如信号源、示波器等,常用仪器都必须配置多套,但是有些仪器设备价格昂贵,如果按照传统模式新建或者改造实验室投资巨大,造成许多学校仪器设备缺乏或过时陈旧,严重影响教学科研。如果运用虚拟仪器技术构建系统,代替常规仪器、仪表,不但可以满足实验教学的需要、节约大量的经费、降低实验室建设

3、的成本,而且能够提高教学科研的质量与效率。第1章 绪 论1.1课题研究的意义以往工业现场的各种数据都是采用人工读数和记录,一直停留在手工和数字仪表的水平,无法做到对大量的实验数据的实时采集和分析。随着计算机技术的发展,结合高精度、高性能的数据采集仪器的应用,是的多路数据采集实现了自动化,大量的数据采集和分析由计算机自动完成,提高了测量精度。而计算机已经与仪器结合得非常紧密,已成为整个系统的核心,许多传统仪器正在逐渐被计算机部分、甚至全部取代。把各种传感器与计算机连接起来,首先需要有一个硬件接口电路把仪表输出的信号变成能够被计算机识别的数字信号,其次是要有软件来管理。通过软件、计算机、采集卡、接

4、口硬件和传感器组成的系统叫仪器系统(也是数据采集系统)。LabVIEW就是计算机处理分析系统软件之一。在PC机为基础测量和工控软件中,LabVIEW的市场普及率仅次于C+语音。LabVIEW开发环境具有一系列优点,从流程式的编程、不需预先编译就存在语法检查、调试过程使用的数据探针,到其丰富的函数功能、数值分析、信号处理和设备驱动等功能,都比其他工具强大。LabVIEW是一种图形化的编程语言,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件2。信号发生器是许多电子设备特别是测试设息,分析研究被检测设备的情况。衡量或评定一个信号发生器的精度时,主要是对其中最基本备必

5、备的一部分,用以输入基准源信号给被测设备,通过接收被测设备返回的信和最重要的部分即正弦信号进行检测。检测正弦信号性能的重要指标是频率准确度和频率稳定度、信噪比和谐波畸变。编程对工程技术人员来说比较麻烦,LabVIEW软件用图形编程语言,直观简单、易于操作。用户使用LabVIEW可以随意创建程序,并把它当作子程序调用,以创建更复杂的程序,且调用的层次没有限制LabVIEW这种创建和调用子程序的方法,使创建的程序结构模块化,更易于调试、理解和维护。同时,LabVIEW能够虚拟很多常规仪器,通过计算机仿真完成不同的功能,这样既可节省设备投人的开支,又提高了效率。因此,基于LabVIEW实现多功能信号

6、发生器具有重大意义。传统的信号发生器其功能完全靠硬件实现,功能单一而且用户的购置、维护费用高。更重要的是,对于传统的信号发生器,其功能一旦确定便不能更改,用户要想使用新的功能则必须重新购买新的仪器,传统信号发生器的不足显而易见。这里研究的虚拟信号发生器可以接收输入信号并产生多种输出信号,信号输出频率、幅度等参数实时可调。主要具有如下优点:1)用图形化编程语言LabVIEW和面向对象编程技术,软件开发效率高,可操作性和可维护性好;2)充分利用了计算机的存储与外设连接的能力,测量结果和波形可直接打印输出或通过网络共享;3)硬件具有开放性,允许通过升级硬件来提高其性能;4)在相同硬件条件下,可以通过

7、修改或增加软件模块形成新的仪器功能。5)打破了传统数据采集“线缆密布”的形象,大大简化了测试系统的复杂程度,简化了现场的布置,节省了物力、人力。6)强调“软件就是仪器”。通过基于虚拟仪器的数据采集环境,同样能够“身临其境”地观察数据采集过程和进行“实际”操作。7)LabVIEW图形化编程方式简明快捷,易学易用,可节省大量的学习程序设计及进行程序开发的时间,尤其适合从事科研、开发的科学工作者、工程技术人员3。1.2课题研究的背景虚拟仪器的起源可以追溯到20世纪70年代,那计算机测控系统在国防、航天的领域已经有了相当的发展。PC出现以后,仪器的计算机化成为可能,甚至在微软公司的Windows

8、60;诞生之前,美国国家仪器公司已经在Macintosh计算机上推出了LabVIEW2.0以前的版本。对虚拟仪器和LabVIEW长期、系统、有效的研究开发使得该公司成为业界公认的权威。 自20世纪90年代以来,在计算机技术的推动下,以虚拟仪器为标志的通用化、智能化和网络化测量仪器及测试系统得到了迅猛发展,新的测试理论、测试方法、测试领域以及新的仪器结构不断出现,在许多方面已经突破了传统仪器的概念,电子测量仪器的功能和作用已经发生了质的变化。虚拟仪器利用现有的计算机,加上特殊的仪器硬件和专用软件,形成既有普通仪器的基本功能,又有一般仪器所没有的特殊功能的高档低价的新型仪器。虚拟仪器的出现是仪器发

9、展史上的一场革命,代表作仪器发展的最新方向和潮流,对科学技术的发展和工业生产的进步产生了不可估量的影响。现代化生产要求电子仪器品种多、功能强、精度高、自动化程度高,而且要求测试速度快、实时性好、具有良好的人机界面。与传统仪器相比,虚拟仪器则可以在脚底的成本下较好的实现这些要求,这正是虚拟仪器相对于传统仪器巨大的优势所在。依靠其自身的优势虚拟仪器在仪器市场的竞争力不断增强。许多大型仪器公司均在虚拟仪器市场上占有一席之地。1988年国际上开始有虚拟仪器产品面市,当时只有五家制造商推出的30中产品。此后,虚拟仪器产品每年成倍增加,到1994年底,虚拟仪器制造厂已达95家,共生产100多种虚拟仪器产品

10、,销售额达2.93亿美元,占整个仪器销售额73亿的4%13。 目前,我国正处于科学技术蓬勃发展的新时期,对仪器设备的需求讲更加强劲。虚拟仪器赖以生存的PC计算机近几年正以迅猛的势头席卷全国,这为虚拟仪器的发展奠定了基础,虚拟仪器作为串通仪器的替代品,市场容量巨大。虚拟仪器在仪器中所占地位越来越高也是与虚拟仪器性能的飞速提高分不开的。虚拟仪器经历了由模拟仪器、袋IEEE488接口的智能仪器到全部编程的发展历程,其中每一次飞跃无不以高性能计算机的发展为动力。近年来,计算机的处理能力提高很快,发展的速度已经远远的把传统仪器抛在了后面,高分辨率的图形显示与几百千兆的硬盘也已经成为了标准配置。同时,计算

11、机生产厂商之间的激烈竞争保证了计算机在显示、存储能力与处理性能等方面仍将高速发展。由于计算机技术、特别是计算机总线标准的发展导致VI在PXI和VXI两个领域中得到了快速的发展,它们将成为未来仪器行业的两大主流产品。具有上GHz采样率,高达24bits精度的DAQ版已经面世。A/D转换技术、仪器放大器、抗混叠滤波器与信号调理技术的进一步发展是DAQ版成为最具有吸引力的VI选件之一。模块化的Delta-sigma A/D转换器的仪器放大器可在3us内完成12bits精度下的参数设置,抗混叠滤波器可按1/6倍频程衰减90dB,多通道、完全可编程的信号调理等性能与功能指标仅仅是DAQ版先进技术性能中的

12、几个例子。虚拟仪器技术经过十余年的发展,正沿着总线与驱动程序的标准化、软件的模块化、编程平台的图形化和硬件模块的即插即用等方向发展。 虚拟仪器系统作为本世纪内电子测量仪器发展过程中出现的最新高峰,有着极其广阔的发展前景。它的出现为国家各个行业科研的发展提供了更新式的测试手段,它所具有的得天独厚的优势,是目前任何仪器都不能替代的。我们有理由相信,随着我过科技水平的不断提高,虚拟仪器必将仪器卓越的性能在我国测试行业及高等工科院校实验室教学及科研中得到更为广泛的应用。虚拟仪器(virtual instrumention)是基于计算机的仪器。计算机和仪器的密切结合是目前仪器发展的一个重要方向。粗略地说

13、这种结合有两种方式,一种是将计算机装入仪器,其典型的例子就是所谓智能化的仪器。随着计算机功能的日益强大以及其体积的日趋缩小,这类仪器功能也越来越强大,目前已经出现含嵌入式系统的仪器。另一种方式是将仪器装入计算机。以通用的计算机硬件及操作系统为依托,实现各种仪器功能。虚拟仪器主要是指这种方式。 虚拟仪器的主要特点有:尽可能采用了通用的硬件,各种仪器的差异主要是软件。 可充分发挥计算机的能力,有强大的数据处理功能,可以创造出功能更强的仪器。用户可以根据自己的需要定义和制造各种仪器。虚拟仪器实际上是一个按照仪器需求组织的数据采集系统。虚拟仪器的研究中涉及的基础理论主要有计算机数据采集和数字信号处理。

14、目前在这一领域内,使用较为广泛的计算机语言是美国NI公司的LabVIEW。虚拟仪器的起源可以追溯到20世纪70年代,那时计算机测控系统在国防、航天等领域已经有了相当的发展。PC机出现以后,仪器级的计算机化成为可能,甚至在Microsoft公司的Windows诞生之前,NI公司已经在Macintosh计算机上推出了LabVIEW2.0以前的版本。对虚拟仪器和LabVIEW长期、系统、有效的研究开发使得该公司成为业界公认的权威。目前LabVIEW的最新版本为LabVIEW2009,LabVIEW 2009为多线程功能添加了更多特性,这种特性在1998年的版本5中被初次引入。使用LabVIEW软件,

15、用户可以借助于它提供的软件环境,该环境由于其数据流编程特性、LabVIEW Real-Time工具对嵌入式平台开发的多核支持,以及自上而下的为多核而设计的软件层次,是进行并行编程的首选。普通的PC有一些不可避免的弱点。用它构建的虚拟仪器或计算机测试系统性能不可能太高。目前作为计算机化仪器的一个重要发展方向是制定了VXI标准,这是一种插卡式的仪器。每一种仪器是一个插卡,为了保证仪器的性能,又采用了较多的硬件,但这些卡式仪器本身都没有面板,其面板仍然用虚拟的方式在计算机屏幕上出现。这些卡插入标准的VXI机箱,再与计算机相连,就组成了一个测试系统。VXI仪器价格昂贵,目前又推出了一种较为便宜的PXI

16、标准仪器。虚拟仪器研究的另一个问题是各种标准仪器的互连及与计算机的连接。目前使用较多的是IEEE 488或GPIB协议。未来的仪器也应当是网络化的。 LabVIEW(Laboratory Virtual instrument Engineering Workbench)是一种图形化的编程语言的开发环境,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。LabVIEW集成了与满足GPIB、VXI、RS-232和RS-485协议的硬件及数据采集卡通讯的全部功能。它还内置了便于应用TCP/IP、ActiveX等软件标准的库函数。这是一个功能强大且灵活的软件。利用它可以

17、方便地建立自己的虚拟仪器,其图形化的界面使得编程及使用过程都生动有趣6。 图形化的程序语言,又称为“G”语言。使用这种语言编程时,基本上不写程序代码,取而代之的是流程图或框图。它尽可能利用了技术人员、科学家、工程师所熟悉的术语、图标和概念,因此,LabVIEW是一个面向最终用户的工具。它可以增强你构建自己的科学和工程系统的能力,提供了实现仪器编程和数据采集系统的便捷途径。使用它进行原理研究、设计、测试并实现仪器系统时,可以大大提高工作效率。利用LabVIEW,可产生独立运行的可执行文件,它是一个真正的32位/64位编译器。像许多重要的软件一样,LabVIEW提供了Windows、UNIX、Li

18、nux、Macintosh的多种版本。它主要的方便就是,一个硬件的情况下,可以通过改变软件,就可以实现不同的仪器仪表的功能,非常方便,是相当于软件即硬件!现在的图形化主要是上层的系统,国内现在已经开发出图形化的单片机编程系统(支持32位的嵌入式系统,并且可以扩展的),不断完善中(大家可以搜索CPUVIEW会有更详细信息)。1.3虚拟仪器与传统仪器的比较与传统仪器相比,虚拟仪器有以下一些特点:(1)软件是核心 仪器驱动软件的功能是实现与仪器硬件的接口和通信,应用软件则完成用户定义的测试和仪器功能,并提供人机交互界面。Nl公司提出的“软件即仪器”是这一特点的形象概括。(2)灵活性和可扩展性 仪器用

19、户可以根据自己不断变化的需求,方便灵活的重组系统,系统的扩展、升级随时进行,而且系统更新的周期短、见效快,能充分满足用户在不同场合的应用需求。(3)性价比高 虚拟仪器可以将在传统仪器中由硬件完成的功能转为软件实现,减少了自动测试系统的硬件环节,降低了系统的开发成本和维护成本。虚拟仪器能同时对多个参数进行实时高效的测量,信号传输大部分采用数字信号的形式,数据处理也主要依赖软件来实现,大大降低了环境干扰和系统误差的影响。用户可以随时根据需要调整虚拟仪器的功能,实现一机多用。因此,使用虚拟仪器比传统仪器更经济。(4)良好的人机界面虚拟仪器的操控界面是采用图形化编程技术实现的一种虚拟面板或称为软面板。

20、可以模拟传统仪器面板的设计风格来设计,也可以由用户根据实际需要定制设计。测量结果可以通过计算机屏幕以曲线、图形、数据表格等形式显示5。1.4虚拟仪器系统的构成 随着时代的发展,利用LabVIEW进行数据采集面临着越来越新的任务和要求,讲虚拟仪器引入到数据采集领域成为当今书记数据采集的重要方法和手段。虚拟仪器由硬件和软件两大部分构成。虚拟仪器硬件通常包括通用计算机和外围硬件设备。通用计算机可以是笔记本电脑、台式PC机或工作站等。外围硬件设备可以选择GPIB系统、VXI系统、USB系统、数据采集系统或其他系统,也可以选择两种以上系统构成的混合系统。其中,最简单、最廉价的形式是采用基于ISA或PCI

21、总线的数据采集卡,或是基于RS-232或USB总线的便携式数据采集模块。虚拟仪器的软件包括操作系统、仪器驱动程序和应用软件三个层次。操作系统可以选择Windowsgx/NT/2000/XP、Linux等。虚拟仪器驱动程序软件是直接控制各种硬件接口的驱动程序,应用软件通过仪器驱动器实现与外围硬件模块的通信连接。应用软件包括实现仪器功能的软件程序和实现虚拟面板的软件程序。用户通过虚拟面板与虚拟仪器进行交互3。1.5 小结本章主要概括了课题研究的意义和课题研究的背景,在此基础上,从虚拟仪器的起源开始,全面的了解了虚拟仪器的发展,通过与传统仪器的比较,清晰的了解了传统仪器与虚拟仪器的优缺点及在某些领域

22、应怎么样选择,并且通过与现实虚拟仪器的发展的结合,熟悉虚拟仪器在时代的发展中起到的重要作用和面对的挑战,分析了虚拟仪器的组成部分及虚拟仪器与各种不同系统的兼容性。第2章 总体方案设计本课题设计主要是用软件模拟出一个功能比较齐全的基于LabVIEW的虚拟信号发生器利用软件方式设计实现了信号发生器的功能,它可给各种设备提供多种信号,且频率可调,具有友好的图形界面,操作简单方便,达到一机多用的目的。如果在应用中需要更多的信号,只需修改程序,功能的扩展并不增加费用且性能更新周期短,性价比低另外虚拟信号发生器易于同外部设备连接,便于存储、分析处理等。 2.1信号发生器的基本功能本课题设计的信号普发生器具

23、有如下特点:1) 能产生1正弦;2方波;3三角波;4锯齿波;5 高斯白噪声;6 gamma 噪声;7公式波形等信号;2) 需要两个通道;可以调节幅值、频率、相位、占空比以及波形位置;3) 能实现波形信号显示和叠加等功能;2.2 信号发生器的结构框图图 2-1信号发生器结构框图如图2-1所示,由LabVIEW设计成信号发生器有三大部分组成:参数设置、波形设置、波形显示。在工作过程中,先通过参数的设置来确定波形的各个参数,在波形选择中,可以通过按钮来选择波形的种类,有两个通道,可同时显示和单独显示,可调节波形的位置及编辑公式波形,最后可根据要求实现波形的位置调整,最后在一个单独的波形显示窗口可以实

24、现A、B通道的波形的叠加。2.3 小结 本章主要概述了由LabVIEW设计的信号发生器的基本功能,在满足基本功能的前提下并提出了设计的基本框图,也就是本次设计的核心思想,下章主要是围绕设计框图而展开的具体设计。第3章 信号发生器的具体设计 本章从LabVIEW的介绍开始,将有关此次设计的各个模块的具体设计情况,从数据操作,变量、结构、属性的控制,到波形显示的具体步骤来全面了解此次设计。 3.1 LabVIEW的概念LabVIEW是Laboratory Virtual Instrument Engineering Workbench的缩写,意思就是”实验室虚拟仪器工程平台”。实际上它就是用图标来

25、进行编程的一个开发环境,通过在表示不同功能节点的图标之间连线来完成预想的程序,在这一点上,它完全不同于以往的基于文本的传统开发语言(例如C、C+、Java以及Basic)。LabVIEW师以及科学家使用。LabVIEW可以在Windows、Mac OS X以及Linux这些操作系统上使用。它开发出来的程序除了可以在这些平台上运行,还可以运行在 Microsoft Pock不但是一种编程语言还是一个交互式的开发以及运行系统,它被设计给那些需要编程的工程et PC、Microsoft Windows CE、Palm OS以及很多嵌入式平台上,例如FPGAs、DSPs以及微处理器。LabVIEW所采

26、用的图形化开发语言又叫做"G"(表示graphical)。通过这种语言,LabVIEW可以极大的提高工作效率。有些程序如果使用传统的开发语言的话可能需要数周的时间才能够完成,在采用了LabVIEW之后可能只需要短短的几个小时就完成了。因为LabVIEW是专门设计为用来完成数据的采集、分析以及显示的。并且由于它是图形化的,易于使用,对于模拟、演示概念、完成通用编程甚至用来教授基本的编程概念都是一个理想的工具15。相对于传统的标准仪器来说,LabVIEW由于是基于软件的,所以提供了更大的灵活性。通过LabVIEW开发的虚拟仪器是由用户而不是仪器生产商定义仪器功能的。一台计算机、

27、数采板卡和LabVIEW的结合就能够变成一个可配置的虚拟仪器来完成用户设定的任务。通过LabVIEW就可以用传统仪器几分之一的价格创建一个用户所需要的虚拟仪器。当需要改变这个虚拟仪器的时候,只几分钟的时间通过LabVIEW修改就可以了。为了便于使用,LabVIEW还集成了大量的函数库以及子程序来帮助完成绝大多数的编程任务。在使用这些子函数的时候,可以忘掉传统编程语言中的令人头痛的指针操作、内存分配等编程问题。除此之外,LabVIEW还包含了针对应用的数据采集(DAQ)、GPIB、串口、数据分析、数据显示、数据存储以及Internet网络通信的函数库。此外,LabVIEW是一个跨平台的开发工具,

28、在大多情况下,一个在运行Macintosh计算机上写的LabVIEW程序可以直接拷贝到运行Windows的计算机上运行。可以在很多工业领域可以看到LabVIEW的应用,包括了工控、生物、化工等等。 利用 LabVIEW,可产生独立运行的可执行文件,它是一个真正的32位/64位编译器。像许多重要的软件一样,LabVIEW提供了Windows、UNIX、Linux、Macintosh的多种版本。 它主要的方便就是,一个硬件的情况下,可以通过改变软件,就可以实现不同的仪器仪表的功能,非常方便,是相当于软件即硬件,现在的图形化主要是上层的系统,国内现在已经开发出图形化的单片机编程系统(支持32位的嵌入

29、式系统,并且可以扩展的),不断完善中(大家可以搜索 CPUVIEW 会有更详细信息)。与 C 和 BASIC 一样,LabVIEW 也是通用的编程系统,有一个完成任何编程任务的庞大函数库。LabVIEW的函数库包括数据采集、GPIB、串口控制、数据分析、数据 显示及数据存储,等等。LabVIEW 也有传统的程序调试工具,如设置断点、以动画方式显示数据及其子程序(子VI)的结果、单步执行等等,便于程序的调试。 LabVIEW是一种用图标代替文本行创建应用程序的图形化编程语言。传统文本编程语言根据语句和指令的先后顺序决定程序执行顺序,而 LabVIE则采用数据流编程方式,程序框图中节点之间的数据流

30、向决定了VI及函数的执行顺序。VI指虚拟仪器,是 LabVIEW的程序模块。 LabVIEW 提供很多外观与传统仪器(如示波器、万用表)类似的控件,可用来方便地创建用户界面。用户界面在 LabVIEW中被称为前面板。使用图标和连线,可以通过编程对前面板上的对象进行控制。这就是图形化源代码,又称G代码。LabVIEW的图形化源代码在某种程度上类似于流程图,因此又被称作程序框图代码。与C或C+等其他计算机高级语言一样,LabVIEW是一种程序语言开发环境,但是与现有的计算机高级语言不同的是,LabVIEW采用图形化编程语言一G语言,产生块状的程序,这对于熟悉仪器结构和硬件电路的硬件工程师来讲,编程

31、就象设计电路图一样。同时,LabVIEW也是一种通用编程系统,具有各种各样、功能强大的函数库,包括数据采集、GPIB、串行仪器控制、数据分析、数据显示和数据存储,甚至还有网络远程操作功能。LabVIEW也具有完善的仿真、调试工具,如设置断点、单步等。LabVIEW的动态连续跟踪方式,可以连续动态地观察程序中的数据及其变化情况,比其他语言的开发环境更方便、更有效。LabVIEW程序称为虚拟仪器VI(VirtualInstrumentS)。一个VI包括一个人机对话用户界面、一个作为源代码的数据流框图及图标。一个VI的图标使得其高一层的VI可以调用这个VI。而信号发生器正是基于在此的基础上设计起来的

32、16。3.2 波形显示控件通过前面有关LabVIEW的介绍,可以知道LabVIEW为模拟真实仪器的操作版面提供了强大的交互式界面设功能,在传统的仪器仪表中,除了最简单的数码显示外,能够显示测量信号波形和仪器工作的状态的CRT荧光屏正在广泛应用,包括数字示波器、频谱分析仪和逻辑分析仪等,这些高级仪器都必须具备实时图形显示能力。一副精心设计的画面为用户提供的信息量,远远超过由数字或文字组成的报告。因此,能够将大量测量数据转化为意义明确的显示曲线或三维图形的控件是设计虚拟仪器所必须的。按照处理测量数据的方式和显示过程的不同,LabVIEW波形显示控件主要分成两大类,一类为事后记录图(Graph),另

33、一类为实时趋势图(Chart),这两类控件都是用来对波形或图形进行显示的,它们的区别在于两者数据组织方式及波形的刷新方式不同。对于事后记录图Graph方式来说,它的基本数据结构为数组,也就是说Graph显示是将构成数据的全部测量数据一次显示完成;而实时趋势图Chart方式则是实时显示一个或几个测量数据,而且新接收数据点要接在原有波形的后面连续显示。它的基本数据结构是数据标量,也可以是数组。即使是数组,Chart方式也是连续不断地一个数组接着一个数组显示,而不是像Graph方式一次显示完成14。由于此次的设计只用到事后记录波形控件(Graph),所以只重点介绍该控件。在LabVIEW控制模板的G

34、raph子模块,可以找到所有的波形控件,如图3-1所示。图 3-1 Graph子模块事后记录波形控件的典型前面结构及端口如图3-1所示,它既可以显示单个信号波形,也可以同时显示多个信号波形,并且还提供实时任意缩放和图形测量等高级显示工具。它的坐标、网标和标注等设置都可以根据需要灵活定制。该控件显示时是以一次刷新方式进行的,数据输入基本形式是数据数组或簇,输入数组或簇中包含了所有需要显示的测量和格式化数据。图 3-2 事后记录波形控件图3-3为一些事后记录波形控件的一些典型的例子来说明该器件的应用。图 3-3 典型的Graph实例 先用一个在For循环里的随机数发生函数模拟测量结果,模拟的测量数

35、据在For循环的边框通道上形成一个数组,然后送到事后记录波形显示中进行显示,这是该控件最基本、也是最常用的用法。事后记录波形控件是一次性完成显示图形刷新的,所以其输入数据必须是完成一次显示所需的数据数组,而不能把测量结果一次一个的输入。虚拟仪器与传统仪器相比,最大的一个优点就在于VI功能及外观的软件可修改性。波形显示控件的外观可以由用户根据需要随意定制,其显示属性的改变有三种方法,一是通过选择其弹出式菜单里的命令来实现,二是可以运用该控件自带的控制模板,三是可以在程序中设置其属性节点值来实现,在此也就不多介绍了。而实时趋势图控件,与前面介绍的事后记录波形显示控件一样,它也可显示一个或多个的波形

36、,实时趋势图控件最适合用于实时测量中的参数监控,而波形显示控件设和用在事后数据分析。3.3 信号发生节点在此次的设计中,将用到很多的信号发生节点,如正弦波、三角波、方波、锯齿波、高斯白噪声、gamma 噪声、公式波形,这些节点都是用来产生来表示特定波形的一个数组,它们可以与其他节点一起产生更精确、更复杂的波形18。3.3.1 正弦波信号节点节点标图及其连接端口如图3-4所示。图 3-4 正弦波节点标图及其连接端口一般信号节点的输入输出关系见表3-1。表3-1 节点信号的输入输出关系表offset偏移Reset singal复位信号frequency频率amplitude幅度phase相位Err

37、or in错误输入Sampling info采样信息Signal out输出信号Error out错误输出 正弦波形细节是如果正弦波代表的序列生成Y,该VI模式根据下列方程。yi = amp × sin(phasei),for i = 0,1,2,n 1。当 amp = amplitude,n = samples的数值, phasei等于initial_phase + frequency × 360.0 × i/Fs(参考LabVIEW有关正弦波节点的帮助)如果重置信号是真实的,相套起步阶段的输入信号。如果重置信号是假的,该VI忽视阶段。该VI是可循环的,以至于它

38、就可以被用来模拟连续采集从一个正弦波函数发生器。如果输入控制信号是假的,随后重新调用这个VI产生输出正弦波形含有下n样品的正弦波。该VI记得相位和时间戳的电流波形,使用这个不断产生和时间戳的后续波形,只要复位信号输入的是假的。Offset是指直流偏移信号,缺省的话为0。Reset singal重置信号,如果这是真的话,重置阶段向相位控制和时间戳的值为零。缺省的话当做不成立。frequency是频率的波形为一个单位赫兹。默认的是10。Amplitude是振幅幅度的波形。振幅是也峰值电压。缺省值是1.0。Phase是相位,也就是初相。缺省值是0。如果该VI忽视阶段重置信号当做不成立。error i

39、n :在该VI运行之前描述错误环境。缺省值为 no error,如果一个错误已经发生,该VI在error out端返回错误代码。该VI仅在无错误时正常运行。 错误簇包含如下参数。status :缺省值为FALSE,发生错误时变为TRUE。code :错误代码,缺省值为0。source :在大多数情况下是产生错误的VI或函数的名称,缺省值为一个空串。error out :错误信息。如果 error in 指示一个错误,error out 包含同样的错误信息。否则,它描述该VI 引起的错误状态。status :缺省值为FALSE,发生错误时变为TRUE。code :错误代码,缺省值为0。sourc

40、e :在大多数情况下是产生错误的VI或函数的名称,缺省值为一个空串。图3-5为正弦波信号节点的实例图 3-5 正弦波信号节点实例3.3.2 三角波信号发生节点三角波节点标图及其端口连接图如3-6所示:图 3-6 三角波节点标图及其连接端口如果三角波代表的序列生成Y,该VI模式根据下列方程。yi = amp × tri(phasei),for i = 0,1, 2,n 1;当 amp = amplitude,n = number of samples (#s),and trip is:(2 × pmod/180.0) if 0 <=mod < 90.0or(2 &

41、#215; (1 pmod/180.0) if 90.0 <=pmod < 270.0or(2 × (pmod/180.0 2.0) if 270.0 <=pmod < 360.0where pmod = p modulo 360.0 and phasei is:initial_phase + frequency × 360.0 × i/Fs如果在initial_phase等于阶段重置信号是真实的,或是最后输出阶段如果重置信号是假的。(参考LabVIEW三角波节点的帮助)该VI是可循环的以致它可以被用来模拟连续采集从三角波函数发生器。如果输

42、入控制信号是假的,随后重新调用这个VI产生输出三角波的波形下n的样品含有三角波。该VI记得相位和时间戳的电流波形,使用这个不断产生和时间戳的后续波形,只要复位信号输入的是假的。Offset是指直流偏移信号,缺省的话为。Reset singal重置信号,如果这是真的话,重置阶段向相位控制和时间戳的值为零。缺省的话当做为假。frequency是频率的波形为一个单位赫兹。默认的是10。Amplitude是振幅幅度的波形。振幅是峰值电压。缺省值是1.0。Phase是相位,也就是初相。缺省值是0。如果该VI忽视阶段重置信号当做不成立。error in :在该VI运行之前描述错误环境。缺省值为 no er

43、ror,如果一个错误已经发生,该VI在error out端返回错误代码。该VI仅在无错误时正常运行。 错误簇包含如下参数。status :缺省值为FALSE,发生错误时变为TRUE。code :错误代码,缺省值为0。source :在大多数情况下是产生错误的VI或函数的名称,缺省值为一个空串。error out :错误信息。如果 error in 指示一个错误,error out 包含同样的错误信息。否则,它描述该VI 引起的错误状态。status :缺省值为FALSE,发生错误时变为TRUE。code :错误代码,缺省值为0。source :在大多数情况下是产生错误的VI或函数的名称,缺省值

44、为一个空串。图3-7为三角波信号节点再本次设计中的应用:图 3-7 三角波信号节点发生图3.3.3 方波信号发生节点方波信号发生节点标图及其端口连接图如3-3-5所示:图 3-8方波节点标图及其连接端口与正弦波和三角波相比,方波信号的发生节点的端口连接图多了一个duty cycle(%),也就是占空比,这也是这几种基本波形中方波信号特有的一个端口,是方波在一个周期内高低信号的时间比,在默认的情况下是50%的。该VI是可循环的以至于它就可以被用来模拟连续采集从一个方波函数发生器。如果输入控制信号是假的,随后重新调用这个VI产生输出方波波形的样品含有下n是方波。该VI记得相位和时间戳的电流波形,使

45、用这个不断产生和时间戳的后续波形,只要复位信号输入的是假的。如果方波代表的序列生成Y,该VI模式根据下列方程。yi = amp × square(phasei),for i = 0,1,2,n 1;where amp = amplitude,n = number of samples (#s),and squarep is;1.0 if 0 <=pmod < (0.01 × duty) × 360.0or1.0 if (0.01 × duty) × 360.0 <=pmod < 360.0where pmod = p m

46、odulo 360.0,duty = duty cycle in percent,and phasei is:initial_phase + frequency × 360.0 × i/Fswhere initial_phase = phase if reset signal is TRUE,or last output phase if reset signal is FALSE。(参考LabVIEW关于方波信号节点的帮助)offset:波形的直流偏移量,缺省值为0.0。数据类型DBLreset signal:将波形相位重置为相位控制值且将时间标志置为0。缺省值为FALS

47、E.signal type:产生的波形的类型,缺省值为正弦波。frequency :波形频率(单位 Hz),缺省值为10。amplitude :波形幅值,也称为峰值电压,缺省值为1.0。phase :波形的初始相位(单位 度)缺省值为0.0.error in :在该VI运行之前描述错误环境。缺省值为 no error,如果一个错误已经发生,该VI在error out端返回错误代码。该VI仅在无错误时正常运行。 错误簇包含如下参数。status :缺省值为FALSE,发生错误时变为TRUE。code :错误代码,缺省值为0。source :在大多数情况下是产生错误的VI或函数的名称,缺省值为一个

48、空串。sampling info :一个包括采样信息的簇。共有Fs和#s 两个参数。Fs :采样率,单位是样本数/秒,缺省值为1000。#s :波形的样本数,缺省值为1000。duty cycle (%):占空比,对方波信号是反映一个周期内高低电平所占的比例,缺省值为50%。signal out:信号输出端。phase out :波形的相位,单位:度。error out :错误信息。如果 error in 指示一个错误,error out 包含同样的错误信息。否则,它描述该VI 引起的错误状态。图3-9和图3-10为方波信号节点再本次设计中的应用:图 3-9 占空比为50%的方波节点信号发生图

49、图 3-10 占空比为30%的方波节点信号发生图3.3.4 锯齿波信号发生节点锯齿波信号发生节点标图及其端口连接图如3-11所示:图 3-11锯齿波节点标图及其连接端口和三角波、正弦波一样,他们的基本属性都是一样的,如果锯齿波代表的序列生成Y该VI模式根据下列方程。yi = amp × sawtooth(phasei), for i = 0, 1, 2, , n 1,where amp = amplitude, n = number of samples (#s), and sawtooth (phasei) is: (pmod/180.0) if 0 <=pmod <

50、180.0or(pmod/180.0 - 2.0) if 180.0 <=mod < 360.0where pmod = p modulo 360.0 and phasei is:initial_phase + frequency × 360.0 × i/Fswhere initial_phase = phase if reset signal is TRUE, or last output phase if reset signal is FALSE.该VI是可循环的以至于它可以被用来模拟连续采集从一个锯齿波函数发生器。如果输入控制信号是假的,随后重新调用这个

51、VI产生输出的锯齿波的波形下氮样品含有的锯齿波。该VI记得相位和时间戳的电流波形,使用这个不断产生和时间戳的后续波形,只要复位信号输入的是假的。(参考LabVIEW关于锯齿波信号发生节点的帮助)offset:波形的直流偏移量,缺省值为0.0。reset signal:将波形相位重置为相位控制值且将时间标志置为0。缺省值为FALSE。signal type:产生的波形的类型,缺省值为正弦波。frequency :波形频率(单位 Hz),缺省值为10。amplitude :波形幅值,也称为峰值电压,缺省值为1.0。phase :波形的初始相位(单位 度)缺省值为0.0。error in :在该VI

52、运行之前描述错误环境。缺省值为 no error. 如果一个错误已经发生,该VI在error out端返回错误代码。该VI仅在无错误时正常运行。 错误簇包含如下参数。status :缺省值为FALSE,发生错误时变为TRUE。code :错误代码,缺省值为0。source :在大多数情况下是产生错误的VI或函数的名称,缺省值为一个空串。sampling info :一个包括采样信息的簇。共有Fs和#s 两个参数。Fs :采样率,单位是样本数/秒,缺省值为1000。#s :波形的样本数,缺省值为1000。signal out:信号输出端。phase out :波形的相位,单位:度。error o

53、ut :错误信息。如果 error in 指示一个错误,error out 包含同样的错误信息。否则,它描述该VI 引起的错误状态。图3-12为方波信号节点再本次设计中的应用:图 3-12 锯齿波节点信号发生图3.3.5 高斯白噪声信号节点高斯白噪声信号发生节点标图及其端口连接图如3-13所示:图 3-13 高斯白噪声节点标图及其连接端口所谓高斯白噪声中的高斯是指概率分布是正态函数,而白噪声是指它的二阶矩不相关,一阶矩为常数,是指先后信号在时间上的相关性。这是考查一个信号的两个不同方面的问题。高斯白噪声:如果一个噪声,它的幅度分布服从高斯分布,而它的功率谱密度又是均匀分布的,则称它为高斯白噪声

54、。 热噪声和散粒噪声是高斯白噪声。 短波信道存在多径时延、多普勒频移和扩散、高斯白噪声干扰等复杂现象。为了测试短波通信设备的性能,通常需要进行大量的外场实验。相比之下,信道模拟器能够在实验室环境下进行类似的性能测试,而且测试费用少、可重复性强,可以缩短设备的研制周期。所以自行研制信道模拟器十分必要。而LabVIEW可以快速地产生能满足要求的高斯白噪声。和前面四种基本波形相比,高斯白噪声的端口有多不同,由于他的特性:它的幅度分布服从高斯分布,而它的功率谱密度又是均匀分布的。所以他没有幅度、频率之类的。standard deviation是标准偏差所产生的噪音。缺省值是1.0。seed 当>

55、 0,是用来补偿噪声样本。缺省的是- 1。如果seed为0,不补偿噪声发生器和恢复生产噪声样本作为延续了前噪声序列。sampling info :采样信息。图3-14 高斯白噪声信号发生图:图 3-14 高斯白噪声信号发生图3.3.6 gamma噪声信号gamma噪声信号发生节点标图及其端口连接图如3-15所示:图 3-15 gamma噪声节点标图及其连接端口reset signal:将波形相位重置为相位控制值且将时间标志置为0。缺省值为FALSE。Order:指定事件数量的订单的单位的意思是泊松过程。默认值是1。seed 当> 0,是用来补偿噪声样本。缺省的是1。如果seed为0,不补

56、偿噪声发生器和恢复生产噪声样本作为延续了前噪声序列。error in :在该VI运行之前描述错误环境。缺省值为 no error. 如果一个错误已经发生,该VI在error out端返回错误代码。该VI仅在无错误时正常运行。 错误簇包含如下参数。status :缺省值为FALSE,发生错误时变为TRUE。code :错误代码,缺省值为0。source :在大多数情况下是产生错误的VI或函数的名称,缺省值为一个空串。sampling info :一个包括采样信息的簇。共有Fs和#s 两个参数。Fs :采样率,单位是样本数/秒,缺省值为1000。#s :波形的样本数,缺省值为1000。error

57、out :错误信息。如果 error in 指示一个错误,error out 包含同样的错误信息。否则,它描述该VI 引起的错误状态。图3-16 gamma噪声信号发生图:图 3-16 gamma噪声信号发生图3.3.7 公式波形公式波形信号发生节点标图及其端口连接图如3-17所示:图 3-17 公式波形节点标图及其连接端口offset:波形的直流偏移量,缺省值为0.0。reset signal:将波形相位重置为相位控制值且将时间标志置为0。缺省值为FALSE。frequency :波形频率(单位 Hz),缺省值为10。amplitude :波形幅值,也称为峰值电压,缺省值为1.0。formula:是用来产生公式信号波形。缺省值是sin(w*t)*sin(2*pi(1)*10)。下列表中列出所有的定义的变量名称如表3-2所示。表3-2 formula变量含义f等于频率的输入值a等于幅度

温馨提示

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

评论

0/150

提交评论