维修工具使用的可达域计算及可视化方法

2016-11-03 05:25方雄兵田正东林锐李涛涛
中国舰船研究 2016年5期
关键词:可视化界面工具

方雄兵,田正东,林锐,李涛涛

1中国舰船研究设计中心,湖北武汉430064 2海军装备部,北京100841

维修工具使用的可达域计算及可视化方法

方雄兵1,田正东2,林锐1,李涛涛1

1中国舰船研究设计中心,湖北武汉430064 2海军装备部,北京100841

针对开展虚拟维修时相关仿真软件缺乏维修工具使用时的可达性分析功能之问题,提出一种可达域计算方法以及可达域的三维可视化方法。首先,根据虚拟人手臂结构特点,计算出虚拟人手臂尺寸;在此基础上,结合工具的外沿点位置,给出工具使用时的最远可达距离计算方法;基于该距离值及虚拟人手臂长度值计算可达域几何体放大尺度,利用该尺度可以对工具使用时的可达域进行三维可视化。最后,结合Jack仿真软件,Tcl/Tk以及Python语言,实现了维修工具使用可达性的分析功能。仿真实例表明:所实现的方法能满足工具使用时的可达性分析,所提供的仿真报告自动生成功能有助于仿真人员编制报告。

维修工具;可达性分析;可达域;图形可视化;Jack仿真软件

网络出版地址:http://www.cnki.net/kcms/detail/42.1755.TJ.20160921.1348.036.html期刊网址:www.ship-research.com

引用格式:方雄兵,田正东,林锐,等.维修工具使用的可达域计算及可视化方法[J].中国舰船研究,2016,11(5):14-18,41.

FANG Xiongbing,TIAN Zhengdong,LIN Rui,et al.A method for accessible domains computation and visualization in the case of using maintenance tool[sJ].Chinese Journal of Ship Research,2016,11(5):14-18,41.

0 引言

国家军用标准GJB/Z 91-97维修性设计技术手册对可达性进行了定义,指的是产品操作或维修时,接近维修部位的难易程度[1]。可达性验证分析是开展虚拟维修[2-3]和人机工程仿真[4]时的一项重要分析工作,在汽车及飞机驾驶舱布局优化[5-8]、航空环境控制与生命保障舱布局优化[9]、航天器失重状态下的虚拟维修[10]等工程问题中均有重要应用。可达性的研究内容通常包括空间可达性、视觉可达性、操作空间分析等内容[8,11]。在实际的虚拟仿真验证过程中,通常借助可达域包络面来开展维修部件的可达性定性分析,即虚拟维修对象或维修部位在虚拟人可达域包络体内即为可达。上述工作主要研究虚拟人在徒手操作情况下的可达性分析。

对于舰船等复杂装备的维修仿真而言,通常需要在虚拟环境中借助维修工具来完成相关操作,而维修工具使用时的可达性分析对于操作空间的设计和分析验证具有重要意义,但目前流行的仿真分析软件,如Jack或Delmia,仅提供了徒手操作时的空间可达性分析功能,并没有提供工具使用时的可达性三维可视化分析功能。本文主要研究针对工具使用时空间可达性的可视化分析方法。其主要难点在于:如何计算工具使用时工具(操作部位)的可达域以及如何对可达域进行三维可视化展示,并将其几何体绑定至虚拟人人体上正确的位置,以便于用户开展工具使用时的可达性定性分析。

基于上述应用需求及技术难点,本文将提出一种维修工具使用的可达域计算及其三维可视化方法。首先,对维修工具使用的可达性分析流程及要素进行分析研究。然后在此基础上,给出可达域计算方法、维修工具使用的可达性分析功能界面设计方案,并将结合Jack仿真软件实现维修工具使用的可达性分析功能。

1 维修工具使用的可达性分析流程及要素分析

当用户在仿真软件中建立了维修对象仿真模型并调入虚拟人后,需要从维修工具库或本地调入维修工具模型至虚拟场景中,如螺丝刀、锤子、扳手等,并适当调整维修工具至虚拟人左手或右手,通常采用紧握的动作。进一步,用户需要将虚拟人移动至维修对象前,并让虚拟人采用一定的身体姿势,以使得工具操作部位外沿点尽可能达到维修部位。此时,虚拟人可能是直立状态,也可能是俯身或其他姿态。为便于论述,从空间可达性分析的角度给出工具使用时的空间可达性的定义如下。

定义:当虚拟人使用的工具的操作部位外沿点能达到仿真对象的维修部位,且虚拟人人体没有与维修对象及周围环境模型发生硬干涉时,即可认为该维修部位可达。

上述定义中,在干涉检查方面,Jack仿真软件提供了“Collision detection”功能,可实现一个或一组Segment与另一个或一组Segment之间的实时干涉检查。利用该功能,可判断人体是否与其他物体发生干涉。通过对现有的虚拟维修相关文献进行分析,工具使用的可达性仿真分析步骤及可达判定逻辑可描述如图1所示。

图1 维修部位可达性分析的判断逻辑Fig.1The estimation logic for the accessibility analysis of maintained part

从图1可以看出,一个完整的工具使用时的可达性分析流程包含以下要素:维修对象及背景模型、虚拟人、维修工具及其操作部位外沿点、可达域几何体。从功能来看,维修对象与背景模型、虚拟人导入是Jack或Delmia等仿真软件具备的功能。除此之外,还需要具备选择虚拟人及其左/右手、计算可达域及生成三维几何体等功能。

2 维修工具使用的可达性分析功能设计与实现

本节将在对工具使用时的可达性分析流程及要素进行研究的基础上,设计分析界面及其功能。同时,给出可达域计算及其三维可视化方法,并基于Jack软件实现该设计方案及计算方法。

2.1维修工具使用的可达域计算及其三维可视化方法

从可达性分析仿真要素来看,关键在于如何计算可达域并绘制其包络面几何体,利用该几何体可定性分析出维修部位是否在该几何体内。

本文的基本思路是:计算工具使用时的最远可达距离Dis_T,并将Dis_T与未使用工具时(徒手操作时)虚拟人的最远可达距离Dis_none进行比较,结合徒手操作时的可达域几何体,将其放大便可得到工具使用时的可达域几何体。在计算最远可达距离Dis_T时,拟采用虚拟人手臂尺寸加上手腕到工具外沿处的距离。因此,在设计交互界面时,需要具备虚拟人左/右手选择以及工具外沿点选择功能。

完整的可达域三维可视化方法如图2所示。

图2可达域及其包络面计算流程Fig.2Computation flowchart for the accessible domain and its envelope

图2中,工具使用时的最远可达距离Dis_T计算方法如下:

式中,Len_Arm和Len_LowerArm_Dis2T分别表示手臂尺寸和手腕基准点(LowerArm_Distal)到工具外沿点(ToolNode)的距离,计算方法分别为式(2)和式(3)。

式(3)中di(sa,b)表示两点之间的欧氏距离。图2中,计算徒手操作时虚拟人的最远可达距离Dis_none方法如式(4)所示。

式中,Len_Arm与Len_Hand分别为手臂尺寸和手掌尺寸。手臂尺寸计算方法同上,手掌尺寸计算方法如式(5)所示。

根据计算出的Dis_T以及Dis_none后,由图2中的计算方法可以得到可达域包络面几何体的放大系数scale。本文在对可达域进行可视化时,采用了放大原始几何体的方法来实现。

2.2可达性分析界面及功能设计

综合上述分析,设计并实现了如图3和图4所示的可达性分析功能界面。

图3Jack 8.0菜单栏中的可达性分析菜单项Fig.3Accessibility analysis function menu in the menu bar of Jack 8.0

图3为Jack 8.0菜单栏上“虚拟维修仿真应用系统”菜单上“可达性高级分析功能”子菜单项。图4为工具使用的可达性分析界面,该界面包括虚拟人选择、左/右手选择、工具外沿选择、可达域生成、可达域选择、可达域编辑(透明、线框、着色、删除)、截图及报告生成、打开报告等几项操作功能,其中报告生成与打开功能是为了便于仿真人员编制可达性分析报告。

图4 维修工具使用的可达性分析功能界面Fig.4User interface of accessibility analysis function in the case of using maintenance tool

2.3维修工具使用的可达性分析功能实现

在Jack软件基础上,利用Tcl/Tk语言并结合Jackscript和Python语言,实现了如图3和图4所示的操作界面及功能。

2.3.1分析界面实现

首先,在Jack软件菜单栏中增加工具使用的可达性分析子菜单。生成图3所示子菜单的代码如下。

setauto_index(s7reachability)[listsource[file join$dir s7_reachability.tcl]]#语句结束。

并且,在jk.menu文件末尾添加如下代码:jkMenu create s7"可达性分析高级功能"#;

jkMenu command s7"可达性分析"{s7reachability}#语句结束。

上述代码即完成图3中的界面创建。

图4中的界面及部分按钮功能采用Tcl语言编写,保存在jk2.0文件夹中,命名为s7_reachability. tcl。其中,选择虚拟人与选择工具外沿按钮功能代码分别如下。

jsDUobjectSelector$fm0.selhuman"选择虚拟人:"_rcb_current,human-pickType human-objectPtrIndex current,humanPtr-pickOKCommand "rcb_selhuman"#语句结束。

jsDUobjectSelector$fm0.selnode"选择工具外沿顶点:"_rcb_current,node-pickType nodeobjectPtrIndex current,nodePtr#语句结束。

2.3.2可达域计算及可视化功能实现

根据用户选择的虚拟人(Human)及其左/右手信息,分别针对左、右手的可达域进行计算和可视化,部分核心代码及注释如下。

#计算左手尺寸信息代码如下。注:计算右手尺寸信息代码与下面代码类似。

fn='reachability_left.pss'

cl=human.segment.left_clavicle.lateral

xl=xyz(-0.043800,1.607099,-1.570791)*

trans(-0.000001,0.000001,0.000004)

a0=74.488238513892583

a1=distance(human.left_upper_arm.proxi,

human.left_upper_arm.distal)

a1+=distance(human.left_lower_arm.proxi,

human.left_lower_arm.distal)

a1+=distance(node,human.left_palm.base)

以下为可达域三维可视化核心代码。

fp=os.path.normpath(os.path.join(s7path,fn))

fig=scene.LoadFile(fp)

#计算几何体绑定位置:

fig.SetLocation(xl*cl.GetLocation())

#计算几何体放大尺度并放大:

fig.Scale(a1/a0)

#将几何体绑定至虚拟人人体上:

fig.AttachTo(cl)

此外,针对生成的可达域几何体还提供了编辑功能,包括:透明化、着色与线框显示以及删除操作。第3节将对可达性分析功能进行验证。

3 仿真与分析

3.1仿真实例

本节选用蝶形阀作为维修对象,开展工具使用的维修可达性分析验证。具体使用示例及操作步骤如下。

1)启动Jack软件。在仿真场景中调入蝶形阀的维修模型以及维修设备(如桌子)。

2)选择Jack菜单栏上的“舰船虚拟维修仿真应用系统”→“可达性分析高级功能”,弹出如图4所示的界面。

3)选择Jack仿真软件工具栏中的创建男性/女性虚拟人图标,自动生成虚拟人。

4)选择虚拟人及其左/右手:点击图4界面中的“选择虚拟人”右侧的手型图标,然后点击Jack仿真场景中的虚拟人体模型;再选择图4界面中的左手或右手单选按钮。

5)选择工具外沿顶点:首先调入维修工具,维修工具可以来自于“舰船虚拟维修仿真应用系统”中的维修工具库或Jack软件自带的工具模型,将其与选择的虚拟人左手或右手进行绑定(本例中选择Jack自带的螺丝刀模型);然后,利用界面中的“选择工具外沿顶点”手型选择按钮,选择场景中的维修工具上的外沿顶点Node。场景如图5所示。

图5 蝶形阀虚拟维修可达性分析Fig.5Screenshot of the accessibility analysis for butterfly valve

6)生成可达域:该功能根据4)和5)中的选择结果,自动计算并生成虚拟人在使用具体工具时的可达区域,并利用三维图形表达。图6中红色几何体为使用螺丝刀时的螺丝刀外延点的可达域。可以看出,此时几何体内的蝶形阀部件在螺丝刀的可达域范围内。

7)选择、编辑可达域:选择6)中生成的可达域几何体,可对其进行编辑,如透明化显示、线框显示、着色显示或删除该可达域几何体。图7为选择透明化后可达域几何体显示效果。

图6 虚拟人右手使用螺丝刀时的可达域几何可视化Fig.6The geometric visualization effect of the accessible domain for the virtual human using screwdriver with right hand

图7 可达域几何体透明化效果Fig.7The vitrification effect of the accessible domain geometric entity

8)截图并生成报告:选择“截图并生成仿真报告”按钮,自动启动截图程序并生成可达性分析报告,如图8所示。

图8 自动生成的维修工具使用可达性分析报告Fig.8The automatically generated accessibility analysis report in the case of using maintenance tool

3.2分析

从上述仿真案例来看,所实现的功能满足工具使用时的可达性定性分析需求。在计算最远可达距离时,默认工具与手臂是在一条直线上。从理论上讲,当维修工具方向与手臂方向一致时,计算出的距离才最远且满足可达性分析的需要,否则计算出的距离小于Dis_T。

未来工作主要有:

1)可结合VTK和OpenGL等来实现几何体的实时绘制。

2)结合人体上肢生理特性,采用类似于文献[12]中的扫描法或其他采样方法获取可达域几何体表面点云数据,并重建出该可达域包络面。

3)结合人体上肢结构及生理特性,利用正向运动学(Forward kinematics)、逆向运动学(Inverse kinematics)、碰撞检测算法等开展躯干或上肢受约束条件下的可达性分析方法研究,为解决狭小空间下人体上肢姿态受限时维修部件可达性仿真验证提供技术支持。

4 结语

为解决现有仿真软件缺乏维修工具使用时的可达性验证分析功能之问题,本文提出了一种工具使用时的可达域计算及三维可视化方法,并结合Jack软件实现了所提出的方法。实验结果表明:本文的方法在一定程度上改善了现有软件功能的不足,为进一步开展狭小空间下维修作业的可达性分析验证工作奠定了基础。

[1]军械工程学院,空军第一研究院,空军第五研究院,等.维修性设计技术手册:GJB/Z 91-97[S].北京:国防科技工业委员会,1997.

[2]曾毅.基于维修性设计的可达性分析评价技术研究[D].长沙:国防科技大学,2007.

[3]蒋伟.基于虚拟人的维修可达性仿真及评价技术研究[D].长沙:国防科技大学,2009.

[4]马智,薛红军,苏润娥.基于Jack的人体建模与人机工效分析[J].航空计算技术,2008,38(1):97-100. MA Zhi,XUE Hongjun,SU Run'e.Human-modeling and analysis of ergonomics based on Jack[J].Aeronautical Computing Technique,2008,38(1):97-100.

[5]刘小霞,王小平,杨延璞,等.基于人机工程学的消防车器材布局优化设计研究[J].图学学报,2012,33(5):109-113.[6]刘社明,王小平,陈登凯,等.基于Jack的驾驶舱仿真及人机工效分析[J].计算机与现代化,2013(8):106-110. LIU Sheming,WANG Xiaoping,CHEN Dengkai,et al.Cockpit simulation and ergonomics analysis based on Jack[J].Computer and Modernization,2013(8):106-110.

LIU Xiaoxia,WANG Xiaoping,YANG Yanpu,et al. Optimization and research of fire fighting truck'layout design based on ergonomics[J].Journal of Graphics,2012,33(5):109-113.

[7]张源涛,马振利.基于CATIA的某型加油车维修可达性与作业空间分析[J].装备制造技术,2010(2):81-83. ZHANG Yuantao,MA Zhenli.Maintenance accessibility and operating space analysis of a certain type of oil trucks base on CATIA[J].Equipment Manufacturing Technology,2010(2):81-83.

[8]刘西峡,崔晓风,王战军,等.特种车辆维修空间可达性评价方法研究[J].计算机仿真,2012,29(5):107-110. LIU Xixia,CUI Xiaofeng,WANG Zhanjun,et al.Research of space accessibility evaluation method in special vehicle maintenance[J].Computer Simulation, 2012,29(5):107-110.

[9]赵岩,王春慧,周前祥.虚拟人技术在环控生保舱内布局中的应用[J].计算机仿真,2007,24(2):41-44. ZHAO Yan,WANG Chunhui,ZHOU Qianxiang.Application of virtual human technology to environmental control and life support system layout[J].Computer Simulation,2007,24(2):41-44.

[10]李伟,赵佳,张伟,等.载人航天器虚拟维修环境的设计与实现[J].航天器环境工程,2014,31(1):102-106. LI Wei,ZHAO Jia,ZHANG Wei,et al.Design and implementation of virtual maintenance environment of manned spacecraft[J].Spacecraft Environment Engineering,2014,31(1):102-106.

[11]徐达,王宝琦,吴溪.装备维修可达性综合评价方法研究[J].制造技术与机床,2013(6):77-80. XU Da,WANG Baoqi,WU Xi.Method research of equipment maintenance accessibility evaluation[J]. Manufacturing Technology and Machine Tool,2013(6):77-80.

[12]李倩,吉晓明,高峰.上肢可达工作空间的重建[J].中国机械工程,2012,23(21):2568-2572. LI Qian,JI Xiaoming,GAO Feng.Reconstruction of reachable workspace of human limbs[J].China Mechanical Engineering,2012,23(21):2568-2572.

A method for accessible domains computation and visualization in the case of using maintenance tools

FANG Xiongbing1,TIAN Zhengdong2,LIN Rui1,LI Taotao1
1 China Ship Development and Design Center,Wuhan 430064,China 2 Naval Armament Department of PLAN,Beijing 100841,China

A method for accessible domains calculation and its three-dimensional visualization is proposed in this paper,aiming at the shortage in accessibility analysis functions of the related simulation software when developing virtual maintenance in the case of using maintenance tools.Firstly,the size of virtual human's arm is computed according to its configuration structures.Secondly,a technique to calculate the farthest accessible distance is given with the information of tools'remote node point.The magnified scale is calculated by the distance value and the length of the virtual human's arm,and then the scale is utilized to realize visualization for the accessible domain when use the maintenance tools.Finally,the accessibility analysis function mentioned above is implemented based on the Jack software with Tcl/Tk and Python programming languages.The simulation examples show that the proposed approaches satisfy the accessibility analysis in the case of using maintenance tools,and the automatic function that generates simulation reports will lower the burden of simulation personnel.

maintenance tools;accessibility analysis;accessible domains;graphical visualization;Jack simulation software

U672.7

A

10.3969/j.issn.1673-3185.2016.05.003

2015-09-10网络出版时间:2016-9-21 13:48

中国舰船研究设计中心研发基金资助项目;国家部委基金资助项目

方雄兵(通信作者),男,1983年生,博士,工程师。研究方向:计算机图形学,计算机辅助几何设计,舰船虚拟仿真技术。E-mail:fangxb2013@sina.cn

猜你喜欢
可视化界面工具
基于CiteSpace的足三里穴研究可视化分析
自然资源可视化决策系统
思维可视化
自然资源可视化决策系统
微重力下两相控温型储液器内气液界面仿真分析
波比的工具
波比的工具
国企党委前置研究的“四个界面”
一种可用于潮湿界面碳纤维加固配套用底胶的研究
扁平化设计在手机界面中的发展趋势