您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 机械/模具设计 > 机械优化设计_经典实例(PPT54页)
机械优化设计实例及matlab优化工具机械优化设计实例机械优化设计的一般过程建立数学模型的基本原则机械优化设计实例机械优化设计全过程一般可分为:1)建立优化设计的数学模型。2)选择适当的优化方法。3)编写计算机程序。4)准备必要的初始数据并上机计算。5)对计算机求得的结果进行必要的分析。机械优化设计的一般过程1)设计变量的选择:尽量减少设计变量数目设计变量应当相互独立2)目标函数的确定:选择最重要指标作为设计追求目标3)约束条件的确定:性能约束和边界约束建立数学模型的基本原则试设计一重量最轻的空心传动轴。空心传动轴的D、d分别为轴的外径和内径。轴的长度不得小于3m。轴的材料为45钢,密度为7.8×10-6㎏/㎜,弹性模量E=2×105MPa,许用切应力[τ]=60MPa。轴所受扭矩为M=1.5×106N·mm。设计实例1:分析设计变量:外径D、内径d、长度l设计要求:满足强度,稳定性和结构尺寸要求外,还应达到重量最轻目的。所设计的空心传动轴应满足以下条件:(1)扭转强度空心传动轴的扭转切应力不得超过许用值,即空心传动轴的扭转切应力:)(1644dDD设计实例1:空心传动轴的扭切应力:)(1644dDD01027.1544DDd设计实例1:经整理得:'2/3')2(7.0DdDE(2)抗皱稳定性扭转切应力不得超过扭转稳定得临界切应力:空心传动轴的扭转稳定的临界切应力为:设计实例1:034.1542/344DdDdDD整理得:设计实例1:(3)结构尺寸minll0d0dD设:ldDxxx321则数学模型为:62210)(12.6)(minldDf63222110)(12.6xxx设计实例1:01027.11027.1)(541425441xxDDdXg034.15434.154)(2/3121424112/3442xxxxxxDdDdDDg033)(33xlXg0)(24xdXg0)(215xxdDXg设计实例1:平面连杆机构优化设计一曲柄摇杆机构,M为连秆BC上一点,mm为预期的运动轨迹,要求设计该曲柄摇杆机构的有关参数,使连杆上点M在曲柄转动一周中,其运动轨迹(即连杆曲线)MM最佳地逼近预期轨迹mm。设计实例2:设计一再现预期轨迹mm的曲柄摇杆机构。已知xA=67mm,yA=10mm,等分数s=12,对应的轨迹mm上12个点的坐标值见表,许用传动角[γ]=300。设计实例2:一、建立优化设计的数学模型点M的坐标:)sin()sin()cos()cos(5151llyyllxxAMAMcossincos22cos2arccos)(14141242124124232221lllarctglllllllllll设计实例2:点M的坐标:)sin()sin()cos()cos(5151llyyllxxAMAMcossincos22cos2arccos)(14141242124124232221lllarctglllllllllll出。将由设计的已知条件给其中''0设计实例2:该问题有8个设计变量,记为:Txxxx821,,,设计实例2:Tlllll054321,,,,,,,2)确定目标函数将曲柄一周转角分为s等分,要求连秆曲线最佳地逼近预期轨迹mm,具体可由连杆曲线上的s个点M最佳地逼近预期轨迹上的s个点m予以实现。由此可按点距和最小的原则建立如下目标函数:simiMimiMiyyxxxf122)()()(设计实例2:3)确定约束条件(1)由曲柄存在条件,可得:(2)由杆长必须大于零及曲柄1为最短杆,可得:0)(0)(0)(324134231243211llllxgllllxgllllxg0)(14lexg设计实例2:(3)由满足传动角条件γ>[γ],可得:0]2)(arccos180[][)(02)(arccos][)(32214232263221423225llllllxgllllllxg。设计实例2:优化设计工具优化设计工具第1部分MATLAB基础第2部分优化计算工具第1部分MATLAB基础1.1MATLAB环境简介1.2数据表示1.3数组1.4源文件(M-文件)1.1MATLAB窗口启动MATLAB其窗口如右1、CommandWindow(命令窗口)2、Workspace(工作区)1.2数据表示1、变量变量用标识符表示(字母打头、字母、数字、下划线组成,长度≤19)。可以合法出现而定义。区分大小写字母,以当前值定义其类型。2、函数名函数名用标识符表示。1.3数组行向量、列向量、矩阵1.3.1创建数组的常用方法1)直接列表定义数组例如:x=[1234567890]y=[1,2,3,4,5,6,7,8,9,0]z=[1,2,3,4,5;2,3,4,5,6,7]1.3数组2)域表定义数组变量=初值:增量:终值|初值:终值变量=(初值:增量:终值)*常数例如:x=0:0.02:10y=1:801.3数组1.3.2、数组的访问(一维)数组名表示全体元素数组名(k)表示第k元素数组名(k1:k2)表示第k1到k2元素1.3.3数组运算1).纯量与数组的算术运算aωc1或c1ωa其中ω可为+、-、*结果为[a1ωc1a2ωc1…anωc1]或[c1ωa1c1ωa2…c1ωan]2).数组加(减)使两数组的对应各元素相加(减)3).数组点乘两数组的对应元素相乘a.*b结果:[a1*b1a2*b2…an*bn](a与b的维数必须相同)1.3.3数组运算4).数组点正除(右除)使两数组的对应元素正除a./b结果为:(a、b维数必须相同)nnbababa11122111.3.3数组运算1.4源文件(M-文件)分为两类:函数文件和非函数文件都用扩展名.M1.4.1函数文件(相当于子程序)格式function[输出表]=函数名(输入表)函数体1.4.2非函数文件无函数头的M文件,由若干命令和注释构成。相当于主程序如:%Filenameisasine.mx=0:0.1:2*pi;y=sin(x);plot(x,y)1.4.3M-文件的操作)5.75.7,5.75.7()sin(2222yxyxyxz1.4.3M-文件的操作1.4.3M-文件的操作1.4.3M-文件的操作第2部分优化计算工具2.1线性规划优化函数2.2无约束非线性优化函数2.3约束优化函数MATLAB解决的线性规划问题的标准形式为:min..tsxcT0,xbAxTnnmijxxxxxaA),...,(,)(32,10,),...,(,),...,(2121bbbbbccccTmTn且2.1线性规划优化函数[函数]linprog[格式]x=linprog(f,A,b,Aeq,beq)x=linprog(f,A,b,Aeq,beq,lb,ub,x0)f——是优化参数x的系数矩阵;A——线性不等式约束系数阵b——线性不等式约束常数向量Aeq——线性等式约束系数阵Beq——线性等式约束常数向量2.1线性规划及其优化函数[应用举例]求使函数取最小值的x值,且满足约束条件:321645)(xxxxf20321xxx42423321xxx302321xx0,0,0321xxx2.1线性规划及其优化函数[代码]f=[-5;-4;-6];A=[1-11;324;320];b=[20;42;30];lb=zeros(3,1);[x,fval]=linprog(f,A,b,[],[],lb)[结果]x=0.000015.00003.0000fval=-78.00002.2无约束非线性优化函数[函数]fminunc[格式]x=fminunc(fun,x0)x=fminunc(fun,x0,options)[x,fval]=fminunc(…)2.2无约束非线性优化函数[应用举例]求的最小值[代码]%首先编写目标的.m文件functionf=myfun(x)f=3*x(1)^2+2*x(1)*x(2)+x(2)^222212123)(xxxxxf%然后调用函数fminuncx0=[1,1];[x,fval]=fminunc(myfun,x0)2.2无约束非线性优化函数[结果]x=1.0e-008*-0.75120.2479fval=1.3818e-0162.3约束优化函数[函数]fmincon[格式]x=fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon)x=fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon,options)[x,fval]=fmincon(…)2.3约束优化函数—盖板优化实例:211205.02602)(xxhtxf0)(0)(01321115.1)(014571)(014571][)(01411][)(2615221max4231max321max22max1xxgxxgxxfxgxxxgxxxgxxgc目标函数:约束:211205.02602)(xxhtxf盖板优化实例0)(0)(032111)(04571)(04571)(0411)(26152214231321221xxgxxgxxxgxxxgxxxgxxg盖板优化实例盖板优化实例运行结果:x=0.633225.3264fval=101.3056盖板优化实例前面空心轴的问题:clearallx0=[23,19,4];options=optimset('largescale','off','display','iter','tolx',1e-6);[x,fval,exitflag,output]=fmincon('myfun1',x0,[],[],[],[],[],[],'confun1',options)functionf=myfun1(x)f=6.12*(x(1)^2-x(2)^2)*x(3)*10e-6x=33.750512.88303.0000fval=0.1787exitflag=4output=iterations:7funcCount:39stepsize:1algorithm:'medium-scale:SQP,Quasi-Newton,line-search'前面空心轴的问题:装载机优化设计:
本文标题:机械优化设计_经典实例(PPT54页)
链接地址:https://www.777doc.com/doc-126815 .html