MATLAB中果蝇味道浓度判定函数,基于果蝇优化算法对栓接结合部间距的优化方法与流程...

本发明涉及机床基础制造领域,特别是涉及基于果蝇优化算法优化机床结合部螺栓之间间距的研究。

背景技术:

栓接结合部作为组成机床的基本部件,由于栓接结构在机床的组装和拆卸过程中的方便、简易,而被广泛用在机床设备中,在高精度机床中,栓接结合部是最常见的结合部形式,这些结合部不但破坏结构的连续性,而且会增加整体的复杂性,栓接结合部的质量直接影响着机床的加工精度,作为提高机床加工精度的重要影响因素,栓接结合部质量的优化显得尤为的重要,影响结合部特性的参数很多,主要有:结合部外部载荷、材料、加工方法及表面粗糙度、结合部结构类型与尺寸等[1],

而螺栓间距作为影响栓接结合部质量关键因素之一,对结合部的质量有着重要的影响,。

在生产实践中,机床上螺栓间距的布置多是采用国家标准来进行设计,间距在一个较大的区间范围之内变化,对于普通机床,因为没有过高的要求,国家标准完全适用,但是在高精度机床中,结合部的质量作为影响加工质量的一个关键因素,螺栓的粗略布置就对结合部的质量产生很大影响,进而影响机床的加工质量,所以有必要对高精度机床的螺栓间距进行优化,提高结合部质量,进而提高加工质量。传统分析中,主要采用有限元分析计算不同螺栓间距对工件的影响,没有采用有效的优化算法对螺栓间距进行优化。

本文采用果蝇优化算法,基于ANSYS有限元分析和MATLAB数值计算,并采用联合优化软件isight,对建立所建立模型进行螺栓间距的优化,使其在设定的参数范围内达到结合部刚度最大的预期设定的目标。

技术实现要素:

本发明目的是:为了能够通过优化高精度机床螺栓之间的距离,进而提高栓接结合部刚度,最终影响机床的加工精度,通过使用果蝇优化算法,以有限元分析软件ANSYS和计算软件MATLAB为优化工具,采用isight集合功能,对所建立的栓接结合部模型进行螺栓间距优化,使结合部刚度达到最大。因此本发明提供了一种基于果蝇优化算法模拟栓接结合部间距优化的计算方法。

本发明所采取的技术方案是:

基于果蝇优化算法对栓接结合部间距的优化方法,包括如下步骤:

步骤一、在ANSYS中对所建立的初始栓接结合部模型进行有限元分析,获取结合部各节点的节点编号和节点压力,同时生成ANSYS的命令流文件;

步骤二、以分形接触理论为基础,运用MATLAB软件,编写计算程序,计算各节点的接触刚度;

步骤三、基于果蝇优化算法,采用isight集合功能,将ANSYS和MATLAB软件集合到isight中,确定优化间距长度(long)和宽度(width)的范围、粒子群大小、迭代次数和最终的优化目标等参数,不同的参数设定直接影响优化的能力,进行循环迭代,寻找最大的结合部刚度值。

所述步骤一具体为:

建立栓接结合部模型,进行有限元划分,施加约束和模拟螺栓预紧力,进行有限元静力分析,提取各节点的节点压力;

所述步骤二具体为:

利用结构函数法计算出结合部的分形参数,结合部栓接表面法的轮廓曲线利用Weierstrass-Mandelbrot函数表示

式中z—粗糙表面轮廓高度;

x—表面采样长度坐标;

D—轮廓曲线的分形维数;

G—粗糙表面的特征尺度系数;

γ—谱密度的尺寸参数;

φn—随机相位;

n—频率指数;

对于独立的微凸体形貌表述,根据单频率(γn=1/l)的W-M函数来获得,独立微凸体Z0(x)数学公式为:

对于一个给定接触点截面面积为a′的微凸体,其变形量δ由z0(x)在x=0处求得:

在微观尺度下,认为a′=l2,微凸体的顶点曲率半径为:

由Hertz理论可知单个微凸体的弹性载荷为Fe=4Er3/3R,式中r为真实接触面积半径

将其带入Fe=4Er3/3R,可得

在MB模型中,微凸体接触点数与截面面积关系为

其中a′L为最大微接触点平截面积

根据刚度定义可得到单个微凸体的法向接触刚度为:

结合微凸体截面积分布函数积分得到结合部的总刚度为:

根据以上公式,在MATLAB中编写出节点刚度计算公式,并对各节点刚度进行加和计算。

所述步骤三具体为:

果蝇优化算法作为常用优化方法,又被称之为FOA算法,可以总结为以下几个重要的步骤:

1)随机初始果蝇群体位置X,Y;

2)配置独立果蝇使用嗅觉寻找食物的随机搜索方向与距离,rand()是寻优过程中随机生成的一个0-1之间的一个值:

Xi=X+rand(),Yi=Y+rand()

3)估算果蝇与搜索原点之间的距离D,之后计算味道浓度的判定值S,S为距离参数D的倒数值:

D=(Xi2+Yi2)0.5,S=1/D

4)将味道浓度判定数值引用到味道浓度判定函数来求求独立果蝇个体的位置味道浓度smell:

smell=Function(S)

5)寻到得到果蝇群体中所有独立果蝇味道浓度最大的果蝇:

[bestsmellbestindex]=max(smell)

6)保留味道浓度最大的果蝇的最佳味道浓度值与X、Y的坐标,之后果蝇种群会利用视觉朝向该最大值位置飞去:

smellbest=bestsmell

X=X(bestindex)

Y=Y(bestindex)

7)进入果蝇算法迭代寻优,重复之上的步骤2)~5),并且判断味道的浓度是否优于之前迭代的味道浓度,若是则进行步骤6);

所述步骤四具体为:

进入isight软件中optimization组块,在此插入果蝇优化算法,设置总迭代次数、粒子群数量等参数,选择变量为long和width,并设置变化区间,设置约束和优化目标参数。MATLAB输出总刚度结果计入optimization,optimization变换long和width的数值,等于变化了一个果蝇的飞行方向,循环迭代进入ANSYS输入,optimization会根据总刚度值的结果变换long和width的变化方向,使long和width的变化向着总刚度最大的目标变化,等于变化了果蝇群体的飞行方向。

与现有技术相比较,基于isight、ANSYS和MATLAB软件和果蝇优化算法的螺栓间距的研究,可以有效的对给定的参数在一定区间内进行寻优,筛选出最优的间距距离,使结合部刚度达到最大值。

附图说明

图1结合部正面分布图。

图2单个微凸体形貌图。

图3 isight、ANSYS和MATLAB优化流程图。

具体实施方式

以下结合附图和实施例对本方法进行详细说明。

基于果蝇优化算法模拟栓接结合部间距优化的计算方法,包括如下步骤:

步骤一、在ANSYS中对所建立的初始栓接结合部模型进行有限元分析,获取结合部各节点的节点编号和节点压力,同时生成ANSYS的命令流文件;

步骤二、以分形接触理论为基础,运用MATLAB软件,编写计算程序,计算各节点的接触刚度;

步骤三、基于果蝇优化算法,采用isight集合功能,将ANSYS和MATLAB软件集合到isight中,确定优化间距长度(long)和宽度(width)的范围、粒子群大小、迭代次数和最终的优化目标等参数,不同的参数设定直接影响优化的能力,进行循环迭代,寻找最大的结合部刚度值。

所述步骤一具体为:

建立栓接结合部模型,进行有限元划分,施加约束和模拟螺栓预紧力,进行有限元静力分析,提取各节点的节点压力;

所述步骤二具体为:

利用结构函数法计算出结合部的分形参数,结合部栓接表面法的轮廓曲线利用Weierstrass-Mandelbrot函数表示

式中z—粗糙表面轮廓高度;

x—表面采样长度坐标;

D—轮廓曲线的分形维数;

G—粗糙表面的特征尺度系数;

γ—谱密度的尺寸参数;

φn—随机相位;

n—频率指数;

对于独立的微凸体形貌表述,可以根据单频率(γn=1/l)的W-M函数来获得,独立微凸体的形貌如图2所示:

数学公式为:

对于一个给定接触点截面面积为a′的微凸体,其变形量δ由z0(x)在x=0处求得:

在微观尺度下,可以认为a′=l2,微凸体的顶点曲率半径为:

由Hertz理论可知单个微凸体的弹性载荷为Fe=4Er3/3R,式中r为真实接触面积半径

将其带入Fe=4Er3/3R,可得

在MB模型中,微凸体接触点数与截面面积关系为

其中a′L为最大微接触点平截面积

根据刚度定义可得到单个微凸体的法向接触刚度为:

结合微凸体截面积分布函数积分得到结合部的总刚度为:

根据以上公式,在MATLAB中编写出节点刚度计算公式,并对各节点刚度进行加和计算。

所述步骤三具体为:

果蝇优化算法作为常用优化方法,又被称之为FOA算法,可以总结为以下几个重要的步骤:

1)随机初始果蝇群体位置X,Y;

2)配置独立果蝇使用嗅觉寻找食物的随机搜索方向与距离,rand()是寻优过程中随机生成的一个0-1之间的一个值:

Xi=X+rand(),Yi=Y+rand()

3)估算果蝇与搜索原点之间的距离D,之后计算味道浓度的判定值S,S为距离参数D的倒数值:

D=(Xi2+Yi2)0.5,S=1/D

4)将味道浓度判定数值引用到味道浓度判定函数来求求独立果蝇个体的位置味道浓度smell:

smell=Function(S)

5)寻到得到果蝇群体中所有独立果蝇味道浓度最大的果蝇:

[bestsmellbestindex]=max(smell)

6)保留味道浓度最大的果蝇的最佳味道浓度值与X、Y的坐标,之后果蝇种群会利用视觉朝向该最大值位置飞去:

smellbest=bestsmell

X=X(bestindex)

Y=Y(bestindex)

7)进入果蝇算法迭代寻优,重复之上的步骤2)~5),并且判断味道的浓度是否优于之前迭代的味道浓度,若是则进行步骤6);

所述步骤四具体为:

进入isight软件中optimization组块,在此插入果蝇优化算法,设置总迭代次数、粒子群数量等参数,选择变量为long和width,并设置变化区间,设置约束和优化目标参数。MATLAB输出总刚度结果计入optimization,optimization变换long和width的数值,等于变化了一个果蝇的飞行方向,循环迭代进入ANSYS输入,optimization会根据总刚度值的结果变换long和width的变化方向,使long和width的变化向着总刚度最大的目标变化,等于变化了果蝇群体的飞行方向。Isight整体设置流程如图3所示:

基于isight、ANSYS和MATLAB软件和果蝇优化算法的螺栓间距的研究,可以有效的对给定的参数在一定区间内进行寻优,筛选出最优的间距距离,使结合部刚度达到最大值。

当前第1页1&nbsp2&nbsp3&nbsp

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值