机床主轴结构优化设计
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
主轴刚度是一个重要性能指标,其外伸端的挠度y不得超过规定值 ,据此建立性能约束
g(x)=y-
在外力F给定的情况下,y是设计变量x的函数,其值按下式计算
y=
式中,I=
则 g(x)=
此外,通常还应考虑主轴内最大应力不得超过许用应力。由于机床主轴对刚度要求比较高,当满足要求时,强度尚有相当富裕,因此应力约束条件可不考虑。边界约束条件为设计变量的取值范围,即
四、优化方法的选择
该实例中,设计变量数n=3,约束函数个数m=5,且有一个约束函数是非线性的,故属于非线性多变量约束优化问题。可以选择MATLAB中的fmincon()函数。因为fmincon函数是实现多变量约束优化, 解决非线性多变量约束问题的 一种优化方法。当然也可以选择遗传算法ga()。
五、程序及编译结果
lower upper ineqlin ineqnonlin
1 1
3
x =
300.0000
74.8898
90.0000
f =
11.2494
exitflag =
1
output =
iterations: 11
funcCount: 44
lssteplength: 1
stepsize: 4.8867e-007
f =
11.2497
exitflag =
1
output =
problemtype: 'nonlinearconstr'
rngstate: [1x1 struct]
generations: 4
funccount: 5180
message: [1x140 char]
maxconstraint: 0
结果分析:调用fmincon()函数和遗传算法函数ga()都得到了最优解,结果近似,本次优化设计可认为达到了目的。
algorithm: 'medium-scale: SQP, Quasi-Newton, line-search'
firstorderopt: 1.7487e-007
constrviolation: 2.6791e-008
message: [1x788 char]
(2)调用ga()函数:
>> lb=[300 60 90]';
> In fmincon at 472
Local minimum found that satisfies the constraints.
Optimization completed because the objective function is non-decreasing in
feasible directions, to within the default value of the function tolerance,
%设计变量的下限
ub=[650 140 150]';
%设计变量的上限
[x,f,exitflag,output]=ga(@my1,3,[],[],[],[],lb,ub,'nonlcon1')
%调用ga(),返回exitflag参数,描述函数计算的退出条件;返回output机构数组,其中包含了优化信息
机床主轴结构优化设计
指导老师:
姓名:
学号:
机床主轴结构优化设计
一、机械优化设计的一般过程
①建立优化设计的数学模型
②选择适当的优化方法
③编写计算机程序
④准备必要的初始数据并上机计算
⑤对计算机求得的结果进行必要的分析
其中,建立优化设计的数学模型是首要的和关键的一步,其基本原则有:
1、设计变量的选择
在充分了解设计要求的基础上,应根据各设计参数对目标函数的影响程度认真分析其主次,尽量减少设计变量的数目,以简化优化设计问题。另外,还应注意设计变量应当相互独立,否则会使目标函数出现“山脊”或“沟谷”,给优化带来困难。
表8-1 初始数据
设计变量
X1
X2
X3
初始值
480
100
120
下限值
300
60
90
上限值
650
140
150
三、实例分析-数学模型的建立
在设计这根主轴时,有两个重要因素需要考虑。一是主轴的自重;一是主轴伸出端的挠度。对于普通机床,并不追求过高的加工精度,对机床主轴的优化设计,以选取主轴的自重最轻为目标,外伸端的挠度是约束条件。
1.编写一个M文件返回目标函数在点x处的值:
functionf=my1(x)
p=7.8*10^(-6);
d=30;
f=0.25*pi*p*(x(1)+x(3))*(x(2)^2-d^2);
2.将非线性约束编进一个M文件内
function[c,ceq]=nonlcon1(x)
F=15000;
d=30;
Optimization terminated: average change in the fitness value less than options.TolFun
and constraint violation is less than options.TolCon.
x =
300.0002 74.8904 90.0006
%设计变量的初始值
[x,f,exitflag,output]=fmincon('my1',x0,[],[],[],[],lb,ub,'nonlcon1')
%调用fmincon(),返回exitflag参数,描述函数计算的退出条件;返回output机构数组,其中包含了优化信息
Warning: Trust-region-reflective algorithm does not solve this type of problem, using active-set algorithm.
综上所述,将所有约束函数规格化,主轴优化设计的数学模型可表示为
minf(x)=
(x)=
(x)=1-
(x)虑两个边界约束, 和 ,这是因为无论从减小伸出端挠度上看,都要求主轴跨距 、伸出端长度 往小处变化,所以对其上限可以不作限制。这样可以减少一些不必要的约束,有利于优化计算。
E=2.1*10^5;
c=(64*F*x(3)^2*(x(1)+x(3)))/(3*E*pi*(x(2)^4-d^4)*0.05)-1;
ceq=[];
3.(1)调用fmincon()函数:
>> lb=[300 60 90]';
%设计变量的下限
ub=[650 140 150]';
%设计变量的上限
x0=[480 100 120]';
六、进一步的考虑
上述主轴优化设计中是把阶梯轴简化成当量直径的等截面轴进行结构分析的,这只是一种近似分析方法,而其近似程度往往不能令人满意。尤其是对一些受力、形状和支承都比较复杂的轴,不可能做出那样的简化,况且机床主轴的设计还对其动力学性能提出一定的要求。因此,将主轴简化后用材料力学公式进行分析的方法也不能满足工程设计的需要。
2、目标函数的确定
常取其中最主要的指标作为目标函数,而其余的指标列为约束条件。
3、约束条件的确定
在选取约束条件时应当避免出现相互矛盾的约束。因为相互矛盾的约束必然导致可行域为一空集,使问题的解不存在。另外应当尽量减少不必要的约束。不必要的约束不仅增加优化设计的计算量,而且可能使可行域缩小,影响优化结果。
and constraints were satisfied to within the default value of the constraint tolerance.
<stopping criteria details>
Active inequalities (to within options.TolCon = 1e-006):
二、优化实例
机床主轴是机床中重要零件之一,一般为多支承空心阶梯轴。为了便于使用材料力学公式进行结构分析,常将阶梯轴简化成以当量直径表示的等截面轴。下面以两支承主轴为例,说明优化设计的全过程。
右图所示的是一个已经简化的机床主轴。已知主轴内径d=30mm,外力F=15000N,许用挠度y0=0.05mm。主轴材料是铸钢。密度 Kg/ ,弹性模量E=210GPa设计变量数n=3,约束函数个数m=5,设计变量的初值、上下限列于表8-1中。
You could also try the interior-point or sqp algorithms: set the Algorithm option to 'interior-point' or
'sqp' and rerun. For more help, see Choosing the Algorithm in the documentation.
(1)设计变量的确定
当主轴的材料选定时,其设计方案由四个设计变量决定。即孔径d、外径D、跨距l及外伸端长度a。由于机床主轴内孔常用于通过待加工的棒料,其大小由机床型号决定,不能作为设计变量。
故设计变量取为x= =
(2)目标函数的确定
机床主轴优化设计的目标函数则为
f(x)=
式中, -材料的密度。
(3)约束条件的确定
g(x)=y-
在外力F给定的情况下,y是设计变量x的函数,其值按下式计算
y=
式中,I=
则 g(x)=
此外,通常还应考虑主轴内最大应力不得超过许用应力。由于机床主轴对刚度要求比较高,当满足要求时,强度尚有相当富裕,因此应力约束条件可不考虑。边界约束条件为设计变量的取值范围,即
四、优化方法的选择
该实例中,设计变量数n=3,约束函数个数m=5,且有一个约束函数是非线性的,故属于非线性多变量约束优化问题。可以选择MATLAB中的fmincon()函数。因为fmincon函数是实现多变量约束优化, 解决非线性多变量约束问题的 一种优化方法。当然也可以选择遗传算法ga()。
五、程序及编译结果
lower upper ineqlin ineqnonlin
1 1
3
x =
300.0000
74.8898
90.0000
f =
11.2494
exitflag =
1
output =
iterations: 11
funcCount: 44
lssteplength: 1
stepsize: 4.8867e-007
f =
11.2497
exitflag =
1
output =
problemtype: 'nonlinearconstr'
rngstate: [1x1 struct]
generations: 4
funccount: 5180
message: [1x140 char]
maxconstraint: 0
结果分析:调用fmincon()函数和遗传算法函数ga()都得到了最优解,结果近似,本次优化设计可认为达到了目的。
algorithm: 'medium-scale: SQP, Quasi-Newton, line-search'
firstorderopt: 1.7487e-007
constrviolation: 2.6791e-008
message: [1x788 char]
(2)调用ga()函数:
>> lb=[300 60 90]';
> In fmincon at 472
Local minimum found that satisfies the constraints.
Optimization completed because the objective function is non-decreasing in
feasible directions, to within the default value of the function tolerance,
%设计变量的下限
ub=[650 140 150]';
%设计变量的上限
[x,f,exitflag,output]=ga(@my1,3,[],[],[],[],lb,ub,'nonlcon1')
%调用ga(),返回exitflag参数,描述函数计算的退出条件;返回output机构数组,其中包含了优化信息
机床主轴结构优化设计
指导老师:
姓名:
学号:
机床主轴结构优化设计
一、机械优化设计的一般过程
①建立优化设计的数学模型
②选择适当的优化方法
③编写计算机程序
④准备必要的初始数据并上机计算
⑤对计算机求得的结果进行必要的分析
其中,建立优化设计的数学模型是首要的和关键的一步,其基本原则有:
1、设计变量的选择
在充分了解设计要求的基础上,应根据各设计参数对目标函数的影响程度认真分析其主次,尽量减少设计变量的数目,以简化优化设计问题。另外,还应注意设计变量应当相互独立,否则会使目标函数出现“山脊”或“沟谷”,给优化带来困难。
表8-1 初始数据
设计变量
X1
X2
X3
初始值
480
100
120
下限值
300
60
90
上限值
650
140
150
三、实例分析-数学模型的建立
在设计这根主轴时,有两个重要因素需要考虑。一是主轴的自重;一是主轴伸出端的挠度。对于普通机床,并不追求过高的加工精度,对机床主轴的优化设计,以选取主轴的自重最轻为目标,外伸端的挠度是约束条件。
1.编写一个M文件返回目标函数在点x处的值:
functionf=my1(x)
p=7.8*10^(-6);
d=30;
f=0.25*pi*p*(x(1)+x(3))*(x(2)^2-d^2);
2.将非线性约束编进一个M文件内
function[c,ceq]=nonlcon1(x)
F=15000;
d=30;
Optimization terminated: average change in the fitness value less than options.TolFun
and constraint violation is less than options.TolCon.
x =
300.0002 74.8904 90.0006
%设计变量的初始值
[x,f,exitflag,output]=fmincon('my1',x0,[],[],[],[],lb,ub,'nonlcon1')
%调用fmincon(),返回exitflag参数,描述函数计算的退出条件;返回output机构数组,其中包含了优化信息
Warning: Trust-region-reflective algorithm does not solve this type of problem, using active-set algorithm.
综上所述,将所有约束函数规格化,主轴优化设计的数学模型可表示为
minf(x)=
(x)=
(x)=1-
(x)虑两个边界约束, 和 ,这是因为无论从减小伸出端挠度上看,都要求主轴跨距 、伸出端长度 往小处变化,所以对其上限可以不作限制。这样可以减少一些不必要的约束,有利于优化计算。
E=2.1*10^5;
c=(64*F*x(3)^2*(x(1)+x(3)))/(3*E*pi*(x(2)^4-d^4)*0.05)-1;
ceq=[];
3.(1)调用fmincon()函数:
>> lb=[300 60 90]';
%设计变量的下限
ub=[650 140 150]';
%设计变量的上限
x0=[480 100 120]';
六、进一步的考虑
上述主轴优化设计中是把阶梯轴简化成当量直径的等截面轴进行结构分析的,这只是一种近似分析方法,而其近似程度往往不能令人满意。尤其是对一些受力、形状和支承都比较复杂的轴,不可能做出那样的简化,况且机床主轴的设计还对其动力学性能提出一定的要求。因此,将主轴简化后用材料力学公式进行分析的方法也不能满足工程设计的需要。
2、目标函数的确定
常取其中最主要的指标作为目标函数,而其余的指标列为约束条件。
3、约束条件的确定
在选取约束条件时应当避免出现相互矛盾的约束。因为相互矛盾的约束必然导致可行域为一空集,使问题的解不存在。另外应当尽量减少不必要的约束。不必要的约束不仅增加优化设计的计算量,而且可能使可行域缩小,影响优化结果。
and constraints were satisfied to within the default value of the constraint tolerance.
<stopping criteria details>
Active inequalities (to within options.TolCon = 1e-006):
二、优化实例
机床主轴是机床中重要零件之一,一般为多支承空心阶梯轴。为了便于使用材料力学公式进行结构分析,常将阶梯轴简化成以当量直径表示的等截面轴。下面以两支承主轴为例,说明优化设计的全过程。
右图所示的是一个已经简化的机床主轴。已知主轴内径d=30mm,外力F=15000N,许用挠度y0=0.05mm。主轴材料是铸钢。密度 Kg/ ,弹性模量E=210GPa设计变量数n=3,约束函数个数m=5,设计变量的初值、上下限列于表8-1中。
You could also try the interior-point or sqp algorithms: set the Algorithm option to 'interior-point' or
'sqp' and rerun. For more help, see Choosing the Algorithm in the documentation.
(1)设计变量的确定
当主轴的材料选定时,其设计方案由四个设计变量决定。即孔径d、外径D、跨距l及外伸端长度a。由于机床主轴内孔常用于通过待加工的棒料,其大小由机床型号决定,不能作为设计变量。
故设计变量取为x= =
(2)目标函数的确定
机床主轴优化设计的目标函数则为
f(x)=
式中, -材料的密度。
(3)约束条件的确定