一种碰撞检测系统的构建方法

文档序号:9598004阅读:360来源:国知局
一种碰撞检测系统的构建方法
【技术领域】
[0001]本发明涉及虚拟现实及系统仿真技术领域,特别涉及一种碰撞检测系统的构建方法。
【背景技术】
[0002]传统的CAD软件(例如Pro/E、Solidfforks)可以用于制作机械零部件的装配仿真,但是它们存在如下的问题:一是CAD软件在对机械产品进行装配仿真时,只是一种动画的形式,人机交互性差;二是CAD软件在装配仿真时,当两个零件的尺寸不满足公差范围时,仍然能够进行装配,导致出现穿透现象,而这种情况是不符合实际生产中的装配要求的。
[0003]碰撞检测是虚拟装配技术的一项关键技术。碰撞检测的实质就是在同一时刻检测虚拟环境中是否有两个或多个物体占据同一个空间区域。目前比较成熟的碰撞检测方法主要有:包围盒法、空间分割法、图像空间法、距离场法、智能算法等。

【发明内容】

[0004]为了克服上述现有技术的缺点,本发明的目的在于提供一种碰撞检测系统的构建方法,能够有效解决目前CAD软件在机械产品装配仿真过程中出现的穿透现象,而且从视觉和听觉角度使用户感觉到两个零件发生穿透时的响应,具有易于操作、真实性强、效果显著的特点。
[0005]为了达到上述目的,本发明采取的技术方案为:
[0006]—种碰撞检测系统的构建方法,包括以下步骤:
[0007]步骤一:
[0008]在SolidWorks中建立机械部件的三维模型,将建好的三维模型导入到Ε0ΝProfess1nal 中;
[0009]步骤二:
[0010]将Place节点拖动到各个零件节点下,双击该节点,在弹出的属性窗口中设置零件在自动装配过程中沿X轴或Y轴或Z轴走过的距离和所用的时间,以及绕X轴或Y轴或Z轴旋转的角度和所用的时间;
[0011]步骤三:
[0012]将Collis1nObject节点拖动到需要进行碰撞检测的零件节点下,然后单击该节点,在右侧属性窗口的Collis1nGeometryType设置包围盒形状为Convex hull ;
[0013]步骤四:
[0014]将Material2节点拖动到需要进行碰撞检测的零件节点下,单击该节点,在右侧属性窗口中设置材质、颜色,然后将其关联复制到该零件节点下的Material文件夹下;
[0015]步骤五:
[0016]将节点视窗切换为元件视窗,把Colors元件拖动到需要进行碰撞检测的零件节点下,然后将其拖动到逻辑关系设定视窗中,将Collis1nObject节点的Collide输出域与Colors元件代表不同颜色的输入域相连接,将Colors元件的Color输出域分别与Material2节点的Ambient、Diffuse输出域相连接;
[0017]步骤六:
[0018]将立体声节点DirectSound Node拖动到场景节点Scene Node下,双击立体声节点,在弹出的属性窗口中设置声音的大小、选择用于碰撞时的声音文件;
[0019]步骤七:
[0020]将2DText节点拖动到场景节点下,单击该节点,在右侧属性窗口中设置文本为“碰撞检测”,设置字体的颜色、大小,以及文本框的大小、位置、背景颜色;
[0021]步骤八:
[0022]将节点元件视窗切换到逻辑关系设定视窗,然后把Collis1nObject节点、Place节点、2DText节点、Colors元件、Material2节点拖动到该视窗中进行逻辑关系的设定;将2DText节点的OnButtonDown输出域与Place节点的OnRunTure输入域相连接,将Collis1nObject节点的Collide输出域与Colors元件代表不同颜色的输入域相连接,将Colors元件的Color输出域分别与Material2节点的Ambient、Diffuse输出域相连接。
[0023]所述EON Profess1nal 提供了 Bounding sphere、Axis aligned bounding box、Convex hull三种包围几何体,分别对应包围球Sphere、沿坐标轴的包围盒AABB以及离散方向多面体k-D0P三种包围盒。
[0024]与现有技术相比,本发明的有益效果是:
[0025]1)本发明以EON Profess1nal为仿真平台,与同类碰撞检测技术相比,在机械产品装配仿真过程中,可以有效地检测到两个零件是否发生了碰撞,而且当检测到两个零件发生碰撞时,会产生明显的碰撞响应:两个零件停留在碰撞时的位置,发出“砰”的碰撞声,同时两个零件颜色发生变化,能够从听觉和视觉角度提醒用户被检测对象发生了碰撞,效果显著。
[0026]2)本发明原理易于理解,不需要编程,操作简单,对用户没有太多专业知识的要求,可以应用于机械产品的装配仿真领域,还可以应用于机械产品装配环节的研发,实用性强。
【附图说明】
[0027]图1为本发明碰撞检测方法实现的流程图。
【具体实施方式】
[0028]下面结合附图和实施例对本发明作进一步详细说明。
[0029]参见图1,一种碰撞检测系统的构建方法,本发明以数控车床主轴箱的主轴与带轮间的碰撞检测为实例,来详细说明本发明的实现过程,包括以下步骤:
[0030]步骤一:
[0031]在SolidWorks中建立数控车床主轴箱的三维模型,将建好的三维模型导入到Ε0ΝProfess1nal中,该软件会自动为数控车床主轴箱各个零件分配零件节点;
[0032]步骤二:
[0033]设置主轴箱的自动装配,这一过程主要用到Place节点,将Place节点拖动到各个零件节点下,双击该节点,在弹出的属性窗口中设置零件在自动装配过程中沿X轴或Y轴或Z轴走过的距离和所用的时间,以及绕X轴或Y轴或Z轴旋转的角度和所用的时间,通过以上设置,主轴箱的各个零件就可以完成自动装配;
[0034]步骤三:
[0035]在自动装配过程中,由于要避免出现穿透现象,所以需要设置碰撞检测。将Collis1nObject节点分别拖动到主轴节点和带轮节点下,然后单击该节点,在右侧属性窗口的Collis1nGeometryType设置包围盒形状为Convex hull,即凸包围盒形状,这种包围盒可以较紧密地包围物体;
[0036]步骤四:
[0037]将Material2节点分别拖动到主轴节点和带轮节点下,单击该节点,在右侧属性窗口中设置材质、颜色,然后将其关联复制到主轴节点和带轮节点下的Material文件夹下;
[0038]步骤五:
[0039]本例采用Colors元件,而不采用编程的方式,来实现主轴与带轮碰撞后颜色发生变化的碰撞响应。将节点视窗切换为元件视窗,把Colors元件分别拖动到主轴节点和带轮节点下,然后将其拖动到逻辑关系设定视窗设定逻辑关系,将主轴节点下的Collis1nObject节点的Collide输出域与Colors元件的red输入域相连接,将Colors元件的Color输出域分别与主轴节点下的Material2节点的Ambient、Diffuse输出域相连接;同样,将带轮节点下的Collis1nObject节点的Collide输出域与Colors元件的yellow输入域相连接,将Colors元件的Color输出域分别与带轮节点下的Material2节点的Ambient、Diffuse输出域相连接;
[0040]步骤六:
[0041 ] 将立体声节点DirectSound Node拖动到场景节点Scene Node下,双击立体声节点,在弹出的属性窗口中设置声音的大小、选择用于碰撞时发出“砰”的声音的声音文件;
[0042]步骤七:
[0043]将2DText节点拖动到场景节点下,左键单击该节点,在右侧属性窗口中设置文本为“碰撞检测”,设置字体颜色为蓝色,大小为四号字体,设置文本框的宽为100毫米、高为
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1