[1]Sankar Jayaram,Hugh I Connacher,Kevin W Lyons.Virtual assembly using virtual reality techniquesComputer-Aided Design,1997,29(8):575~584
[2]Connacher H I,Jayaram S.Virtual Assembly Design Environment.Proceedings of the Computers inEngineering Conference and the Engineering Database Symposium,ASME 1995:875-885
[3]George Chryssolouris,Dimitris Mavrikios,Dimitris Fragos et al.A virtual reality-based experimentationenvironment for the verification of human-related factors in assembly processes.Robotics and ComputerIntegrated Manufacturing,2000,16:267~276
[4]University of Patras.Laboratory for Manufacturing Systems & Automation [EB/OL].http://lms.mech.upatras.gr/index.html,2004-10-25
[5]Nong Ye,Prashant Banerjee,Amarnath Banerjee.A Comparative Study of Assembly Planning inTraditional and Virtual Environments.IEEE Transactions on Systems,Man and Cybernetics,Part C:Applications and Reviews,1999,29(4):546~555
具体实施方式
一、半沉浸式的机械产品装配工艺规划方法流程
半沉浸式的机械产品装配工艺规划的工作流程如图1所示,其主要分为四个阶段,即模型数据获取阶段、面向生产现场的装配车间建模阶段、初始装配工艺生成阶段和装配工艺后处理阶段。
模型数据获取阶段:设计者对来自商品化三维CAD系统(如Pro/E,UG等)的设计模型数据(主要包括零部件、工具、夹具和吊具模型等)进行转化,获得半沉浸式的机械产品装配工艺规划方法中所需要的中性文件。
面向生产现场的装配车间建模阶段:利用人机交互式的车间布局技术,建立与装配现场高度相似的装配工艺规划沉浸式场景,该场景中包括待装配的零部件、工具、夹具、吊具、操作台等。
初始装配工艺生成阶段:设计者基于建立的虚拟装配车间,人机交互地对产品的虚拟模型进行三维可视化装配,以建立和分析产品各零部件的装配顺序、装配路径、并验证和分析装配工、夹具的空间可操作性,并以此形成产品的初始装配工艺(主要包括装配顺序、装配路径、装配动画、以及装配过程中用到的工夹具等工艺信息)。
装配工艺后处理阶段:在上一阶段形成的初始装配工艺的基础上,补充和完善产品的装配工艺信息,从而形成较为完善的、符合工厂特定格式的装配工艺卡片,同时生成配套清单、工装清单、辅助材料清单等工艺报表。
半沉浸式的机械产品装配工艺规划方法中的“半沉浸”,是指在装配工艺规划的过程中,不追求装配工艺规划全过程都采用沉浸式的虚拟环境,而只是在最需要利用虚拟现实技术的面向生产现场的装配车间建模阶段和初始装配工艺生成阶段中的部分环节,采用沉浸式的虚拟环境;在其它环节,如模型数据获取和装配工艺后处理等,则采用非沉浸式的环境(传统工程环境)。非沉浸式的用户界面主要基于通常的二维菜单、二维鼠标和普通键盘等交互手段和设备,它一般用来完成零部件的管理属性查询、虚拟环境参数设置、装配工艺后处理等功能。而沉浸式的用户界面则主要基于数据手套、位置跟踪器、三维鼠标、立体眼镜和三维菜单,它能使用户沉浸到虚拟环境中,并为用户提供抓取零部件、移动零部件、旋转零部件、释放抓取的零部件等直接三维可视化的交互装配操作功能。这种沉浸式和非沉浸式用户界面相结合的特点,能方便用户灵活处理三维装配工艺规划中的各种活动或操作,同时也充分发挥了沉浸式和非沉浸式用户界面的各自优势。
二、模型数据获取
半沉浸式的机械产品装配工艺规划方法中采用的模型(包括零部件、工具、夹具和吊具模型等)数据格式,与商品化三维CAD系统(如Pro/E,UG等)中的模型数据格式存在着差异,因此需要将商品化三维CAD系统中的模型数据转换成半沉浸式的机械产品装配工艺规划方法中的模型数据格式。
半沉浸式的机械产品装配工艺规划方法中采用中性文件的形式来实现模型信息的表达,对于每一个零件(工具、夹具和吊具),其模型数据由两部分构成,即几何描述文件(文件扩展名为.gdf)和面片模型文件(文件扩展名为.slp),具体含义如下:
几何描述文件(.gdf文件):描述每个零件的相关属性信息,包括各零件的特征组成,几何要素,零件的总体属性(如颜色,材料,密度,重量)等,同时,通过零件名称链接到该零件的几何面片描述文件(.slp文件),其文件形式如图2所示。
面片模型文件(.slp文件):描述零件的几何面片组成,主要由一系列的三角形面片数据组成,其文件形式如图3所示。
三、面向生产现场的装配车间建模
利用虚拟现实建模工具,建立与装配现场高度相似的虚拟装配工艺规划沉浸式场景,包括装配车间、操作台等,同时导入待规划的零部件、工具、夹具、吊具模型数据等(通过中性文件的形式导入),并将以上模型摆放在合适的位置。所建立的沉浸式装配工艺规划场景如图2所示。
四、初始装配工艺生成
初始装配工艺生成主要包括装配顺序和装配路径的确定,装配工具和工装的使用等工艺信息的生成,
初始装配工艺生成主要是基于建立的虚拟装配车间,利用人机交互技术对产品的数字化零部件模型进行装配,以搭积木的形式仿真产品的实际装配过程,以建立和分析产品各零部件的装配顺序、装配路径以及装配工具和工装的定位和安装方法等,同时通过对装配操作的过程和历史信息进行记录,形成产品的初始装配工艺。
1)初始装配工艺生成的基本工作流程
初始装配工艺生成的基本工作流程如图5所示,其基本步骤为:
步骤1:设计者启动沉浸式虚拟环境,零部件初始时被依次排列在虚拟操作台上(如图4所示),用户通过交互设备(数据手套、键盘或三维鼠标等)可以调整自己在虚拟环境中视点位置,在环境中进行浏览;
步骤2:确定待装配组件。
步骤3:利用虚拟手抓取组件(零件或部件)。
步骤4:通过数据手、三维鼠标或键盘等交互设备,在虚拟环境中移动或转动待装组件,使其向装配目标靠近。
步骤5:检测待装组件与虚拟场景中其它虚拟物体(包括操作台、其它零部件、工夹具等)之间的干涉碰撞。
步骤6:如果待装组件与其它虚拟物体发生干涉碰撞,则将待装组件退回到其初始状态,并重新移动或转动该待装组件。
步骤7:记录待装组件的空间轨迹,形成其装配路径。
步骤8:如果需要使用工装,则抓取相应的工装,并进行工装的定位和安装操作,同时对工装操作过程信息进行记录。
步骤9:判断该组件是否装配到位,如果没有,返回步骤4;否则释放该组件。
步骤10:将该组件加入装配序列链表,回到步骤2。图6为在虚拟场景中装配好的变速箱。
在上面装配操作的过程中,设计者可以利用手势、菜单和键盘执行各种命令操作,包括撤消操作、重新开始、查看(隐藏)装配路径、对虚拟环境设置参数进行设置等。
2)装配顺序的记录
产品的装配顺序是通过一个装配任务序列来进行记录的,该装配任务序列的数据存储结构如图7所示。每一个装配任务,都有唯一的装配任务对象(即零件或部件),而且对于装配任务对象是部件(也叫子装配体)的装配任务,其又包含一个下层的装配任务序列,同时对于每一个装配任务,都包含一个装配操作链表,用来描述装配工艺规划过程中的工夹具的安装和定位等装配工艺信息。如图7所示,该产品由一个装配任务序列(AT1,AT2,AT3,…,ATn)组成,其中该装配任务序列中的AT2所对应的任务对象为一个子装配体,该子装配体又由一个下层装配任务序列组成。而下层装配任务序列中的装配任务AT22又包含了一个装配操作序列,该操作序列表示了装配零件22时,需要进行的工具操作、夹具操作和装配基体调整等辅助装配操作工艺信息。
3)装配路径的记录
装配路径记录了虚拟物体从初始方位到目标装配位置的运动过程。在交互式的虚拟装配操作的过程中,当设计者利用三维鼠标、数据手套或键盘直接操纵虚拟物体(包括零部件、工具,夹具等)运动时,该虚拟物体的装配路径是通过记录该物体所经过的一系列离散空间点的位置信息得到的。装配路径通过一个离散点序列来描述:Path={pt1,pt2,pt3,...,ptn},其中pti表示第i个序列节点,可以描述为:pti={xi,yi,zi,αi,βi,γi},其中xi,yi,zi表示该虚拟物体所处的空间位置信息,αi,βi,γi表示其姿态信息。图8为产品的装配路径显示。
半沉浸式的机械产品装配工艺规划方法中对满足以下条件的装配路径点才进行记录(被记录的装配路径点也叫有效采样点),有效采样点需要满足的条件如下:
①虚拟物体的初始位置点,即虚拟物体在装配操作过程中的第一个路径点是有效采样点。
②虚拟物体在装配过程中的第二个采样点也是有效采样点。这是因为第一、二个采样点定义的方向即是虚拟物体的可自由移动方向,亦即初始装配方向。
③虚拟物体的最终装配位置点,即虚拟物体的目标装配位置点,电即虚拟物体在装配过程中的最后一个采样点是有效采样点。
对于其它采样点P,它必须满足方程(1)和(2)才能成为有效采样点:
Dot_product(P1P2,P2P)>=0.0, (1)
其中P是当前采样点,P1和P2是位于P之前的有效采样点。
Distance_product(Pi-1,Pi)>=0.0, (2)
其中Pi是当前采样点,是Pi-1是当前采样点的前一个采用点。
五、装配工艺后处理
装配工艺后处理是在初始装配工艺的基础上,通过交互式的装配工艺编辑,对产品装配工艺进行完善,形成符合工厂实际需求的装配工艺卡,同时输出产品配套表、工装表和辅助材料表等报表。
装配工艺后处理主要是通过提供一个交互式的装配工艺卡片的生成环境(如图9所示),在初始装配工艺的基础上补充和完善产品的其它工艺信息,如辅助材料、专用工装仪表、工序简图、工艺的文字描述、质量检验信息等,从而形成较为完善的、符合工厂特定格式的装配工艺文档。