文档详情

【LabVIEW教程】LabVIEW如何助力大型应用程序的开发.pdf

发布:2020-09-09约6.89千字共7页下载文档
文本预览下载声明
【LabVIEW 教程】 LabVIEW 如何助力大型应用程序的开发 目录 1. 状态图 (Statechart) 模块 2. 对多核技术的支持 3. 功能增强的项目管理 4. 总结 5. 更多相关资源 从 1986 年诞生至今, NI LabVIEW 作为测试测量和控制行业的标准软件平台, 一直致力于简化自动化测试 和仪器控制的实现过程,使工程师和科学家们可以专注自己专业的研究领域,而不是将大量的时间和成本 放在系统底层通讯和算法的实现上,从而实现效率的最大化。例如在 LabVIEW 7 中推出的 Express VI 技 术,就可以让开发人员简单地通过交互界面进行相应配置,然后 LabVIEW 就可以生成代码,自动完成数 据采集、仪器控制等功能 ( 图 1) 。 图 1 Express VI 简化数据采集实现过程 而另一方面, 随着测控系统的日趋大型和复杂, 很多工程师们开始使用 LabVIEW 来开发大型的应用程序。 因此,简化大型或复杂的测控系统的搭建和开发过程,成为了 LabVIEW 致力实现的又一个目标。 2 年前, LabVIEW 8 推出的项目 (Project) 工具让工程师们能够以一个整体项目的角度进行开发,为想要开 发大型应用程序的 LabVIEW 用户们提供了强有力的支持:在一个项目中,开发人员可以将多个程序文件 有机地整合在一起,并附带相关的文档及配置文件。此 外,由于 LabVIEW 和硬件的良好的连接性, 项目中还可对多个硬件平台进行集中管理, 实现分布式智能。 可以说,当时的 LabVIEW 已经具备了开发大型应用程序的条件,随后的 LabVIEW 8.2 开始支持面向对象 的编程方式。 而去年 8 月推出的 LabVIEW 8.5 更是提供了多个崭新工具来协助工程师轻松而高效地实现大 型系统的构架和开发。 因此,本文将深入讨论如何使用这些新工具在 LabVIEW 平台下实现更高效和快捷的大型程序的开发。 1. 状态图 (Statechart) 模块 诚然,在开发大型程序之前,对系统进行整体架构是必不可少的过程,而如何将系统的架构转换为实际可 运行的代码,这之间的转换过程看似简单,其实会花费开发者不少的精力和时间;此外,在开发后期,开 发者们还会面临需要根据实际情况对程序的结构进行频繁修改的头疼场面。因此,一个好的系统架构方式 或工具可以起到事半功倍的效果。 LabVIEW 8.5 新引入了一个功能强大的全新工具 —— NI LabVIEW 状态图模块。 有了这个基于 LabVIEW 平 台的新功能,工程师们就能更快捷地设计出高层抽象的系统架构,并可以将状态图自动生成 LabVIEW 代 码,从而直接运行。 例如,我们要实现一个简单的数据采集系统 (图 2) ,它能够根据用户按不同的按钮来进行相应的功能:在配 置状态下按 Acquisition 键开始采集信号,在采集时按 Pause 键则暂停,在任何时候按 Stop 键停止整个采 集系统。 这样的要求虽然不算复杂,但是如果纯粹进行编程的话还是需要花费不少的时间;而相比之下,使用状态 图就能够在很短的时间内实现。图 2 的右边部分就是播放器的状态图,通过简单的几个状态和之间的切换 的设置,我们就能够既直观而又轻松地予以实现。 图 2 使用 LabVIEW 状态图实现数据采集 测控系统日益复杂,有时就需要在传统的有限状态机基础上再添加层次性、并发性以及状态间转换的全面 行为定义。 在 1980 年, 以色列魏兹曼科学研究所的 David Harel 在设计一个复杂的航空系统时发明了状态 图。在 90 年代,状态图被引入 UML 规范,从而被广泛地用于嵌入式系统的建模。 状态图的层次性允许编程人员可以定义所谓的 超状态“ ”,即将一个子状态嵌套在另一个状态中。超状态同 时封装了出、入动作和过渡。举例
显示全部
相似文档