APP下载

基于装配任务集的装配过程建模研究

2012-07-25杨云斌韦力凡何良莉张怀宇

中国机械工程 2012年11期
关键词:层次结构嵌套组件

杨云斌 韦力凡 何良莉 张怀宇

中国工程物理研究院,绵阳,621900

0 引言

为了在产品设计阶段就对产品装配性能进行评估与验证,近年来提出了用基于数字样机的虚拟装配技术解决装配性评估、优化和验证的方法[1]。装配过程模型描述产品装配仿真的全过程,记录装配仿真过程的所有信息,完整的装配过程模型是装配分析与验证的基础,也是保证虚拟装配模型信息有效、完整表达的重要环节。目前研究装配过程建模的学者不少,但全盘考虑实际装配过程中装配资源、装配人员和装配环境等因素的研究不多,现有的装配模型不能很好地描述装配任务的层次性和并行性,导致建立的装配过程模型与实际装配过程差异较大,限制了虚拟装配技术的工程应用。文献[2]提出的用单向顺序装配任务链来描述产品的装配过程,实现了装配任务与装配约束的时序关系表达,能够很好地描述顺序装配过程,该模型的不足是不能描述装配任务间的层次关系,不能表示可并行开展的装配任务。文献[3]提出了基于层次链的产品装配过程建模方法,该模型考虑了装配任务间的层次关系,但层次链上的节点是一个装配任务,不能反映装配任务的并行特性。本文在分析目前装配过程建模研究的基础上,考虑产品的物理属性,建立了产品层次信息模型及其实现方法;考虑实际装配过程中的产品和装配资源等因素,对装配过程模型的基本单元装配任务进行了详细描述;针对目前的装配过程模型不能同时描述产品的层次性和并行性的情况,提出了基于层次结构的装配任务集链来描述装配过程的方法,该方法能描述复杂产品装配仿真过程中不同层次的装配任务和可并行开展的装配任务。基于上述三方面研究工作建立的装配过程模型,不仅考虑了实际装配过程中装配资源和产品物理属性等因素的影响,而且能很好地描述装配任务的层次结构和并行特性,即能更加完整地描述实际的装配过程。

1 产品层次信息模型的建立

产品层次信息模型是装配过程模型的基础,描述产品装配过程的基本单元装配任务中的许多信息来源于产品层次信息模型[4]。笔者根据产品设计中装配过程的具体特征,分析了装配仿真过程中对于产品数字模型的信息需求,建立了产品层次信息模型,如图1所示。

图1 产品层次信息模型

产品层次信息模型是在设计模型库的基础上,采用二次开发技术,实现从CAD模型中提取零件的几何信息和拓扑信息,如对基于UG的CAD模型,采用其二次开发接口UG/OPEN开发零件信息转换模块,该模块打开一个UG模型文件,先判断模型是单个零件还是装配体,如果是单个零件就遍历该零件的B-rep,获取几何参数,然后离散成多边形输出所需要的格式,如果模型是装配体,则递归遍历子装配直到单个零件为止。在虚拟装配环境中,基于从CAD模型中获取的几何模型,基于二次开发技术,采用交互式定义实现零部件的物理属性及装配特征,产品层次信息模型实现如图2a所示。图2b是一个镜箱门的物理属性定义示例,在虚拟装配环境中选中要定义的镜箱门,系统弹出数据输入窗口,直接输入相关参数实现物理属性定义。

2 装配任务描述

图2 产品层次信息模型实现及示例

装配过程是一系列装配任务的有序组合,装配任务作为装配过程的信息表达单元,是指在虚拟环境中,为完成某个装配单元的装配所实施的一系列操作过程,一个典型装配任务的操作过程包括指定装配基准、抓取零部件、移动零部件和释放零部件等一系列操作。一个典型装配任务应包括装配任务标识、装配序列、任务对象、装配路径和装配时间等,其详细描述如图3所示。

图3 装配任务描述

图3中的装配任务标识是明确装配任务名称,对装配任务进行说明,通过装配任务ID保证装配任务的唯一性。装配序列是一系列操作的有序集,通过装配序列ID来标识,装配序列采用链表的形式记录零部件在虚拟环境中的装配顺序,链表上的每个节点可采用如下数据来描述:

图3中的任务类型包括指定装配基体和零部件装配,指定为装配基体的不需要定义装配约束关系。任务对象是装配任务中所涉及的装配单元、装配工具及辅助工装等,其相关信息可从产品层次信息模型中获取。装配路径是零部件或装配工具的移动路径,反映零部件或装配工具在虚拟装配空间中的运动轨迹,通过装配路径ID来标识。在虚拟装配过程中,将零部件或装配工具的位置和方向以离散节点的形式进行记录,这些节点通过链表的形式组织起来,即可得到该零部件或装配工具的装配路径。链表上的每个节点可用如下数据来描述:

图3中的装配时间包括开始时间与结束时间,如果只通过装配动作所需时间来描述,不能反映出装配动作的起止时间。

3 基于装配任务集的装配过程模型

3.1 基于层次结构的装配任务集链

在虚拟装配仿真中,一个产品的装配过程是由一系列装配任务组成的。复杂产品的装配任务可分为系统层、组件层、零件层等多层结构,上层装配任务依赖于下层装配任务的完成。考虑复杂产品的分层结构和装配任务的并行性,本文提出基于层次结构的装配任务集链来描述复杂产品的装配过程。基于层次结构的装配任务集链ATCLHS如图4所示。图4中Sk、Co、Ps分别表示系统层第k个任务集、组件层第o个任务集和零件层第s个任务集,Ti表示某任务集中的第i个任务,如SkTi表示系统层任务集k的第i个任务,PsTr表示零件层任务集s的第r个任务。

图4 基于层次结构的装配任务集链ATCLHS

基于ATCLHS的装配过程模型首先根据装配仿真的特点,确定装配任务的层次结构,确定具体的分层数,对于每一层装配任务集链,每个节点不再是一个单独的装配任务,而是一个装配任务集,该装配任务集就是一系列可并行开展装配任务的集合,通过该装配任务集来反映实际装配过程中装配任务的并行特性,如组件层任务集C1表示T1,T2,…,Tm任务没有顺序性,可并行开展,也可无序串行开展。对于系统层装配任务集链的任务S2T2,由于其子节点不为空,说明其有下层装配任务集链,即组件层任务集链C1,C2,…,Co。

任务集链的任务集节点,可用如下数据描述:

其中,tasks任务集合是由一系列装配任务ID组成,表示该任务集由那些任务组成。如果next_node后续节点为空集,表示该任务集节点是该层的最后一个任务集。

任务集中的任务,可用如下数据进行描述:

如果任务的子节点为空集,表示该任务没有下层装配任务集链。

采用ATCLHS描述产品装配过程,具有以下主要优点:

(1)层次结构与并行性。ATCLHS支持虚拟装配过程中的并行操作。装配任务集链上的每个节点是一个装配任务集,能够支持同层任务的并行操作。采用分层的描述结构,可以并行地开展下一层的装配任务,然后再在上一层中进行产品的装配,能够体现装配过程的层次结构。

(2)动态性。ATCLHS能够表达虚拟装配仿真过程中的动态过程信息。动态过程信息的记录不仅使设计者能够在虚拟环境中反复分析产品的动态行为,而且为虚拟装配后续环节提供了信息源。特别是对于可并行装配的任务,在仿真中操作者可根据自己的判断,决定装配的顺序,并能动态记录这个装配过程,以便于后期对不同的装配流程进行评价。

(3)回溯性。由于在装配任务描述中考虑了装配时间,并且ATCLHS是基于装配任务集建立的,因此,可同时支持基于装配时间的回溯和基于装配任务的回溯[2],可根据需求选用不同的回溯方法,保证虚拟装配回溯的灵活性,提高装配仿真的效率。

(4)调整性。由于采用分层结构,ATCLHS支持装配任务顺序局部调整。在ATCLHS中,装配过程由一系列不同层次的装配任务集链组成,因此同一层的装配任务集链的装配顺序调整,其影响范围也被局限于该层,而不会对该层的上层和下层的装配任务集链造成影响。

3.2 ATCLHS的实现

为了实现上述数据结构的存储与访问,采用数据库中的嵌套表技术来实现,嵌套表是表中表,一个嵌套表是某些行的集合,它在主表中表示为一列,对主表中的每一条记录,嵌套表可以包含多个行。嵌套表允许在附表中存放关于子表的信息,勿需执行联合操作,就可以通过父表直接访问子表中的记录,这种不经联合而直接选择数据的能力使访问数据效率更高[5]。如针对图4中的系统层装配任务集链表,可通过图5所示的嵌套表形式实现存储与访问,如对装配任务集S2,其“任务集合”字段的内容就是一个嵌套表,它是由S2T1任务ID、S2T2任务ID、…、S2Ti任务ID等多个行组成,通过该嵌套表就能访问装配任务集S2的所有任务ID,并可通过任务ID,从装配任务数据表获得该装配任务的详细信息。对于组件层和零件层的任务链表,可采用同样的方式实现。

图5 系统层装配任务集链的存储与访问

3.3 应用示例

虚拟现实环境采用BARCO Galaxy DLP投影仪和PowerWall显示屏幕,支持三通道立体显示,图形发生器是DELL T7500工作站+Quadro Plex可视化图形服务器,VR外设包括Crystal-Eyes液晶眼镜、六自由度FOB跟踪器和NeoWand六自由度三维交互设备等[6]。利用FOB跟踪Neowand的位姿数据,Neowand作为输入控制设备实现直接操作和系统控制,实现虚拟装配仿真。以一具有两个层次结构的装配过程来说明基于层次结构的装配任务集链的装配过程模型应用,装配任务集链如图6所示,装配任务集及装配任务描述如表1~表4所示。

表1 组件层装配任务集表

图6 装配任务集链

表2 组件层装配任务表

表3 零件层装配任务集表

表4 零件层装配任务表

表2中的C1T1表示组件Ⅱ安装到安装板;C1T2表示组件Ⅰ安装到安装板。表4中的P1T1表示零件Ⅱ安装到组件Ⅱ;P1T2表示零件Ⅲ安装到组件Ⅱ。

当使用NeoWand设备选中安装板,并指定为装配基体时,根据基于装配任务集的装配过程模型,系统提示需先完成组件Ⅱ的组装,即需先完成零件层装配任务,如图7a所示。当使用NeoWand设备选中组件Ⅱ,并指定为装配基体时,系统根据零件层装配任务集链,系统提示安装零件Ⅱ (P1T1)和零件 Ⅲ(P1T2)可并行进行安装,也可无序串行进行安装,此时操作者可选择先装配那个零件,图7b显示操作者已完成零件Ⅲ安装,正在安装零件Ⅱ的装配过程,图7c是组件Ⅱ已安装到安装板的仿真结果。

图7 采用ATCLHS的装配示例

采用基于层次结构的装配任务集链的装配仿真具有以下特点:

(1)当操作者采用不正确的安装流程时,系统可根据装配任务集链给出智能提示。

(2)基于装配任务集链描述装配任务的层次关系,系统可提示操着者正在进行的装配任务所处的层次结构,并引导操作者选择下一个装配任务。

(3)基于装配任务集,系统能给出可并行或无序串行开展的装配任务,记录操作者的不同选择,并记录不同的装配流程,支持后续环节对不同装配流程进行评估,从而选择更优的装配流程。

4 结束语

针对目前装配过程模型不能描述装配任务的层次结构和并行特性的问题,提出了基于装配任务集的装配过程建模方法,并通过嵌套表技术实现装配过程模型的存储和访问,该方法不仅能体现产品的层次结构,反映装配任务的并行特性,而且还能描述装配仿真过程中的动态信息,支持基于装配时间回溯和基于装配任务的回溯。基于装配任务集的装配过程建模方法也为今后协同装配仿真研究奠定了基础。

[1]谭建荣,刘振宇.数字样机:关键技术与产品应用[M].北京:机械工业出版社,2007.

[2]刘振宇,谭建荣,张树有.虚拟环境中产品装配过程回溯方法研究[J].计算机辅助设计与图形学学报,2003,15(11):1432-1436.

[3]侯伟伟,刘检华,宁汝新,等.基于层次链的产品装配过程建模方法[J].计算机集成制造系统,2009,15(8):1523-1527,1544.

[4]刘振宇,谭建荣,张树有.面向虚拟装配的产品层次信息表达研究[J].计算机辅助设计与图形学学报,2001,13(3):223-228.

[5]杨云斌.空域管理与评估系统的设计与实现[D].成都:四川大学,2003.

[6]何良莉,魏发远,王峰军.虚拟布局/装配环境下的人机交互技术研究[J].机械设计,2010,27(5):86-89.

猜你喜欢

层次结构嵌套组件
无人机智能巡检在光伏电站组件诊断中的应用
兼具高自由度低互耦的间距约束稀疏阵列设计
新型碎边剪刀盘组件
U盾外壳组件注塑模具设计
论电影嵌套式结构的内涵与类型
桥梁组件搭配分析
嵌套交易如何实现逆市盈利
基于层次分析法的电子设备结构方案评价研究
基于部件替换的三维模型生成方法
巧用嵌套交易实现逆市盈利