基于LabVIEW虚拟示波器设计(文档)_第1页
基于LabVIEW虚拟示波器设计(文档)_第2页
基于LabVIEW虚拟示波器设计(文档)_第3页
基于LabVIEW虚拟示波器设计(文档)_第4页
基于LabVIEW虚拟示波器设计(文档)_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

PAGEPAGE34业设计论文设计题目:基于 LabVIEW虚拟示波器设计指导教师:设 计 者:摘 要虚拟仪器是现代计算机软硬件技术飞速发展的产物, 它正逐步取代传统的电子仪器, 是现代电工电子测量仪器的发展方向。 虚拟仪器主要由数据采集、 数据分析处理、数据输出与显示三部分模块组成。其软件开发平台有 LabView、VC++等。在此基础上, 利用美国 NI公司的虚拟仪器开发环境 LabVIEW设计了虚拟示波器,介绍虚拟示波器的实现过程。 该仪器是用基于图形化编程语言 LabVIEW8i编写的 ,本虚拟示波器涉及主要功能包括: 双通道信号输入、 触发控制、 通道控道 A或 B、及 等。测试结果表明本文设计的两通道数字示波器系统设计正确。关键词 :虚拟仪器 ;示波器 ;LabVIEWAbstractTheinstrumentisthemoderncomputersoftwareandhardwaretechnologyrapiddevelopmentproduct,itissubstitutingfortraditionalgraduallytheelectronicinstrumentation,isthemodernelectricianelectronicsurveyinginstrumentdevelopmentdirection.Thehypothesizedinstrumentmainlybythedataacquisition,dataanalysisprocessing,thedataoutputanddemonstratedthreepartsofmodulescompose.ItssoftwaredevelopmentplatformhasLabView,VC++andsoon.Inthisfoundation,hasdesignedthehypothesizedoscilloscopeusingAmericanNICorporation'shypothesizedinstrumentdevelopmentenvironmentintroductionoscilloscopeprocess.Thisinstrumentiswith,thisoscilloscopewhichcompilesbasedonpresenteinfiguresanddiagramsprogramminglanguageLabVIEW8iinvolvesthemainfunctiontoinclude:Doublechannelsignalinput,triggeringcontrol,channelcontrol,timebasecontrol,profiledemonstration,parameterfromsurveyandsoon.Thisoscilloscopedataacquisitionfunctionandtheordinaryoscilloscopearesame;Profiledemonstrationpattern:ChannelAorB,A+BandA-Bandsoon.Thetestresultindicated,thisarticledesignstwochanneldigitaloscilloscopesystemdesigniscorrect.Keyword:Virtualinstrument;Oscilloscope;LabVIEW录引 言 1第一章:虚拟仪器 7虚拟仪器概述 7虚拟仪器的特点 8虚拟仪器现状及其发展趋势 9虚拟仪器的发展及特点 9虚拟仪器的发展方向 10虚拟仪器的设计步骤 10第二章: LabVIEW概述 12什么叫 LabVIEW. 12LabVIEW软件的特点 14第三章 示波器设计 15本示波器功能 15主要功能模块 15波形显示模块 15示波器前面板设计 16示波器的后面板(程序设计) 17数据采集模块(模拟数据采集) 17自动扫描控制 23波形显示 24测量波形的各种参数 27手动 /自动程序 29总程序 30论 31后记 32参考文献 33引言随着计算机技术的发展, 传统仪器开始向计算机化的方向发展。 虚拟仪器90年代提出的新概念。虚拟仪器技术的提出与发展,标志着二十一世纪自动测试与电子测量仪器领域技术发展的一个重要方向。 所谓虚拟仪器, 就是在通用的计算机平台上定义和设计仪器的测试功能, 使用者操作这台计算机, 就像是在用一台专门设计的电子仪器。传统台式仪器是由仪器厂家设计并定义好功能的一个封闭结构,它有固定的输入 /输出接口和仪器操作面板,每种仪器实现一类特定的测量功能,并以确定的方式提供给用户。 从一般的仪器设计模型看, 一种仪器无非是由数据采集、 析处理、 人机交互和显示等几部分功能模块组成的整体。 因此我们可以设想在必要的数据采集硬件和通用计算机支持下, 通过软件设计实现仪器的全部功能, , 出优势。一方面,目前我国高档台式仪器如数字示波器、频谱分析仪、逻辑分析仪, 、 , ,器系统;另一方面,用户可以将一些先进的数字信号处理算法应用于虚拟仪器,, 的。 , 。 器技术目前在国外发展很快,以美国国家仪器公司( NI公司)为代表的一批厂商已经在市场上推出了基于虚拟仪器技术而设计的商品化仪器产品。 数字示波是在科学研究和工程设计中广泛应用的一种通用仪器。LabVIEW是 NI推出的虚拟仪器开发平台软件,它们能够以其直观简便的编程方式、 众多的源码级的设备驱动程序、 多种多样的分析和表达功能支持, 为用户快捷地构筑自己在实际生产中所需要的仪器系统创造了基础条件。 LabVIEW用图形化编程语言 --G、 、 , 间内掌握并应用到实践中去。特别是对于熟悉仪器结构和硬件电路的硬件工程师、现场工程技术人员及测试技术人员来说,编程就像设计电路图一样;因此,硬件工程师、 现场工程技术人员及测试技术人员们学习 LabVIEW驾轻就熟, 在短的时间内就能够学会并应用 LabVIEW。该仪器是用基于图形化编程语言LabVIEW8而编写的 ,主要功能包括:双通道信号输入、触发控制、通道控制、时基控制、 波形显示、 参数自测量等。 本虚拟仪器的数据采集的功能与普通示波道 A或B、A+B及A-B明 ,性 ,一章:虚拟仪器虚拟仪器概述虚拟仪器( virtual是基于计算机的仪器。计算机和仪器的密切结合是目前仪器发展的一个重要方向。 粗略地说这种结合有两种方式, 种是将计算机装入仪器, 其典型的例子就是所谓智能化的仪器。 随着计算机功能的日益强大以及其体积的日趋缩小, 这类仪器功能也越来越强大, 目前已经出现含嵌入式系统的仪器。另一种方式是将仪器装入计算机。以通用的计算机硬件及操作系统为依托,实现各种仪器功能。 虚拟仪器主要是指这种方式。下面的框图反映了常见的虚拟仪器方案。被被测对象信号调理数据采集卡数据处理虚拟仪器面板虚拟仪器的主要特点有:尽可能采用了通用的硬件,各种仪器的差异主要是软件。可充分发挥计算机的能力,有强大的数据处理功能,可以创造出功能更强的仪器。用户可以根据自己的需要定义和制造各种仪器。虚拟仪器实际上是一个按照仪器需求组织的数据采集系统。 虚拟仪器的研中涉及的基础理论主要有计算机数据采集和数字信号处理。目前在这一领域内,使用较为广泛的计算机语言是美国 NI公司的 LabVIEW。虚拟仪器的起源可以追朔到 20世纪 70年代,那时计算机测控系统在国防航天等领域已经有了相当的发展。 PC机出现以后,仪器级的计算机化成为可能,甚至在 Microsoft公司的 Windows诞生之前, NI公司已经在 Macintosh计算机上推出了 LabVIEW2.0以前的版本。对虚拟仪器和 LabVIEW长期、系统、有效的研究开发使得该公司成为业界公认的权威。普通的 PC有一些不可避免的弱点。用它构建的虚拟仪器或计算机测试系统性能不可能太高。目前作为计算机化仪器的一个重要发展方向是制定了VXI准,这是一种插卡式的仪器。每一种仪器是一个插卡,为了保证仪器的性能,又, 其面板仍然用虚拟的方式。 的 再与计算机相连,就组成了。 , 的 。 是 或仪器的特点虚拟仪器与传统仪器相比,有以下 6个特点。导致许多识别与操作错误。 虚拟仪器与之不同, 它可以通过在几个分面板上的操作来实现比较复杂的功能。 这样, 在每个分面板上就可以实现功能操作的单纯化面板布置的简捷化, 从而提高操作的正确性与便捷性。 同时, 虚拟仪器面板上的显示元件和操作元件的种类与形式不受“标准件”和“加工工艺”的限制,它们, , 设计仪器面板2)在通用硬件平台确定后,由软件取代传统仪器中的硬件来完成仪器的功能。仪器的功能是用户根据需要由软件来定义的,而不是事先由厂家定义好的。仪器性能的改进和功能扩展只需更新相关软件设计,而不需购买新的仪器。研制周期较传统仪器大为缩短。虚拟仪器开放、灵活,可与计算机同步发展,与网络及其它周边设备互联。决定虚拟仪器具有传统仪器不可能具备的特点的根本原因在于“虚拟仪器的关键是软件” 。虚拟仪器在工程应用和社会经济效益方面具有突出的优势。 目前, 我国高些仪器加工工艺复杂, 对制造水平要求高, 生产突破有困难, 而采用虚拟仪器术后, 就可以通过只采购必要的通用仪器硬件来设计自己的高性能价格比的仪器系统。仪器现状及其发展趋势仪器的发展及特点仪器的发展过程。 , 这类指针式仪表借助指针来显示最终结果。。 当 纪 , 。 纪 以。 , 并以舒数字方式输出最终结果,适用于快速响应和较高准确度的测量。。 , 。 , , , , 为, , 核, 。 、 的, , ,。 展纪元。国际上从 1988年开始陆续有虚拟仪器产品面市。当时有 5家制造商推出了30种产品,此后,虚拟仪器产品成倍增加。仪器的发展方向随着计算机、通信、微电子技术的不断发展,以及网络时代的到来和信息化要求的不断提高, 网络技术应用到虚拟仪器领域中是虚拟仪器发展的大趋势。 国内网络化虚拟仪器的概念目前还没有一个比较明确的提法, 也没有一个被测量界广泛接受的定义。 其一般特征是将虚拟仪器、 外部设备、 试点以及数据可、 。 以 , ,。 独, , 仪器的设计步骤在LabVIEW平台下, 一个 VI有两部分组成: 前面板和流程图 (或称后面板) 前面板的功能等效于传统测试仪器的前面板; 流程图的功能等效于传统测试仪器与前面板相联系的硬件电路。 在设计时, 要考虑硬件部分。 虚拟仪器的设计方法包括 I/O接口仪器驱动程序的设计、 仪器面板的设计与仪器功能算法的设计三部分。1) 确定程序设计的总体方案在编制虚拟仪器程序前, 必须首先对程序进行总体设计分析: 一是要确定序要实现的功能、 要显示的图形对象、 要输出的报表; 二是确定程序的层次关系,如主程序和子程序之间的关系等、虚拟仪器程序与硬件的连接关系等。2) I/O接口仪器驱动程序的设计根据仪器的功能要求,确定仪器的接口标准。如果仪器设备具有 RS-232串的 串行接口连接即可;如果仪器是 GPIB接口, 则需要额外配备一块 GPIB-488接口板, 建立计算机与仪设备之间的通信渠道; 如果使用计算机来控制 VXI总线设备, 则也需要配备一GPIB接口卡,通过 GPIB总线与 VXI总线、 VXI主机箱零槽模块通信,零槽模块的GPIB-VXI翻译器将 GPIB命令, 计算机。I/O接口仪器驱动程序是控制硬件设备的驱动程序,是连接主控计算机与仪器设备的纽带。 如果没有设备驱动程序,则必须针对I/O接口仪器设备编写驱动程序。(3) 确定虚拟仪器程序前面板仪器前面板的设计指在虚拟仪器开发平台上,利用各类子摸板图标创建用户界面, 即在前面板上布置实现所需功能的显示对象, 这些对象包括开关旋钮控制、 相量图、 频谱图显示等, 前面板布置好这些对象后, 工程技术人员通过鼠标键盘就可像操作传统仪器一样地操作虚拟仪器。(4) 构建图形化流程图在 LabVIEW开发环境中,后台流程图与前面板控制显示对象一一对应,开发人员的任务是通过连接不同的功能函数模块使数据流从输入对象经过处理传送到输出对象。与传统的文本式程序设计一样, LabVIEW也有控制流程图功能执行部分,包括 Sequence、CaseStatement、For、Whileloop结构,这些结构被描述成图形化的边界结构,开发人员不必注意传统设计所需的语法细节,只需直接将它们连接起来就可完成数据传递。 在编制大型复杂的虚拟仪器应用程序时, 由于所用模块很多, 这时必须考虑程序的层次结构, 以通过灵活编子程序、采用更为简单高效的计算原理等方式来实现。(5) 调试和优化程序和传统程序一样,在编制虚拟仪器程序时,需要不断对程序进行调试分析,LabVIEW程序调试功能十分强大易用,可以灵活设定程序断点,进行带数据探针的单步运行,加亮执行程序进行数据流追踪判断。同时, LabVIEW是目前唯一带有编辑器的图形化编程环境, 他可根据用户编制程序自动产生最优化代码, 加快程序运行速度。 另外, 用户还可以利用内置的绘图器对程序代码部分进行分析和优化。从上面五个方面可以看出, 在计算机和仪器等资源确定的情况下, 有不同的处理算法,就有不同的虚拟仪器。软件在虚拟仪器的重要作用由此可见一斑。LabVIEWLabVIEWLabVIEWNI源码级设备驱动分析和表达功支持为用户快捷地构筑自己在实际生产中所需要系统创造了基础条。LabVIEW采用图形化语言--G语言产生序框图形易学易用特别适合硬工学习和使用,可在很短对于熟悉结构和硬电路硬工技术人员及测试技术人员来说就像设计电路图一样;因此硬工师、现场工技术人员及测试技术人员LabVIEW驾轻就熟在很短时间内就LabVIEW。也不必去记忆那眼花缭乱文本序代码。LabVIEW这么容易学习和使用不LabVIEW功十分有限呢?不。CbW具有各种各样、功强大函数库包括数据采集、GPIB、串行控制、数据分析、数据显示及数据存储甚至还有目前十分热门网络功LabVIEW也有完善仿真、调试工具如设置断点、单步等。LabVIEW动态连续跟踪方可察序中数据及变化情况比语言环境更LabVIEW与计算机语言相比有一个特别重要不同点计算机语言都采用基于文本语言产生代码行LabVIEW采用图形化语言--G语言。LabVIEW序又称为表现形和功类似于实际;但bW序很容易改变设置和功。因此bW特别适用于实验室、多品种小批量生产线等需要经常改变和设备参数和功场合及对信号进行分析研究、传输等场合。总之由于LabVIEW为用户提供明、、易用图形语言化成为菜单提示选择功并且用线条将各种b5RS232、VXI总线仪及GPIB。预见LabVIEW这些他无法优势已经成为该领域一朵奇葩!最终引业革命。我经常听到甚至争论经缺乏流所具特性但是另一面,一些详细阐述他们调查最近一个非正对一个团队中者调查一致这个团队中足被归为通类而且事正是这种在它。被提到次数最多足是常递归和递归数类型及面向对象结但是这些都是建立通应严障碍错误问题尽管问题而且试回答它会导致错误向。对我说这是就座地?当然你在汽车里就座但是果那是你利它所做全部那么你失去拥它得到主途一个好被作通吗?或者更好是:被创建通应吗?这个问题表述在什么被视为通这个面仍然是同样模糊但是它没强调显得严谨争论即是是一种?一些人并认为它是一种因为它是基于文本而且它是顺化更为奇怪是关于什么被看作是一种这个问题那些具计算机科学背景人持最为狭隘观点但是经过改正后问题最为一个面是它包容性转换到正确向换一种表达即最初问题地暗示通在某种是一个更大问题或者是测量和自动化一个父集然而子集在他向。 通常, 测量和自动化的程序必须处理所有与通用程序一样的问题, 如数据件 I/O络 I/O户 I/O理 I/O实时性约束和硬件配置。 它们也可以具有一些最为苛刻的用户界面要求。 测量和自动化程序处理了一个通用程序所处理问题的父集。如果工具 A和工具 B可被用于一定的任务集,但是工具 B具有更多的功能可使它益于完成额外的任务,哪一种工具是事实上更为通用的呢?这正是我们关于 。 适于测量和自动化应用程序的能力不是来自于它的基本编程能力被某种方式所出 “LabVIEW能够被用来创建通用的应用程序吗? ”这个问题而不是 “LabVIEW是一种通用编程语言吗? ”。我们不希望通过把 仅视为一种编程语言而限制了它的范围或它将来的发展。件的特点LabVIEW软件的特点如下:工程师的语言:提供丰富的数据采集、分析及存储的库函数:提供传统的程序调试手段,如设置断点、单步运行,同时提供独具特色的执行工具, 使程序动画式运行, 利于设计者观察到程序运行的细节, 使程序的调试和开发更为便捷;32位的编仪器编译生成 32位的编译程序,保证用户数据采集、测试和测量方案的高速执行;囊括了 PCI,GPIB,PXVXRS-232/485,USB等各种仪器通信总线标准的所有功能函数, 使得不懂得总线标准的开发者也能够驱动不同总线标准接口设备与仪器。AB、A+BA-B等;电压参数测量,时间/频W有输主要模块数据采集、形显、参数测量等模块。其结构如下图触发控制触发控制形显示控制数 据数 据采集处理电压参数测时基控制时间参数测注释由于条件有限,没有数据采集卡,我在数据采集时,采用了W、角发生、锯齿发生,过这些的来进行测量。形显模块软件提供了种形显模式:B*XYA-B前面板设计“”框、处时。设置观察出,真实由直接向户,是控制软件核心我设计这部,主要考虑美观简洁,户能上各种钮开关等控控制虚工根据传统控功能,利LabVIEW中控制,别在设计上放实际控控水平与垂直增益控触发方控及开关LabVIEW编辑窗口,点击鼠标右,控制,GraphmWaveformGraph,在上点击鼠标右,对其进行属性设置,如根据与度变化,利工具中文字工具,对()(度)坐标刻度重新设置。1:3-1后面板(程序设计)数据采集模块(模拟数据采集)波、锯齿通过输入进行测量。标与端口图方三角器。samples:成总点N。amplitude:成幅值。f:成字频率。phasein:成初始相位单位度。resetphase:默认值TRUE。当TRUE时phasein值作初E则以上次后eut为此次初始相位(默认值TRU显然此时产是连续光滑。右出(后出的含义如下:sinewave:组名组内存放所成据。phaseout:resetphaseTRUE时resetphaseerror则LabVIEW产生介绍怎样产准频率以及怎样创建模拟。使析库中VI产各种类型。产应主要有:当无法获得实际时(Q板卡来获得实际或者受限制无法访问实际功能可以产模拟测试程序。产D/A转换在LabVIEW中提供了制作提供了便。以Generation中基本(BasicFunctioni)例其如下:图 3-2基本函数发生器其功能是建立一个输出波形,该波形类型有:正弦波、三角波、锯齿波和方个 VI会记住产生的前一波形的时间标志并且由此点开始使时间标志连续增长。它的输入参数有波形类型、样本数、起始相位、波形频率(单位: 参数说明:offset:波形的直流偏移量,缺省值为 0.0。数据类型 DBLresetsignal:将波形相位重置为相位控制值且将时间标志置为 0。缺省值为signaltype:产生的波形的类型,缺省值为正弦波。y位 )为 0。amplitude:波形幅值,也称为峰值电压,缺省值为 1.0phase:波形的初始相位(单位 度)缺省值为 0.0.in该 VI运行之前描述错误环境。缺省值为 no如果一个错误已经发生,该 VI在errorout端返回错误代码。该 VI仅在无错误时正常运行。 误簇包含如下参数。status:缺省值为 为 TRUE。为 0。source:在大多数情况下是产生错误的 VI或函数的名称,缺省值为一个空串。samplinginfo:一个包括采样信息的簇。共有 Fs和#sFs:采样率,单位是样本数 /秒,缺省值为 1000。#s:波形的样本数,缺省值为 1000。dutye(%):占空比,对方波信号是反映一个周期内高低电平所占的比例缺省值为 50%。signalout:信号输出端phaseout:波形的相位,单位:度。errorouterrorinerroroutVIVI3-3VIA、、设备扫率、扫、极性触发源、模式、斜坡、电平号分别成OSCdaq这个子程序里里面自成波形过外面变量来对波形进行控3-4子 的建立VSVI标和联接器VIVIFunctions»SelectaVI….可以选择要VIVI主要工作定义它标和联接器。VI在前面板和流窗口右上角都显示了一个默认标。启动图标辑器方法鼠标右键单击面板窗口右上角默认标在弹出菜单选择Edit。下显示了标辑器窗口左边各种工具设计像素辑区辑区右侧一个方框显示了一个实际大小标辑器具体使细节参阅有关资料。图 3-5 图标编辑器窗口联接器是 VI数据的输入输出接口。 如果用面板控制对象或者显示对象从子VI中输出或者输入数据, 那么这些对象都需要在联接器面板中有一个连线端子。您可以通过选择 VI的端子数并为每个端子指定对应的前面板对象以定义联接器。择 w r。联接器图标会取代面板窗口右上角的图标。 LabVIEW自动选择的端子连接模式是控制对象的端子位于联接器窗口的左边, 显示对象的端子位于联接器窗口右边。选择的端子数取决于前面板中控制对象和显示对象的个数。联接器中的各个矩形表示各个端子所在的区域, 可以用它们从 VI中输入者输出数据。 如果必要, 也可以选择另外一种端子连接模式。 方法是在图标上单击鼠标右键单出快捷菜单,选择 Show r,再次弹出快捷菜单,选Patterns。本子程序主要用到程序结构有 While循环、 分支结构、 数簇、 数组等。 While循环模块位置为 Functions->ExecutionControl的 While循环样子。循环右下角是条件端子, 用于在每次循环结束后判断循环是否继续执行。 具体循环继续条件有两种: pfue和uefue,条件端子上弹出的快捷菜单指定, 也可以使用操作工具在端子上单击鼠标, 以切换是 pfu母 i子 (IterationTerminal),可以在每次循环中提供当前循环次数的计数值, i的初始值为 之外的其他空白区域都可以放置程序代码。( euu于 uuus子模版上。 分支结构左边框上有一个输入端子, 该端子中心有一个问号, 称为选择器端子(SelectorTerminal);上边框上有分支选择器标签( CaseSelectorLabel)分支结构有一个或多个子框图,每一个子框图都是一个执行分支,每一个执行分支都有自己的分支选择器标签。 当执行分支时只有与接入选择器端子相匹或者枚举类此选择器类无符号长整分支结构堆叠在一起左边和右边在堆叠起来多个中进单击分支选择器右边弹出所有已定义列表,利用这个列表在多个之间实现快速跳CCDefault分支选DefaultCase后面代码都不会而于LabVIEWCase结构,要么在选择器中列出所有能情况,要么必须给出一种默认情况。3-5数据采集中OSCdaq程序自动扫描控制主要利用软件编程来采集到数据进扫描率和扫描数控制程序如下3-6:图3-6自动扫描控制dte6811。形显示图形显示对于虚拟仪器面板设计是一个重要的内容。LabVIEW为此提供了丰富的功能。。,LabVIEW在这方面所做的工作是非常值得借鉴的。LabVIEWGraphChart是两个基本的概念。一般说Chart是将数如得到的数在一中,实、逐点地显示Graph则是对已数进行事数需要组织成所需的图形显示出如GraphLabVIEWGraph:ChartChartGraphv**XY*Intensity**l*Due*Dc*Duve*t限Graph现要远为丰富但这是牺牲为代价各种都提了相应Graph为例介绍为它所这些都包含在快速菜单Visible项粗细、颜色及据点状等。来对进行操作区域放大和缩小等。趣据。刻例来设置坐标刻据格、型普通坐标

温馨提示

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

评论

0/150

提交评论