I基于LabVIEW的多功能虚拟信号发生器设计摘要随着微型计算机和软件技术的发展,虚拟仪器在智能化程序、处理能力、性能价格比、可操作性等方面与传统仪器相比都具有明显的技术优势,将虚拟仪器引入高校的实验教学不但可以提高测试效率和教学的质量,而且为降低实验仪器成本提供了有效的途径和方法。本文选用LabVIEW图形化编程语言为开发软件,主要开发虚拟实验仪器:虚拟信号发生器,同时提出了虚拟实验室的建设方案。基于专业虚拟仪器开发工具Labview,设计一虚拟函数信号发生器。该虚拟信号发生器能够产生正弦波、三角波、方波、锯齿波等波形,频率动态范围较宽且可微调。关键字:虚拟仪器labVIEW信号发器IIAbstrack:Alongwiththedevelopmentofthemicrocomputer,comparedwithtraditionalinstrument,thevirtualinstrumenthastheobvioustechnicaladvantageinknowledgeware,processingcapability,theratiobetweenfunctionandprice,andManeuverability.Theintroductionofthevirtualinstrumenttotheuniversitycannotonlyincreasetheefficiencyandqualityoftesting,teaching,butalsoprovidetheeffectivemethodtoreducethecostoftheexperimentinstrument.Inthispaper,selectedLabVIEWgraphicalprogramminglanguageforsoftwaredevelopment,mainlythedevelopmentofvirtualexperimentequipment,virtualsignalgenerator,virtuallaboratoryalsomadethebuildingprogram.AVirtualFunctionSignalGeneratorisdesignedBasedonLabview,TheVirtualFunctionSignalGeneratorcangenerateSinewave,trianglewave,squarewave,teethofasawwave...etc。Dynamicrangeoffrequencyiswideandcanregulateslightly。Keyword:VirtualInstrumentLabviewSignalGenerator1第1章引言1.1课题的提出在大学四年学习中,电子产品的操作与制作,软件工具的应用与功能的实现都是我们主要学习的内容。我的毕业论文的题目是用虚拟仪器实现波形发生器的功能。课题的研究是基于虚拟仪器的研究与开发学习而提出的。老师的辛苦用心就是希望我能多学一个软件多会一门技术,在以后工作中多一个特点。1.2课题的主要研究工作LabVIEW在实际生活中的广泛应用,其主要研究工作是学习LabVIEW的软件功能,了解虚拟仪器的设计方法,设计一个能产生三角波,矩形波,正弦波,且其幅值,频率可根据用户进行选择的虚拟波形发生器。1.3课题意义随着科学技术的发展,在测量领域中需要不断更新测量设备,以满足越来越高的测量要求。在我国,传统仪器技术还比较落后,目前有大批陈旧的测试仪器等待更新。这些仪器的测量精度和可靠性均低于国外,并且自动化程度较低。高档仪器基本上依靠国外进口,每年都消耗国家大量外汇。然而,花大量资金购买的仪器,可能我们只需要其中的一部分功能,同时有些其他应用的功能要求,该仪器却满足不了。这些情况无疑是大大浪费了投资。设想要是能将仪器稍微改动以实现更大的使用范围该多好。但是这对于传统仪器来说是非常困难的。虚拟仪器的出现,将彻底改变这种局面。利用计算机丰富的软硬件资源,用户可以随心所欲地根据自己的需求,设计自己的仪器系统,满足多种多样的应用需求。数字信号发生器是在科学研究和工程设计中广泛应用的一种通用仪器。目前高精度、具有数据存储能力的信号发生器,生产工艺复杂,价格昂贵。所以虚拟数字存储信号发生器的设计有一定的经济价值;虚拟信号发生器能充分发挥虚拟仪器结构2简单、功能丰富、价格低廉、能重复开发、可用户自定义的优势。设计的虚拟数字存储信号发生器,可同时显示、记录和存储多通道输入的波形,并且可以对波形进行数据分析和处理,具有一定的研究意义。3第2章虚拟信号发生器概况2.1信号发生器,虚拟仪器概述2.1.1信号发生器概述信号发生器是生产实践和科学研究中应用十分广泛的电子测量仪器。目前常用的模拟信号发生器,外型笨重,功能单一;数字信号发生器虽然有一定的功能扩展,但价格昂贵,维护升级成本高,短时间内难以普及应用。近年来,出现了一种基于计算机和软件的新型仪器——虚拟仪器。虚拟仪器以计算机为核心,功能由用户定义和设计,具有虚拟面板,其测试功能由测试软件实现。虚拟仪器的关键是用软件来实现硬件的功能,实现“软件即仪器”。在高等院校理工科教学中,实验教学是整个教学过程中的重要环节,特别是基础课、专业基础课的实验教学在本科教学中尤为重要,他对学生的专业知识起着有效的支撑作用。但是,近年来随着学生人数的增加、实验教学改革不断深入,原有实验室的设备和规模难以满足发展的需要。虚拟仪器的出现很好地解决了这些问题。虚拟仪器是以计算机为核心,功能由用户定义和设计,具有虚拟面板,其测试功能由测试软件实现。虚拟仪器的关键是用软件来实现硬件的功能,实现“软件即仪器”。本文应用虚拟仪器开发平台LabVIEW开发了一种多功能虚拟信号发生器,扩展了信号发生器的分析和计算能力,降低了仪器的价格,增强了仪器的通用性,实现了波形显示、存储、打印和读取以及多个测量参数自动显示、相位差自动计算等功能。2.1.2虚拟仪器基本概念所谓虚拟仪器,就是在以计算机为核心的硬件平台上,其功能由用户设计和定义,具有虚拟面板,其测试功能由测试软件实现的一种计算机仪器系统。虚拟仪器的实质是利用计算机显示器的显示功能来模拟传统仪器的控制面板,以多种形式表达输出检测结果;利用计算机强大的软件功能实现信号数据的运算、分析和处理;利用1/O接口设备完成信号的采集测量与调理,从而完成各种测试功能的一种计算机测试系统。使用者用鼠标或键盘操作虚拟面板,就如同使用一台专4用测量仪器一样。因此,虚拟仪器的出现,使测量仪器与计算机的界限模糊了.虚拟仪器的“虚拟”两字主要包含以下两方面的含义。虚拟仪器(virtualinstrumention)是基于计算机的仪器。计算机和仪器的密切结合是目前仪器发展的一个重要方向。粗略地说这种结合有两种方式,一种是将计算机装入仪器,其典型的例子就是所谓智能化的仪器。随着计算机功能的日益强大以及其体积的日趋缩小,这类仪器功能也越来越强大,目前已经出现含嵌入式系统的仪器。另一种方式是将仪器装入计算机。以通用的计算机硬件及操作系统为依托,实现各种仪器功能。虚拟仪器主要是指这种方式。下面的框图1-1反映了常见的虚拟仪器方案。图1-1虚拟仪器方案框图虚拟仪器的主要特点有:尽可能采用了通用的硬件,各种仪器的差异主要是软件。可充分发挥计算机的能力,有强大的数据处理功能,可以创造出功能更强的仪器。用户可以根据自己的需要定义和制造各种仪器。虚拟仪器实际上是一个按照仪器需求组织的数据采集系统。虚拟仪器的研究中涉及的基础理论主要有计算机数据采集和数字信号处理。目前在这一领域内,使用较为广泛的计算机语言是美国NI公司的LabVIEW。虚拟仪器的起源可以追朔到20世纪70年代,那时计算机测控系统在国防、航天等领域已经有了相当的发展。PC机出现以后,仪器级的计算机化成为可能,甚至在Microsoft公司的Windows诞生之前,NI公司已经在Macintosh计算机上推出了LabVIEW2.0以前的版本。对虚拟仪器和LabVIEW长期、系统、有效的研究开发使得该公司成为业界公认的权威。普通的PC有一些不可避免的弱点。用它构建的虚拟仪器或计算机测试系统性能不可能太高。目前作为计算机化仪器的一个重要发展方向是制定了VXI标准,这是一种插卡式的被测对象信号调理数据采集卡虚拟仪器面板数据处理5仪器。每一种仪器是一个插卡,为了保证仪器的性能,又采用了较多的硬件,但这些卡式仪器本身都没有面板,其面板仍然用虚拟的方式在计算机屏幕上出现。这些卡插入标准的VXI机箱,再与计算机相连,就组成了一个测试系统。VXI仪器价格昂贵,目前又推出了一种较为便宜的PXI标准仪器。(1)虚拟仪器的面板是虚拟的虚拟仪器面板上的各种“图标”与传统仪器面板上的各种“器件”所完成的功能是相同的:由各种开关、按钮、显示器等图标实现仪器电源的“通”、“断实现被测信号的“输入通道”、“放大倍数”等参数的设置,以及实现测量结果的“数值显示”、“波形显示”等。传统仪器面板上的器件都是“实物”,而且是由“手动”和“触摸”进行操作的:虚拟仪器前面板是外形与实物相像的“图标”,每个图标的“通’、“断”、“放大”等动作通过用户操作计算机鼠标或键盘来完成。因此,设计虚拟仪器前面板就是在前面板设计窗口中摆放所需的图标,然后对图标的属性进行设置。(2)虚拟仪器测量功能是通过对图形化软件流程图的编程来实现的虚拟仪器是在以PC为核心组成的硬件平台支持下,通过软件编程来实现仪器的功能。因为可以通过不同测试功能软件模块的组合来实现多种测试功能,所以,在硬件平台确定后,就有“软件就是仪器”的说法。这也体现了测试技术与计算机深层次的结合。虚拟仪器技术的实质是充分利用最新的计算机技术来实现和扩展传统仪器的功能。软件是虚拟仪器的关键,当硬件确定以后,就可以通过不同的软件实现不同的功能。用户可以根据自己的需要,设计自己的仪器系统,满足多种多样的应用要求。利用计算机丰富的软、硬件资源,可以大大突破传统仪器在数据的分析、处理、表达、传递、储存等方面的限制,达到传统仪器无法比拟的效果。它不仅可以用于电子测量、测试、分析、计量等领域,而且还可以用于进行设备的监控以及工业过程自动化。虚拟仪器还可以广泛应用于电力工程、物矿勘探、医疗、振动分析、声学分析、故障诊断及教学科研等多个方面。2.1.3虚拟仪器的特点LabVIEW是什么?LabVIEW(LaboratoryVirtualinstrumentEngineering)是一种图形化的编程语言,它广泛地被工业界、学术界和研究实验室所接受,视6为一个标准的数据采集和仪器控制软件。LabVIEW集成了与满足GPIB、VXI、RS-232和RS-485协议的硬件及数据采集卡通讯的全部功能。它还内置了便于应用TCP/IP、ActiveX等软件标准的库函数。这是一个功能强大且灵活的软件。利用它可以方便地建立自己的虚拟仪器,其图形化的界面使得编程及使用过程都生动有趣。图形化的程序语言,又称为“G”语言。使用这种语言编程时,基本上不写程序代码,取而代之的是流程图或流程图。它尽可能利用了技术人员、科学家、工程师所熟悉的术语、图标和概念,因此,LabVIEW是一个面向最终用户的工具。它可以增强你构建自己的科学和工程系统的能力,提供了实现仪器编程和数据采集系统的便捷途径。使用它进行原理研究、设计、测试并实现仪器系统时,可以大大提高工作效率。利用LabVIEW,可产生独立运行的可执行文件,它是一个真正的32位编译器。像许多重要的软件一样,LabVIEW提供了Windows、UNIX、Linux、Macintosh的多种版本。与传统仪器相比虚拟仪器主要有以下优点:(1)传统仪器的面板只有一个,其上布置着种类繁多的显示与操作元件,易于导致许多识别与操作错误。虚拟仪器与之不同,它可以通过在几个分面板上的操作来实现比较复杂的功能。这样,在每个分面板上就可以实现功能操作的单纯化与面板布置的简捷化,从而提高操作的正确