摘 要: 针对现有目标拆卸序列求解方法在拆卸并行性规划和计算效率上存在不足的情况,提出了一种目标拆卸序列优化算法。基于球面映射、非正交干涉矩阵以及复合拆卸路径判别等方法的运用与改进,研究了零部件可拆卸性分析方法;应用分层图方法,对目标零件进行定位,结合子装配体识别法,去除冗余拆卸步骤,并提高拆卸过程的并行性。通过实例对该方法的有效性进行了验证。
0 引言
研究装配体在虚拟环境中的拆卸顺序与路径,对于简化产品结构、减少制造成本、提高可维修性具有重要价值。而实际维修过程中针对特定故障零件的拆卸十分常见,因此研究目标拆卸序列规划(Selective Disassembly Sequence Planning,SDSP)对于增强维修人员维修技能、提高维修效率具有重要意义。
近20年间,学者提出各种拆装序列规划算法。智能启发式算法在求最优解方面具有高效性,被广泛用于解决序列规划问题,常见的有遗传算法[1]、蚁群算法[2]、模拟退火法等,但此类方法难以对目标拆卸序列进行优化。关系矩阵[3]可从几何角度生成可行拆卸序列,但只能处理零件沿正交坐标轴拆卸的情况。于嘉鹏[4]等提出扩展干涉矩阵较好地解决了非正交方向可拆卸性分析的问题,但零件初始拆卸方向的判定较为繁琐,且生成序列对于目标拆卸存在冗余拆卸步骤。
本文针对目标零件拆卸方法,在分析零件可拆卸性的基础上,通过基于零件分层图的子装配体识别,定位拆卸目标,去除冗余拆卸步骤,并提高拆卸并行化程度,生成最终目标拆卸序列。通过Delphi对三维CAD软件SolidWorks的二次开发相关技术构建了目标拆卸序列智能规划系统,进行相关理论验证。
1 可拆卸性判别
1.1 初始拆卸方向与初始可拆卸性
利用可见图(Visibility Maps)球面映射Vmap投影[5],将零件接触面fi的可见方向投影到单位球上,记为Vmap(fi)。所有接触面可分为平面接触面与圆柱接触面两种类型(在本文中将螺纹连接简化为圆柱接触面)。平面接触面的Vmap为以S为极轴的单位半球(如图1(a)所示)。柱面接触面的Vmap为单位球中与S同向的极轴(如图1(b)所示)。
设装配体零件数为N,A为与零件ri接触的所有零件,零件ri与A的所有接触面为fi,其中1≤i≤N。对ri中与A的所有接触面的Vmap进行求交运算,可得ri相对于A的可拆卸方向VA(ri),VA(ri)=Vmap(fi)。图2所示为零件ri可沿区域S内的方向拆卸。
根据Vmap投影求解初始拆卸方向,本文提出零件初始可拆卸性定义如下:
定义1.初始可拆卸性。零件ri与其所有接触面经Vmap求交运算所得的可拆卸方向不为空,并且不考虑零件沿此拆卸方向前进的过程中与其他零件所产生的干涉,则认为此零件具有初始可拆卸性。
1.2 非正交干涉矩阵
针对非正交方向,除了基础件的绝对坐标外,还应将各个零件建模时与其几何特征相关的相对坐标(Dix,y,z)定位于装配空间之中。
若在绝对坐标系中,零件r1沿+X方向与零件r2无干涉,则零件r2沿-X方向与零件r1无干涉,即干涉矩阵的列包含列所属零件沿该轴负方向移动时的干涉情况。因此可将方向集简化为S={+X,+Y,+Z,±Dix,±Diy,±Diz}。
称A=[aijs]9×N×N为非正交干涉矩阵(Non-Orthogonal Interference Matrix,NOIM)。NOIM可通过基于轴向包围盒及CAD干涉分析内核的两级干涉检测获取[6]。
1.3 复合拆卸路径
对于具有初始可拆卸性且拆卸路径有转折的零件,称其具有复合拆卸路径。
设零件r1具有初始拆卸方向S,r1的初始接触面为A,当ri沿S方向以一定的步长f位移至P0位置时,ri与A不再接触,称P0为零件ri的节点。若零件具有初始拆卸方向,但位移至节点P0之前与其余零件发生干涉,则此零件不可拆。对于这种情况现有方法[6]无法解决。对此本文提出一种零件复合拆卸路径的判别方法。
确定零件ri从初始位置至节点P0的距离L以及位移步长f。如图3所示,利用基于轴向包围盒(AABB包围盒)求出ri与A在初始拆卸方向-X上的包围盒极值点:Bmin(ri,-x)、Bmax(ri,-x)、Bmin(A,-x)、Bmax(A,-x)。
式中m为移动过程的步进次数。零件ri向节点P0步进移动时,若步长f太大,有可能会遗漏移动过程中的干涉情况;若步长f太小,则会增加运算量,增加干涉检测时间。步进次数m一般取8~10,使步长f相对于零部件几何尺寸比较合适。
ri每前进一个步长对其进行干涉检测,若出现干涉则判定零件不可拆;若无干涉现象,则在节点P0处沿 +X,+Y,+Z三个方向进行干涉检测,如存在某一方向无干涉,则判定零件可拆卸,存在复合拆卸路径,系统记录其路径并对NOIM的对应项进行修正,否则判定不可拆卸。若初始拆卸方向为正交轴方向,在节点P0只进行两个方向的干涉检测即可。
1.4 可拆卸性分析算法流程
本文提出零件的可拆卸性分析算法流程如下:
(1)对所有零件进行扫描,生成初始非正交干涉矩阵A=[aijs]9×N×N,其中S={+X,+Y,+Z,±Dix,±Diy,±Diz}。默认aiis=0。本文将螺纹连接默认为圆柱面接触,故若aijs=0且i为螺纹连接件固定于零件j上,则将aijs标记为“#”(表示虽存在无干涉方向,但连接方式为螺纹连接,被连接件不可拆卸)。
(2)对零件判断其NOIM所对应行向量除“#”外所有元素是否为0。若不是,则零件沿该方向与其他零件有干涉,进入下一步;若是,则判断是否存在“#”,不存在则零件可拆,存在则判断其是否为连接件,是则零件可拆,不是则零件不可拆。
(3)对零件i判断其标准正交轴方向S={±X,±Y,±Z}的NOIM所对应列向量除标记“#”外的所有元素是否为0(即标准正交轴负向)。若不是,则零件沿该方向与其他零件有干涉,进入下一步;若是,则判断是否存在“#”,不存在则零件可拆,存在则判断其是否为连接件,是则零件可拆,否则零件不可拆。
(4)根据Vmap投影判断其初始拆卸可行性。若无初始拆卸方向则该零件不可拆,若有初始拆卸方向则进入下一步。
(5)零件i以一定步长f沿初始拆卸方向移动至节点P0处,零件每移动一个步长,对其进行干涉检测。若存在干涉现象则零件不可拆卸,若无,进入下一步。
(6)判断零件i在节点P0处是否具有可拆卸方向。若是,则零件可拆,记录其复合拆卸路径,对NOIM进行修正,将对应项的值“1”标记为“*”,表示零件i沿此方向与j虽有干涉,但零件i仍可拆卸,系统返回并扫描下一零件;若不是,则判定零件不可拆,系统返回并扫描下一零件。
当i>N时,算法结束,输出修正后的NOIM—A*。算法流程图如图4所示。
2 目标拆卸序列规划
在机械产品的维修过程当中,通常只需对特定的故障零件进行维修或更换,而不必进行完全拆卸,这种拆卸指向性、目的性较强,称之为目标拆卸(Selective Disassembly)。
2.1 基于图方法的目标零件定位
对于得到的NOIM,参考文献[7]采用基于同步约束解除的方法构建零件分层图。以图5(a)所示压力调节器为例,读取其NOIM,将不同层之间具有紧固连接关系的零件用实线连接,具有接触关系的零件用虚线连接,得到如图5(b)所示的零件分层图。
通过基于同步约束解除的零件分层,可以定位需拆卸目标零件的位置,可知哪些零件可同时拆卸以提高拆卸过程的并行性,提高拆卸效率。
2.2 基于子装配体识别的目标拆卸序列优化
2.2.1 关联零件
维修过程中,随着拆卸任务的不同,拆卸的起点、终点及两者之间所涉及的零件也会发生变化[8]。针对目标拆卸,本文提出如下定义:
定义2.为拆卸目标零件所必须先拆卸的零件称为目标零件的关联零件。
设零件分层图共有n层,目标零件r*位于第m层,若零件ri∈[1,m-1]层,且ri与r*接触,则ri为关联零件;若ri为关联零件,ri位于第l层,零件rj∈[1,l-1]层,且rj与ri接触,则rj为关联零件;若ri为关联零件,零件rj与ri同层,且为紧固连接关系,则rj为关联零件。
对装配体R={r1,r2,…,rn},目标零件为rm的拆卸任务TASK[rm],装配体按与目标零件关联性分为两部分:R={R1,R2}。其中R1为关联零件集合,R2为非关联零件集合。装配体关于任务TASK[rm]视为以rm为最终拆卸零件的集合R1的完全拆卸规划问题。
2.2.2 序列优化
装配体通常都包含有子装配体。识别子装配体并将其作为整体进行拆卸,对于提高拆卸作业效率具有重要意义。由多个零件组成的部件,判断其为子装配体的条件如下:
(1)零件数为2,两零件为紧固连接,且组成零件不包括螺栓等紧固件;
(2)零件数大于2但小于零件总数,且组成零件应在分层图上形成封闭的最小环,同时最外层与最内层零件之间包含紧固连接关系[9-10];
(3)满足条件(1)或(2)的子装配体零件集合,如有交集,则合并为一个子装配体。
依据上述判断条件,以图5(a)所示压力调节器结构为例,可成为子装配体的组件有:[1,2,6];[7,8,9];[22,23,24];[18,25,26,27];[29,30]。若排气阀的活塞皮碗损坏需要更换,根据图5(b)所示零件分层图,确定关联零件为26、27、28、29、30。根据子装配体条件识别出子装配体为[25,26,27];[29,30]。最后生成约减分层图如图6所示。要拆卸活塞皮碗25,只需先拆下29、30组成的子装配体,再拆下28,最后拆下25、26、27组成的子装配体即可。整个拆卸过程与完全拆卸的过程相比明显简化。目标拆卸序列规划流程图如图7所示。
3 实例验证
本文基于三维CAD平台SolidWorks以及Delphi开发了目标拆卸序列智能规划系统。系统提取零件的几何、装配信息,生成非正交干涉矩阵(NOIM),进行复合拆卸路径判别,选择步进次数,并对NOIM进行修正,输出修正后的NOIM。
读取NOIM,对零件分层,针对具体维修任务定位目标零件,通过子装配体优化拆卸序列。图8所示为压力调节器通气螺塞拆卸步骤。
4 结论
针对现有方法对于求解复杂装配零件拆卸路径误差较大,解决目标拆卸问题时并行性和效率上存在不足的问题,本文提出较为完善的零件可拆卸性分析与目标拆卸序列规划方法:
(1)结合Vmap投影、非正交干涉矩阵判断零件初始可拆卸性;对螺纹连接形式进行特殊标记,保证拆卸序列规划的正确性;将具有初始拆卸方向的零件进行步进干涉检测直至节点处,应用该方法进行零件复合路径拆卸判别并对NOIM进行修正。该算法有效解决了复杂装配零件拆卸路径求解的问题。
(2)采用零件分层图,定位目标拆卸零件,确定可同时拆卸的零件;划分关联与非关联零件,利用子装配体识别,去除冗余拆卸步骤,优化目标拆卸序列,提高目标拆卸效率。
(3)结合本文零件可拆卸性判别算法和目标拆卸序列规划方法,基于三维CAD软件SolidWorks开发了目标拆卸序列智能规划系统。
参考文献
[1] MARIAN R M , LUONG L H S, ABHARY K. A genetic algorithm for the optimization of assembly sequences[J]. Computers & Industrial Engineering, 2006,50(4):503-527.
[2] WANG J F ,LIU J H, ZHONG Y F. A novel ant colony algorithm for assembly sequence planning[J]. Advanced Manufacturing Technology,2005,25(11):1137-1143.
[3] 吕风县,张桂香,张庆红.基于拆卸和拆卸约束矩阵的装配序列规划[J].现代制造工程,2014(1):21-24,63.
[4] 于嘉鹏,王成恩,张闻雷,等.基于优先规则筛选的装配序列规划方法[J].东北大学学报,2009,30(11):1636-1640.
[5] WOO T C. Visibility maps and spherical algorithms[J]. Computer-Aided Design, 1994,26(1):6-12.
[6] 于嘉鹏,邢宇飞,王成恩.基于扩展干涉矩阵的几何可拆卸性判别方法[J].机械工程学报,2011,47(21):147-156.
[7] 赵鸿飞,张琦,王海涛,等.基于同步约束解除的零件爆炸图自动生成方法[J].中国机械工程,2015,26(1):70-73.
[8] 高检刚,牟鹏,向东,等.拆卸与或图模型中的可拆卸性筛子[J].机械设计与研究,2004,20(4):53-56.
[9] 张鹤娜.机遇子装配体识别和遗传算法的装配顺序规划[D].哈尔滨:哈尔滨工程大学,2011.
[10] ONG N S,WANG Y C. Automatic subassembly detection from a product model for disassembly sequence generation[J]. The International Journal of Advanced Manufacturing Technology, 1999,15(6):425-431.