一种开发虚拟仪器的方法以及虚拟仪器的制造方法

文档序号:9506038阅读:410来源:国知局
一种开发虚拟仪器的方法以及虚拟仪器的制造方法
【专利说明】
【技术领域】
[0001]本发明涉及虚拟仪器开发技术,特别是涉及一种开发虚拟仪器的方法以及虚拟仪器。
【【背景技术】】
[0002]随着被测对象复杂度的提高和对测试时间的要求,用户自定义测试系统的功能成为测量仪器技术面临的最大的挑战。在传统的仪器技术环境下,仪器具备的分析功能都是由仪器供应商来定义的。用户为了满足测量系统需求的不断改变,要么为该产品开发专用的测试解决方案,要么使用通用的测试仪器。
[0003]为了解决仪器终端用户由于测试环境的变化而不断增长的系统重构需求,虚拟仪器技术提出了以软件为中心的仪器系统解决方案,软件取代硬件成为整个系统的核心。目前开发虚拟仪器的主要技术有两种,一种是以美国国家仪器的LabVIEW为代表的开发平台,主要的特点是使用图形化编辑语言代替基于文本的语言编写程序,以框图的形式产生构成虚拟仪器的程序。传统文本编程语言根据语句和指令的先后顺序决定程序执行顺序,而LabVIEW则采用数据流编程方式,程序框图中节点之间的数据流向决定了函数的执行顺序。一种是以Measurement Stud1为代表,提供的一个虚拟仪器集成式套件,包括各种常用的测量和自动化控件、工具和类库,用户采用C++等文本语言可以自定义开发功能构件添加到开发环境中。这种方式充分发挥文本语言、集成套件和自定义构件的特点,可以快速开发集虚拟仪器测量、网络连接和数据库存储为一体的复杂测量系统。
[0004]目前的虚拟仪器技术LabVIEW图形化开发技术和Measurement Stud1为代表的文本语言开发工具,虚拟测量仪器的开发阶段,设计师都是采用程序代码作为粘接剂,程序设计时需经过编码、编译、链接等环节。虚拟测量仪器的应用阶段,使用者脱离了庞大的虚拟仪器开发平台不可能对程序功能进行修改。
[0005]目前虚拟测量仪器技术发展的趋势是终端的使用用户可以自定义虚拟测量仪器的功能和界面。而目前的虚拟仪器开发技术主要是面向测量仪器开发工程师的开发工具,而不是面向测量仪器终端使用者的工具,测量仪器终端使用者不能对所使用的虚拟仪器应用程序的功能和界面进行调整。目前的虚拟仪器开发技术不支持终端用户自定义测量系统的功能和界面。

【发明内容】

[0006]本发明所要解决的技术问题是:弥补上述现有技术的不足,提出一种开发虚拟仪器的方法以及虚拟仪器,可支持终端用户现场装配,对虚拟仪器系统进行在线修改和功能升级。
[0007]本发明的技术问题通过以下的技术方案予以解决:
[0008]—种开发虚拟仪器的方法,包括以下步骤:1)将各个测量资源对应的算法封装成各个标准构件;2)将所有标准构件封装在一起组成虚拟仪器的构件库;3)构造连接件库,所述连接件库包括多个连接件,所述连接件用于连接两个标准构件;4)根据用户的测量应用需求,对构件库中的标准构件和连接件库中的连接件进行装配配置,包括建立连接的步骤、删除标准构件的步骤、增加标准构件的步骤、增加连接件的步骤、删除连接件的步骤。
[0009]—种根据如上所述的方法开发的虚拟仪器,包括构件库、连接件库和装配配置模块,所述构件库包括封装在一起的多个标准构件,所述标准构件由测量资源对应的算法封装而成;所述连接件库包括多个连接件,所述连接件用于连接两个标准构件;所述装配配置模块用于根据用户的测量应用需求,将所述构件库和连接件装配配置成虚拟仪器,装配配置包括建立连接、删除标准构件、增加标准构件、增加连接件、删除连接件。
[0010]本发明与现有技术对比的有益效果是:
[0011]本发明的开发虚拟仪器的方法,将单个的测量资源封装为标准构件,构件装配后可以自组织,自运行。将所有测量资源封装在一起组成现场可装配虚拟仪器构件库。同时,构造连接件库,连接件用于连接两个标准构件。在测量应用功能的动态调整过程中,用户根据测量应用的需要,对构件库和连接件进行动态装配配置,组装成自己所需功能的虚拟仪器。由于通过构件与连接件的连接,构件、连接件的删除、增加等组装成虚拟仪器,因此可支持用户根据需求进行组装,支持终端用户现场装配,对虚拟仪器系统进行在线修改和功能升级。
【【附图说明】】
[0012]图1是本发明【具体实施方式】的开发虚拟仪器的流程图;
[0013]图2是本发明【具体实施方式】的待装配的虚拟仪器的结构示意图;
[0014]图3是本发明【具体实施方式】的装配后满足某一应用需求的虚拟仪器的结构示意图;
[0015]图4是本发明【具体实施方式】中的构件的结构示意图;
[0016]图5是本发明【具体实施方式】中的连接件的结构示意图;
[0017]图6是本发明【具体实施方式】中的构件A和构件B之间通过连接件实现连接后的状态不意图;
[0018]图7是本发明【具体实施方式】中的构件连接的流程示意图;
[0019]图8是本发明【具体实施方式】中的构件A写入数据的流程示意图;
[0020]图9是本发明【具体实施方式】中的构件B读取数据的流程示意图。
【【具体实施方式】】
[0021]下面结合【具体实施方式】并对照附图对本发明做进一步详细说明。
[0022]如图1所示,为本【具体实施方式】中开发虚拟仪器的过程示意图,包括以下步骤:
[0023]1),将各个测量资源对应的算法封装成各个标准构件。
[0024]要开发的虚拟仪器涉及的测量资源包括多种硬件驱动程序、仪器表盘设计内容、信号处理算法等功能构件,将这些单个功能构件封装为标准构件。虚拟仪器是由数据来驱动,标准构件作为核心,即用于接收数据,对数据进行算法处理后,发送数据到另外功能的标准构件。构件装配后可以自组织,自运行。
[0025]本【具体实施方式】中,构件的结构如图4所示
[0026]由于测量资源具备的多样性和扩展性,为确保后续开发的虚拟仪器功能的全面多样性,可将涉及到的尽可能多的功能构件进行封装成标准构件,以满足各种应用需求以及拓展需求。
[0027]2)将所有标准构件封装在一起组成虚拟仪器的构件库。
[0028]3)构造连接件库,所述连接件库包括多个连接件,所述连接件用于连接两个标准构件。
[0029]4)根据用户的测量应用需求,对构件库中的标准构件和连接件库中的连接件进行装配配置,包括建立连接的步骤、删除标准构件的步骤、增加标准构件的步骤、增加连接件的步骤、删除连接件的步骤。
[0030]本【具体实施方式】中,现场可装配的虚拟仪器的结构示意图如图2所示,包括三个部分:虚拟仪器构件库模块100,虚拟仪器连接件模块300和装配管理模块500。开发出的现场可装配的虚拟仪器通过USB、GPIB、VXI总线等与外部的测量硬件连接构成测量系统。其中,装配管理模块500接收用户的需求指示后,根据用户的需求指示,将多个构件通过连接件进行连接,形成满足某一应用需求的虚拟仪器。其结构示意图如图3所示,图中的线条是构件之间进行数据连接的连接件。
[0031]装配管理模块500主要用于实现虚拟仪器的现场装配。进行现场装配配置时,装配管理模块500主要的功能是对现场可编程的虚拟仪器的构件库中的构件、连接件库中的连接件进行操作,主要包括:控制建立连接、删除构件、增加构件、增加连接件、删除连接件等现场装配操作。
[0032]本【具体实施方式】中,构件的结构示意图如图4所示,包括多个子单元,各子单元包括三个部分:数据输入端口,数据发送端口和数据处理模块。连接件作为构件之间的数据传输媒介,主要为构件提供数据的存储管理。连接件的结构示意图如图5所示,包括两个部分:队列管理器和队列。队列管理器用于管理队列的类型和编号,指示队列的可读、可写位置。队列则用于存储数据,以供读写。
[0033]进行现场配置时,最主要的操作是建立构件与构件之间的连接,使得一个构件中的数据通过连接件流向另一个构件。如图6所示,为构件A和构件B之间通过连接件实现连接后的状态示意图。
[0034]构件通过连接件连接后,要实现数据的传输,还涉及如下三个过程:构件连接流程,构件A的数据写入流程,构件B的数据读取流程。
[0035]如图7所示,为构件连接流程示意图,包括以下步骤:
[0036]L1)根据用户的测量应用需求选取需连接的构件A,以及一个连接件;
[0037]L2)选取一构件,定义为构件B ;
[0038]L3)连接件的队列管理器读取构件A的输出端口和构件B的输入端口的类型;
[0039]L4)连接件的队列管理器判断构件A的数据输出端口的类型和构件B的数据输入端口的类型是否一致,如果一致,执行步骤L5);如果不一致,则删除当前的构件B,重新执行步骤L2);
[0040]L5)连接件的队列管理器根据构件A的数据输出端口和构件B的数据输入端口的类型,分配队列,并获取队列的编号;
[0041]L6)设置队列管理器的队列编号和队列类型分别为上述队列的编号、端口的类型,设置队列的起始位置的标志位为可读和可写;通过该设置,队列的起始位置均是可读位置和可写。对于后续构件B而言,起始位置可读,便于读取访问。对于下一次的需要传输数据到连接件的构件而言,起始位置可写,便于写入数据访问。
[0042]L7)设置构件A的数据输出端口和构件B的数据输入端口的队列编号为上述队列的编号。
[0043]如图8所示,为构件A的数据写入流程示意图。构件A的输出端口通过连接件将数据传递给构件B的输入端口,首先需要构件A的数据处理模块通过输出端口将数据写入到连接件的队列,包括以下步骤:
[0044]W1)数据处理模块获取输出端口的队列编号;
[0045]W2)数据处理模块获取队列管理器的可写位置;
[0046]W3)判断此可写位置的标志位是否可写,如果可写,进入步骤W4),如果不可写,则延迟设定时间后返回步骤W2);
[0047]上述步骤W2)获取的可写位置便于快速定位。步骤W3)判断可写位置的标志位,是防止在后续写的过程中被其它构件进行读取操作。当判断不可写时,可能是其它构件读取的不及时,造成不可写。因此此时缓冲延迟一段时间后
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1