APP下载

基于共享子网合成Petri网的协同虚拟维修系统

2015-11-25崔汉国李正民崔霁月海军工程大学动力工程学院湖北武汉430033

中国修船 2015年5期
关键词:子网齿轮箱虚拟现实

李 彬,崔汉国,李正民,崔霁月(海军工程大学 动力工程学院,湖北 武汉 430033)

维修理论

基于共享子网合成Petri网的协同虚拟维修系统

李 彬,崔汉国,李正民,崔霁月
(海军工程大学 动力工程学院,湖北 武汉 430033)

为实现大型复杂装备多人协同虚拟维修训练,解决并行、资源竞争等协同工作问题,提出了面向协同维修的共享子网合成Perti网的过程建模方法,实现了仿真任务的层次化建模、虚拟样机建模、维修过程建模以及视景仿真及程序驱动等关键技术。分析协同系统的功能需求、基于虚拟现实开发平台EON Studio功能节点的人机交互技术和EON X与Visual Studio 2005的集成通信功能,搭建了协同虚拟维修仿真平台的系统框架,开发了协同虚拟维修训练仿真系统。以某型号船舶主动力装置齿轮箱故障轴承维修拆换为例,说明了协同虚拟维修系统的工作过程并对相关关键技术进行了验证。

虚拟维修;协同;合成Perti网

随着数字化技术和虚拟现实技术的发展,维修训练技术已经从传统的实装维修训练发展到以计算机仿真技术与虚拟现实技术结合的虚拟维修训练阶段。同时,随着虚拟维修任务要求的不断提高,特别是针对大型复杂装备及多维修人员参与的维修任务,虚拟维修训练逐渐向网络化协同化维修新模式发展,协同虚拟维修技术因此应运而生。协同虚拟维修技术就是以计算机、网络和虚拟现实等技术为基础,把分散在不同地点、运行于不同计算机平台上的各种维修仿真通过局域网联结在一起,共享一个逼真的虚拟环境,使得维修人员在其中进行各种复杂的训练任务的同时进行实时、同步的协作讨论和交互设计。近年来,计算机支持的协同问题受得到了国内外学者的广泛关注[1-2],虽然国内外很多学者在不同领域对协同问题的研究取得了很多成果[3-5],但对支持多人并行操作的协同虚拟维修系统及其过程建模研究有限。

本文重点研究了协同虚拟维修系统的体系结构并提出面向协同维修的共享子网合成Petri网过程建模方法,结合虚拟现实仿真平台EON Studio开发了非沉浸式协同虚拟维修仿真系统,实现了资源的有效共享和复杂Petri网的同步操作。

1 协同虚拟维修系统体系结构

1.1系统功能需求分析

针对实装维修训练中装备不允许随意拆卸、多人次协同配合训练很难展开、人员的安全无法保障、训练成本高等问题,协同虚拟维修系统的功能需求应主要包括:①构建虚拟维修资源模型,实现设备的虚拟拆装演示;②实现支持协同虚拟维修的各计算资源的有效访问和共享;③实现装备虚拟维修中组织协同的仿真,维修人员可以利用多台计算机共享各地各人的维修经验、维修技术,实现任务和资源的有效调度和分配;④实现用户与非沉浸式虚拟现实系统的实时交互,用户能够通过鼠标、键盘等输入设备对虚拟场景进行维修操作。

1.2系统总体框架

本文采用面向数据的建模方法来构造协同虚拟维修系统,将客观世界存在的实体对象映射成数据表从而形成以数据表为核心的系统架构。针对系统的功能需求,设计了基于协同维修的多层次结构体系,包括界面表现层、业务逻辑层、数据访问层。三个层次中系统功能和业务逻辑主要在业务逻辑层进行处理。

1)界面表现层。界面显示层位于最上层,用于显示和接收用户提交的数据,为用户提供交互式的访问界面。界面显示层将系统分为4大模块即维修装配仿真模块、协同虚拟维修模块、理论知识考核模块以及用户管理模块。

2)业务逻辑层。业务逻辑层是针对系统的需求的具体操作,是整个协同虚拟维修系统的核心。系统采用CATIA软件建立仿真资源的数字样机,将虚拟维修流程分解为任务层、作业单元层、动作单元层3个作业层次。利用虚拟现实软件EON Studio功能节点的人机交互技术与EON X同Visual Studio 2005的集成通信功能,将仿真程序嵌入到基于对话框的Windows应用程序中,用共享子网合成Petri网模型的分析结果驱动虚拟场景并控制整个维修仿真过程。同时通过本层结构实现对数据业务逻辑的处理,包括系统管理及配置管理等。

3)数据访问层。数据访问层把系统对底层运行、维修仿真资源等数据库的访问进行封装,为业务逻辑层或表示层提供服务,避免在业务过程代码中形成重复编码,并且便于后期维护。业务人员只需要根据定义的接口进行编程实现业务逻辑,而无须关心底层数据库的结构。

2 系统实现的关键技术

2.1仿真任务的层次化建模

为了能够准确快捷的控制维修仿真过程,实现对维修活动的建模与封装,必须要对虚拟维修仿真任务进行层次分解从而更好地操控虚拟人执行指定的维修动作。本文参考机械加工工艺过程[6]和现有的虚拟维修仿真任务层次分解方法,将虚拟维修流程分解为维修任务层、作业单元层、动作单元层3个作业层次。

维修任务层是维修人员针对装备可能发生的故障利用工具对设备进行的全部维修操作的统称。作业单元层用来描述虚拟人模型在一段时间内实现某一维修任务而完成的各项维修活动,包括拆装序列规划、故障零件的更换以及基于语义的维修活动。动作层是指在虚拟维修仿真环境中,涉及虚拟维修人员弯腰、转身、取放工具、定位等不同的动作形式。通过任务层-作业单元层-动作层3个层次不仅可以完整地刻画任意维修任务,而且能够更好地支持维修活动的仿真,进而更有效地支持维修分析与评价。3个层次间的作业活动既可以形成前后相依的线性关系也可以同时进行各个层次的作业任务,在仿真任务的流程分解结构图上则体现出一种错综复杂的父子或兄弟关系。

2.2虚拟维修资源建模技术

为了模拟构建真实的虚拟维修环境,协同虚拟维修系统需要建立基本的虚拟维修资源模型,主要包括维修设备的数字样机三维模型、常用维修工具模型以及虚拟人模型。

建立维修设备的数字样机三维模型最重要的原则就是比例准确、结构严谨,所以必须严格按照给定的图纸进行设计。本系统采用参数化建模软件CATIA建立某型号船舶主动力装置的三维模型,然后导入到Deep Exploration 6.0中进行模型数据的优化处理,减少多边形的数目以提高渲染效率,最后将保存的wrl文件导入到虚拟现实开发平台EON Studio中进行虚拟维修场景的构建。

人体建模的基本工作是要构建逼真准确的人体可视化几何模型。本文采用CATIA V5的人体模型测量编辑(Human Measurements Editor)模块,通过修改临界参数建立面向我国人体测量学数据标准的虚拟人几何模型。

2.3基于共享子网合成Petri网的协同维修过程建模

协同虚拟维修条件下,多名维修人员在不同地点、不同计算机终端同时通过网络对同一操作对象进行拆装维修,由于个体用户操作的未知性以及共享资源的有限性,零件的可拆性可能受到用户独立行为间的冲突操作影响,处理不当则会阻滞维修拆装进程,无法模拟真实的维修训练场景,为此需要建立一套完整的建模、分析、控制和优化的方法,本文采用Petri网作为建模分析工具,先建立各个维修人员拆装维修子模型,然后再进行合成得到系统整体模型。

Petri网通过节点与弧组成的有向图来描述系统模型,是一种系统的数学和图形的建模分析工具。库所与变迁节点之间用有向弧来连接,“变迁”的触发受其触发规则控制。Petri网合成操作是复杂系统过程建模的一条重要途径,因而广泛应用于复杂系统的建模过程中。合成操作就是按某种方式将所有子系统结合起来综合成复杂大系统,从而达到通过研究小系统的性质来研究大系统性质的目的。Petri网系统的合成运算中一般可划分为共享合成和同步合成2种合成形式。共享合成可实现合成网系统的资源共享,减少公共资源(特别是非消耗资源,如、维修工具等)的占用,从而达到节省系统资源的目的;同步合成一般用于实现复杂Petri网的同步操作。而共享子网合成Petri网同时具备共享合成和同步合成的优点,既可以实现资源的有效共享,又能实现控制器的同步操作。

现对本文涉及到Petri网的相关概念进行如下基本定义。

定义1:设∑=(P,T;F,M0)是一个简单的Petri网系统,其中P表示变迁,T表示库所,F表示变迁指向库所或库所指向变迁的流关系,M0表示Petri网的初始标识。

定义2:设∑i=(Pi,Ti;Fi,M0i)(i=1,2)是2个Perti网系统,满足下列条件:

P=P1∪P2,P1∩P2≠Φ,

(1)

T=T1∪T2,T1∩T2≠Φ,

(2)

F=F1∪F2。

(3)

若2个Petri网子网N1,N2共享一个单链子网,则可对N1,N2进行合成,N即为共享子网合成网。

以下以维修人员1和维修人员2使用同种维修资源(同一维修工具)替换维修设备的故障零件、替换后对设备重新装配为例,应用Petri网共享子网合成方法进行系统建模。

步骤1:根据设备零件的约束关系,先建立各个维修Petri网子模型。

图1给出了N1的Petri网子模型,其中变迁和库所的含义如下:t1为开始维修;p1为零件1;t2为拆卸零件;p2为零件2;t3为拆卸零件……p8为待拆卸故障零件;t9为拆卸故障零件;p9为替换的零件9;t10为替换故障零件;p10为拆卸出的故障零件;t11为装配零件;p11为完成维修拆装后的装备。对于N2,图2给出了它的Petri网子模型,其中部分变迁和库所的含义类似于图1中的说明。t12为拆卸故障零件;p12为替换的零件9;t13为替换故障零件;p13为拆卸出的故障零件;t14为装配零件;p14为完成维修拆装后的装备。

图 2 Petri网子模型(N2)图

步骤2:若N1,N2共享一个子网,则判断是否有以下公式成立:

∀x,y∈P∪T:W(x,y)=W1(x,y)+W2(x,y),

(4)

式中:W表示从变迁P到库所T的权函数。

步骤3:对N1,N2进行共享子网合成:

N=N1∪N2。

(5)

因为维修人员1和维修人员2可同时共用同一工作台的维修工具替换故障零件,即可共享同一组资源,反映在Petri网模型上,就是对N1,N2进行共享子网合成,得到共享子网合成网N(图3所示),即整体模型。可见,通过共享子网合成可以实现资源的有效共享,减少公用资源的占用,又能实现控制器的同步操作。

图3 共享子网合成Petri网(N)图

2.4视景驱动与程序控制

本系统的虚拟维修场景以及三维可视化模型的交互都是通过虚拟现实软件EON Studio的驱动和路由机制实现的。通过系统中设置的传感器节点clicksensor接收用户指令,然后由路由发送相关的数据信息,通过EON Studio的OutEvent与InEvent 2个接口节点接收Visual Studio 2005中SendEvent函数发送的信息,将共享子网合成Petri网生成的拆卸序列数据链表中的数据传递给EON Studio内部接口Script节点,然后向拆卸过程对应零件的Place节点发送使能信号,驱动对应的零件拆卸,零件经过短暂停留后移动到指定位置,完成拆卸过程。通过Task和Latch节点控制某一零件拆卸完毕后,系统才能读取拆卸链表中的下一个节点,以免造成所有零件同时拆卸的现象。利用Counter节点记录错误拆卸操作的次数。

3 系统实现

本文利用虚拟现实软件EON Studio功能节点的人机交互技术与EonX同Visual Studio 2005的集成通信功能,将仿真程序嵌入到基于对话框的Windows应用程序中,用合成Petri网模型的分析结果驱动虚拟场景进行维修仿真,并控制整个维修仿真过程,完成了协同虚拟维修系统的开发。

船舶主动力装置主要包括柴油机、齿轮箱、动力轴系以及推进装置,下面仅以齿轮箱为例进行说明。疲劳磨损、设计不当以及维护保养不善等原因均能导致齿轮箱的运行故障,其中较为常见的是轴承、轴系及泵体失效。熟练掌握齿轮箱故障轴承维修拆换是维修人员应具备的维修技能之一。

通过三维建模软件CATIA的机械设计模块及人体模型创建模块分别建立齿轮箱、维修工具以及本土化的虚拟人模型。其中齿轮箱零件名称清单列于表1。

表1 齿轮箱三维模型零件清单

利用共享子网合成Perti网过程建模方法对多维修人员协同替换齿轮箱故障轴承进行系统建模,系统模型如图4所示。

图4 齿轮箱协同维修共享子网合成Petri网过程模型图

利用虚拟现实软件EON Studio构建协同维修仿真动画,将生成的仿真动画集成到Visual Studio 2005中,用共享子网合成Petri网模型的分析结果驱动虚拟场景并控制整个维修仿真过程。协同虚拟维修功能模块运行情况如图5所示,窗口上端为主要的功能菜单,包括结构演示、协同虚拟维修、考核系统以及用户管理;左侧区域为通信功能模块,通信界面主要实现了局域网各终端用户间的通信功能;中间区域为协同虚拟维修模块,通过此模块,分布在不同地域不同计算机终端的维修人员可以通过局域网共享完成同一维修任务,分享各人维修经验,实现协同维修;右侧显示了任务的基本信息,同一任务组的成员进行相关操作后,同组其他成员对此操作信息可见。

图5 系统运行图

4 结束语

针对传统设备维修训练中存在的问题,本文开发了基于共享子网合成Petri网的协同虚拟维修仿真系统。在系统多层架构的体系结构基础上,对虚拟维修的仿真任务层次进行分解,提出并实现了共享子网合成petri网的过程建模方法,有效减少了公用资源的占用,实现了资源的有效共享。系统运行提高了协同维修训练效率,减少了训练成本,对其他虚拟维修系统的开发有一定的借鉴意义。

[1] Moreura L O, SOUSA F R C, MACHADO J C. A distributed concurrency control mechanism for XML data [J]. Journal of Compute and System Science, 2011,38(9): 1009-1022.

[2] 袁静,史维峰,郝昂.CSCW系统中协同感知的研究[J].计算机应用与软件,2008,25(8):207-208.

[3] 周思航,刘振宇,谭建荣.面向协同维修拆装仿真的并发操作控制方法[J].浙江大学学报,2012,46(12):2133-2140.

[4] 杨元,黎放,候重远.协同维修过程的合成Petri网建模与分析[J].北京航空航天大学学报,2011,37(6):711-716.

[5] 李世其,冯雅青,王俊峰.网络环境下协同虚拟拆卸平台[J].计算机辅助工程,2013,22(4): 82-86.

[6] 郑焕文.机械制造工艺学[M].北京:高等教育出版社,1994.

To realize multiuser collaborative virtual maintenance training of large complex equipment and solve the collaborative work problems such as parallel and competition for resources,a method based on synthesis of Petri Nets sharing a kind of subnet for modeling collaborative maintenance process was put forward and the key technologies such as hierarchical modeling of the simulation task,virtual prototype modeling,maintenance process modeling,visual simulation and the program driver were realized.Through analysis of the functional requirements of the system,the integrated communication function between EON X and Visual Studio 2005 and the human-machine interaction of the virtual reality development based on EON studio function node,a system framework is presented for multiuser collaborative virtual maintenance simulation training platform and the multiuser collaborative virtual maintenance simulation training system is developed.Taking the fault bearing maintenance conversion for the main power device of a ship gear box as an example,the working process of the system is illustrated and the key technologies of the system are verified.

virtual maintenance;collaborative;synthesis of Petri Nets

TP391

10.13352/j.issn.1001-8328.2015.05.013

湖北省自然科学基金(2014CFB233)

李彬(1990-),男,山东平度人,在读硕士研究生,研究方向为舰船动力装置自动化及仿真技术。

2015-06-11

猜你喜欢

子网齿轮箱虚拟现实
考虑荷电状态的交直流微电网多模式协调控制策略
风电齿轮箱轴承用钢100CrMnSi6-4的开发
虚拟现实技术在中学校园中的应用
子网划分问题研究及应用
航天器多子网时间同步系统设计与验证
提高齿轮箱式换档机构可靠性的改进设计
风口上的虚拟现实
虚拟现实技术向科幻小说借灵感
基于伪故障信号的齿轮箱故障诊断方法
杭州前进齿轮箱集团股份有限公司