刘 超,张茂伟,吕玉红,周建超
(中国航发沈阳发动机研究所,沈阳110015)
航空发动机总装装配是指主要位于机匣上的外部附件、管路及支架等小零件的装配,是发动机装配的最终环节,实现发动机的整机供油和润滑系统的功能,直接影响发动机试车及运行[1-2]。稍有疏忽,可能造成管路漏油等,严重时会发生管路断裂甚至发动机自燃。而且,每次发动机维修或保养都需进行总装装配或分解,需要大量的工作时间。因此,总装效率的提高,对航空发动机的研制、使用和维护有重要作用[3-4]。
航空发动机外部结构复杂、零件繁多,如何能以快速准确的工艺方法进行装配,已成为制约发动机装配效率和装配质量的瓶颈,开发高效、标准的外部管路装配方法,制订合理、均衡、流畅的外部管路装配工序是解决该问题的重要途径。
针对区域工作平衡问题,近年来国内外学者进行了大量研究。Borba和Ritt[6]、Miralles等[7]均采用分线定义法解决装配现场的人员配选问题;徐炜达等[8]建立装配线鲁棒平衡的数学模型,通过最大后悔值的鲁棒决策准则的最小化方法求解装配线平衡中任务、时间不确定等问题。就发动机外部结构而言,其同时具有结构和层次的双重复杂性及非线性的特点,包含广阔的装配空间区域。针对这种情况,启发式/元启发式算法具有显著优势。其中,粒子群算法作为其代表性算法,具有求解速度快、鲁棒性好等优点[9]。很多学者针对该算法进行了相应研究。Mandal等[10]将惯性权重与收缩因子结合,提高了针对多维解空间的搜索能力;窦建平等[11]对群体最佳粒子的邻域进行局部搜索,引入简化变邻域搜索算法,增强全局寻优能力;Zhan等[12]结合基于进化态分析的精英学习策略,能自适应调节搜索参数。
本文通过控制不同区域装配的具体管路、小零件的种类和数量,使每名参与总装工作的工人工作量尽量一致且避免交叉,提高各区域装配管路的关联度,缩短发动机总装装配的总时间,不仅有益于提高装配生产效能,减少闲置时间,也有助于均衡生产,满足工人的公平感[5]。
目前,国内对外部管路装配工序的研究较少,更少有明晰的管路装配区域划分方法及划分理论,在发动机总装过程中存在如下问题:
(1)现有工艺方法并行度较差,涉及工序的工作密度低,无法满足几名工人同时进行总装工作的需求,装配效率低;
(2)装配者现场操作按照习惯对所有外部管路进行装配,不合理的区域划分忽略了管路间的相互关联,不同操作者配合工作时,易产生管路装配应力,影响装配质量。
(3)发动机外部结构包含几百根管路,外部支架、附件以及卡箍、螺钉、锁片等小零件数量更大,且种类繁多,各机件间内外层叠,涉及工序复杂,所有小零件均无特定工序归属,难以保证所有小零件装全、装对。
为此,需要对总装的工艺方法进行优化改进,规划总装优化方案。实施总装优化方案有如下目的:
(1)对总装工序进行并行划分,针对发动机外部的整体结构划分管路装配区域,以清晰总装工序,对总装有分块的概念。使总装工艺适合多人并行工作,明确每个工作区域的装配工作,提高管路装配效率;
(2)考虑管路间的关联程度和工作内容,划分总装区域,避免产生管路装配应力,平衡不同装配人员的工作内容;
(3)明确每个操作者在整个总装过程中所需要的零件和组件,减少每个人负责的机件数量,降低总装工作难度,提高总装集件的准确性。
为量化评价区域划分的合理性,要定义总装工作区域模型。首先,依据发动机外廓尺寸及外廓各部分的管路疏密,确定总装优化区域数;然后,依据每个区域的空间大致范围,确定每个区域的工作中心点;最后,以该中心点为基点,确定各区域所包含的附件、管路、卡箍、小零件等工作区域包含的机件,形成区域机件目录。因此,总装工作区域模型即为不同附件、管路、卡箍、胶圈、锁片、支架以及其他小零件的集合。不同工作人员只对该集合内的机件进行装配操作。
结合发动机总装工作的基本特征,做基本假设如下:
(1)总装优化只针对单一型号发动机,发动机版本更新或其他型号发动机总装区域划分需要重新进行分析计算;
(2)装配对象的总数量已知且固定,工装、备件充足,不考虑缺件或因工艺、工装不完善导致操作无法执行的情况;
(3)不考虑装配人员的技能水平对装配时间的影响;
(4)所有类型相同的零件装配时间相同,不考虑机件体积不同及其装配位置不同对装配时间造成的影响;
(5)不考虑装配人员取拿零件和工具以及工作间断带来的时间损失。
基于上述基本假设,本文定义的符号见表1。
将发动机外部结构分为N个工作区域,任意装配站ith(i=1,2,…,N)内包含j道工序,每道工序jth(i=1,2,…,Ni)内包括nijk(k=1,2,…,7)个零件,k 值取 1~7分别对应工序内管路、单联卡箍、双联卡箍、胶圈、螺钉、锁片及其他小零件,如图1所示。
表1 符号定义
图1 航空发动机外部结构
设tk(k=1,2,…,7)分别对应单个不同类型零件装配所用的时间。则每个区域单独工序所需要的装配时间为
式中:装配时间tk作为输入值预先给定;nijk为装配机件数量,由2进制变量qijm累计求得
式中:qijm为区域内工序Mij内的阶跃函数,针对每个需要装配的机件在每道工序内突变1次,以表示机件是否在该工序内装配。
每道工序内主要包括nijk个零件,每个零件的几何中心到总装区域中心距离为dijks(k=1,2,…,7;s=1,2,…),s为某类型下该零件的具体序号。ak(k=1,2,…,7)分别对应单个不同类型零件针对装配距离的影响系数。
则工序内所有零件对区域中心的距离加权之和为
如果机件在总装区域工序内安装,则计算机件与该装配区域的加权距离,如果机件不在工序内安装,则不计算该距离,设每个机件对各区域中心的中心距离为,则dijks=。
针对工序内所有零件的关联度,可以通过其是否接触定义。管路附件的具体连接状态如图1所示,若管路与区域内附件直接接触,则定义管路与该总装区域关联度为1,否则为-1;卡箍一般不与附件直接接触,但卡箍通过管路与附件间接关联,因此规定,若卡箍与附件直接相连的管路相接触,则其对区域的关联度为0.5,否则为-1;螺钉、锁片等其余零件或与附件相连、或与管路相连,分别设其对区域的关联度为1及0.5,否则为-1。由此,可定义工序内所有机件关联程度rijks(k=1,2,…,7;s=1,2,…)。取bk(k=1,2,…,7)分别对应单个不同类型零件针对关联程度的影响系数。则工序内所有零件的关联度加权之和为
如果机件在总装区域工序内安装,则计算机件与该装配区域的加权关联度,如果机件不在工序内安装,则不计算该关联度,设每个机件对各区域的关联程度为,则
为使总装区域划分更加合理有序,基于上述定义和推导,优化目标量化为
式中:目标函数f1为最小化装配时间的平滑指数,平衡各区域之间的工作时间,减小站内工序间的负载差异;Ti为第i个区域装配工作所需要的总时间,Ti=为所有装配区域工作的平均时间Ti;目标函数f2为最小化所有装配距离的平滑指数,用于使装配工作中各区域工人所需移动的距离尽可能一致;Di为第i个区域装配各机件到装配区域中心的总工作距离为所有装配区域内各机件到相应装配区域中心的总工作距离平均值,D=;目标函数f3用于最大化装配区域内的机件关联度,每个区域内所装配机件的关联程度尽可能大,提高装配质量同时,权重系数wm(m=1,2,3)用于控制目标函数f1到f3间的比例权重。
考虑环境等因素的综合作用,本文设定的约束如下:
约束1:对于任意机件,2进制变量
约束2:直接相连的2根管路,必须属于同一工序;
粒子群优化算法(Particle Swarm Optimization,PSO)在1995年由美国普渡大学Kennedy和Eberhart博士提出,该算法在动态目标寻优以及多目标问题寻优方面具有求解质量高、迭代速度快、鲁棒性好等优点[9]。
设在1个n维搜索空间中,由m个粒子组成的种群X={x1,L,xi,L,xm},其中第i个粒子的位置向量为xi=[xi1,xi2,L,xin],其速度向量为 vi=[vi1,vi2,L,vin],第 i个粒子迄今找到的最优位置为pi=[pi1,pi2,L,pin],第i个粒子的近邻粒子中迄今找到的最优位置为yi=[yi1,yi2,L,yin],于是,粒子i(i=1,2,L,m)在第d(d=1,2,L,n)维子空间中的飞行速度vid以及位置xid。其基本粒子群算法的速度及位置算法为
式中:t为当前进化代数;w为惯性因子;c1和c2为学习因子;r1和r2为[0,1]区间上均匀分布的随机数。
但由于标准粒子群算法本身粒子位置的连续性,无法直接运用于本文的离散环境中。本文以PSO算法的离散2进制版本(BPSO)[13]为基础进行分析。BPSO采用2进制编码形式,将xi、pi和li的每1维都限制为0或1,而不限制速度vi。用Sigmoid函数sig表示位置状态改变的可能性。因此,粒子位置发生改变的概率为
BPSO算法中的速度矢量与粒子位置改变的概率无关,只取决于粒子本身所处位置的可能性。通常,其矢量值被限定在极值区间内,即vid(t)∈[vmin,vmax]。由速度vid(t+1)的Sigmoid函数决定xid(t+1),未充分利用的取值,不能在算法运行的不同阶段对其收敛性进行自适性更改,因此当处理规模较大的问题时,算法的效率较低。为计算包含大量机件的发动机总装分区这类大规模、离散型且包含多优化目标的组合优化问题,本文参照基于值比例概率的粒子群算法[14]对基本BPSO算法进行改进,优化初始条件,采用单独的类似蚁群优化中信息素的更新规则自适应调节sig函数,提高算法收敛性[15-16]。将初始条件设成xid(0)=xid(1),
通过移项和将迭代次数由t+1改为t,式(8-2)可转化为vid(t)=xid(t)-xid(t-1)。将该式代入式(8-1),得到粒子速度及位置更新公式为
结合总装区域优化模型,算法的具体设计过程如下:
Step 1:设定算法输入量,包括发动机外部空间、机件种类及数量、机件位置及附件位置等;
Step 2:根据初始化的目标区域确定附件配置情况、区域位置中心,计算各机件到区域装配中心的距离及对区域的关联度;
Step 3:初始化分配目标区域数,并初始化种群:pop(t)=[x1(t),x2(t),…,xn(t)],n为种群规模;
Step 4:算法循环开始,对装配区域编号,对每个粒子i=1,2,…,P按照编号循环,按照式(10)更新粒子速度及位置;若f(xi)>f(pi(t))(f()代表适应度函数),则pi(t)=xi;若f(pi(t))>f(yi(t)),则yi(t)=pi(t);移动机件至其它区域;
Step 5:执行迭代计算,直至满足终止条件。
为验证算法的有效性,选取某发动机外部管路总装工作为例,验证本文提出方法的有效性。依据发动机周围装配空间及以往工作经验,初步定义发动机总装目标区域为4个,如图2所示。大致范围为:1区:总油滤前左侧区域;2区:总油滤前右侧区域;3区:总油滤后右侧区域;4区:总油滤后左侧区域。
使用本文的改进粒子群算法对中总装区域求解。输入管路及其他零件的数量、不同零件与其他零件的接触关系以及所有零件距区域中心的距离作为条件参数,以第1根管路为起点,算法迭代800次,执行过程中每100次记录4个区域内不同种类机件数量的变化,管路和单联卡箍数量的分配变化如图3所示。
图2 总装分区
图3 各总装位置区域管路卡箍数量
同时,记录目标函数f1、f2和f3的变化,最终可得出不同迭代次数下3个目标函数的变化曲线,表示各区域工作时间差值、工作过程中的移动距离差值以及区域内所有机件关联度的变化,如图4所示。定义权重系数控制目标函数f1~f3间的比例权重,根据最初对各机件的编号输入,即可得到各区的机件目录。
图4 目标函数的变化曲线
依据管路装配明细,确定每个区域所需要装配的具体机件,依据管路、卡箍和其他小零件之间的关联度,可以明确不同区域间各管路装配工序的必要先后顺序,各区域需要配合的工序。以此为依据,绘制各区域装配工作的工艺顺序图,指导装配人员完成总装操作。
不同装配区域工作人员的装配顺序如图5所示。不同方框表示不同的工序,相同方框底纹的工序代表可依据装配情况,由装配人员确定装配顺序,不同方框底纹的工序表示必须在前几个工序后进行此步工序,不同工序间如需配合则用箭头表示,2名装配人员需要配合进行跨区域的连续管路的装配工作,依据工艺顺序图,可以大致确定所有管路的装配顺序,保证总装工作顺利、可靠进行。
图5 某型发动机工艺路线
通过发动机总装工序优化的进行,将原来需要3~6人共进行6~7天的总装工作,缩短为固定的4人4天完成。原有工作没有明确的分区及工序零件清单概念,一般按照参加工作的工人数量划分区域数量,以4个区域为例,每名工人大致装配管路30~60根,其余小零件200~400个,每人装配时间难以控制,通过优化算法的运行,确定了4个明确的区域,最终计算结果,每个区域的管路相差数量最大为9根,每个区域的总工作时间最大相差236 min。并且,总装工序优化实施后,无任何装配剩件或缺件的情况发生,提高了装配质量。
本文以发动机总装工作优化为研究对象,提出总装区域划分的求解方法。以优化2进制粒子群算法为基础,对发动机总装区域的具体工作划分进行求解,量化了每个总装区域的装配时间、装配移动距离以及区域零件关联度,对于提高总装工作的并行性、规范性、一致性及可追溯性有重要意义。
针对目前发动机总装工艺方法存在的并行度差,忽略管路关联,单一工序零件目录不明确等问题,本文通过建立装配区域以及可并行实施的装配工序,明确了操作人员数量和每名操作人员的具体总装工作,通过在区域分配算法中引入关联度和距离函数,增强区域内管路零件的关联性,通过明确每道工序的零件明细,使装配过程中的每根管路和每个零件均有其固定的工序,保证装配的准确。