《精密测试技术课程讲义优秀PPT.ppt》由会员分享,可在线阅读,更多相关《精密测试技术课程讲义优秀PPT.ppt(74页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、虚拟仪器技术及虚拟仪器技术及LabVIEW LabVIEW 简介简介书目什么是虚拟仪器LABVIEW概述LABVIEW模板简介创建VI程序LABVIEW结构LABVIEW 数据类型图表及图形字符串和文件I/O数据采集什么是虚拟仪器什么是虚拟仪器(VI,Virtual Instruments)(VI,Virtual Instruments)(1)(1)由测试硬件完成信号的采集与限制,而将信号分析与由测试硬件完成信号的采集与限制,而将信号分析与处理、结果表达与输出让计算机来完成,这就是虚拟仪器。处理、结果表达与输出让计算机来完成,这就是虚拟仪器。(2)Computer Based Instrume
2、nts (2)Computer Based Instruments (3)(3)用户自定义的仪器用户自定义的仪器数据采集数据采集和和限制限制分析分析Signal ProcessingDigital FilteringStatisticsArray Operations显示显示Graphical User InterfaceHardcopy OutputFile I/O信号信号Plug-In DAQ BoardsIEEE 488(GPIB)RS-232 虚拟仪器的硬件结构体系虚拟仪器的硬件结构体系 (1)PCI、ISA 接口总线(2)PXI(PCI eXtension for Instrumen
3、tation)接口总线(3)GPIB(General Purpose Interface Bus)接口总线 串口总线(4)VXI(VMEbus eXtension for Instrumentation)接口总线 虚拟仪器的软件开发工具虚拟仪器的软件开发工具 (1)通用编程语言:C、C+、Visual C+、Visual Basic(2)虚拟仪器专用编程语言:NI公司的LabVIEW、Labwindows/CVI和HP公司的HPVEE 或者分为:(1)文本式编程语言:如C、Visual C、Visual Basic、Labwindows/CVI等。(2)图形化编程语言:如LabVIEW、HPV
4、EE等。什么是LabVIEW?n NI LabVIEW 是行业领先的用于开发设计、限制和测试系统的软件工具,用于设计、限制和测试的图形化开发平台。自1986 年问世以来,世界范围内的工程师和科学家在整个产品设计周期内都依靠NI LabVIEW图形化开发环境来开发项目,从而获得更高的质量,更短进入市场的时间,和更高的工程和生产效率。n LabVIEW的图形化数据流语言很自然地吸引了全世界的工程师和科学家将其作为一种更加直观的方式用于自动测量和限制系统。结合了内置I/O、交互式用户界面控件和指示器的数据流语言使得LabVIEW 成为工程师和科学家的志向选择。LabVIEW 图形化开发平台为自动化测
5、量和限制应用图形化开发平台为自动化测量和限制应用中整个产品生命周期都供应了高效和优良的性能。中整个产品生命周期都供应了高效和优良的性能。LabVIEW 图形化开发平台供应:图形化开发平台供应:专为工程师和科学家设计的直观的图形化编程语言。专为工程师和科学家设计的直观的图形化编程语言。交互式、特定应用的开发工具和库。交互式、特定应用的开发工具和库。数以百计的内置库,用于数以百计的内置库,用于I/O、限制、分析和数据显示。、限制、分析和数据显示。发布至台式、便携式、工业和嵌入式计算目标。发布至台式、便携式、工业和嵌入式计算目标。内置的采集、分析和显示采集 开放的LabVIEW环境使得与任何测量硬件
6、之间的连接变得更为简洁,并且供应了交互式助手、代码自动生成,以及与数以千计设备的连接来轻松地收集数据。因为LabVIEW供应了对几乎全部测量设备的连接,所以您可以轻松地将最新的LabVIEW 应用程序结合至现有的系统,而不会损失您的硬件投资。无论您的硬件要求如何,LabVIEW 都供应了一个接口以使得与您I/O 的连接变得更为轻松。利用LabVIEW LabVIEW 测量任何信号温度 电压 电阻张力 电流 脉冲振动 频率 周期声音 光强 数字信号分析 对于测量结果,你须要的不是未经处理的数据。强大的,易用的分析功能对你的软件应用是必需的。LabVIEW 拥有超过500 个内建函数,帮助你从采集
7、的数据中提取有效信息,分析测量结果和处理信号。频率分析、信号发生、数学运算、曲线拟和、插值等函数能够使你对数据进行有意义的统计和处理。LabVIEW 分析工具运用简洁,无需你去考虑困难的底层算法。超过15 个快速分析VI 通过交互式配置对话框使你能够马上预览分析结果,并很大程度降低了你在应用程序中执行。测量分析的困难度 曲线拟合和插值 概率和统计 快速傅立叶变换和频率分析 时域和频域分析 信号发生 数字信号处理 数学运算显示 数据的显示包含了多种功能范围:形象化、生成报表和数据管理。LabVIEW 包含了简洁创建的形象化的工具,使你的数据显示出吸引力,其中包括图表和图形工具,内建的2D和3D
8、显示工具。你可以干脆配置显示的属性,如颜色,字体大小,图表类型等,并可在运行时旋转,缩放和摇移你的图像。另外,你还可以通过LabVIEW 在因特网上观看和控制你的VI。对于报表生成,NI供应多种选择,包括文档生成工具,HTML报表,可编程生成的微软Word、Excel 报表和NI DIAdem交互式的报表生成。文档处理工具 内建用户界面设计对象 交互式报表生成 微软Word 和Excel 报表 数据库连接 开放式语言(.NET、ActiveX、远程观看和限制 DLLs、OPC)LabVIEW LabVIEW 用在何处?自动化测试和测量平台 近30 年来,NI 革新了工程师进行测试和测量的方式。
9、利用PC 和商用技术,虚拟仪器技术提高了效率并且降低了自动化测试和测量应用程序的成本,这是通过易于集成的软件(如LabVIEW)和用于PXI、PCI、USB、Ethernet 的模块化测量和限制硬件来实现的。通常的应用 生产测试 便携式场地测试 验证/环境测试 RF 和通信测试 机械/结构测试 机台测试 实时牢靠性测试 图像采集 数据采集工业测量和限制平台 工程师常常将LabVIEW 用于要求苛刻的工业应用,例如需要高级I/O,包括高速模拟信号采集;用于诸如振动监控、限制和机器视觉之类的高级处理应用;以及与工业硬件的通信,包括OPC 设备和第三方PLC 以及企业级数据库。您可以无缝地将内置于L
10、abVIEW的NI可编程自动限制器(PAC)集成至现有的系统,从而达到附加的测量和限制功能。通常的应用 集成的测试和限制 机器状况监控 机器自动化 分布式监控和限制 机器视觉 功率监控嵌入式设计和原型设计平台 工程师将LabVIEW 用于高效的设计应用、仿真,以及仿真数据与真实世界测量之间的比较。通过将LabVIEW 和测量工具集成至附加的设计和仿真工具,您可以更早地在设计过程中轻松地将真实世界的测试工具与仿真模型进行比较。这样就可以更早地在设计环节暴露缺陷,从而可以实现更少的设计反复和更高质量的产品。通常的应用 嵌入式系统设计和测试 电子电路设计 限制设计 机械设计 数字滤波器设计 算法设计
11、VI的构成 LabVIEW的程序称之为虚拟仪器,简称VIs,因为所设计出来的程序在其外观以及操控上都与真实的仪器很类似;一个VI可分为三个部份:人机界面-前置面版(Front Panel)图形程序区(Block Diagram)工具面版-图像(Icon)与连结器(Connector)File文档菜单New VINewOpenCloseClose AllSave Save AsSave AllSave with OptionsRevertPage SetupPrintPrint WindowVI PropertiesRecently Opened Files Exit创建新的VI打开对话框选择要
12、创建的文件类型打开现有的VI关闭启动的窗口关闭所有窗口保存当前 VI将当前 VI另存为新名字将VI的备份另存为新名字定制保存恢复VI到上次保存的版本编辑打印机设置打印组件的选项打印窗口板访问属性对话框快速打开最近访问过的档退出Edit编辑菜单 UndoRedoCutCopePasteClearFindShow Search ResultsCustomize ControlScale Object With PanelSet Tabbing OrderImport Picture from FileRemove Broken WiresCreate SubVIRun-Time Menu撤销刚刚完
13、成的操作恢复被撤销的操作消除选中的对象并将其放置在剪贴板上复制选中的对象并将其放置在剪贴板上将剪贴板备份内容置入启动窗口中删除选中的对象查找VI、其它对象和文本显示查找结果并访问列表中的每项修改当前选择的前面板控件对象选中的前面板对象与窗口同比例缩放设置前面板对象顺序将图形文件导入LabVIEW剪贴板删除所有错误连线将选中的框图对象转换为SubVI为当前VI创建用户运行时菜单Operate操作菜单 RunStopSuspend when CalledPrint at CompletionLog at CompletionData Logging Make Current Values Defa
14、ultReinitialize All To DefaultChange to Run Mode执行VI停止执行VI调用VI时,暂停执行打印VI前面板将前面板数据记录写入文件显示数据记录选项设置当前值作为控件和指示器的默认值将所有的控件和指示器设置为默认值在运行与编辑模式之间切换Tools工具菜单 Measurement&Automation ExploreInstrumentation Data Acquisition VI Revision HistoryUser NameEdit VI LibraryInternet Toolkit Web Publishing ToolAdvanced
15、 Options配置仪器和数据采集硬件访问仪器驱动程序网访问DAQ通道浏览器和DAQ方案向导编制当前VI的修订记录设置和改变LabVIEW用户名编辑当前VI库的内容或创建新VI访问Internet工具包访问Web发布工具VI访问批量编译、VI矩阵及其它特性定制LabVIEW应用的外观和特性Browse阅读菜单 Show VI HierarchyThis VIs Callers This VIs SubVIs Unopened SubVIs Unopened Type Defs Breakpoints 访问VI层次窗口访问所有调用当前SubVI的VI列表 访问当前VI的所有SubVI列表访问当前
16、中所有未打开SubVI列表访问当前VI中所有未打开类型定义的列表搜索并显示当前VI断点Windows窗口菜单 Show DiagramShow Controls PaletteShow Tools PaletteShow ClipboardShow Error ListTile Left and RightTile Up and DownFull Size在面板和框图窗口间切换显示控件选项板显示工具选项板显示剪贴板的内容显示错误对话框并排显示前面板和框图上下显示前面板和框图最大化活动窗口表示列出所有打开的前面板和框图窗口LabVIEW基本演示例:LABVIEW模板简介n概述n工具模板(Tool
17、s Palette)n限制模板(Controls Palette)n功能模板(Functions Palette)LabVIEW模板学习要点n窗口顶部工具栏包括:运行、字体选择、排列调整和叠放次窗口顶部工具栏包括:运行、字体选择、排列调整和叠放次序等操作按钮;序等操作按钮;n工具模板供应了编程运用的创建、修改和调试工具模板供应了编程运用的创建、修改和调试VIVI工具,在构工具,在构建和编辑建和编辑VIVI时应首先确定选择了正确的工具;时应首先确定选择了正确的工具;n限制模板服务于前面板,用于添加输入限制和输出显示。每限制模板服务于前面板,用于添加输入限制和输出显示。每个图标代表一个子模板。常用
18、的有:数值、布尔值、字符串、个图标代表一个子模板。常用的有:数值、布尔值、字符串、数组和群、列表、图文环、图形信号、输入输出和修饰等子数组和群、列表、图文环、图形信号、输入输出和修饰等子模板;模板;n功能模板服务于框图程序,每个图标代表一个子模板。常用功能模板服务于框图程序,每个图标代表一个子模板。常用的有:结构、数值运算、布尔逻辑、比较运算、字符串运算、的有:结构、数值运算、布尔逻辑、比较运算、字符串运算、数组和群、时间、文件、输入数组和群、时间、文件、输入/输出等子模板。输出等子模板。窗口顶部工具栏窗口顶部工具栏n包括:n运行按钮、连续执行按钮、停止按钮、暂停接着按钮,字体环。n排列调整环
19、,间隙描述环,位置次序调整环。框图程序窗口工具栏 n高亮度执行按钮,在是否选择高亮度模式间切换,执行程序时可以在框图程序中视察到数据流淌。n单步通过按钮,进入单步模式时,程序单步通过一个节点并停在下一节点上,同时它不停地闪烁,表示当前节点准备执行。n单步进入节点按钮,再次单击此按钮,程序单步进入循环、子VI等节点。通过单步进入节点,可以单步执行节点内的程序。n单步退出节点按钮,再次单击此按钮,程序单步退出循环、子等节点。通过单步退出节点,可完成单步通过节点功能,并进到下一节点。n警告指示器,当程序存在潜在问题时,就会出现这个警告指示,但这并不因此而引起不能执行。工具模板工具模板(ToolsPa
20、lette)n操作工具n选择(位置)工具n标签工具n连线工具n对象弹出菜单工具n平移工具n断点工具n探针工具n颜色提取工具n颜色工具限制模板限制模板(ControlsPalette)n数值子模板:包含数值的限制和显示。n布尔值子模块:逻辑数值的限制和显示。n字符串子模板:ASCII码字符串和路径的限制和显示。n数组和群子模板:复合型数据类型的限制和显示。n列表子模板:各类列表的限制和显示。n图形子模板:显示数据结果的趋势图和曲线图。n图文环(Ring):限制和显示菜单环和文字列表栏、图像列表栏的选型。限制模板限制模板(ControlsPalette)n信号的输入输出子模板。n路径和参考名(Re
21、fnum)子模板:文件路径和各种标识的限制和显示。n老版本子模板,列举老版本中的显示限制件。n对话框子模板:用于输入对话框的显示限制。n修饰子模板:用于给前面板进行装饰的各种图形对象。n控件容器库子模板:用于操作OLE、ActiveX等功能。n调用存储在文件中的限制和显示的接口。n用户自定义的限制和显示。n结构子模板:包括程控结构吩咐,例如循环限制等,以及全局变量和局部变量。n数值运算子模板:包括各种常用的数值运算符,如“”以及各种常见的数值表达式,如+1运算;还包括数制转换、三角函数、对数、复数等运算,以及各种数值常数。n布尔逻辑子模板:包括各种逻辑运算符以及布尔常数。n字符串运算子模板:包
22、含各种字符串操作函数、数值与字符串之间的转换函数,以及字符(串)常数等。n数组子模板:包括数组运算函数、数组转换函数,以及常数数组等。功能模板功能模板(FunctionsPalette)功能模板功能模板(FunctionsPalette)n簇子模板。包括簇的处理函数,以及簇常数等。n比较子模板:包括各种比较运算函数,如大于、小于、等于。n 时间和对话框子模板:包括对话框窗口、时间和出错处理函数等。n文件输入/输出子模板:包括处理文件 I/O的程序和函数。n“选择VI子程序”子模板:可以选择一个VI程序作为子程序(SubVI)插入当前程序中。创建创建VIVI程序程序n建立虚拟仪器就是依据功能目标
23、创建对应的仪器面板和框图程序,须要了解限制、功能模板上不同图标的用途;n仪器面板设计重在限制和对话,框图程序重在实现正确的相互关系;n驾驭虚拟仪器编辑技术,娴熟运用工具模板的各种工具,是编程和调试VI的关键;n框图程序由节点、端点、图框和连线四种元素构成,组合出相互的逻辑关系;n学习子VI的建立和调用,这在建立一个高质量的VI时特别必要。虚拟仪器的编辑虚拟仪器的编辑n选择对象。把选择对象。把 Positioning tool Positioning tool(位置工具(位置工具)放在放在准备选择的对象上,按住鼠标左键,该对象的轮廓准备选择的对象上,按住鼠标左键,该对象的轮廓边上出现流淌的虚线,
24、表示对象被选中。假如要选边上出现流淌的虚线,表示对象被选中。假如要选择一个以上的对象,按住择一个以上的对象,按住ShiftShift键不放,然后用鼠键不放,然后用鼠标单击每一个想要选择的对象。也可以用位置工具,标单击每一个想要选择的对象。也可以用位置工具,在窗口空白处按住鼠标左键拖出一个虚线的矩形框,在窗口空白处按住鼠标左键拖出一个虚线的矩形框,把想要选择的对象都包含在其中,这些对象即被选把想要选择的对象都包含在其中,这些对象即被选中。中。n移动对象。把位置工具放在对象上,按住鼠标左键移动对象。把位置工具放在对象上,按住鼠标左键不放,拖动鼠标,可以将对象转移到窗口中的随意不放,拖动鼠标,可以将
25、对象转移到窗口中的随意位置上。位置上。n删除对象。选中对象,然后按删除对象。选中对象,然后按DeleteDelete键键(或选择或选择n EditClear EditClear选项选项),即可删除该对象。,即可删除该对象。虚拟仪器的编辑虚拟仪器的编辑n复制对象。先选中对象复制对象。先选中对象(鼠标左键按下不放鼠标左键按下不放),同时按,同时按CtrlCtrl键,然后移动鼠标把对象复制到键,然后移动鼠标把对象复制到随意位置上,也可以用随意位置上,也可以用EditEdit菜单中的菜单中的copycopy和和PastePaste来复制对象。来复制对象。n选择和删除连线。把位置工具移到线段上,单选择和
26、删除连线。把位置工具移到线段上,单击鼠标左键,即选中线段击鼠标左键,即选中线段(假如有数段线段在假如有数段线段在交汇处相交,则单击数下鼠标,即选中该数段交汇处相交,则单击数下鼠标,即选中该数段线段线段);按;按DeleteDelete键,即删除该线段。键,即删除该线段。n连线的伸缩性。通过位置工具,可以把单个或连线的伸缩性。通过位置工具,可以把单个或一组对象移动到新的位置,而连线跟着伸缩。一组对象移动到新的位置,而连线跟着伸缩。虚拟仪器的编辑虚拟仪器的编辑n不良连线。不良连线用虚线表示。例如,当源数不良连线。不良连线用虚线表示。例如,当源数据与目标数据类型不匹配时,会出现虚线据与目标数据类型不
27、匹配时,会出现虚线(不良不良连线连线)。要删除一条不良连线,用位置工具单击。要删除一条不良连线,用位置工具单击不良连线后按不良连线后按DeleteDelete键。假如要删除框图程序中键。假如要删除框图程序中全部的不良连线,可以选择全部的不良连线,可以选择EditRemove Bad EditRemove Bad Wires(Wires(移去不良连线移去不良连线)()(或按或按Ctrl+BCtrl+B键键)。n变更文本的字体、风格和尺寸。用标签工具选择变更文本的字体、风格和尺寸。用标签工具选择文本,通过工具栏中的文本,通过工具栏中的Font ringFont ring可以变更标签可以变更标签框中
28、任何文本的字体和尺寸。框中任何文本的字体和尺寸。n变更对象尺寸。用位置工具把光标移到对象的四变更对象尺寸。用位置工具把光标移到对象的四角处,此时会出角形图示,拖动它便可以变更对角处,此时会出角形图示,拖动它便可以变更对象的尺寸。象的尺寸。n变更颜色。从工具模板中选择颜色工具,并在正变更颜色。从工具模板中选择颜色工具,并在正方形框上单击鼠标,弹出调色板。选择一种颜色,方形框上单击鼠标,弹出调色板。选择一种颜色,然后单击对象,便可以变更对象的颜色。留意颜然后单击对象,便可以变更对象的颜色。留意颜色工具中上下两个正方形框分别代表对象的前景色工具中上下两个正方形框分别代表对象的前景色和背景色,调色板上
29、的色和背景色,调色板上的 T T标记,表示透亮无色。标记,表示透亮无色。框图程序的构成元素框图程序的构成元素 框图程序由节点、端点、图框和连线四种元素构成。LabVIEW有二种节点类型函数节点和子VI节点。函数节点是LabVIEW编译好供运用的。子VI节点是LabVIEW或用户的图形语言形式。框图程序的构成元素框图程序的构成元素n端点是只有一路输入/输出,且方向固定的节点。nLabVIEW有三类端点前面板对象端点、全局与局部变量端点和常量端点。n前面板对象端点是数据在框图程序部分和前面板之间传输的接口。n常量端点在VI程序框图中恒久只能作为数据流源点。框图程序的构成元素框图程序的构成元素图框是
30、LabVIEW实现程序结构限制吩咐的图形表示。如循环限制、条件分支限制和依次限制等。连线是端口间的数据通道。数据单向流淌,不同的线型代表不同的数据类型,从源端口向一个或多个目的端口流淌。子子VIVI的建立和运用的建立和运用n子VI(SubVI)就是被其他的 VI调用的VI。n可以将任何一个定义了图标和联接器的 VI作为另一个 VI的子程序。n构造一个子VI主要的工作就是定义它的图标和联接器。n在其他的 VI中调用子程序VI的过程就是将定义了图标放入该VI的程序框图,并在主程序中对子VI联接器进行外部连线。图标编辑器的窗口n可以用窗口左边的各种工具设计像素编辑区中的图标形态。编辑区右侧的一个方框
31、中显示了一个实际大小的图标。n联接器是 VI 数据的输入输出接口。n通过选择 VI的端子数并为每个端子指定对应的前面板对象以定义联接器。程序结构程序结构 循环结构循环结构 1.While 1.While 循环循环While While 循环可以反复执行循环体的程序,直至到达循环可以反复执行循环体的程序,直至到达某个边界条件。它类似于一般编程语言中的某个边界条件。它类似于一般编程语言中的 Do Do 循环和循环和 Repeat-Until Repeat-Until 循环。循环。While While 循环循环的框图是一个大小可变的方框,用于执行框中的框图是一个大小可变的方框,用于执行框中的程序,
32、直到条件端子接收到的布尔值为的程序,直到条件端子接收到的布尔值为 FALSEFALSE。该循环有如下特点:该循环有如下特点:计数从计数从0 0起先(起先(i=0i=0)。)。先执行循环体,而后先执行循环体,而后i+1i+1,假如循环只执行一次,那,假如循环只执行一次,那么循环输出值么循环输出值i=0i=0。循环至少要运行一次。循环至少要运行一次。例:用 While 循环和图表获得数 据,并实时显示 创建一个可以产生并在图表中显示随机数的VI。前面板有一个限制旋钮可在0到10秒之间调整循环时间,还有一个开关可以中止VI的运行。学习怎样变更开关的动作属性,以便不用每次运行VI时都要打开开关。2.移
33、位寄存器(Shift Register)移位寄存器可以将数据从一个循环周期传递到另外一个周期。在程序设计中,常常要用到它创建一个移位寄存器的方法是,用鼠标右键单击循环的左边或者右边,在快捷菜单中选择 Add Shift Register。如下图所示。移位寄存器在流程图上用在循环边框上相应的一对端子来表示。右边的端子中存储了一个周期完成后的数据,这些数据在这个周期完成之后将被转移到左边的端子,赋给下一个周期。移位寄存器可以转移各种类型的数据数值、布尔数、数组、字符串等等。它会自动适应与它连接的第一个对象的数据类型。下图表示了它的工作过程可以令移位寄存器记忆前面的多个周期的数值。这个功能对于计算数
34、据均值特别有用。还可以创建其他的端子访问从前的周期的数据,方法是用鼠标右键单击左边或者右边的端子,在快捷菜单中选择Add Element。例如,假如某个移位寄存器左边的端口含有三个元素,那么就可以访问前三个周期的数据。3.For循环For循环用于将某段程序执行指定次数。和While 循环一样,它不会马上出现在流程图中,而是出现一个小的图标,而后您可以修改它的大小和位置。具体的方法是,先单击全部端子的左上方,然后按下鼠标,拖曳出一个包含全部端子的矩形。释放鼠标时就创建了一个指定大小和位置的For循环。For循环将把它的框图中的程序执行指定的次数,For循环具有下面这两个端子:N:计数端子(输入端
35、子)用于指定循环执行的次数。I:周期端子(输出端子)含有循环已经执行的次数。例:用For循环和移位寄存器计算一组随机数的最大值。分支结构 分支结构:Case Case结构含有两个或者更多的子程序(Case),执行那一个取决于与选择端子或者选择对象的外部接口相连接的某个整数、布尔数、字符串或者标识的值。必需选择一个默认的Case以处理超出范围的数值,或者干脆列出全部可能的输入数值。Case结构见下图,各个子程序占有各自的流程框,在其上沿中心有相应的子程序标识:Ture、False或、。按钮用来变更当前显示的子程序(各子程序是重叠放在屏幕同一位置上的)。子程序标识按钮条件端子依次结构和公式节点依次
36、结构和公式节点依次结构(依次结构(Sequence Structure)在代码式的传统编程语言中,默认的状况是,在代码式的传统编程语言中,默认的状况是,程序语句依据排列依次执行,但程序语句依据排列依次执行,但LabVIEW中不中不同,它是一种图形化的数据流式编程语言。在同,它是一种图形化的数据流式编程语言。在下图中,假设有下图中,假设有A、B、C、D个节点,其数个节点,其数据流向如右图所示。依据数据流式语言的约定,据流向如右图所示。依据数据流式语言的约定,任何一个节点只有在全部的输入数据有效时才任何一个节点只有在全部的输入数据有效时才会执行,所以图中,当且仅当会执行,所以图中,当且仅当A、B、
37、C个节个节点执行完,使得点执行完,使得D节点的个输入数据都到达节点的个输入数据都到达D节点后,节点后,D节点才执行。但是你要留意,这节点才执行。但是你要留意,这里并没有规定里并没有规定A、B、C个节点的执行依次。个节点的执行依次。在在LabVIEW中这种状况下,中这种状况下,A、B、C的执行的执行依次是不确定的,假如你须要对它们规定一个依次是不确定的,假如你须要对它们规定一个确定的依次,那就须要确定的依次,那就须要“依次结构依次结构”。ADCB公式节点(Formula Node)公式节点是一个大小可变的方框,可以利用它干脆在流程图中输入公式。从FunctionsStructures中选择公式节
38、点就可以把它放到流程图中。当某个等式有很多变量或者特别困难时,这个功能就特别有用。例如等式:y=x2+x+1运用公式节点可以表示为:利用公式节点可以干脆输入一个或者多个困难的公式,而不用创建流程图的很多子程序。数据类型:数组、簇和波形 数组是同类型元素的集合。一个数组可以是一维或者多维,假如必要,每维最多可有2311个元素。可以通过数组索引访问其中的每个元素。索引的范围是0到n 1,其中n是数组中元素的个数。图所显示的是由数值构成的一维数组。留意第一个元素的索引号为0,其次个是1,依此类推。数组的元素可以是数据、字符串等,但全部元素的数据类型必需一样。n簇(Cluster)是另一种数据类型,它
39、的元素可以是不同类型的数据。它类似于C语言中的stuct。运用簇可以把分布在流程图中各个位置的数据元素组合起来,这样可以削减连线的拥挤程度。削减子VI的连接端子的数量。n波形(Waveform)可以理解为一种簇的变形,它不能算是一种有普遍意义的数据类型,但特别好用。创建数组一般说来,创建一个数组有两件事要做,首先要建一个数组的“壳”(shell),然后在这个壳中置入数组元素(数或字符串等)。假如须要用一个数组作为程序的数据源,可以选择FunctionsArrayArray Constant,将它放置在流程图中。然后再在数组框中放置数值常量、布尔数还是字符串常量。下图显示了在数组框放入字符串常量
40、数组的例子。左边是一个数组壳,中间的图上已经置入了字符串元素,右边的图反映了数组的第个元素为:”ABC”,后两个元素均为空。创建簇限制和显示 在前面板上放置一个簇壳(Cluster shell)就创建了一个簇。然后你可以将前面板上的任何对象放在簇中。例如数组,你也可以干脆从Control 工具板上干脆拖取对象堆放到簇中。一个簇中的对象必需全部是Control或全是Indicator,不能在同一个簇中组合Control与Indicator。一个簇将是Control或Indicator,取决于其内的第一个对象的状态。假如须要可以运用工具重置簇的大小。下图所示是一个含个Control的簇。假如你要求
41、簇严格地符合簇内对象的大小,可在簇的边界上弹出快速菜单选择自动定义大小。Waveform数据类型 在数据采集和信号分析中常常要遇到波形数据,Waveform数据类型,使得波形的描述更加简洁。Waveform数据类型包含了波形的数据(Y)、起始时刻(t0)和步长X,运用Waveform 模板的Build Waveform 函数可以建立一个波形。很多用于数据采集和波形分析的VI和函数的缺省状态都接受或返回Waveform数据类型。当你将一个Waveform数据类型连接到Waveform Graph或Chart时,会自动画出相应的曲线。有关这一数据类型的函数或VI在 Functions Wavefo
42、rm和Analyze之中。图表及图形图表及图形 图形显示对于虚拟仪器面板设计是一个重要的内容在LabVIEW的图形显示功能中Graph和Chart是两个基本的概念。一般说来Chart是将数据源(例如采集得到的数据)在某一坐标系中,实时、逐点地显示出来,它可以反映被测物理量的变更趋势,而Graph则是对已采集数据进行事后处理的结果。它先将被采集数据存放在一个数组之中,然后依据须要组织成所需的图形显示出来。它的缺点是没有实时显示,但是它的表现形式要丰富得多。例如采集了一个波形后,经处理可以显示出其频谱图。Graph控件各种图形都供应了相应的控件,以Graph为例介绍。全部这些控件都包含在图形快速菜
43、单的Visible Items选项下。曲线图例可用来设置曲线的各种属性,包括线型(实线、虚线、点划线等)、线粗细、颜色以及数据点的形态等。图形模板可用来对曲线进行操作,包括移动、对感爱好的区域放大和缩小等。光标图例可用来设置光标、移动光标,帮助你用光标干脆从曲线上读取感爱好的数据。刻度图例用来设置坐标刻度的数据格式、类型(一般坐标或对数坐标),坐标轴名称以及刻度栅格的颜色等。Chart控件 Chart的数据并没有事先存在一个数组中,它是实时显示的,为了能够看到从前的数据,Chart 控件内部含有一个显示缓冲器,其中保留了一些历史数据。这个缓冲器依据先进先出的原则管理,其最大容量是1024个数据
44、点。例:Chart和Graph的比较 显示的运行结果是一样的。但实现方法和过程不同。在流程图中可以看出,Chart产生在循环内,每得到一个数据点,就马上显示一个。而Graph在循环之外,40个数都产生之后,跳出循环,然后一次显示出整个数据曲线。从运行过程可以清晰地看到这一点。字符串和文件I/O 字符串字符串是ASCII字符的集合。犹如其他语言一样,LabVIEW也供应了各种处理字符串的功能.创建字符串限制对象和显示对象可以在ControlsString&Table 中看到右边所显示字符串限制对象和显示对象。还可以运用操作工具或者标签工具输入或者变更字符串限制对象中的文本。用移位工具拖曳字符串限
45、制对象和显示对象的边角可以增大它们的面积。文件的输入文件的输入/输出(输出(I/OI/O)文件文件I/OI/O功能函数是一组功能强功能函数是一组功能强大、伸缩性强的文件处理工具。它们大、伸缩性强的文件处理工具。它们不仅可以读写数据,还可以移动、重不仅可以读写数据,还可以移动、重命名文件与书目。创建电子表格格式命名文件与书目。创建电子表格格式的、由可读的的、由可读的ASCIIASCII文本组成的文件,文本组成的文件,以及为了提高读写速度和压缩率接受以及为了提高读写速度和压缩率接受二进制的格式写入数据。二进制的格式写入数据。可以接受下面三种文件格式存储或可以接受下面三种文件格式存储或者获得数据者获
46、得数据:ASCII:ASCII字节流字节流,数据记录数据记录文件文件,二进制字节流。二进制字节流。文件文件 I/O I/O 功能函数功能函数 大多数的文件I/O操作都包括三个基本的步骤:打开一个已有的文件或者新建一个文件;对文件进行读写;关闭文件。LabVIEW在Functions File I/O中供应了很多有用的工具 VI。这些工具VI可以把错误检查和错误处理等功能与文件I/O功能函数结合起来。以下个功能从左到右对应于上面个图标。Write To Spreadsheet File VI用于将由单精度数值组成的一维或者二维数组转换成文本字符串,再将它写入一个新建文件或者已有文件。该VI先打开
47、或者新建文件,之后再关闭文件。它可以用于创建能够被大多数电子表格软件读取的文本文件。Read From Spreadsheet File VI用于从某个文件的特定位置起先读取指定个数的行或者列内容,再将数据转换成二维、单精度数组。该VI先打开文件,之后再关闭文件。它可以用于读取用文本格式存储的电子表格文件。Write Characters To File VI用于将一个字符串写入一个新建文件或者已有文件。该VI打开这个文件、写入数据,再关闭文件。Read Characters From File VI用于从某个文件的特定位置起先读取指定个数的字符。该VI先打开文件,之后再关闭文件。Read L
48、ines From File VI用于从某个文件的特定位置起先读取指定个数的行内容。该VI先打开文件,之后再关闭文件。数据采集 数据采集结构 上图表示了数据采集的结构。在数据采集之前,程序将对DAQ板卡初始化,板卡上和内存中的Buffer是数据采集存储的中间环节。须要留意的两个问题是:是否运用Buffer?是否运用外触发启动、停止或同步一个操作。缓冲(Buffers)这里的缓冲指的是PC内存的一个区域(不是DAQ卡上的FIFO缓冲),它用来临时存放数据。下列状况须要运用Buffer I/O:须要采集或产生很多样本,其速率超过了实际显示、存储到硬件,或实时分析的速度。须要连续采集或产生AC数据(
49、10样本秒),并且要同时分析或显示某些数据。采样周期必需精确、匀整地通过数据样本。触发(Triggering)触发涉及初始化、终止或同步DAQ事务的任何方法。触发器通常是一个数字或模拟信号,其状态可确定动作的发生。下列状况运用软件触发:用户须要对全部DAQ操作有明确的限制,并且事务定时不须要特别精确。下列状况运用硬件触发:DAQ事务定时须要特别精确。用户须要削减软件开支。DAQ事务须要与外部装置同步。简洁 Analog I/O 这是LabVIEW供应的一组标准的、简洁易用的DAQ VI。Analog Input从左到右,个VI的功能为:从指定通道获得一个样本。从由通道字符串规定的一组通道每通道
50、获得一个样本。这些样本返回到一个样本数组,依次由通道号确定。按指定的采样率由一个通道得到一个波形(一组覆盖一个周期的样本),这些样本返回到一个wareform 数组。从由通道字符串规定的每个通道获得一个波形。这些样本返回到一个波形的维数组,依次由通道号和采样周期确定。通道数据的每个点占列,时间增量由行确定。Analog Output 从左到右,个VI的功能为:在指定输出通道设置一个规定电压。在指定输出通道设置一组规定电压。这些电压在输出通道始终保持恒定,直到其自身变更或装置复为位。在指定输出通道产生一个波形,波形的点(以电压为单位)是预先由波形数组供应的。更新速率(Update rate)规定