论文部分内容阅读
最近几年以来,随着虚拟仪器技术与分布式对象技术的发展,尤其是网络通讯技术的显著进步和Internet的迅速普及,使得我们可以突破时间和地域限制将分布在不同地点的仪器设备通过网络连接起来协同工作,将一个个独立的仪器整合成一个分布式的仪器系统,从而获得更为强大的处理功能或者完成单台仪器所不能完成的任务,例如分布式的测控系统。同时,仪器的开发方式和实现技术也从传统的硬件为主逐渐过渡到以软件为主,NI甚至提出了“软件就是仪器”,到目前为了充分利用Internet的优势实现仪器的共享和协作越来越多的仪器开始采用分布式软件控制,形成了网络化的仪器和分布式仪器。分布式仪器开发环境LabScene正是产生于这一背景之下,它为分布式仪器的开发提供软件技术方面支持,力图使得分布式仪器的开发能够更为简单、便捷和容易。分布式仪器开发环境LabScene是一种软硬件相结合的分布式的软件系统,使用了众多的新技术,例如:在网络方面,采取分布式的系统构架;在集成方面,使用了组件技术、动态集成、接口统一的基于二进制代码层的集成技术;在操作方面,采用了图形代理和可视流程编程等概念;在管理方面,采用了日志文件,利用日志文件记录系统的一举一动;而整个项目采用成熟的UML建模技术,并在软件管理上尽量以CMM来要求。首先本文介绍了分布式仪器的相关概念和分布式仪器开发环境的现状,指出了仪器及其开发技术从硬件到软件再到分布式软件控制的趋势。其次本文对LabScene的理论基础和开发LabScene所采用的技术进行了详细地叙述,这其中包括虚拟仪器技术、分布式对象技术、面向对象和分布式组件技术等等。尤其是多层化分布式仪器是对三层网络化仪器的发展,将重点从以研究资源的共享为主转移到以研究和解决仪器之间协作为主。第三章是本文的重点,本文在该部分对LabScene的总体结构、LabScene各模块之间的数据交互和网络资源端的建模、设计、接口及技术要点进行详细地阐述,并介绍了在服务器中与网络资源有关的一些管理服务。该部分的要点同时也是本文的主要工作有如下几点:网络拓扑:对LabScene中主要元素之间的数据流进行了详细分析,指出了NR自主型网路拓扑在本应用中具有极大的优势,并对系统的流程运行效率进行了分析。对象组织:利用区域结构对LabScene系统中的对象进行层次化的组织,为网络资源提供了访问控制,以其在资源的共享性和安全性方面提供一个较为均衡的解决方案。网络资源端:通过对网络资源的改进,使得网络资源支持多输入输出,并利用缓冲、多线程等方式提高了流程的运转效率,减少了系统的网络开销,提高了网路资源的响应速度。完善的资源体系:通过增加网络资源的种类和数量,形成了一个比较完整的<WP=85>网络资源体系,有力的促进了LabScene实用化。资源粒度的变化:LabScene 致力于将粒度较大的仪器或资源整合在一起形成也更大的仪器系统,我们增加了一些粒度较小的通用资源以利于资源的整合和仪器之间的协作。用户自定义开发:通过为用户提供统一的接口,以及自定义资源的设计指导,使得用户可以开发自己的网络资源,并无缝的集成LabScene系统中来。应用领域的扩展:通过对LabScene的完善,使得LabScene的应用领域的进一步扩大,它不仅可用于实现资源共享与复用,还可以作为一个实验系统和分布式仪器的开发平台。最后本文以用例图、类图、状态图、序列图的形式给出了LabScene网络资源端的设计和实现结果并用几个运行实例证明了LabScene的实用性。LabScene是一个大型的开发项目,因此项目组的管理就显得非常重要,我们在整个系统中吸取CMM的管理模式的优点,全程采用UML建模,比较好的解决了开发过程中出现的问题,及时的达成了预期的目标。