2.2.2 图形化虚拟仪器开发平台——LABVIEW
LABVIEW(Laboratory Virtual Instrument Engineering)本质上就是将编程语言图形化显示。这点上和BASIC语言,C语言的开发环境很是相似,但是与其他计算机语言还存在着很大的差异,一种是利用文本类的语言生产代码,另一种是通过程序和图形进行设计。LABVIEW用程序框图取代程序代码即将编程语言图形化。这种方式只要控制前面板上添加的控件参数,再通过程序框图将不同的程序模块集成,这比复杂的语言代码法则要简单多了。LABVIEW的数据在两个或两个以上的节点中产生,流向对应的程序控件,这种方式被称为数据流编程。
LABVIEW是电子仪器进化过程中的标志性成果,它集成了众多硬件的全部功能,推出了面向大众的应用软件。因此它的普及率很高,可以说仅次于C语言系类的,这也从另一方面说明它具有一系列吸引广大优秀工程师的特性。首先,作为图形化语言编程,它简易上手,许多初学者都能通过它设计出满意的方案;其次,它拥有丰富的仪表板材料和虚拟仪器库,近600种设备的驱动程序和一个庞大的函数库。LABVIEW也包含可以调试的程序,像如何将数据显示变的动画化,如何设置断点及单步执行,如何判断子程序(子VI)是否成功运行等等。正是因为这些优点,LABVIEW的前景才显得一片光明。
2.2.3 LABVIEW的程序设计
LABVIEW包含的一切程序,都可统称为虚拟仪器(VI)。它涵盖了前面板(Front Panel),图标/连结器(Icon/Connector),流程图(Block Diagram)这三个部分。
1)前面板:它通常被用户称为图形的界面端,或是VI控件搭建的虚拟操作界面。有输入控制和输出显示两功能的前面板,主要用来模拟真实存在的仪器。控制部分指的是用户的输入与程序相连,而显示部分是内部程序的输出。控制和显示都是多样的,没有具体的存在形式,在LABVIEW中,用户可以自主定义它们的形式。一般而言,子模板中的图形,旋钮,图表,开关等等都可作为显示对象或控制对象。即使有控件,程序也无法成功启动,编写好了前面板还有与其相对应的程序框图都需要设计。
2)设计/连接图标:这里集中表达其程序设计将进一步模块化的概念。设计/连接图标可以说是研究设计过程中最为基础的程序。设计者可将复杂的检测系统区分为同层面的多个简单的子系统,每一个子系统都可实现一定的功能,将这些子系统通过一定的顺序连接起来就形成了完整的界面设计。
3)程序框图:将源代码和图形化的函数结合起来,调控前面板与之相应的对象,简单来说程序框图是图形化源代码的集合。设计员想要调节或者控制前面板各个对象的输入和输出,必须编写程序框图代码来实现这一目的。节点,端点都是程序框图的对象,将各个对象用连线相连所构成的完整图像就是程序框图。
节点类似于文本语言中的语句、子程序或者函数。LABVIEW有两种节点:函数节点,子VI节点。函数节点就是通过编写代码来运行的,这种方式代表函数节点无法更改。而子VI节点不同,它的图形化形式在操作上要自由得多,用户可以随意调节代码,更换参数。
端点是固定的,只有一个输入或是输出的节点。一般虚拟仪器涉及的端点有前面板的对象端点,常量端点和变量端点这3种。对象端点是一种传输接口,用以交换前面板和程序框图之间的数据。就多数情况而言,一个VI前面板上的固定对象必定会在框图有与其相对应的对象端点。所以当设计员在前面板创建(删除)某个对象时,框图中与其相对应的对象端点也会自动的创建或是删除。