LabVIEW是一种程序开发环境,由美国国家仪器(NI)公司研制开发的,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。
虚拟仪器 (VI) 的概念
虚拟仪器(virtual instrument)是基于计算机的仪器。计算机和仪器的密切结合是目前仪器发展的一个重要方向。粗略地说这种结合有两种方式,一种是将计算机装入仪器,其典型的例子就是所谓智能化的仪器。随着计算机功能的日益强大以及其体积的日趋缩小,这类仪器功能也越来越强大,目前已经出现含嵌入式系统的仪器。另一种方式是将仪器装入计算机。以通用的计算机硬件及操作系统为依托,实现各种仪器功能。虚拟仪器主要是指这种方式。
虚拟仪器实际上是一个按照仪器需求组织的数据采集系统。虚拟仪器的研究中涉及的基础理论主要有计算机数据采集和数字信号处理。目前在这一领域内,使用较为广泛的计算机语言是美国NI 公司的 LabVIEW。
虚拟仪器的起源可以追溯到20世纪70年代,那时计算机测控系统在国防、航天等领域已经有了相当的发展。PC机出现以后,仪器级的计算机化成为可能,甚至在 Microsoft公司的 Windows 诞生之前,NI公司已经在Macintosh计算机上推出了LabVIEW2.0 以前的版本。对虚拟仪器和 LabVIEW长期、系统、有效的研究开发使得该公司成为业界公认的权威。目前LabVIEW 的最新版本为 LabVIEW2011,LabVIEW 2009 为多线程功能添加了更多特性,这种特性在 1998 年的版本 5 中被初次引入。使用 LabVIEW 软件,用户可以借助于它提供的软件环境,该环境由于其数据流编程特性、LabVIEW Real-Time 工具对嵌入式平台开发的多核支持,以及自上而下的为多核而设计的软件层次,是进行并行编程的首选。
普通的 PC 有一些不可避免的弱点。用它构建的虚拟仪器或计算机测试系统性能不可能太高。目前作为计算机化仪器的一个重要发展方向是制定了VXI 标准,这是一种插卡式的仪器。每一种仪器是一个插卡,为了保证仪器的性能,又采用了较多的硬件,但这些卡式仪器本身都没有面板,其面板仍然用虚拟的方式在计算机屏幕上出现。这些卡插入标准的 VXI 机箱,再与计算机相连,就组成了一个测试系统。VXI 仪器价格昂贵,目前又推出了一种较为便宜的 PXI 标准仪器。
LabVIEW 的概念
与 C 和 BASIC 一样,LabVIEW也是通用的编程系统,有一个完成任何编程任务的庞大函数库。LabVIEW的函数库包括数据采集、GPIB、串口控制、数据分析、数据
LabVIEW标志
显示及数据存储,等等。LabVIEW也有传统的程序调试工具,如设置断点、以动画方式显示数据及其子程序(子VI)的结果、单步执行等等,便于程序的调试。
LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一种用图标代替文本行创建应用程序的图形化编程语言。传统文本编程语言根据语句和指令的先后顺序决定程序执行顺序,而 LabVIEW则采用数据流编程方式,程序框图中节点之间的数据流向决定了VI及函数的执行顺序。VI指虚拟仪器,是 LabVIEW的程序模块。
LabVIEW提供很多外观与传统仪器(如示波器、万用表)类似的控件,可用来方便地创建用户界面。用户界面在 LabVIEW中被称为前面板。使用图标和连线,可以通过编程对前面板上的对象进行控制。这就是图形化源代码,又称G代码。LabVIEW的图形化源代码在某种程度上类似于流程图,因此又被称作程序框图代码。
尽可能采用了通用的硬件,各种仪器的差异主要是软件。
可充分发挥计算机的能力,有强大的数据处理功能,可以创造出功能更强的仪器。
用户可以根据自己的需要定义和制造各种仪器。
未来
虚拟仪器研究的另一个问题是各种标准仪器的互连及与计算机的连接。目前使用较多的是IEEE488 或 GPIB协议。未来的仪器也应当是网络化的。
LabVIEW(Laboratory Virtual instrument Engineering Workbench)是一种图形化的编程语言的开发环境,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。LabVIEW 集成了与满足 GPIB、VXI、RS-232和 RS-485 协议的硬件及数据采集卡通讯的全部功能。它还内置了便于应用TCP/IP、ActiveX等软件标准的库函数。这是一个功能强大且灵活的软件。利用它可以方便地建立自己的虚拟仪器,其图形化的界面使得编程及使用过程都生动有趣。
图形化的程序语言,又称为 “G” 语言。使用这种语言编程时,基本上不写程序代码,取而代之的是流程图或框图。它尽可能利用了技术人员、科学家、工程师所熟悉的术语、图标和概念,因此,LabVIEW是一个面向最终用户的工具。它可以增强你构建自己的科学和工程系统的能力,提供了实现仪器编程和数据采集系统的便捷途径。使用它进行原理研究、设计、测试并实现仪器系统时,可以大大提高工作效率。
利用 LabVIEW,可产生独立运行的可执行文件,它是一个真正的32位/64位编译器。像许多重要的软件一样,LabVIEW提供了Windows、UNIX、Linux、Macintosh的多种版本。
它主要的方便就是,一个硬件的情况下,可以通过改变软件,就可以实现不同的仪器仪表的功能,非常方便,是相当于软件即硬件!现在的图形化主要是上层的系统,国内现在已经开发出图形化的单片机编程系统(支持32位的嵌入式系统,并且可以扩展的),不断完善中(大家可以搜索 CPUVIEW 会有更详细信息;)
LABVIEW的应用领域
LABVIEW有很多优点,尤其是在某些特殊领域其特点尤其突出。
测试测量:LABVIEW最初就是为测试测量而设计的,因而测试测量也就是现在LABVIEW最广泛的应用领域。经过多年的发展,LABVIEW在测试测量领域获得了广泛的承认。至今,大多数主流的测试仪器、数据采集设备都拥有专门的LabVIEW驱动程序,使用LabVIEW可以非常便捷的控制这些硬件设备。同时,用户也可以十分方便地找到各种适用于测试测量领域的LabVIEW工具包。这些工具包几乎覆盖了用户所需的所有功能,用户在这些工具包的基础上再开发程序就容易多了。有时甚至于只需简单地调用几个工具包中的函数,就可以组成一个完整的测试测量应用程序。
控制:控制与测试是两个相关度非常高的领域,从测试领域起家的LabVIEW自然而然地首先拓展至控制领域。LabVIEW拥有专门用于控制领域的模块----LabVIEWDSC。除此之外,工业控制领域常用的设备、数据线等通常也都带有相应的LabVIEW驱动程序。使用LabVIEW可以非常方便的编制各种控制程序。
仿真:LabVIEW包含了多种多样的数学运算函数,特别适合进行模拟、仿真、原型设计等工作。在设计机电设备之前,可以现在计算机上用LabVIEW搭建仿真原型,验证设计的合理性,找到潜在的问题。在高等教育领域,有时如果使用LabVIEW进行软件模拟,就可以达到同样的效果,使学生不致失去实践的机会。
儿童教育:由于图形外观漂亮且容易吸引儿童的注意力,同时图形比文本更容易被儿童接受和理解,所以LabVIEW非常受少年儿童的欢迎。对于没有任何计算机知识的儿童而言,可以把LabVIEW理解成是一种特殊的“积木”:把不同的原件搭在一起,就可以实现自己所需的功能。著名的可编程玩具“乐高积木”使用的就是LabVIEW编程语言。儿童经过短暂的指导就可以利用乐高积木提供的积木搭建成各种车辆模型、机器人等,再使用LabVIEW编写控制其运动和行为的程序。除了应用于玩具,LabVIEW还有专门用于中小学生教学使用的版本。
快快速开发:根据笔者参与的一些项目统计,完成一个功能类似的大型应用软件,熟练的LabVIEW程序员所需的开发时间,大概只是熟练的C程序员所需时间的1/5左右。所以,如果项目开发时间紧张,应该优先考虑使用LabVIEW,以缩短开发时间。
跨平台:如果同一个程序需要运行于多个硬件设备之上,也可以优先考虑使用LabVIEW。LabVIEW具有良好的平台一致性。LabVIEW的代码不需任何修改就可以运行在常见的三大台式机操作系统上:Windows、Mac OS 及 Linux。除此之外,LabVIEW还支持各种实时操作系统和嵌入式设备,比如常见的PDA、FPGA以及运行VxWorks和PharLap系统的RT设备。
简单回顾一下LabVIEW最近的发展历史(也仅限于我能够收集到的版本),从这里也可以间接的体会到LabVIEW的发展速度有多快。从LabVIEW的软件版本来看(我能收集到的),应该有LabVIEW 5系列、LabVIEW 6系列、LabVIEW 7系列和LabVIEW 8系列。发布年份可能有误,以NI为准。
LabVIEW 5.0 发布于:1998年
LabVIEW 5.1.1 发布于:2000年3月
LabVIEW 6.02 发布于:2001年2月
LabVIEW 6.1 发布于:2002年1月
LabVIEW 7.0 发布于:2003年5月
LabVIEW 7.1 发布于:2004年4月
LabVIEW 7.1.1 发布于:2004年11月
LabVIEW 8.0 发布于:2005年10月
LabVIEW 8.0.1 发布于:2006年2月
LabVIEW 8.20 发布于:2006年8月
LabVIEW 8.2.1 发布于:2007年3月
LabVIEW 8.2.1f4 发布于:2007年9月
LabVIEW 8.5 发布于:2007年8月
LabVIEW8.5.1 发布于:2008年4月
LabVIEW8.6 发布于:2008年8月
LabVIEW8.6.1 发布于:2009年2月
LabVIEW 2010 发布于:2010年8月
LabVIEW2010SP1发布于:2011年3月
LabVIEW 2011 发布于:2011年8月
LabVIEW2011SP1发布于:2012年1月
从NI的LabVIEW版本号,可以看出:
1、 系列号:5、6、7、8表示新的系列,软件结构或功能可能有重大改进(付费升级)
2、 版本号:5.x、6.x、7.x、8.x表示软件有新的内容或比较大的改进(付费升级)
3、 版本号:5.x.x、6.x.x、7.x.x、8.x.x表示软件较上个版本进行了修补(免费升级)