第一章虚拟仪器概论1.1虚拟仪器概述1.2LabVIEW概述1.3LabVIEW的初步操作参考教材:1、LabVIEW7.1测试技术与仪器应用(机械工业出版社)2、LabVIEW7.1编程与虚拟仪器设计(清华大学出版社)候国屏等编写。讲课方式:课堂讲授+实验+专家讲座考试方式:平时成绩+实验成绩+课程设计报告第一章虚拟仪器概论1.1虚拟仪器概述1.2LabVIEW概述1.3LabVIEW的初步操作1.1虚拟仪器概述虚拟仪器(virtualinstrumention)是基于计算机的仪器。计算机和仪器的密切结合是目前仪器发展的一个重要方向。计算机与仪器结合1、把计算机放入仪器中(智能仪器)2、把仪器装入到计算机中(虚拟仪器)以通用的计算机硬件及操作系统为依托,实现各种仪器功能一、定义二、虚拟仪器体系结构被测对象信号调理数据采集卡虚拟仪器面板数据处理尽可能采用了通用的硬件,各种仪器的差异主要是软件。可充分发挥计算机的能力,有强大的数据处理功能,可以创造出功能更强的仪器。用户可以根据自己的需要定义和制造各种仪器。用户可以根据需要升级软件和标准的板卡来升级客户仪器,就像升级计算机一样三、虚拟仪器的主要特点利用LabVIEW构建自动化测量系统四、虚拟仪器的应用工业自动化CUG&NI虚拟仪器联合试验室旨在应用最新的虚拟仪器技术加强仪器科学在地球探测与信息技术领域的应用。基于虚拟仪器的智能仪器技术将拓宽测控技术与仪器专业的应用范围和加强中国地质大学测控技术与仪器专业人才培养。挂牌将于12月中旬进行。我们的目标!一、LabVIEW是什么?LabVIEW(LaboratoryVirtualinstrumentEngineering)是一种图形化的编程语言,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。LabVIEW集成了与满足GPIB、VXI、RS-232、和RS-485、USB2.0、PCI、PXI、PCMCIA协议的硬件及数据采集卡通讯的全部功能。它还内置了便于应用TCP/IP、ActiveX等软件标准的库函数。这是一个功能强大且灵活的软件。1.2LabVIEW概述图形化的程序语言,又称为“G”语言。使用这种语言编程时,基本上不写程序代码,取而代之的是流程图或流程图。它尽可能利用了技术人员、科学家、工程师所熟悉的术语、图标和概念,因此,LabVIEW是一个面向最终用户的工具。它可以增强你构建自己的科学和工程系统的能力,提供了实现仪器编程和数据采集系统的便捷途径。二、LabVIEW的运行机制所有的LabVIEW应用程序,即虚拟仪器(VI),它包括前面板(frontpanel)、流程图(blockdiagram)以及图标/连结器(icon/connector)三部分。前面板控制对象(输入)显示对象(输出)图1-1随机信号发生器的前面板上图所示是一个随机信号发生和显示的简单VI是它的前面板,上面有一个显示对象,以曲线的方式显示了所产生的一系列随机数。还有一个控制对象——开关,可以启动和停止工作。前面板是图形用户界面,也就是VI的虚拟仪器面板,这一界面上有用户输入和显示输出两类对象,具体表现有开关、旋钮、图形以及其他控制(control)和显示对象(indicator)。显然,并非简单地画两个控件就可以运行,在前面板后还有一个与之配套的流程图。函数:随机数发生器结构:循环与前面板控件对应的连线端子与前面板控件对应的连线端子图1-2随机信号发生器的流程图流程图提供VI的图形化源程序。在流程图中对VI编程,以控制和操纵定义在前面板上的输入和输出功能。以看到流程图中包括了前面板上的开关和随机数显示器的连线端子,还有一个随机数发生器的函数及程序的循环结构。随机数发生器通过连线将产生的随机信号送到显示控件,为了使它持续工作下去,设置了一个WhileLoop循环,由开关控制这一循环的结束。如果将VI与标准仪器相比较,那么前面板上的东西就是仪器面板上的东西,而流程图上的东西相当于仪器箱内的东西。在许多情况下,使用VI可以仿真标准仪器,不仅在屏幕上出现一个惟妙惟肖的标准仪器面板,而且其功能也与标准仪器相差无几。三、LabVIEW的操作模板包括工具(Tools)模板、控制(Controls)模板和函数(Functions)模板。工具模板(ToolsPalette)该模板提供了各种用于创建、修改和调试VI程序的工具。如果该模板没有出现,则可以在Windows菜单下选择ShowToolsPalette命令以显示该模板。当从模板内选择了任一种工具后,鼠标箭头就会变成该工具相应的形状。当从Windows菜单下选择了ShowHelpWindow功能后,把工具模板内选定的任一种工具光标放在流程图程序的子程序(SubVI)或图标上,就会显示相应的帮助信息。图标名称功能1OperateValue(操作值)用于操作前面板的控制和显示。使用它向数字或字符串控制中键入值时,工具会变成标签工具2Position/Size/Select(选择)用于选择、移动或改变对象的大小。当它用于改变对象的连框大小时,会变成相应形状。3EditText(编辑文本)用于输入标签文本或者创建自由标签。当创建自由标签时它会变成相应形状。4ConnectWire(连线)用于在流程图程序上连接对象。如果联机帮助的窗口被打开时,把该工具放在任一条连线上,就会显示相应的数据类型。5ObjectShortcutMenu(对象菜单)用鼠标左键可以弹出对象的弹出式菜单。控制模板(ControlPalette)该模板用来给前面板设置各种所需的输出显示对象和输入控制对象。每个图标代表一类子模板。可以用Windows菜单的ShowControlsPalette功能打开它,也可以在前面板的空白处,点击鼠标右键,以弹出控制模板。Numeric(数值量),数值的控制。包含数字式、指针式显示表盘及各种输入框。Boolean(布尔量),逻辑数值的控制和显示。包含各种布尔开关、按钮以及指示灯等。String&Path(字符串和路径)。字符串和路径的控制和显示。UserControls(用户控制),用户自定义的控制和显示。Numeric(数值量),数值的显示。包含数字式、指针式显示表盘及各种输入框。开关量灯的显示,有两种显示方式。Array&Cluster(数组和簇)。数组和簇的控制和显示。List&Table(列表和表格),列表和表格的控制和显示Graph(图形显示),显示数据结果的趋势图和曲线图。功能模板(FunctionsPalette)功能模板是创建流程图程序的工具。该模板上的每一个顶层图标都表示一个子模板。若功能模板不出现,则可以用Windows菜单下的ShowFunctionsPalette功能打开它,也可以在流程图程序窗口的空白处点击鼠标右键以弹出功能模板。RunButtonContinuousRunButtonAbortExecutionPause/ContinueButtonTextSettingsAlignObjectsDistributeObjectsReorderResizefrontpanelobjectsExecutionHighlightingButtonStepIntoButtonStepOverButtonStepOutButtonAdditionalButtonsontheDiagramToolbar状态模板(StatusToolbar)1.3LabVIEW的初步操作我们通过例子来说明如何创建一个VIControlTerminalsBlockDiagramWindowFrontPanelWindowIndicatorTerminalsCreatingaVI1.4.2程序调试技术1.找出语法错误:如果一个VI程序存在语法错误,则在面板工具条上的运行按钮会变成一个折断的箭头,表示程序不能被执行。这时该按钮被称作错误列表。点击它,则LabVIEW弹出错误清单窗口,点击其中任何一个所列出的错误,选用Find功能,则出错的对象或端口就会变成高亮。2.设置执行程序高亮:点击这个按钮使它变成高亮形式,再点击运行按钮,VI程序就以较慢的速度运行,没有被执行的代码灰色显示,执行后的代码高亮显示,并显示数据流线上的数据值。这样,你就可以根据数据的流动状态跟踪程序的执行。1.4.3子VI的建立子VI(SubVI)相当于普通编程语言中的子程序,也就是被其他的VI调用的VI。可以将任何一个定义了图标和联接器的VI作为另一个VI的子程序。在流程图中打开Functions»SelectaVI….,就可以选择要调用的子VI。构造一个子VI主要的工作就是定义它的图标和联接器。联接器是VI数据的输入输出接口。如果用面板控制对象或者显示对象从子VI中输出或者输入数据,那么这些对象都需要在联接器面板中有一个连线端子。您可以通过选择VI的端子数并为每个端子指定对应的前面板对象以定义联接器。1.5图表(chart&graph)入门图表(chart)是一种周期性更新数据的数字式图形显示对象。可以在Controls»Graph模板中找到三种图表:波形图和强度图和3D图形(后者不常用)右图显示了快速菜单中Advanced»UpdateMode子菜单中提供的三种图表显示类型——Stripchart(条状图),Scopechart(示波器图)和Sweepchart(扫描图)。默认模式是条状图。举例:该程序中利用一个循环产生连续的sin(i)函数值,并及时地在chart图表上显示出来示波器模式是一个返回式的显示器,与示波器类似。每接受一个新数据时,它就把新数据绘制在原有数据的右侧。当数据曲线到达显示区的右边缘时,VI会删除全部图形,从左边缘重新开始绘制曲线。示波器模式显然要快于条状图模式,因为它不会因为滚动产生溢出。扫描模式更接近于示波器模式,但是当数据曲线到达显示区的右边时,不会变成空白,而是会出现一个移动的垂线,标记新数据的开始,并当VI添加新数据时穿过整个显示区。带状模式这是一个坐标式显示器,与纸带式图表记录器相似。每接受一个新数据,新数据就将显示在右侧,而原有数据移动到左侧THEEND!!利用LabVIEW,可产生独立运行的可执行文件,它是一个真正的32位编译器。像许多重要的软件一样,LabVIEW提供了Windows、UNIX、Linux、MAC、SunSolarrisRealTime的多种版本。