基于知识规则与几何推理的非单调装配序列规划方法
2014-09-25魏小龙
魏小龙,李 原,陈 姣
(西北工业大学 现代设计与集成制造技术教育部重点实验室,陕西 西安 710072)
0 引言
装配序列规划(ASP)经过多年研究,已取得了不少研究成果,建立了相对成熟的装配序列规划体系。然而,现实的产品装配规划是个极其复杂的问题,多数研究者在进行装配序列规划时会对该问题进行一些简化,也即传统的装配序列规划问题只考虑简化的单调装配序列规划问题,其特点是:①规划零件为顺序装配,每次完成两个零件或子装配体间的装配;②零件间的所有装配关系一次建立,且在装配过程中保持不变。
单调装配序列规划忽略了在装配过程中存在的拆装混合、反复试装等非单调情况。为了弥补传统单调装配序列规划算法的不足,专家学者进行了研究:文献[1]针对虚拟装配中装配过程模型信息表达不完整的问题,提出了一种基于层次链的产品装配过程建模方法,对复杂的装配过程进行表示;文献[2]在分析装配单元、装配过程在产品装配过程中引入和退出装配环境的优先关系基础上,提出基于有向图和无向图的连接图模型,建立了集成装配过程信息的装配模型;文献[3]提出了虚拟环境下评价装配模型好坏的依据,并给出了一种分层装配序列规划方法;文献[4]针对自动装配规划和交互式规划都存在不足的情况,将虚拟现实和仿生算法结合起来,提出一种生成优化装配序列的新方法;文献[5]针对卫星装配工艺特点,分析了包含拆装混合信息的装配序列规划问题。上述研究工作都开始涉及到装配序列规划中的非单调情况,但对非单调装配信息模型表达和序列规划技术研究不成体系,没有对非单调的情况做详细分析,所建模型不能很好地辅助生成装配序列,这些都会影响非单调装配序列规划的有效性和实用性。
本文提出了一种基于知识规则与几何推理的非单调装配序列规划方法,通过对非单调装配过程及其特点进行详细分析,采用包含状态信息的层次关联图及装配知识规则两种方式对非单调装配信息进行表达,基于该装配信息进行非单调装配序列的生成。该方法集几何推理的数学严谨性与装配经验知识的灵活性一体,能有效解决非单调装配序列规划问题。
1 非单调装配过程分析
针对非单调装配过程的特点,给出如下定义。
非单调装配顺序定义:对于一个装配顺序,如果每个零件的装配是一次到位的,即对于任一零件,该零件安装后与之前已装配零件之间的相对位置始终保持不变,不被后继的装配操作所更改,则称此装配顺序是单调的。反之,则称此装配顺序是非单调的。如图1所示的装配过程便是非单调装配顺序,因为最后一步的操作改变了子装配1-2的原有结构。
对于非单调装配过程中存在的零部件状态不唯一的问题,传统的以零部件为节点的装配模型无法如实反映。为了完整的表达产品的非单调装配模型,我们引入粗粒度的装配任务类型(Assembly Task,AT)和细粒度的装配状态信息(Assembly State,AS),对非单调装配过程进行表达。
图1 非单调装配过程
装配任务AT:装配任务类型(Assembly Task,AT)是指为完成一个或多个零部件(文中的零部件是指装配过程中的当前操作对象,既可以是子部件,也可以是零件)的装调所需实施的连续过程。通过对不同形式的非单调装配过程进行分析,总结归纳非单调装配过程可能包含的结构形式,我们将非单调装配的装配任务类型分为组装任务、调整任务、拆卸任务。其中组装任务即传统单调装配任务,调整任务和拆卸任务为非单调装配任务。
装配单元AU:一个完整的产品装配流程即将不同的零件或部件按照指定的约束顺序组装成总装配体的过程,其中的零件或部件即称为装配过程中的装配单元(Assembly Unit,Unit)。由概念可知,装配单元节点不严格区分零件和部件,而将零件或部件统一看作其上一级装配体的结构成员。
基于非单调装配过程中装配任务的类型划分,本文对非单调装配过程装配单元(AU)划分为关键节点、组装单元、关联关系组。其中关键节点即包含状态变化信息的非单调节点,关键节点及其状态变化所对应的组装单元构成关联关系组。
装配状态AS:装配过程中零部件状态信息不唯一是非单调装配过程区别与传统装配过程的关键,而装配状态(Assembly State,AS)是非单调装配过程中关键节点在某个时间点的状态表现,它是装配过程中的零件属性信息。以拆卸任务为例,在一个完整的拆卸任务中,每个拆装节点至少包括“装、拆、装”三个状态变迁过程。同时,零件装配状态的变化也对应装配过程的不断完善。
2 非单调装配信息模型的表达
2.1 包含状态信息的层次关联图
对于如卫星装配等结构复杂、零部件种类多的装配体,用传统的装配模型表示会形成组合爆炸的问题,使装配序列规划变得非常复杂。结合前文对于非单调装配过程所做的分析,基于装配任务类型AT和装配状态信息AS,丰富传统层次关联模型的内涵,建立了一个集成零部件状态信息的层次表示模型。在该装配层次模型中,产品的装配模型由装配任务-装配单元-装配状态三个层次。通过装配工艺知识确定子装配体、关联关系组,简化装配层次模型,并生成简化的层次关联图,为后续的序列规划奠定基础。
图2 装配层次关系树
由分析可知,非单调装配多是由于装配作业是面向工艺组织而产生的,其非单调节点定义在相应零件设计阶段、装配工艺规划之前,故关键节点的状态信息及其对应的关联关系组也为已知条件。状态信息层很好地利用了装配过程中的已知信息,丰富了非单调装配体的层次关系树的信息。
2.2 装配知识规则
层次联接关系图从图形角度为装配序列规划提供了完整、清晰的装配体信息。但装配序列规划是数字化装配系统中一个复杂的问题,现如今的单纯的推理算法无法考虑装配过程中出现的拆装混合、重复试装等非单调问题。充分利用装配经验知识,简化装配规划模型,将一些已有的、常见的、符合习惯的装配部件的装配顺序按照一定的描述规范来建立一个规则库,在装配序列生成推理时,将装配体中的任一独立装配单元的联接关系图以及结构的相关装配工艺信息输入规则库中搜索与之相匹配的装配部件,如果结构、功能类似则自动生成装配序列。该方法能在装配序列生成阶段剔除不符合装配工艺的装配序列,提高装配序列规划的效率。
本文将该规则库定义为装配知识规则库。装配知识规则库主要是一系列成熟的装配知识按照一定的描述规范组建成的规则库,而装配知识是指装配工艺人员在长期的日常生产实践中整理、挑选、总结出的装配经验。它由特定领域的描述、关系和过程组成。按照装配知识的特点划分,将其分为两大类。
事实型知识:主要来源于具体产品的装配工艺事实,主要用于同层子装配体之间、稳定的子装配体中所有零件之间装配顺序的判定以及子装配体和基础件的判定。事实型装配知识包括装配基础件判定知识、装配单元的判定知识。
经验型知识:即装配经验型知识,指装配工艺人员在长期日常生产实践中总结出的用于判定独立装配单元中所有零件之间装配顺序的装配经验。经验型装配知识包括装配状态稳定性知识、装配操作方便性知识等。
根据基于装配知识特点的分类建立装配知识规则表,如表1所示。
表1 装配知识规则表
3 基于知识规则与几何推理的序列生成
根据以上分析,提出一种基于知识规则与几何推理的装配序列分段规划方法来解决非单调装配序列生成难题。该方法基本思路是:在数字化预装配平台上,以设计阶段产生的产品层次模型为基础,根据实际需要,由工艺人员依据装配知识规则对层次结构树直接进行调整与重构,从而完成面向装配规划的产品子装配体再划分以及装配序列的初步划分;同时在子装配体划分的基础上,采用几何推理的方法完成子装配体的装配规划,最后完成非单调装配序列的规划。
非单调装配序列分段生成方法总体思路如下,如图3所示。
(1)首先输入装配模型信息,包括层次关系模型、装配信息模型,基于层次装配模型中的联接关系图进行装配基础件定义、子装配体提取;
(2)参考装配工艺信息丰富层次关联图,添加关键节点的状态信息及其对应的关联关系组;
(3)比对装配知识规则库,进一步提取装配信息,构造整个装配体及各子装配体的联接关系图,并将子装配体对应的超结点进行压缩得到层次联接关系图;
(4)基于简化的整体联接关联图及零部件状态信息,进行装配序列生成。参考装配知识规则库,如果存在结构、功能类似的部分则可以直接运用装配经验知识正向推理生成装配序列;如果在装配知识规则库中没有搜索到与之相匹配的装配部件,则利用拆卸法生成各子装配体装配序列;
图3 基于知识规则与几何推理的装配序列生成
(5)正逆向序列结合得到总体装配序列,并采用层次链装配过程模型对装配过程进行记录。
3.1 基于装配知识规则的推理
装配知识推理实质是一个装配序列专家系统,在这个系统中主要是由两个相互独立的装配知识规则库和推理机组成。装配知识规则库中存放着依次按照条件规则标识号、条件表述、适用条件、条件标识号以及相对应的结论规则标识号、结论表述、结论可信度、结论标识号的装配经验知识。推理机主要的功能是实现事实与规则是否匹配的推理决策过程。黑板则主要是用来临时记录条件规则标识号,条件标识号以及结论规则标识号、结论标识号等的有效工具。
在推理装配序列时,首先将装配体中的任一子装配体的装配约束信息以及装配工艺信息确定事实输入装配知识规则库中搜索与之相匹配的装配部件,如果结构、功能类似的规则,则可以计算每一条规则的可信度CF值(一般取值为0.5~1.0之间)并且CF值最大的规则直接输出装配序列;如果在装配知识规则库中没有搜索到与之相匹配的装配部件则推理结束。整个装配知识推理的流程如图4所示。
图4 知识推理流程图
基于上述的基于规则推理的装配序列生成的方法以及前文的装配知识规则库,可针对某些具体和特定条件,快速实现装配序列规划,从而有效解决非单调装配序列规划问题,提高装配序列规划的效率。
3.2 基于优先约束表生成可行序列
对于装配经验知识不能解决的问题,则釆用基于优先约束的几何推理来生成子装配体的装配序列。
产品的装配顺序是由优先约束关系决定的,包括硬约束和软约束两方面。只有满足优先约束的装配顺序才是可行的。采用虚拟环境下人机交互式拆卸的方法生成优先约束。将每个零件的拆卸操作定义为一个拆卸任务,每个拆卸任务记录该零件的拆卸路径、拆卸方向和拆卸工具等信息。虚拟拆卸过程中,根据零件之间的碰撞干涉信息生成硬约束,根据人的经验和知识生成软约束。
定义优先约束表来记录和表达零件之间的优先约束关系。优先约束表来源于产品的装配关联图,是一个n行n列的二维表格,行标题Pi(1<i<n)和列标题Pj(1<j<n)分别表示产品的n个零件。表中的每一个元素Pij表示装配行元素Pi和列元素Pj间的优先约束关系集合。
定义1 如果Pij的值为0,它表示Pi和Pj之间不存在装配联接关系。
定义2 如果Pij的值为1,它表示Pi和Pj之间存在装配联接关系。
定义3 如果Pij的值为1,它表示Pi可以作为第一个装配的基准件。
定义4 如果Pij的值包含优先约束算子“>xi”,它表示Pi和Pj之间的装配必须先于引用联接xi所对应零件之间的装配。
定义5 引用联接“xi”是为了方便表达零件之间的优先约束关系而定义的一个标记。根据需要,任何两个零件之间的装配关系都可定义为引用联接。
基于优先约束列表的子装配体可行序列生成流程如图5所示。
图5 基于优先约束表的可行装配序列生成
4 结语
本文对非单调装配过程及其特点进行了分析,采用包含状态信息的层次关联图及装配知识规则两种方式对非单调装配信息进行表达。最后提出了基于知识规则与几何推理相结合的非单调装配序列生成方法,有效解决了包含拆装混合信息的大型、结构复杂装配体的装配序列生成问题。
[1]侯伟伟,刘检华,宁汝新,等.基于层次链的产品装配过程建模方法[J].计算机集成制造系统,2009,15(8):1522-1527.
[2]张开富,李 原,邵 毅,等.一种集成装配过程信息的装配建模方法[J].西北工业大学学报,2005,23(2):222-226.
[3]Yin Zhouping,Ding Han,Li Hanxiong,Xiong Youlun.A Connector-Based Hierarchical Approach to Assembly Sequence Planning for Mechanical Assemblies.Computer Aided Design,2003,35(1):37-56.
[4]夏平均,姚英学,刘江省,李建广.基于虚拟现实和仿生算法的装配序列优化[J].机械工程学报,2007,43(4):44-51.
[5]张 渊.面向卫星总装的装配建模及规划[D].西安:西北工业大学,2011.
[6]郭晓明,马良荔,徐兴华.复杂约束条件下的分层装配模型[J].计算机工程,2011,37(18):260-263.
[7]李晓枫,王仲奇,康永刚.基于DELMIA的装配过程仿真及其在飞机数字化柔性工装设计中的应用[J].锻压装备与制造技术,2012,(6):92-95.
[8]李 刚,马良荔,郭晓明.交互式拆卸引导装配路径规划方法研究[J].计算机应用与软件,2012,29(10):248-250.
[9]符 磊,余剑峰,张 杰.基于多级骨架模型的关联设计方法研究[J].锻压装备与制造技术,2013,48(4):94-98.
[10]龚志海,叶春生,黄树槐.FDM支撑生成算法及支撑路径规划研究[J].锻压装备与制造技术,2006,41(3):92-94.