24LabVIEW图形化代码Word文件下载.docx

您所在的位置:网站首页 labview颜色代码 24LabVIEW图形化代码Word文件下载.docx

24LabVIEW图形化代码Word文件下载.docx

2023-05-08 00:46| 来源: 网络整理| 查看: 265

24LabVIEW图形化代码Word文件下载.docx

《24LabVIEW图形化代码Word文件下载.docx》由会员分享,可在线阅读,更多相关《24LabVIEW图形化代码Word文件下载.docx(10页珍藏版)》请在冰豆网上搜索。

24LabVIEW图形化代码Word文件下载.docx

但是在LabVIEW图形化语言中,节点所要表达的概念和内容又相当重要。

在图形化语言中,“节点”的概念意味着数据将从这里流入或流出。

在LabVIEW图形化语言中,“节点”包含在下图所示的“函数”选项板中。

归纳起来它共有四种类型:

图2.4.2.3-1函数选板a、内置函数节点b、内置VI节点c、ExpressVI节点d、结构节点。

节点相当于文本编程语言中的语句、函数和子程序。

 这些高级语言的程序设计方式都有一个共同的特点,就是基于文本代码来编写程序(即便是那些可视化的编程语言)。

能够采用这种方进行程序设计的人通常被称为:

程序员或软件工程师。

2.4.1.4 图形化编程语言前面我们曾经谈到过,人类在解决、处理复杂问题时,往往采用的是抽象处理的方法,比如:

计算机语言从机器语言抽象处理到汇编语言,又从汇编语言抽象到处理高级语言。

现在的问题是:

是否还可以进一步进行抽象处理而获得更高级的编程语言呢?

对于它们在设计中的使用方法和注意事项,由于这部份内容较多、较复杂,这里就不多介绍了,可参照相关书籍和LabVIEW的帮助文件来学习。

基本要点:

程序框图设计要紧凑,当使用的面积很大时,尽可能的使用LabVIEW开发环境提供的“导航窗”的功能。

可利用LabVIEW开发环境提供的“整理(类适于“格式刷”)”功能(8.6版)。

依照数据流的概念程序框图设计时,图标按数据流的关系从左至右排列。

在程序框图中大量的使用标注,应该是一个很好的习惯,初学者往往忽略这一点。

2.4.2.4 LabVIEW图形化代码的程序实例下面我们通过一个简单的实例来认识一下图形化代码程序实例。

这个实例来自NI所提供的例子库。

CaseStructure该程序的运行结果是将Numeric——数据输入控件输入的弧度数值,在sin(x)——数据输出控件显示出所对应的sin函数值。

我们再次强调上述的操作和实现都是在NILabVIEW(图形化系统设计开发环境)中完成的。

汇编语言,是从机器语言中抽象提炼出来的一种使用缩写或助记符进行编程的编程语言。

汇编语言提供了简单的控制指令和数据类型。

通过汇编程序开发环境,可以将汇编语言转译成机器语言。

汇编语言同样与给定的CPU有关。

汇编语言的特点在于提高了程序的设计速度,程序员还可以直接访问系统的硬件。

但是由于汇编语言的开发环境和汇编程序仍然依赖于给定的处理器,并且其指令和数据类型很少,程序的可读性和可移植性很差,无法更广泛使用。

于是人们再次对汇编语言进行抽象处理,从而导致了更高一级计算机程序语言的诞生。

2.4.1.3 高级语言所谓高级语言,就是从低级编程语言抽象出来的更高级的计算机编程语言。

它们没有后缀.VI。

它们是根据“待解问题”从内置VI中高度抽象出来的,其目的也是帮助我们提高编程效率。

ExpressVI使用对话、配置的方式帮助设计者完成相应的测试、分析、处理。

使用ExpressVI时,LabVIEW开发环境自动生成该ExpressVI的功能底层代码,从而减轻用户编写低层代码的工作量。

用户也可以将ExpressVI转换成标准VI代码,但是这种转换是不可逆的。

用户也可以创造自定义的ExpressVI。

d、结构节点在函数面板上,还包括“For循环、While循环、定时的While循环、顺序结构、Case结构、事件结构等等,用来管理和控制程序流程的结构节点。

图2.4.2.3-5结构节点程序框图上的主要部件(函数、节点)简单介绍完了。

机器码。

机器码是可被CPU加载并执行的由0和1组成的序列。

机器码是CPU可识别的唯一语言,并且是执行速度最高的语言。

由于CPU的不同,机器码的样式和格式也会有所不同。

当人们看到机器码——那些由0和1组成的序列(程序),实在是感到毫无任何规律,根本无法理解和记忆。

特别是,当CPU性能不断提高时(位数增加)试想一下,由64位0和1组成代码,如何记忆和理解它们。

可以说,机器语言是世界上最无法读懂和难以记忆的一种语言。

为了避开这个难题,提高编程效率,人们对机器语言进行了抽象处理,从而导致了较高一级的汇编语言的诞生。

2.4.1.2 汇编语言计算机语言的发展简史计算机并非是一堆“冷冰冰的机器”,它完全可以成为我们想像力发挥的工具,前提是你必须能够掌控它。

掌控它的最有效办法是通过计算机语言与它进行沟通——也就是人们常说的计算机程序设计。

可是计算机(CPU)本身能够识别的符号很有限,它只认识由0或1组成的特定的序列。

这些序列最原始的排列方式被称为:

机器语言。

2.4.1.1 机器语言最初的计算机语言——直接面对物理层的计算机语言被称之为:

机器语言,也就是人们通常所说的:

内置VI是层次化和模块化VI的关键部件。

内置VI与我们新创建的VI不同,内置VI来自于LabVIEW开发环境的底层库,使用者轻易不要对它进行改动,避免其它使用者找不到该函数。

若想改动请另创建一个新的子VI(新名字),保存到使用者库中。

这一点初学者一定要多加注意。

内置VI与我们新创建的VI还有一点不同,通常它们是包含在我们所创建的VI之中。

所以,我们也可以这样理解:

VI其实是一个容器,虚拟仪器前面版和程序代码的容器(尽管有时它们没有一点虚拟仪器的样子)。

c、ExpressVI节点(图标的背景为蓝色)图2.4.2.3-4ExpressVIExpressVI(快速VI)是LabVIEW7中增加的新函数,ExpressVI节点的背景颜色为蓝色。

图2.4.2.4-1实例的前面版从例子的前面版我们可以看到以下几个控件:

TabControl——容器控件Stop——布尔控件Numeric——数据输入控件sin(x)——数据输出控件本实例实现从Numeric——数据输入控件输入弧度数值,然后在sin(x)——数据输出控件显示出所对应的sin函数值。

下面我们看看该实例的程序框图图2.4.2.4-2实例的程序框图从该实例程序框图中我们可以看到以下内容:

端子是前面版控件在程序框图中的映射,也是程序框图中传输数据的端口。

它类似于文本编程语言中的参数和常量。

端子影射的是控件的类型(控制器、指示器)及它们所使用的数据类型。

图2.4.2.1-1给出了前面板与程序框图间的关系,由此可见除“修饰控件”外,前面版上的每个控件都在程序框图中有个所对应的端子,起着前面版和程序框图间的数据传输作用。

这也从另一个方面反映出虚拟仪器的特点。

图2.4.2.1-1控件的映射关系端子在程序框图中,有两种表示方法:

图标和数据类型,它们之间可以通过弹击右键显现出的快捷菜单来设定进行转换。

每当我们在前面版上放置一个控件时,那么就会自动在程序框图上出现一个与它相对应的端子图标。

——它们通常没有公共线程(错误簇)图2.4.2.3-2内置函数从“内置函数”的几个特点来看它十分有趣,它是LabVIEW图形化语言的基础内核,用户是无法打开并编辑它的;它是高度抽象出来的最底层的图形化代码;是构成性能强大的虚拟仪器的基础“零部件”。

所以这里我们称之为:

内置函数。

OpenG就是使用内置函数设计实现的。

b、内置VI节点(图标的背景为白色或其它颜色)在函数选项板中,还提供了许多内置VI节点,它们图标的背景颜色为白色或其它颜色,所以可以通过颜色来区分出来。

因为人们一直期待能有一种更好的、更高效、适合更多人(而不是那些程序员或软件工程师)使用的编程语言出现。

其实早在二十多年前,这种语言就已经出现,那就是LabVIEW图形化编程语言。

LabVIEW是用C++编写的,图形化代码事实上是对C++高级语言的再次抽象处理。

因为抽象处理后的图形化代码表现的更直观、更简洁,并降低了图形化程序设计中的语法要求。

LabVIEW最初的版本是用C语言编写的,后来完全改用C++语言。

指的注意的是,LabVIEW和C++第一个版本都是诞生于1986年。

C语言和C++语言都先后被标准化组织所接纳(ISO1989,ISO1998),而LabVIEW确一直没有得到标准化组织的认可。

尽管如此,LabVIEW还是牢牢地确定了它是一种编程语言的地位。

顺便说一下,C诞生于1976年,Java诞生于1996年,C#诞生于2002年。

2.4.2 并且输入控件与显示控件的图标也是不同的。

无论在前面版上,还是在程序框图上,删除其中的任何一个都将删除该控件。

另外,在前面版上的每个控件都有自己的属性和方法,设计者可以通过“属性对话框”来设定这些属性。

通过“属性”和“方法”节点还可以在程序中动态的修改它的属性。

在程序设计中灵活、恰到好处的使用“属性”节点和“方法”节点,会得到很多意想不到的结果,这点读者可以在编程中慢慢地体会。

有关属性的特点和使用方法,以后会有专门的叙述。

2.4.2.2 连线(Wire)在图形化语言中,连线是两个端子间的数据通道或称为数据路径,它有些类似于文本语言中的变量或赋值。

事实上,由于数据类型不同的关系,在图形化语言中充分利用线段的形状、线型、颜色等不同的连线,来表示不同的数据类型。

还有一个区分的方法就是它们都有后缀.vi;用鼠标双击可以打开它们,而内置函数我们是无法看到内部结构的。

图2.4.2.3-3内置VI从上面的图例中可以看到它的特点。

从另一方面看,它是针对“待解问题”高度抽象出来的图形化代码,这个例图表示的就是使用RDT测量温度时的内置VI。

在LabVIEW开发环境中可以看到许多这样为“待解问题”高度抽象出来的内置VI。

它们的出现为我们解决实际测量问题提供了极大的帮助,也是提高虚拟仪器程序设计效率的主要因素。

这些内置VI是LabVIEW提供给程序设计者使用的,双击它们可以打开,有前面版和程序框图及表明功能的图标和连接器。

内置VI是严格定义的VI,或者说定义了图标和连接器。

可被其它使用者调用。

高级语言通常使用类似英文单词作为程序语言的关键字,这些关键字根据定义可以被翻译成多条机器指令。

实际上,比汇编语言高级的计算机语言都是高级语言。

C语言是目前最为广泛使用的高级语言。

它既具有一般高级语言的特性,同时又具备了一些低级语言特性(某些汇编语言的特点)。

当然,高级语言还有很多比如像我们所熟悉的:

面向对象的C++、Java、C#以及具有可视化编程环境的VC、VB、Delphi等等。

这些高级编程语言的存在和发展说明,除了各自的特点不相同,应用领域不同外,还有编程方式不断改进的推动。

比如:

Basic演变到QuickBasic然后又演变到VisualBasic。

C演变到C++然后又演变到Java(号称没有指针和头文件的C++)及后来的C#和VC。

端子:

TabControl——容器控件映射Stop——布尔控件映射Numeric——数据输入控件映射sin(x)——数据输出控件映射内置函数:

sinWaitUntilNextmsMultiple结构:

WhileLoop这也是图形化语言所特有的一个特点。

通常情况下,只有数据类型相同的端子间,才可以直接进行连线。

不同数据类型的连线方法可以参考其它的教课书,这里就不讲了。

图2.4.2.2-1数据类型不同的线段程序框图中的连线一定要简洁、清晰,应尽量避免在图标下穿过连线,适当的做些文字标记会提高程序的可读性。

在LabVIEW8.6就新加入了程序代码整理的功能,而在LabVIEW2009中甚至可以进行局部程序代码的整理,在LabVIEW2010中还出现了程序框图连线标签的功能。

使程序框图的设计更方便、更美观。

2.4.2.3 节点(Nodes)事实上,“节点”这个词无论是中文还是英文都是一个不好理解的词语,初识时似乎与其想要表达的内容毫不相关。

下面对这几种节点略做简要介绍。

a、内置函数节点(图标的背景为淡黄色)内置函数节点是构成VI或图形化程序代码中最小的、最基本的操作元素和可执行元素(亦被称为原子级的)。

它们都基本上具有如下特点:

——至少有一个连接端口——内部不可见(它们不是VI或内置VI,VI和内置VI用鼠标双击后,可以打开)——程序的设计者不可对其进行编辑和修改——它们是构成VI或子VI的最基本操作元素——它们是节点中的一部分,可通过颜色辨别(图标中的背景为浅黄色)——它们以功能命名,没有后缀.VI(因为它们不是VI)LabVIEW图形化语言的代码基于文本式程序C语言的源代码形式如前面的图2.2.1-1所示,图形化程序语言的源代码形式如图2..2.1-2所示。

图形化编程语言的源代码是出现在程序框图上,已基本上定义出它的三种表述形式:

端子连线节点下面我们分别表述。

2.4.2.1端子(Terminals)在LabVIEW中,图形化程序本身就包含了前面版(用户界面)和程序框图(图形化源代码)两个面板(系统提供),它们之间的数据传递是通过端子来实现的。



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3