LabVIEW 助力优化软件开发实践和源代码控制

发布者:科技创新实践者最新更新时间:2011-09-21 来源: 电子产品世界关键字:LabVIEW 手机看文章 扫描二维码
随时随地手机看文章

    作为一款系统设计软件(LabVIEW可以提供搭建最先进、最具技术挑战性的系统所需的所有工程元素

随着工程应用的挑战性和复杂度日益增加(软件工程的概念也融入了系统开发之中。所谓软件工程就是可以保证软件的可扩展性和可维护性的工程开发实践。正确实施的软件工程可以提高应用程序的全局质量(提高开发者的工作效率并且降低维护成本。在这篇文章中(可以学习到如何使用LabVIEW内建专用的特性和工具来完成最佳的软件开发实践和程序源代码控制管理。

源代码控制管理
源代码控制管理是软件工程最基本的环节之一(因为它决定了如何对一个应用程序的依赖关系进行存储、组织管理以及在开发者之间共享,甚至会直接影响程序的部署。这样的过程(source code control-SCC)及相应的管理工具会在整个软件生命周期中完成这些任务,以减少人工完成这些任务可能带来的损失和风险。但是,如果没有一个合理的计划以及应用架构来保证项目自身的紧凑性和代码的模块化特点,只依靠软件来管理,则效果实在有限,所以需要对相关的概念进行学习并通过NI认证的LabVIEW系统架构师考试。


对任何一个项目来说,无论项目复杂程度高低或团队的人数多少,源代码控制都是重要且必要的。目前,很多的供应商都提供了各种不同的源代码控制工具,它们都可以用来追踪、存储和管理LabVIEW的文件。

这些工具中可以既有免费且易用的解决方案(例如Subversion),也有商业级的、具有完整生命周期管理的解决方案(例如Perforce)。


代码的重复利用对提高工作效率是非常有效的方法,但是它要求非常严格的源代码管理措施。一些高级的工具,例如VI程序包管理器,可以帮助用户有效地管理和创建可重复使用的库文件或者VI程序包,还可以智能追踪库文件的版本变化、所需依赖关系变化以及该库文件在多个LabVIEW版本之间的兼容性变化等。

应用结构化的开发方法
许多LabVIEW的程序员都经历过使用非结构化开发方法所造成的不良后果,或者,至少受到过影响。一些程序框图可以往任何一个方向进行滚动,一页又一页,没有可辩识的标志和足够的连线的帮助,甚至可以让人误认为那是一幅大都市的地图。不幸的是,这样的程序框图往往又包含需要运行的代码,所以如果有人接下了这样的应用程序,往往会觉得它令人难以添加功能和修正错误。除了程序运行风险高以及内含不可预知的程序缺陷以外,这种程序的维护成本还很高。所以,当你在接受程序任务的时候,如果对方告诉你“我们需要对代码进行重整”,那你一定要将它看成一个警告。软件工程和一个有序的可扩展的应用程序架构,可以有效地帮助你避免这样的风险以及这些风险带来的损失。


典型的软件工程是指一种人为管理的、有序的软件开发方法,在开发过程之前就已经有拟定的审核清单,以及在软件生命周期的不同阶段应该完成的任务,而这个开发实践需要做到何种程度,以及需要哪些开发工具,则是由这个工程项目自身的特点来决定的。但是,有些要素却是任何类型项目的开发都需要的。通常来说,前期的规划、开发耗时的预计都是会提前计划的,当然,这些计划同时也会增加时间和成本的消耗。

虽然软件工程的模式有很多种,例如瀑布型、螺旋型或者灵活型,但它们都具有共同的开发阶段。图1中列出了各种LabVIEW的特性和工具,可以在各个开发阶段给予帮助。

图1 LabVIEW提供的各种特性和相关工具可以在不同的开发环节给你提供帮助

软件架构
通过设计应用程序的整体架构,开发者可以确保程序框架满足指定的要求,并且确保程序有良好的扩展性,在将来为系统添加新功能。进行架构设计时,需要定义系统的各个功能单元,以及不同单元之间的交互方式(通过交互接口和API),从而可以将相关性不高的单元进行解耦,以保证它们是紧凑且独立的。一个好的程序架构会综合考虑代码的可扩展性、程序模块性、可重用性和可延展性之间的平衡,同时又能够保证不会无谓地增加程序的复杂性。


NI公司提供的LabVIEW高级培训课程涵盖了所有这些概念,并且将这些概念作为CLA考试的主要部分。用户可访问ni.com/training/certification来评估自己的编程水平,以确保自己有足够的能力编写出可以经受实践检验的LabVIEW程序。

掌握LabVIEW软件工程
了解数据流编程语言的语法结构仅仅是熟练使用LabVIEW的一部分。一个坚实的软件工程理论基础和源代码控制的最佳实践可以保证你有能力管理一个开发小组,领导他们设计并实现高水平的LabVIEW系统。本文中所讨论的各种工具和开发实践可以帮助你显著地改进开发过程,使其更加合理,从而提高工作效率。

这样你和你的开发团队就可以把最主要的精力放在系统的开发上,而不是浪费在烦琐的源代码管理和设计结构重整上。所有这些概念对任何一种编程环境来说都是通用的,它们也是参加CLA考试时所必需的。

关键字:LabVIEW 引用地址:LabVIEW 助力优化软件开发实践和源代码控制

上一篇:传感器系统设计的捷径
下一篇:传感器网络应用程序的建模、仿真与自动代码生成框架

推荐阅读最新更新时间:2024-03-30 21:49

LabVIEW初学者的二十条忠告
1. LabVIEW是门程序设计语言,不是画图工具! 2. 不要以为LabVIEW很简单,设计个庞大工程难度不亚于C++! 3. 语言本身永远只是招式,请注意修炼内功:数据结构、算法、软件工程、数字电路等! 4. 多读书、读好书:《LabVIEW For Everyone》、《LabVIEW-Advanced Programming Techniques》! 5. 学习程序设计只有一种方法:读代码、写代码、读代码、写代码 ! 6. 不要以为读完一遍《LabVIEW For Everyone》你能有多大收获,请再继续读两遍! 7. 研读书上的每一个例子,他们往往是程序中的经典! 8. 对齐你的每一个控件和函
[测试测量]
使用LabVIEW设计和开发用于分离稀有细胞的自动化系统
挑战: 设计、开发并制造一种能够检测和分离循环肿瘤细胞(CTCs)或母血中的胎儿细胞的工具,前者的目的是研究肿瘤学中的个体化治疗,后者是为了实现无创性产前诊断。 解决方案: 开发一种名为“芯片实验室”的专利技术,该技术利用活性硅衬底的微电子特性,可制造微型生物实验室,借助NI嵌入式控制器对悬浮细胞分别单独操作。 Silicon Biosystems公司的技术基于电场能够对悬浮在液体中的中性可极化粒子(比如细胞)施加作用力的能力。按照这种称为介电泳(DEP)的动电学原理,非均匀电场中的中性粒子会受到一个空间上电场强度沿(正)介电泳(pDEP)增加方向或者(负)介电泳(nDEP)减少方向的力。更具体地说,粒子由于其自身的电特性受
[测试测量]
基于LabVIEW为平台设计多参数病人监护仪自动测试系统
  以NI LabVIEW为软件核心,集成了多种数据采集卡,通信板卡,各类通用仪器,医疗专用仪器,安规仪器,切换夹具等硬件,共同构成多参数病人监护仪的全功能及安全测试平台。   使用的产品:    测试硬件:   1) 标准工控机   2) NI PCI GPIB通信板卡(778032-01)   3) NI PCI-6528 24路通道间光隔离漏/源输入   4) NI PCI RS232/4串口通信板卡(777642-04)   5) NI PCI-6733 高速模拟输出(AO)   6) NI USB-6251 USB高速M系列多功能DAQ   7) USB-I2C总线适配器   8) Chroma AC S
[测试测量]
基于<font color='red'>LabVIEW</font>为平台设计多参数病人监护仪自动测试系统
基于LabVIEW6.1的数字存储示波器设计
0 引言   1986年,美国国家仪器公司提出了虚拟仪器概念。它是一种程序设计思想,是前面板、数据流框图和图标或连接器的有机结合,密不可分。随着现代测试与仪器技术的发展,目前虚拟仪器概念已经发展成为一种创新的仪器设计思想。它是以通用计算机(含LabVIEW软件)为操作平台,以模块化功能硬件为桥梁的测控系统。在虚拟仪器系统中,硬件仅仅是解决信号的输入和输出问题的方法和软件赖以生存运行的物理环境,软件才是整个仪器的核心,用于实现硬件的管理和仪器功能的实现 。用户只需通过调整或修改仪器的软件,便可方便地改变或增减仪器系统的功能与规模,甚至仪器的性质,完全打破了传统仪器有厂家定义,用户无法改变的模式,给用户一个充分发挥自己才能和想象力的空
[测试测量]
基于<font color='red'>LabVIEW</font>6.1的数字存储示波器设计
LabVIEW系列——错误簇的传递
从以下示例可以得出结论: 1、图一出现的三种错误,分别位于打开/创建/替换文件函数,写入文本文件函数,读取文件文件函数。说明三个函数都被运行了。 2、图二只出现了一种错误,位于打开/创建/替换文件函数,其他两个函数并没有执行,说明错误链不仅仅具有传递功能,还可以在错误发生后可以避开其他意外的错误继续产生。
[测试测量]
LabVIEW数据记录和存储(三)—二进制文件(Binary File)
在文件存储的逻辑上,二进制文件基于值编码,而不是字符编码,其占用空间小,读取/写入速度快,但是译码比较复杂,不利用数据共享。根据具体编码方式的不同,二进制的使用方式也有所不同,如对bmp格式,规定了文件各个字节段/块的含义,只需要按照相应的编码方式进行解码就可以得到bmp文件的内容。因此,使用记事本是无法查看bmp的内容的(无法解码bmp文件),只能使用专门的图像查看软件。事实上,任何程序员都可以按照自己的方式自定义二进制文件的编码方式,并提供相应的解码模块将信息从二进制文件中提取出来即可。 与文本文件的读写方式类似,LabVIEW中的二进制文件的读写采用图 10所示的两个函数完成: Write To Binary File 和 R
[测试测量]
<font color='red'>LabVIEW</font>数据记录和存储(三)—二进制文件(Binary File)
LabVIEW 8.2的仪器总线技术的介绍
  最早的仪器总线技术是通过接口总线(GPIB)技术,后来出现了VXI和PXI总线技术,提高了仪器和计算机之间的数据传输速率。基于局域网的LXI技术可以进一步提高速率。由多种总线技术构成的混合总线技术,可以充分结合各种总线技术优点,是未来总线技术应用的趋势。   仪器驱动程序是连接仪器硬件和软件的桥梁,仪器驱动程序规范和标准也随着总线技术不断更新和发展。目前占主导地位的仪器驱动程序的两个规范是VPP规范和IVI系列规范。VPP规范实现了仪器的通用性,IVI系列规范加强了仪器的互换性。   LabVIEW中仪器控制包括仪器驱动、IVI驱动、GPIB、串行通信、VISA和仪器I/O助手。针对这6个方面,LabVIEW分别提供了许多
[嵌入式]
基于LabVIEW快速搭建医疗设备原型
  21世纪是生命和健康的世纪,生命科学的飞速进步不断推动着人类对自身健康和疾病的认识,如何开发创新型的医疗电子设备也成为研究的热点之一。   医疗设备研究内容涉及众多工程学研究领域,如电子学、计算机、信息处理、光学、精密机械学等。随着医学的发展、治疗手段的多样化和相关工程领域技术的不断进步,医疗电子设备正变得日益复杂化。一般大型医疗设备由多个子系统组成,需要集成多种传感器、机械部件、电子元件,如FPGA或微处理器等,还会涉及到多种专业总线和协议,其研发周期也相当长,可能需要2年~3年甚至更长的时间。于是,如何缩短整个医疗电子设备系统的开发时间、提高创新程度便成为占领市场的要素。   对于一些小型公司来说,如何从激烈的市场竞争中站
[医疗电子]
基于<font color='red'>LabVIEW</font>快速搭建医疗设备原型
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新工业控制文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved