2. 兰州理工大学 机电工程学院, 甘肃 兰州 730050
随着计算机辅助工艺规划(CAPP)的不断发展, 企业已经积累了大量丰富的零件数控工艺资源。为了提高数控编程效率, 一种有效的途径就是重用相似局部结构的数控工艺[1]。因此, Huang等[2]提出了一种柔性的局部结构数控工艺重用方法, 通过建立基于特征的数控工艺参数化驱动模型, 检验工艺实例库中相似局部结构数控工艺的相容性, 引入“可重用度”表征可重用工艺对于当前待设计局部结构的可重用性量化指标, 并提出数控工艺的继承机制, 有效实现了局部结构层次的数控工艺重用。但是, 对于待设计零件来说, 工艺实例库中可能存在散布于多个零件三维模型实例上与待制零件各局部结构几何和制造语义均相似的局部结构。如何依据待设计零件各局部结构的多个相似局部结构及其可重用数控工艺生成零件整体最优数控工艺方案, 这个关键问题尚未解决, 这就导致了企业中大量工艺设计资源的冗余和浪费[3]。
CAPP作为沟通上游设计(CAD)与下游制造(CAM)的重要桥梁, 决定了如何利用现有加工资源生产出符合要求的产品。近二十年来, 学术界提出了许多基于启发式算法的工艺规划方法。Liu等[4]将孔加工过程映射为一张动态有向图, 以最小化辅助加工时间为目标, 包括空行程时间和换刀时间, 采用蚁群算法通过在动态有向图中查找最短路径, 获得满足目标的最优加工操作序列。Li等[5]提出一种混合遗传模拟退火算法, 将优化过程分为2个阶段。第一阶段采用遗传算法生成若干初始较优解, 第二阶段采用模拟退火算法搜索最优解和近优解。Yu等[6]综合考虑工艺规划和生产调度优化, 提出一种混合遗传粒子群算法的优化方法。但是, 这些方法对局部结构的数控工艺多备选研究较少, 且尚未与已有局部结构数控工艺重用技术进行有效集成, 导致生成的零件数控工艺方案可能不完全适用于动态变化的生产环境, 柔性较差[7]。
为了解决上述问题, 实现已有数控工艺重用方法在零件工艺规划领域的有效应用, 本文以2.5D铣削零件为研究对象, 提出了一种面向数控工艺重用的工艺优化方法。
1 基本概念定义1 加工操作(operation, op):加工操作是由操作类型、加工阶段、加工机床、加工刀具、进刀方向等要素构成的一种特征加工策略, 以加工特征为依附对象, 可以表示为
< 加工操作 > ∷=[加工特征]( < 操作类型 > < 加工阶段 > < 加工机床 > < 加工刀具 > < 进刀方向 > )
上述公式中, 操作类型包括型腔铣、底面精加工、内型精加工、凸台精加工、转角精加工等; 加工阶段分为粗加工、半精加工、精加工。
定义2 加工操作顺序图(operation precedence graph, OPG):加工操作关系图是一个带权有向图, 图的顶点对应加工操作, 有向边的箭头表示起始点对应的加工操作需先于终端点加工操作之前进行, 边的权值表示两操作之间的距离, 可以表示为
< 加工操作顺序图 > ∷=(顶点, < 边 > })
< 顶点 > ∷=
< 边 > ∷=
其中, 加工操作之间的距离将在下一节详细说明。
2 工艺优化目标函数本文引入向量OP[n]表示零件数控工艺方案, 向量的每一个分量OP[i](0≤i < n)代表一个加工操作opi, 分量的排列顺序即为加工操作的执行顺序。
在OPG中, 有向边的权值表示两加工操作opi、opj之间的距离。本文以加工成本作为评价指标, 详细分析如下。
1) 加工机床成本(MC)。操作opj使用机床k的加工机床成本MCjk可以表示为
(1) |
opj.machine-id为加工操作opj使用的机床索引号, MCIk为使用机床k的成本指数。
2) 加工刀具成本(TC)。操作opj使用刀具k的加工机床成本TCjk可以表示为
(2) |
opj.tool-id为加工操作opj使用的刀具索引号, TCIk为使用刀具k的成本指数。
3) 机床更改成本(MCC)。当加工操作opi、opj使用不同加工机床时, 产生的机床更改成本MCCij可以表示为
(3) |
MCCI为机床更改成本指数。函数ψ1(x, y)表达式如下
4) 刀具更改成本(TCC)。当加工操作opi、opj使用不同加工刀具时, 产生的刀具更改成本TCCij可以表示为
(4) |
TCCI为刀具更改成本指数, 函数ψ2(x, y)表达式如下
5) 装夹更改成本(SCC)。当加工操作opi、opj的进刀方向不同时, 产生的装夹更改成本SCCij可以表示为
(5) |
opj.TAD-id为加工操作opj的进刀方向索引号, SCCI为装夹更改成本指数。
6) 加工操作距离(Dis)。两加工操作opi、opj之间的距离为opj的加工机床成本、加工刀具成本、从opi到opj的加工机床、刀具、装夹变换成本之和, 可以表示为
(6) |
式中, ωi为各因素的权值, 由工艺人员依据启发式规则确定。
7) 总加工成本(TMC)。对于某一加工方案OP[n]来说, 其目标函数为按顺序执行各加工操作所产生的所有加工成本之和, 可以表示为
(7) |
式中, MC0, k为初始加工操作OP[0]的使用机床k的加工机床成本, TC0, m为OP[0]使用刀具m的加工刀具成本。
3 面向局部结构的备选数控工艺方案集生成采用文献[8]方法, 可以从数控工艺实例库中检索到多个与查询局部结构相似的局部结构, 其数控工艺满足重用条件。但是, 由于实际加工环境和数控工艺规划要求的差异, 需要依据实际生产环境和加工要求进行动态修正, 生成查询局部结构备选数控工艺方案集。
依据文献[2], 查询局部结构和局部结构实例在几何、拓扑、制造语义等方面具有很高的相似性。同时, 可重用数控工艺粗加工刀具直径直接决定了可重用度值, 是进行可重用数控工艺选择的重要参考指标, 不可随意更改。因此, 将相似局部结构可重用数控工艺复制给查询局部结构时, 相似特征实例的加工操作, 其操作类型、加工阶段及粗加工刀具参数(包括刀具名称、刀具类型、刀具编号、刀具几何属性等)直接被复制, 无需修改。
另一方面, 精加工的刀具不唯一, 需要根据文献[2]中的精加工刀具直径相容条件, 结合车间加工刀具资源情况, 配置多个可行的加工刀具。同理, 加工机床也是如此, 其参数包括机床类型、所属机床库、机床号等。进刀方向的多解则需要通过对加工特征进行几何推理以获取多个可行的方向向量。精加工刀具、加工机床、进刀方向的多备选方案可以有效适应生产环境及加工要求的变化, 提高工艺优化的柔性, 增加零件全局最优数控工艺方案出现的概率。
4 局部结构数控工艺方案选择待编程局部结构的备选数控工艺集中存在多个可行的数控工艺方案, 在单次的优化计算中, 本文采用轮盘赌算法为查询局部结构从备选数控工艺集中选取数控工艺。可重用度值越大, 则数控工艺被选择的概率越大。由第3部分可知, 选择加工方案的同时, 加工操作类型、加工阶段、粗加工刀具也随之确定, 但是精加工刀具、加工机床、进刀方向存在多个可行解。由于这些可行解之间不存在优先级约束, 所以采用随机选择方法进行选择。待编程零件各局部结构的数控工艺确定后, 对应OPG的顶点也随之确定。依据文献[5]中的加工操作顺序约束规则确定OPG中各有向边及其方向, 依据公式(1)~(6)确定有向边的权值, 则待编程零件的OPG构建完成。
5 基于OPG的蚁群算法由上述可知, 任意一条遍历OPG中所有节点的有效路径都是一个可行的零件数控加工方案, 路径权值之和就是对应的总加工成本。为了搜索OPG中的最短路径, 即最优数控工艺方案, 本文提出一种基于OPG的蚁群算法。
5.1 路径转移概率当蚂蚁r移动到加工操作opi后, 依据各条路径的信息素量和路径的启发信息转移到下一个加工操作opj。在t时刻, 蚂蚁从opi转移到opj的概率为
(8) |
τij(t)为t时刻连接opi和opj的有向边上的信息素, 如下所示。
(9) |
(10) |
ηij为蚂蚁r访问opi后选择opj为下一个执行加工操作的期望程度, 取值为两加工操作距离Dis(opi, opj)的倒数, 式中各参数的意义详见文献[4]。
5.2 算法描述在OPG图中, 蚂蚁下一步可选加工操作集allowedr是不断变化的。当蚂蚁选择下一个加工操作时, allowedr应为此时OPG中入度为0的所有顶点。同时, 当蚂蚁r选择opi时, 意味着opi的所有前驱加工操作已经执行完毕。所以,在搜索过程中,需要allowedr和OPG图进行动态更新, 保证蚂蚁的搜索路径符合加工顺序约束的要求。
基于上述分析, 以图 1为例, 基于OPG的蚁群算法搜索分为以下步骤:
输入:加工操作顺序图G
输出:最优数控工艺集PS={OP[n]i}, 1≤i≤m
步骤1 初始化:设置α=1, β=5, ρ=0.7, Q=100;构建无向图G2, 顶点与G相同, 且两两顶点之间存在一条无向边, 每条边初始信息素τij(0)=0, Δτijr=0;设置蚂蚁数量m=n/2(n为加工操作总数), 蚂蚁编号r=1, 每只蚂蚁禁忌列表tabur=ø, allowedr=ø;设置迭代次数NC=0, 最大迭代次数NCmax=3 000, OP[n]optimal=ø, 最小加工成本TCMmin=5 000 000;
步骤2 将G复制给图G1, 遍历G1, 构建入度为0的顶点集Nf={opk};
步骤3 随机选择初始顶点opi∈Nf;
步骤4 调用cSearch(G1, G2)
procedure cSearch(G1, G2)
1) 蚂蚁r访问G2中顶点opi, 将opi放入tabur, 从G1中删除顶点opi及其关联边;
2) 更新allowed和图G1;
3) 如果G1≠ø, 则依据公式(8)在G2中选择蚂蚁下一步访问的顶点opj, 并重复调用cSearch(G1, G2); 否则, 计算G2中蚂蚁搜索路径P的总加工成本TMCr;
4) 如果TMCr < TMCmin, 则TMCmin=TMCr, OP[n]optimal=Pr; 否则, TMCmin和OP[n]optimal保持不变;
5) 如果r < m, 则r=r+1, 则tabur=ø, allowedr=ø, 转向步骤2;否则将OP[n]optimal放入PS, 转向步骤5。
步骤5 依据公式(9)和(10)更新G2中每条路径上的信息素;
步骤6 如果NC < NCmax, 则NC=NC+1, r=0, OP[n]optimal=ø, 转向步骤2;否则, 输出PS, 结束。
6 算法验证与讨论为了有效验证本文原理和方法的有效性, 以Microsoft Visual Studio 2003为集成开发工具, 在CATIA CAA环境中实现了本文算法, 并在Intel Pentium Dual 2GHz CPU, 2GB内存的PC机上对其进行了测试。
在图 2中, 以某制造企业一个零件三维CAD模型为例验证本文所提方法的有效性。零件由8个局部结构C1~C8(包含18个加工特征, F1, F2, …, F18)组成。假设MCCI=200, TCCI=25, SCI=100, ω1=ω2=ω3=ω4=ω5=0.2。则采用本文方法生成的零件最优数控工艺方案如表 1所示, 总加工成本TMC=1 211.6。
工艺方案 | 加工特征 | 操作类型 | 加工阶段 | 加工机床 | 加工刀具 | 进刀方向 | 加工车间可行加工资源 |
OP[0] | F16 | 型腔铣 | 粗加工 | M02 | T32 | -x | M01(20):数控钻床 |
OP[1] | F17 | 型腔铣 | 粗加工 | M02 | T32 | -x | M02(70):数控铣床 |
OP[2] | F16 | 底面精加工 | 精加工 | M02 | T20 | -x | M03(74):数控铣床 |
OP[3] | F17 | 底面精加工 | 精加工 | M02 | T20 | -x | M04(80):数控铣床 |
… | … | … | … | … | … | … | … |
OP[50] | F11 | 攻丝 | 精加工 | M02 | TT | -z | |
OP[51] | F18 | 钻孔 | 粗加工 | M01 | TD1 | -x | |
OP[52] | F18 | 攻丝 | 精加工 | M01 | TT | -x |
以图 2所示零件为例, 将本文方法与传统基于蚁群算法的数控工艺优化方法进行了对比。对比结果显示, 传统方法需要工艺人员手动创建67个加工操作以完成各加工特征的数控工艺设计, 需要超过1 200次人工交互操作, 编程时间超过240分钟。然而, 采用本文所提方法, 仅需少于150次人工交互, 耗费时间约为37 min, 数控工艺优化效率提高84.58%。同时, 采用交互式编程得到的最优方案的加工成本为1 452.2, 而本文方法得到的最优方案加工成本为1 211.6。显然, 传统方法中各局部结构数控工艺方单一固定, 而本文方法采用了面向数控工艺重用的局部结构数控工艺多备选方法, 每一次优化计算中选择的局部结构数控工艺都不尽相同, 丰富了工艺优化的解空间, 有效提高了获得全局最优解的概率。
7 结论为了实现已有局部结构数控工艺重用方法与零件整体数控工艺规划的有效集成, 本文提出了一种面向数控工艺重用的工艺优化方法。构建了以总加工成本最小为工艺优化目标函数的数学模型; 提出一种面向局部结构的备选数控工艺方案集生成方法; 依据工艺可重用度, 采用轮盘赌算法为待设计局部结构在每次优化计算中选择一个数控工艺方案; 构建待设计零件单次优化的加工操作顺序图(OPG); 提出一种基于OPG的蚁群算法, 得到最优数控工艺方案。实验结果表明, 本文算法能够高效、准确地生成零件最优数控工艺方案, 大大提高了数控工艺规划的效率, 对数控工艺重用技术的推广应用、新一代三维CAPP系统的开发具有重要的指导意义。
下一步的研究工作:(1) 考虑多个相似局部结构可重用数控工艺之间的融合重组; (2) 考虑本文方法与生产调度方法的集成。
[1] | Ruiz P, Kamsu-Foguem B, Noyes D. Knowledge Reuse Integrating the Collaboration from Experts in Industrial Maintenance Management[J]. Knowledge-Based Systems, 2013, 50(9): 171–186. |
[2] | Huang R, Zhang S, Xu C, et al. A Flexible and Effective NC Machining Process Reuse Approach for Similar Subparts[J]. Computer-Aided Design, 2015, 62: 64–77. DOI:10.1016/j.cad.2014.10.004 |
[3] | Demian P, Fruchter R. An Ethnographic Study of Design Knowledge Reuse in the Architecture, Engineering, and Construction Industry[J]. Research in Engineering Design, 2006, 16(4): 184–195. DOI:10.1007/s00163-006-0010-x |
[4] | Liu X, Hong Y, Zhonghua N, et al. Process Planning Optimization of Hole-Making Operations Using Ant Colony Algorithm[J]. The International Journal of Advanced Manufacturing Technology, 2013, 69(1): 753–769. |
[5] | Li W D, Ong S K, Nee A Y C. Hybrid Genetic Algorithm and Simulated Annealing Approach for The Optimization of Process Plans for Prismatic Parts[J]. International Journal of Production Research, 2002, 40(8): 1899–1922. DOI:10.1080/00207540110119991 |
[6] | Yu M, Zhang Y, Chen K, et al. Integration of Process Planning and Scheduling Using a Hybrid Ga/Pso Algorithm[J]. The International Journal of Advanced Manufacturing Technology, 2015, 78(1): 583–592. |
[7] | Li X, Gao L, Wen X. Application of an Efficient Modified Particle Swarm Optimization Algorithm for Process Planning[J]. The International Journal of Advanced Manufacturing Technology, 2013, 67(5): 1355–1369. |
[8] | Huang R, Zhang S, Bai X, et al. An Effective Subpart Retrieval Approach of 3D CAD Models for Manufacturing Process Reuse[J]. Computers in Industry, 2015, 67: 38–53. DOI:10.1016/j.compind.2014.12.001 |
2. School of Mechanical & Electronical Engineering, Lanzhou University of Technology, Lanzhou 730050, China