您的位置:网站首页 > CAM

基于VRML的二自由度并联机构仿真

时间:2011-02-28 10:31:22 来源:

  0 引言

  虚拟现实技术(Visual Reality Technology,VRT)是虚拟制造的核心技术之一,有效地改善了人与计算机交互方式,可以逼真地模拟人在自然环境中的视觉、听觉、运动等行为,它具有实时的三维窄间表现能力,提供了人机交互的操作环境,从而产生一种身临其境的感受。随着互联网的飞速发展,虚拟现实技术正逐渐成为一个研究和应用的热点。机械产品3D交互系统是虚拟现实技术在制造业中的一项重要应用,借助VRT,在设计阶段就对产品进行虚拟装配,可克服和避免传统装配技术的缺陷。当前工程界在很大程度上还是依赖于二维图形进行技术交流,大大限制了对机器性能和工作特点的了解。

  VRML(Virtual Reality Modeling Language,虚拟现实建模语言)是目前在Internet上比较成熟的3D建模语言,它能够方便创建与用户进行实时交互的3D虚拟环境,为人们提供最为直观形象的技术资料,通过交互系统观察到所感兴趣的每一个细节,并且其优势在于可以通过互联网直观生动地快速辐射信息。

  本文研究了利用VRML实现机械产品虚拟仿真的一些关键技术,并以二自由度并联机构为实例给出一个交互仿真系统的建立实现过程,说明借助虚拟现实技术可以显示出直观的全方位全角度实体,还可通过系统进行模拟运动过程等,从而达到提高课堂学习兴趣,增强培训效果,促进产品的虚拟设计装配,对机械产品的设计、展示和更新换代有着重要的实际意义。

  1 若干关键问题及其技术

  1.1 VRML与JAVA

  首先需要解决的问题是产品3D模型的可视化浏览。通常CAD数据很难直接以web方式用浏览器显示,目前多采用VRML作为描述产品造型和装配、虚拟制造过程的工具.随着网络带宽和计算机硬件性能的不断提高,作为Web 3D技术主流的VRML正日益推进机械产品三维Web全景展示交互系统的发展。VRML是一种用于通过WorldWideWeb发布三维模型并允许用户使用带有插件的普通浏览器对三维物体进行浏览的国际标准。它本身不具备沉浸感,但是由于其易于实现、适合网络传输,对建立基于Web的三维可视化交互式应用提供了一种很好的解决方案。

  VRML不是一种面向对象的编程语言,它对CAD数据的描述能力也非常有限,VRML2.0中支持简单的行为可用JavaScript来完成一些基本的数学功能和http文件调用的功能。但对于一些较为复杂的工作如场景交互等,鉴于网络的跨平台和程序语言功能,当前Java语言基本上成为了这一应用领域的首选。通过内部Script节点和外部编程接口(EAI)使Java与VRML相结合,应用VRML中的Script节点从VRML场景内部提供了与Java的连接,来实现与VRML场景的交互。

  1.2 系统结构

  可以采用三层Browser/Server结构。虚拟仿真交互系统放置在服务器端并且完成系列工作如更新升级,客户端进行三维显示和交互。在该模式下,网络带宽等资源得不到充分运用,服务器端往往成为网络的瓶颈;而客户端带宽冗余、客户机资源也得不到充分利用。

  在基于P2P的对等结构中,每个节点的地位都是相同的,具备客户端和服务器双重特性,可以同时作为服务使用者和服务提供者。通过使用浏览器在本地和异地浏览模型,团队成员和用户叮以时时地跟踪设计的进度,交互地协作,以优化模型,达到最佳设计目的。两种模式各有优劣,根据实际应用情况选择之一或者是二者的结合嘲。

  1.3 CAD数据信息提取

  VRML在工程上的应用主要受限于其模型为了适应网络传输和通用性建模的需要,在精确性和信息量方面与CAD模型相比存在不足。VRML为了提高实时交互性能,采用基于多边形的模型表面描述,即通过IndexedFaceSet节点描述面的形状并通过面的拼接实现任意形状的几何体外观,这是与CAD模型的区别.当CAD模型转换为VRML模型之后,容易丢失精确性和特征信息,因此CAD模型数据提取直接影响着产品模型仿真及交互系统的逼真度和实时性.目前,实现CAD环境下的信息提取有以下几种可能的途径。

  1)直接利用CAD软件的VRML导出功能;

  2)通过产品模型数据转换标准STEP;

  3)通过CAD软件的API。

  目前主流的CAD软件如UG、ProE都支持VRML格式的输出,可以很方便的将所设计的模型导出(.wrl)格式的文件进入VRML装配环境,通过使用浏览器在本地和异地浏览模型,其缺点在于无法了解转换细节,对仿真模型扩充系统功能限制较大,比较适合用来建立较简单的虚拟现实模型,而后两种方法可以得到更详细的零件信息。对CAD软件导出的STEP文件进行解析可以得到VRML模型和所需的装配模型,对此已作研究。

  2 二自由度并联机构交互系统的实现实例

  2.1 结构分析

  该并联平台机构为平面机构,由机架和连杆组成,如图1所示。机构共有两条支链组成,每个支链为一个平行四边形机构,由一个螺旋剐、两个定长杆和4个转动副组成。两个螺旋副为机构的两个驱动副,当机构的两个螺旋副作为输入时,刀具点的f证蹬参数即会发生变化。

  考虑到机构可能具有从0到6之间任何数目的公共约束,由图1可知该机构总的构件数n=7,运动副数g=8,3个公共约束即λ=3,根据机构的阶数d=6-λ,得d=3,即本机构为三阶机构,fi为第i个运动副的相对自由度数,机构的自由度M可表达如下:

  

  

  图1 并联机构示意图

  根据机构的自由度计算公式(1)可得自由度数M为2。

  2.2 工作流程

  UG有全面的零件实体建模功能,并且可以处理系统级的装配设计,通过数据转换接口就可以将模型转化为所需要的VRML格式。本系统就是利用UG进行各零件实体建模,并使用其装配功能将并联机构平台严格装配,将装配好的零件分别转化为VRML格式。这样就可以省去用VRML语言手工编程来对零件进行装配.再采用Inline节点将各个部分都连到一个文件中,以实现整体交互运动。具体的实现流程如图2所示。基于此思路编程代码量较以往更少,更清晰。

  

  图2 二自由度并联机构仿真实现流程

  2.3 并联机构运动仿真

  对于并联机构各部件主要使用了UG中的实体建模(Solid Modeling)和特征建模(Feature Modeling)两种方法,图3是用UG得到的并联机构平台静态模型。建立部件模型如底座、滚珠丝杠、连杆等之后,在UG中把各部件进行装配得到并联机构的整体装配图。把静态模型导出为VRML格式文件在Vrml环境中实现运动仿真。

  确定部件之间几何关系是解决并联机构运动问题的关键。通过分析计算并联机构的运动方式如平移,斜线,圆周运动等,建立参数方程并进行整合,然后根据相应的运动方程编制程序。例如,在连杆运动方程基础之上,通过inline节点引入构件,调整transform节点、translation和rotation等字段值来改变构件的位置和方向;各构件默认旋转中心是构件的物理中心,而构件实际旋转中心是其端点,所以还需调整center字段值改变其旋转中心。因连杆随同刀架做牵连运动,装配时把连杆所在节点嵌套在刀架节点里,这样给刀架设置运动的同时也设定了连杆的牵连转动,再单独设定连杆绕连杆与刀架交点的转动,就可通过设置两个简单转动确定连杆的复杂运动。丝杠螺母的平动并不是匀速运动,把其分解为随同连杆的牵连转动和相对连杆与丝杠螺母交点的转动即可使机构协调运动。刀架为匀速圆周运动,利用VRML的TimeSensor节点和OrientationInterpolator节点即可实现。根据其它构件的转角与刀架转角之间的关系,确定任一时刻每个构件的转角,从而确定构件的运动位置。图4所示是运动中的一种状态。

  

  图3 二自由度并联机构平台正视图

  

  图4 运动中的二自由度并联机构

  3 小结

  基于VRML的交互仿真技术是一个在不断发展的新课题,由UG生成的VRML场景存在以下问题:通过UG内置的模型转换器或其他公司转换器插件输出的VRML文件包括大量错误或无用代码,且丢失很多UG特效;对于提高客户端与服务器端的交瓦能力等需要作进一步的研究。

  本文给出了并联机构交互仿真实例达到了较好的运动效果,说明人们可以在浏览器上进行多视点、多场景浏览对象,并以多种方式控制场景中物体的运动与交互,使人感受到逼真的并联机构平台,为基于Internet的异地协同和设计结果的异地评价提供支撑环境,探索了在虚拟现实环境中机械机构运动仿真的实现方法。