机床主轴机构优化设计。
机床主轴是机床中重要的零件之一,一般多为支撑空心阶梯轴。为了便于使用材料力学进行结构分析,常常将阶梯轴简化成以当量直径表示的等截面轴。
如图0.1所示是一个已经简化处理的专用机床双主轴的力学模型。从机床主轴制造成本较低和加工精度较高的要求出发,需要考虑主轴的自重和外身段挠度这样两个重要因素。
对于专用机床来说,并不追求过高的加工精度。因此选取零件自身重量轻为设计目标,将主轴的刚度作为约束条件。
一、 设计变量和目标函数。
当主轴的材料选定之后,与主轴重量设计方案有关设计变量主轴的外径d、孔径d、两支承跨度l、和外伸段长度a,如图0.1所示。由于机床主轴的孔径主要取决于待加工棒料的直径,不能作为设计变量处理。
因此,设计变量为。
机床主轴重量最轻优化设计目标函数为。
二、 约束条件。
1. 刚度性条件。
机床的加工质量在很大程度上取决于主轴的刚度,主轴刚度是一个很重要的性能指标。因此,要求主轴悬臂端挠度不超过给定的变形量y0 。
根据材料力学可知,主轴悬臂端挠度为。
式中,是空心主轴的惯性矩;e=2.1x105mpa是主轴的弹性模量;f是作用主轴外伸端的力。
整理得到主轴刚度的约束条件为。
2.设计边界条件。
三个设计变量的边界约束条件为。
3.具体算例。
已知某机床主轴悬臂端受到的切削力f=15000n,主轴内径d=30mm,悬臂端许用挠度y0=0.05mm。要求主轴两支承跨度,外径,悬臂长度。
建立优化的数学模型。
4.基于matlab程序的复合形法实现优化。
1)算法原理。
复合形法**于无约束优化问题的单纯形法,通过构造复合形来求得最优解,新的复合形通过替换旧的复合形中的坏点(目标函数最大或次大的点)得到,替换方式仍是单纯性法中的反应、压缩、扩展这几个基本方法。
2)算法步骤。
其程序框图如下:
3)算法的matlab实现。
在matlab中利用编程语句编写实现复合形法的函数,命名:
功能:用复合形法求解约束多为函数的极值。
调用格式:[x,minf]= jiangfun(f,g,x,alpha,sita,gama,beta,var,eps)
其中符号表示如下:
由目标函数级约束条件,取初始复合形。
取α(反射系数)=1.2,β(收缩系数)=0.3,θ(紧缩系数)=0.5,γ(扩展系数)=2。
在matlab中输入下列命令。
>syms s t r
>f=0.7854*(s+r)*(t^2-900);
>g=[1-9.7009*r^2*(s+r)/(t^4-30^4);s/300-1;1-s/650;t/60-1;1-t/140;r/90-1;1-r/150];
>x=[325 380 500 600;90 120 100 135;100 95 120 130];
>[x,minf]=jiangfun(f,g,x,1.2,0.5,8,0.3,[s t r])
所得结果为:
x =300.0357
minf = 1458663.2594
可以得出结论当l=300.0357mm,d=75.2442mm,a=90.
0013mm时可以在满足刚度性能的条件下,得到最小的结构体积minf=1458663.2594mm3 再乘以所选材料的密度,即可得出最小质量。
5、总结。复合形法作为求解最优化问题的一种算法,较为适合解决有约束优化问题。使用该法仅需比较目标函数值即可决定搜索方向,算法较简单,对目标函数的要求不苛刻。
同时利用mat实现该方法的程序设计,较之c语言互换性以及通用性强,使用方便。
引用:《优化设计应用》——电子工业出版社。
附录i:m实现复合形算法源程序。
附录i:m实现复合形算法源程序。
function [x,minf]= jiangfun(f,g,x,alpha,sita,gama,beta,var,eps)
目标函数:f
约束函数:g
初始复合形:x
反射系数:alpha
紧缩系数:sita
扩展系数:gama
收缩系数:beta
自变量向量:var
自变量精度:eps
目标函数最小值时的自变量值:x
目标函数的最小值:minf
if nargin ==8
eps = 1.0e-6;
endn = size(x);
n = n(2);
fx = zeros(1,n);
while 1
for i=1:n
fx(i) =subs(f,var,x(:,i));
end将复合形法的顶点排序。
[xs,ix] =sort(fx
xsorted = x(:,ix);
px = sum(xsorted(:,1:(n-1)),2)/(n-1复合形前n个点的中心。
fpx= subs(f,var,px);
sumf = 0;
for i=1:n
sumf = sumf + fx(ix(i))-fpx)^2;
endsumf = sqrt(sumf/n);
if sumf <=eps
x = xsorted(:,1精度判断。
break;
elsebcon_1 = 1;
cof_alpha = alpha;
while bcon_1
x2 = px + cof_alpha*(px - xsorted(:,n));反射条件。
gx2 = subs(g,var,x2);
if min(gx2)>=0
bcon_1 = 0;
elsecof_alpha = sqrt(cof_alpha); 以开方的方式减小反射系数。
endend
fx2 = subs(f,var,x2);
if fx2 < xs(1)
cof_gama = gama;
bcon_2 = 1;
while bcon_2
x3 = px + cof_gama*(x2 - px); 扩展操作。
gx3 = subs(g,var,x3);
if min(gx3)>=0
bcon_2 = 0;
else cof_gama = sqrt(cof_gama); 采用开方的方式减小扩展系数。
endend
fx3 = subs(f,var,x3);
if fx3 < xs(1)
xsorted(:,n) =x3;
x = xsorted;
continue;
elsexsorted(:,n) =x2;
x = xsorted;
continue;
endelse
if fx2 < xs(n-1)
xsorted(:,n) =x2;
x = xsorted;
continue;
elseif fx2 < xs(n)
xsorted(:,n) =x2;
endcof_beta = beta;
bcon_3 = 1;
while bcon_3
x4 = px + cof_beta*(xsorted(:,n) -px);%收缩操作。
gx4 = subs(g,var,x4);
if min(gx4)>=0
bcon_3 = 0;
elsecof_beta = cof_beta/2; %减小收缩系数。
endend
fx4 = subs(f,var,x4);
fnnew = subs(f,var,xsorted(:,n));
matlab机械优化
基于matlab的二级齿轮减速器的优化设计。1 引言。齿轮减速器是原动机和工作机之间独立的闭式机械传动装置,能够降低转速和增大扭矩,是一种被广泛应用在工矿企业及运输 建筑等部门中的机械部件。在本学期的机械课程设计中,我们对二级齿轮减速器进行了详细的计算和autocad出图。在计算齿轮减速器中心距时,...
机械优化设计大作业
1.题目自拟。多元函数优化问题。2.已知条件。根据具体题目确定。3.作业要求。1 建立优化模型 包括设计变量 目标函数 约束条件 2 程序求解,可以选用c fortran basic等编程语言或matlab maple等工具软件,写出最优解。3 学习本课程的心得体会。不少于 4 用a4纸打印。注意 ...
机械优化设计大作业
一 问题的描述。设计一重量最轻的空心传动轴。空心传动轴的d d分别为轴的外径和内径。轴的长度不得小于3m。轴的材料为45钢,密度为7.8 10 6kg mm,弹性模量e 2 10 5mpa,许用切应力 60mpa。轴所受扭矩为m 1.5 10 6n mm。二 数学模型的建立。1 扭转强度。因为空心传...