基于AFSA-GA混合算法的圆锥刀轨迹优化

2019-08-23 01:53
沈阳大学学报(自然科学版) 2019年4期
关键词:智能算法圆锥曲面

杨 喆

(沈阳大学 信息工程学院, 辽宁 沈阳 110044)

非可展直纹面是机械工程中的一种常见曲面, 多数用于航空类发动机零部件的加工, 其涡轮叶片类型面大部分是非可展直纹面. 非可展直纹面的零部件的加工一直以来都是数控加工行业中的重点和难点[1]. 通常非可展直纹面采用侧铣加工, 利用回转刀具的侧刃切削零件表面, 属于线接触加工类型, 相比端铣加工有着零件表面可一次成形、切削条件好、效率高等优点. 侧铣加工属于非精确加工方法, 如何进行刀位优化, 生成有效的刀具路径是研究的热点问题. 刀具轨迹优化、数控侧铣加工工艺参数及刀具运动轨迹优化是发挥数控加工设备生产效率的有效途径. 近年来,我国将侧铣加工作为加工非可展直纹面的主要方法.

Liu[2]利用单点偏置法、双点偏置法及多点偏置法计算凸自由曲面和直纹面棒铣刀的侧铣加工,这3种方法的特点是方法简单、误差较大;宫虎[3]对五坐标回转面刀具数控加工的运动进行分析,验证了铣刀形成的包络面与初始设计曲面之间的极差等于曲面上的等距面与刀具轨迹面之间的极差;Zhu等[4]针对曲面设计、刀具包络面计算及刀具加工曲面之间的关系,将回转刀具加工非可展直纹面进行建模;阎长罡等[5]主要介绍了圆锥铣刀的加工问题,根据铣刀的自身特点,提出了法向映射曲线的概念,将刀具的包络面向设计曲面的逼近问题转化为在每个刀位下法向映射曲线与特征线的最小二乘逼近问题;Hsieh[6]提出了基于粒子群智能算法的五轴数控加工刀具轨迹优化方法,把刀具轨迹通过智能算法进行优化.

人工鱼群算法由李晓磊等[7]于2002年首次提出:在一片水域中,鱼能够自发跟随其他鱼群到达营养物质丰富的地方,因此鱼多的地方便是营养物质丰富的位置.人工鱼群算法主要利用这一特点实现寻优. 该算法具有并行性、简单性、 快速跳出局部极值等优点,缺点是寻优精度不高,后期收敛速度慢等.

遗传算法是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,主要通过模拟自然进化过程寻找最优解,该方法是从生物进化的规律演化形成的智能优化方法.该方法能直接操作所需的结构对象,不会受函数等的约束限制,具有内在的隐并行性、全面的全局搜索优化能力等.

本文集中2种算法的优点,形成混合算法,主要解决刀具轨迹优化问题,并且提出了单刀位下的误差函数,给出人工鱼群(AFSA)和遗传算法(GA)混合算法的求解策略,对其加工轨迹进行优化处理,得到最优刀具位置,从而得到优化后的刀轴轨迹面,再计算刀具包络面的误差.结果显示,该算法具有计算效率高和求解精度高等优点.

1 刀位矢量初始化

如图1所示,选用两点偏置法确定初始刀位,刀具为侧铣加工常用的圆锥刀.

图1初始刀轴的矢量建立
Fig.1Establishmentoftheinitialtoolaxisvector

刀位矢量初始化步骤如下.

1) 基线上的参数u∈[0,1],将u进行离散化分析(u=u1,u2,…,um),选取参数v=0、u=u1作为标记点P1,再选取参数v=1、u=u1,作为标记点P2.

2) 确定刀轴矢量的第1点Q1.

|P1P2|=

其中:(XP1,YP1,ZP1)、(XP2,YP2,ZP2)为标记点P1、P2的坐标值;nP1为叶片在P1处的单位法矢;nP2为叶片在P2处的单位法矢(法矢方向在叶片的同一侧);τ1为P1处沿曲面u方向的切矢;τ2为P2处沿曲面u方向的切矢.

则刀具轴线矢量点Q1表示为

式中:rc为刀具的小端半径;δ为刀具的半锥角.

3) 确定刀轴矢量的第2点Q2.沿着刀的轴曲线v方向进行取值,设v=1,且保证Q2点位于P2点的曲面法线上,需要计算出|P2Q2|的大小,|P2Q2|的大小通过迭代的方法算出,迭代步骤如下:

② 刀轴矢量第2点Q2=P2+nP2·r0;

③ 计算|Q1Q2|;

⑤ 计算并比较r0和r1的大小,已知ε为控制精度的最小量,若满足|r0-r1|<ε,则计算结束,Q2即为满足要求的点;反之,令r0=r1,再重复步骤②~⑤.

图2为圆锥刀轴初始矢量确定流程图.

2 单刀位下的误差计算

由于在非可展直纹面上位于直母线上的各点法向矢量不同,因此无法采用圆柱滚动形成包络面.实际的加工误差应为刀具的包络面与设计曲面沿法线方向的误差.非可展直纹面与通常的曲面不同,其加工误差无法避免,对于不同的刀位下应有

|PiQi|=r(Pi),i=1,2,…,n,n∈N.

(1)

式中:|PiQi|为刀轴某点到非可展直纹面的距离;r(Pi)为刀轴一点到圆锥面的距离.

根据式(1)可以得出,刀位误差与||PiQi|-r(Pi)|的值有关,||PiQi|-r(Pi)| 越小,误差越小,因此只需让不同刀位下刀轴各点的|PiQi|与r(Pi)的差值最小,就会使刀具的包络曲线与实际曲面极大限度地接近.

显然,若要使误差减小,就应使||PiQi|-r(Pi)|尽可能小,若每个刀位下刀轴上的每一点都尽可能满足上述条件,进而得到的刀具包络面会最大限度逼近设计曲面.由以上分析可知,单刀位下的误差度量函数为

(2)

式中:c表示刀轴位姿;r(Pi)是刀轴一点到圆锥面的距离,为已知量,关键在于如何求出|PiQi|.令垂足坐标(ui,vi),因此垂足(ui,vi)满足方程

(3)

其中ru(ui,vi)为Pi点在u方向的切矢;rv(ui,vi)为Pi点在v方向的切矢.

由于方程的的计算求解比较困难, 因此采用数值法求解.单刀位下的误差函数的求解近似为一个目标函数求解极小值的问题.由于函数表达式无法确立,不能采用传统的方式进行求解,因此采用智能算法进行求解分析.

传统方法是通过计算刀具的包络误差判断刀具在某刀位下过切或欠切的情况,计算过程烦琐.相比之下,单刀位误差函数方法能快速判断刀位是否达到局部最优、计算量小、计算速度快、适合编程处理.AFSA-GA智能算法会多次调用误差度量函数,因此,误差度量函数的计算速度对算法效率有着重要影响.

3 混合智能算法刀位优化

3.1 初始种群的建立步骤

① 将初始刀轴两端点P1,P2作为种群球的球心,对两个球心单独建立2个半径为R的球形区域作为初始种群建立空间.

② 任意给定粒子在2个球形区域内.把每个粒子看作刀轴上的端点.任意2个粒子看作1个点对,形成1个刀轴矢量,重复上述步骤A次,形成1个数量为A的矢量组P[0]、P[1]、P[2]…P[A-1].

③ 设刀轴矢量端点坐标Q1(X1,Y1,Z1)和Q2(X2,Y2,Z2).则数组P[ ]中每个元素分别为关于X1,Y1,Z1,X2,Y2,Z2的6维矢量,总计A个6维矢量作为智能算法的初始种群.

3.2 算法设计流程

① 初始化种群.对需要的参数进行设置,比如人工鱼的数量、步长、视野、觅食行为的最大尝试次数、拥挤度因子、进化次数等多个因素.

② 公告板初始化.将每条人工鱼看作一个刀轴矢量,把计算人工鱼的适应度值转化为单刀位误差度量函数的值进行比较,选择最小值,并将其赋值给公告板.

③ 鱼群位置更新策略.根据人工鱼觅食、聚群、追尾、随机4种行为,不断更新自身的位置状态,在每次位置更新后,需重新计算适应度值,然后再与公告版比较,若较优,则更新公告板;否则,公告板不变.

④ 鱼群算法终止条件.当鱼群算法达到给定精度时算法终止,即满足

(4)

若满足式(4)条件,将最优值赋值公告板,否则转到步骤③继续迭代.

⑤ 赋值遗传算法.遗传算法与其他算法不同的是不能直接处理空间参数问题,因此需要把所要求取问题的所有可能性的解进行编码,组合成遗传空间中一条条染色体.

⑥ 适应度值计算.遗传算法要经过选择操作、交叉操作、变异操作3个过程,每次新的个体更新后计算适应度值并与公告版比较,若较优,则更新公告板;否则,公告板不变.计算每个染色体的适应度值与gbest值进行比较,若值较小,则更新当前最优位置赋值给gbest.

⑦ 个体状态更新.遗传算法染色体速度和位置更新公式为

⑧ 计算更新后染色体的适应度.重新计算每个染色体的适应度值,并与其历史值作比较,若较小,更新pbest值;将其与群体中最好染色体位置gbest比较,若较小,更新gbest值.

⑨ 更新公告板.重复步骤⑦~⑧,当达到染色体的迭代次数后,将gbest值赋值公告板,作为最优解输出.

3.3 混合智能算法刀位优化流程

图3为混合智能算法刀位优化流程.

图3 混合智能算法流程图Fig.3 Flow chart of AFSA-GA algorithm

4 包络误差的计算

4.1 圆锥刀圆锥面方程建立

圆锥面在固定坐标系下的方程表达形式为

式中,t为圆锥面母线方向的参数,α为转角参数.

图4圆锥面方程建立示意图
Fig.4Establishmentofconesurfaceequation

4.2 误差建模

刀具面族包络形成的便是加工曲面,刀具在加工的每个时刻形成一条加工线,将加工线集合,最终形成加工曲面.

将叶片曲面上的直母线P1P2离散化成若干个点Pi(i=1,2,…,m),沿着每个点法线方向做射线,直母线被圆锥面截取的长度用h表示,h的值就是圆锥面在此处的加工误差,即包络误差,如图5所示.

其中n为曲面Pi点处的法矢量.

实际上,任意点处的加工误差是由不同位置的刀具加工形成的,因此,曲面某点处的加工误差是其射线与不同的位置下的刀具圆锥面截得的最小h值.

图5 包络误差说明图Fig.5 Diagram of envelope error

5 仿真结果与分析

叶片曲面的原始数据来源于文献[8],根据文献内容建立曲面模型如图6所示,将叶片曲面划分为28个曲面片,本文以第2曲面片为例,其2条边界曲线均为非均匀有理B样条曲线,并且具有相同的节点矢量[0,0,0,0,0.2,0.4,0.6,0.8,1.0,1.0,1.0,1.0],2条B样条曲线相应控制点列于表1中.

图6 叶片曲面模型Fig.6 Blade surface model

将得到的叶片曲面的底部曲线与顶部曲线定义出各个点的坐标值,在顶部与底部随机选取8个点的坐标,形成表1.

选取的圆锥刀小端半径为5 mm,锥顶半角为5°.在MATLAB软件定义矢量,并编写智能算法语句,代入叶片曲面的底部曲线与顶部曲线的初始值,用优化后得到的值计算优化后的误差,在曲面片上均匀选取11个刀位进行单刀位误差函数的计算.

表1 曲面片2边界B样条曲线控制点

表2给出u=0位置的单刀位优化结果,由表2可知,函数值呈逐渐变小的趋势,表明单刀位误差逐渐变小,呈收敛状,如图7所示,其余刀位的结果与此类似.

表2 单刀位的优化结果Table 2 Optimization results of single cutter

图7 AFSA-GA收敛情况Fig.7 Convergence of AFSA-GA

在人工鱼群-粒子群混合算法中,人工鱼群算法保证了算法的收敛性,获得的解在最优解的邻域附近,粒子群算法保证了计算后期收敛的速度.在初始轴迹面边界曲线选取控制点,如表3所示.将坐标数据输入到MATLAB软件,分析初始状态的包络误差,如图8所示.

再将初始轴迹面边界曲线选取的控制点坐标代入智能算法中,能够得到新的数组,即优化后的轴迹面样条曲线控制点坐标,如表4所示.将新得到的坐标数据输入到MATLAB软件,分析优化后状态的包络误差如图9所示.

对比图8和图9,根据坐标轴中的误差范围,可以看出初始轴迹面下曲面最大极差已达到0.5 mm.根据图9的坐标差可以计算出最大极差为0.038 9 mm.

表3 初始轴迹面边界B样条曲线控制点

图8 初始包络误差图Fig.8 Diagram of initial envelope error

表4优化后轴迹面边界B样条曲线控制点

Table4Bsplinecurvecontrolpointofoptimizedtracesurfaceboundary mm

底部导线x0y0z0顶部导线x0y0z0159.25231.32-291.5536.5769.33-277.86159.25231.32-291.5536.5769.33-277.86162.47229.79-288.2938.1868.34-273.59163.65227.87-288.5639.7668.15-273.01165.13225.38-287.9341.4068.13-270.88167.41223.91-286.1142.4968.93-268.54168.52222.63-284.3244.1367.47-266.23169.52222.63-284.3244.1367.47-266.23

图9 优化后包络误差图Fig.9 Diagram of envelope error after optimization

6 结 论

通过仿真结果图像看出收敛时间得到明显改善,主要得益于人工鱼群算法和遗传算法的优点,能够快速准确地捕捉刀位点,在实际加工中能够有效地提高加工效率.从优化后的包络误差图像可以看出,通过对全局优化后,误差变小,说明人工鱼群与遗传算法结合是非常有效的.混合算法思想为未来研究者指引了解决问题的新方向,不局限于单一的算法,对科学研究的意义非常重要.

猜你喜欢
智能算法圆锥曲面
简单拓扑图及几乎交错链环补中的闭曲面
圆锥摆模型的探究与拓展
神经网络智能算法在发电机主绝缘状态评估领域的应用
圆锥截线与玫瑰线
“圆柱与圆锥”复习指导
计算法在圆锥保持架收缩模组合冲头设计中的应用
第二型曲面积分的中值定理
从鸡群算法看群体智能算法的发展趋势
关于第二类曲面积分的几个阐述
改进的多目标快速群搜索算法的应用