【vc++精品源码栏目提醒】:网学会员--在 vc++精品源码编辑为广大网友搜集整理了:基于组件与Petri网技术的虚拟仪器的研究 - 技术总结绩等信息,祝愿广大网友取得需要的信息,参考学习。
文章编号: 08012049205基于组件与Petri网技术的虚拟仪器的研究3杨盛泉刘萍萍李宝敏西安工业大学计算机科学与工程学院西安710032摘 要: 为了建立可以与任何通用软件系统无缝集成的虚拟仪器模型提出了运用组件建立多线程共享缓冲区的通用虚拟仪器架构同时引进Petri网技术来分析和控制组件内部多线程运行中产生的并发与冲突、活性、安全性等.实验表明该技术由于不受平台和语言环境的限制能够增强虚拟仪器组件与应用程序开发的独立性和使用的安全性能够大大地拓展虚拟仪器的应用范围.关键词: 虚拟仪器组件线程Petri网中图号: TP311 文献标志码: A 自从美国NationalInstruments公司八十年代提出虚拟仪器概念以来虚拟仪器技术得到大力的发展正在趋于成熟和完善并且在各个领域里得到广泛的应用.应用虚拟仪器的目的是为了达到缩短控制系统的开发时间、提高生产质量并大幅度地降低生产成本.虚拟仪器系统的基本构架包括功能强大又高效的软件、模块化的测量硬件它是以软件为核心由计算机和必要的硬件组建起来的测试系统或仪器系统.虚拟仪器可以利用一台计算机集成多个仪器的功能从而节约硬件空间和成本1.目前市面上技术成熟的虚拟仪器软件开发平台相当多主要有LabWindows/CVILabViewHPVEE等1.但它们有一个共同缺点:它们实现的虚拟仪器很难被分离出来在通用编程语言如:VC
VBDelphi等环境下得到重复使用其代码的可移植性极差.然而基于组件和Petri网技术实现的虚拟仪器可以实现和任何通用软件系统无缝集成.由于不受平台和语言环境的限制大大地拓展了虚拟仪器的应用范围.1 组件概述以及虚拟仪器组件模型1.1 组件概述组件技术来源于面向对象技术但又不同于对象.一个对象是一部分源代码对象可以实现
源代码级的复用对外是不可见的.而组件不一定是需要经过编译才能使用的一部分源代码可以是能实际运行的
软件模块.组件通过提供开放的接口来实现二进制级的复用.组件是一种可以复用的程序段且可以为二进制形式.组件的范围小到图形界面中的按钮大到一个具有相当功能的文本编辑器.一个在应用程序中的组件对于用户可以是可见的也可以是不可见的.组件独立于开发组件的语言而面向应用程序只规定组件的外在表现形式而不关心其内部实现方法.组件具有可靠、模块化、可复用、可扩展等特点.区分组件和其他先前的技术有四个原则2即封装Encapsulation、多态性Polymorphism、后期连接LateBinding和安全性Safety.这个
列表与面向对象是重复的除了它删除了继承Inheritance这个重点.1.2 虚拟仪器组件模型虚拟仪器组件模型的形式可以定义为一个五元组:VICPMEID其中P表示虚拟仪器组件的属性Property的集合M为虚拟仪器组件所有方法Method的集合E为虚拟仪器组件所能发生的事件Event的集合I为虚拟仪器组件提供给用户操作接口Interface的集合D为虚拟第28卷第1期 西 安 工 业 大 学 学 报 Vol.28No.12008年02月 JournalofXi’anTechnologicalUniversity Feb.20083收稿日期:2007210219作者简介:杨盛泉19742男西安工业大学讲师主要研究方向为MIS系统、智能控制、软件工程.E2mail:xaitysq163.com.仪器组件模型、输出的驱动
程序集合.采用虚拟仪器组件开发的应用软件系统是通过虚拟仪器组件模型间相互提出请求及提高服务来协同工作各虚拟仪器组件模型需要具有良好的接插特性3.虚拟仪器组件模型技术可以提高开发速度由于大量使用开发商已经编制好的组件模型减少了用户开发的工作量使开发周期大大缩短4.虚拟仪器组件模型技术可以降低开发成本由于用户进行软件开发工作量大大减少因此开发成本也相应降低通常组件模型的费用相对于传统方法开发的成本来说是微不足道的.2 虚拟仪器组件的体系结构及其Petri网分析模型2.1 组件的体系结构运用组件建立多线程共享缓