赖红,卢鑫,许志良
(深圳信息职业技术学院软件学院,广东 深圳 518172)
虚拟仪器系统动态重构管理技术研究
赖红,卢鑫,许志良
(深圳信息职业技术学院软件学院,广东 深圳 518172)
针对目前虚拟仪器平台的功能由仪器厂商来定义而导致测量仪器功能单一和灵活性差的问题,在基于现场可编程虚拟仪器内核和XVIML的基础上提出了的动态可重构虚拟仪器的总体架构,开发了动态重构管理平台管理构件的装配、连接和一致性约束,完成了虚拟仪器系统的开发环境和运行环境的统一,用户可以快速自定义测量系统的功能。
虚拟仪器;动态可重构;工业4.0;XML;
工业4.0提出了未来的制造业的商业模式以产品为中心向以用户为中心转变[1,2],作为制造业的重要组成部分,随着测量应用对象复杂度的不断提高,测量应用系统开发周期不断加快,用户为了满足不断改变的测量应用需求,需要开发专用的测试解决方案,但专用系统的价格昂贵,而通用仪器不容易达到测试要求。因此用户开发自定义测试系统功能成为最新的发展趋势[3-7]。传统的虚拟仪器平台的功能由仪器厂商来定义,用户根据测量系统的需求,根据平台提供的组件进行开发,经过需求分析、详细设计、编码开发、编译和链接、系统测试等环节,测量系统完成后用户无法动态修改和调整;本文提出了基于构件内核的动态可重构的虚拟仪器,通过动态重构管理平台来管理构件的装配、连接和一致性约束,可以快速自定义测量系统的功能。
动态可重构虚拟仪器(Dynamical Reconfiguration Virtual Instrumentation,简称DRVI)能随着用户的需求变化以及测试控制硬件的改变,通过重新设置测量资源和调整测量单元的逻辑顺序结构、改变测量流程,使仪器的测量能力和测量的系统功能发生变化;由于测试对象的改变、测试的信息流程和业务发生了变化,测量系统在用户需求、软件开发、系统测试和维护阶段也会经常需要调整和改变,DRVI通过已有的测量资源和可扩展的插件单元,可提供快速的动态响应的能力[8,9]。虚拟仪器系统的重构过程如图1所示。
图1 虚拟仪器系统的重构过程Fig.1 Reconstruction Process Of Virtual Instrument System
动态可重构虚拟仪器的整体架构,主要由现场可编程虚拟仪器内核(FPVI) 、基于XVIML的测量应用配置文件、XVIML语言解析器、动态重构管理模块、FPVI编辑模块和FPVI运行模块组成,如图2所示。
FPVI内核集成了测试系统构件和连接件,FPVI编辑模块选择构件和连接件进行装配并生成系统配置文件,XVIML解析器解析系统配置文件,动态重构管理模块对构件和连接件进行约束和数据一致性的检查,检查通过后,FPVI运行模块完成虚拟仪器系统的设计
图2 动态可重构虚拟仪器系统架构Fig.2 Architecture Of Dynamic Reconfigurable Virtual Instrument System Architecture
2.1 动态重构过程
基于DRVI的测试系统动态重构的流程如图3所示,用户通过FPVI编辑模块对虚拟仪器内核(FPVI)进行器件芯片选择以及连线设置,XVIML解析器解析FPVI配置信息生成了初始的测量系统。当用户需求发生改变,
通过动态重构管理平台重新配置虚拟仪器内核(FPVI)的芯片以及连线设置,测试系统从当前的配置状态SCIi动态重构到一个新的配置SCIi+1。
FPVI编辑模块主要的功能包括:删除FPVI内核构件、添加FPVI内核构件、建立FPVI内核构件之间的数据连接、删除FPVI内核构件之间的数据连接、重新配置FPVI内核构件之间的数据连接和配置FPVI内核构件的属性配置等动态重构操作,动态重构管理模块(Dynamical Configuration Management Module,简称DCMM)实现FPVI动态重构操作。用户可以使用FPVI编辑模块时,向DCMM提交动态重构操作,也可以重新加载基于XVIML的测量应用配置文件,如SCIi+1,DCMM采集虚拟仪器中FPVI内核构件和连接件的属性和运行信息,根据FPVI内核构件之间的一致性约束对动态重构意图的合法性进行验证,自动解析出动态重构意图,生成新的测量应用系统。
图3 动态重构流程Fig.3 Process Of Dynamic Reconfiguration
2.2 动态重构管理模块
动态重构管理模块支持FPVI内核和连接件的动态变化,包括重构的流程分析,构件和连接件数据的一致性约束算法,动态监控已选内核和连接件的配置信息,控制动态重构的流程,保证动态重构的顺利运行。动态重构管理模块主要包括FPVI编辑器,FPVI动态配置管理,FPVI运行环境,如图4所示。其中动态重构管理的基层是FPVI运行模块;元层是FPVI动态配置管理模块;元控层是FPVI编辑模块。
( 1) FPVI编辑器:用户的动态重构工具,将动态重构操作转换成动态重构标准语法,当系统需求发生变化时,用户通过FPVI编辑环境可以查看FPVI系统信息库中存放的当前系统结构完整的描述信息以及语义信息。
图4 动态重构管理模块的结构Fig.4 Structure Of Dynamic reconfiguration management module
(2)FPVI动态配置模块:FPVI动态配置管理实现用户通过FPVI编辑器生成动态重构意图,主要包括FPVI动态配置管理引擎和FPVI系统信息采集模快;FPVI动态配置管理引擎分析FPVI内核和连接件信息库的语义信息,使用FPVI系统信息采集模块获得FPVI构件和连接件的运行状态,重构意图与运行状态一致的情况下调整构件和连接件,实现动态重构意图;
(3)FPVI运行环境。为系统提供FPVI构件和连接件的运行环境,包括FPVI构件通过连接件的数据传输、FPVI 构件之间事务信息管理、FPVI连接件数据连接的执行等。
FPVI内核的构件模型如图5所示。FPVI构件主要由7部分组成:(1)构件的发送数据端口集合;(2) 构件主动发送数据端口集合;(3)构件的接受数据端口集合;(4) 构件接受数据端口与发送数据端口的内部连接集合;(5) 接收数据端口处理函数集合;(6)发送数据端口处理函数集合;(7) 构件的配置属性;
FPVI内核的连接件模型如图6所示。FPVI内核的连接件的实现主要由4部分组成:(1)连接件接受数据端口集合;(2) 连接件发送数据端口集合;(3) 连接件实现功能集合;(4) 连接件的配置属性集合。
图5 构件模型Fig.5 Component Model
图6 内核连接件模型Fig.6 Core connector model
动态重构管理模块通过FPVI编辑模块删除FPVI内核构件、添加FPVI内核构件、建立FPVI内核构件之间的数据连接、删除FPVI内核构件之间的数据连接、重新配置FPVI内核构件之间的数据连接和配置FPVI内核构件的属性配置等动态重构操作,
3.1 构件删除算法
FPVI构件删除可能导致系统运行状态的中断,构件删除前必须停止接收和发送数据,并删除构件与连接件的连接,FPVI构件的删除算法如下:
(1)关闭构件主动发送数据端口集合;
(2)设置所有正在运行构件进入配置状态;
(3)删除构件的发送数据端口集合和接受数据端口集合关联的所有连接件;
(4)删除构件;
(5)调用构件的运行结束方法(FPVI编辑层逻辑构件和FPVI运行层显示构件的删除处理);
(6)设置所有的构件进行运行状态
3.2 构件添加算法
FPVI构件的添加可能导致系统运行状态的中断,构件添加前必须首先设置所有构件进行配置状态,构件添加后必须通过连接件链接其他的构件与连接件的连接,FPVI构件的添加算法如下:
(1)设置所有正在运行构件进入配置状态;(2)创建新添加的FPVI构件;
(3)配置新添加的FPVI构件与已有构件的连接;
(4)调用新添加的FPVI构件的完成方法(FPVI编辑层逻辑构件和FPVI运行层显示构件的添加处理);
(5)设置所有的构件进入运行状态;
3.3 连接建立算法
FPVI连接件的添加主要实现构件之间的连接,连接件添加前必须首先判断构件是否都已处于配置状态,连接件添加后必须检查构件之间的数据端口是否一致,FPVI连接建立算法如下:
(1)设置所有正在运行构件进入配置状态;(2)创建新添加FPVI连接件;
(3)配置新添加的FPVI连接件构件与已有构件的连接;
(4)调用新添加的FPVI连接件的完成方法(FPVI编辑层逻辑构件和FPVI运行层显示构件的添加处理);
(5)设置所有的构件进入运行状态;
3.4 连接删除算法
FPVI连接件的删除主要删除构件之间的连接,连接件删除前必须首先判断构件是否都已处于配置状态, FPVI连接删除算法如下:
(1)关闭构件主动发送数据端口集合;
(2)设置所有正在运行构件进入配置状态;
(3)删除FPVI连接件;
(4)调用FPVI连接件的运行结束方法(FPVI编辑层逻辑构件的删除处理);
(5)设置所有的构件进行运行状态
3.5 连接重定向算法
FPVI连接重定向是根据系统的需求,删除FPVI构件之间的接收和发送数据端口的联系,重新设置FPVI构件的数据连接,连接件重定向前必须首先判断构件是否都已处于配置状态,FPVI连接重定向算法如下:
(1)设置所有正在运行构件进入配置状态;
(2)删除FPVI构件之间的数据连接;
(3)重新设置FPVI构件之间的连接;
(4)设置所有的构件进入运行状态;
三坐标机械手系统使用武汉德普施公司的三轴控制卡,采用 aduc842单片机芯片,外部存储32K RAM, 16路步进输出,8路DAC,16路开关量,8路ADC,采用RS232和USB接口通信,用于控制三坐标机械手的运动控制卡构件模型如图7所示;
图7 运动控制卡构件模型Fig.7 Motion Control Card Component Model
下面以三坐标机械手为例,描述基于动态可重构虚拟仪器系统的构件装配过程,使用FPVI编辑模块对三坐标机械手控制系统进行动态配置,如图8所示为配置完成的三坐标机械手系统的构件描述以及流程约束关系XVIML配置信息,主要包括FPVI编辑层、FPVI运行层、FPVI构件逻辑连接层的配置信息;
图8 三坐标机械手配置信息描述Fig.8 Configuration Description Of Coordinate Robot
可重构的虚拟仪器平台系统在.NET组件技术的基础上开发FPVI构件和动态重构管理平台,采用.NET平台作为构件的运行环境。基于构件装配的可重构虚拟仪器平台系统如图9所示;根据动态重构配置算法,运动采集卡构件属于主动端口发送构件,删除时候必须首先关闭数据采集端口,删除其他所有的构件后,重新添加控制卡构件和控制按钮控件,得出新的系统逻辑关系图,通过改变机械手中控制卡中的轴属性,可以对不同的轴进行控制,XVIML解析器通过加载不同的应用描述配置文件,动态添加构件、绑定构件、加载连接件语义,对于不同的应用系统可实现快速在线重构。
图9 三坐标机械手运行显示图Fig.9 Run Shown Of Coordinate Robot
用户开发自定义测试系统功能成为主要发展趋势,基于构件的动态重构管理技术解决了系统开发的难题。本文以测试系统的快速动态重构为目标,对虚拟仪器的动态重构管理技术进行了研究;基于可重构虚拟仪器系统的三坐标机械手系统,用户可以在FPVI编辑环境中改变FPVI的构件的连接关系,动态调整测试系统的功能,证明了虚拟仪器动态重构管理技术的正确性、可行性和有效性。
[1]傅建中.智能制造装备的发展现状与趋势[J].机电工程.2014,31(8):959-962.Fu Jianzhong.Development Status And Trends Of Intelligent Manufacturing Equipment[J].Journal Of Mechatronics Engineering.2014,31(8):959-962.(in Chinese)
[2]缪学勤.智能工厂与装备制造业转型升级[J].自动化仪表.2014,35(3):1-5.Miu Xueqin.Intelligent Manufacturing Plant and Equipment to Upgrade[J].Journal Of Automation Instrumentation.2014,35(3):1-5.(in Chinese)
[3]秦树人.虚拟仪器-测试仪器从硬件到软件[J].振动测试与诊断.2000,20(001):1-6.Qin Shuren.Virtual Instruments - Test Equipment From Hardware To Software[J].Journal Of Vibration Measurement &Diagnosis.2000,20(001):1-6.(in Chinese)
[4]汤宝平,谢亭亭,周传德,尹爱军.基于软件体系结构的秦氏模型智能虚拟控件集成框架的研究[J].机械工程学报.2003,39(4):83-86.Tang Baoping,Xie Ting.Research On Software Architecture-based Intelligent Virtual Control Qin Model Integration Framework[J].Journal Of Mechanical Engineering.2003,39(4):83-86.(in Chinese)
[5]秦树人.岩石模型:机械系统大型测试仪器库[J].机械工程学报.2007,43(7):68-73.Qin Shuren.Rock Model:Large Mechanical System Tester Library[J].Journal Of Mechanical Engineering.2007,43(7):68-73.(in Chinese)
[6]何岭松,张登攀,赖红.可重构虚拟仪器系统[J].机械工程学报.2005,41(9):78-81.He Lingsong,Zhang Dengpan,Lai Hong.Reconfigurable Virtual Instrument System[J].Journal Of Mechanical Engineering.2005,41(9):78-81.(in Chinese)
[7]范福玲,韩建勋.基于LabVIEW的压电加速度传感器性能分析测试系统[J].仪表技术与传感器.2009,(1):21-23.Fan Fuling,Han jianxun.LabVIEW Based Piezoelectric Accelerometer Performance Analysis Test System[J].Journal Of Instrument Technique and Sensor.2009,(1):21-23.(in Chinese)
[8]邬惠峰,严义.嵌入式虚拟仪器构件动态重构方法[J].仪器仪表学报.2011,(8):1837-1845.Wu huifeng,Yan Yi.Embedded Virtual Instrument Component dynamic reconstruction[J].Chinese Journal of Scientific Instrument.2011,(8):1837-1845.(in Chinese)
[9]赖红,何岭松.动态可重构虚拟仪器技术[J].仪表技术与传感器.2012,(2):25-27.Lai Hong,He Lingsong.Dynamic Reconfigurable Virtual Instrument Technology[J].Journal Of Instrument Technique and Sensor.2012,(2):25-27.(in Chinese)
Research on the dynamic reconfiguration management technology of virtual instrumentation system
LAI Hong,LU Xin,XU Zhiliang
(School of Software Engineering,Shenzhen Institute of Information Technology,Shenzhen 518172,P.R.China)
Based on field programming virtual instrumentation(FPVI) and XVIML(XML-Based Virtual Instrument Markup Language) model,the architecture of dynamic reconfigurable virtual instrumentation is proposed to solve the problem of single function and bad flexibility of tradition virtual instrumentation.Dynamic reconfiguration management system has been realized to manage assembly,connection and consistency constraints of component.In this way,the development and running environment of measurement system has been unified to realize fast reconfiguration of measurement system.
virtual Instrument;dynamic reconfiguration;industry 4.0;XML
TP274
A
1672-6332(2015)03-0033-05
【责任编辑:高潮】
2015-07-28
广东省高等职业教育教学改革立项项目(201401224)
赖红(1981-),男(汉),湖北省荆州市人,高级工程师,博士,主要研究方向:虚拟仪器、移动应用开发。E-mail:laihong_2000@163.com