利用matlab求解机械设计优化问题-螺栓

利用matlab求解机械设计优化问题-螺栓

ID:18232660

大小:52.00 KB

页数:5页

时间:2018-09-15

利用matlab求解机械设计优化问题-螺栓_第1页
利用matlab求解机械设计优化问题-螺栓_第2页
利用matlab求解机械设计优化问题-螺栓_第3页
利用matlab求解机械设计优化问题-螺栓_第4页
利用matlab求解机械设计优化问题-螺栓_第5页
资源描述:

《利用matlab求解机械设计优化问题-螺栓》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、3.机械优化设计应用实例机械优化设计把数学规划理论与数值方法应用于设计中,用计算机从大量可行方案中找出最优化设计方案,从而大大提高设计质量和设计效率。MATLAB具有解决线性规划和非线性规划、约束优化和无约束优化问题的内部函数,因而可以完成这一功能。现举一例:螺栓组联结的优化设计如图4所示的压力容器螺栓组联接中,已知D1=400mm,D2=250mm,缸内工作压力为p=1.5MPa,螺栓材料为35号钢,σs=320Mpa,安全系数S=3,取残余预紧力Q’p=1.6F,采用铜皮石棉密封垫片。现从安全、可

2、靠、经济的角度来选择螺栓的个数n和螺栓的直径d。3.1设计问题分析若从经济性考虑,螺栓数量尽量少些、尺寸小些,但这会使降低联结的强度和密封性,不能保证安全可靠的工作;若从安全、可靠度考虑,螺栓数量应多一些、尺寸大一些为好,显然经济性差,甚至造成安装扳手空间过小,操作困难。为此,该问题的设计思想是:在追求螺栓组联结经济成本最小化的同时,还要保证联结工作安全、可靠。3.2设计变量目标函数约束条件3.2.1设计变量选取螺栓的个数n和直径d(mm)为设计变量:3.2.2目标函数追求螺栓组联结经济成本Cn最小为

3、目标。而当螺栓的长度、材料和加工条件一定时,螺栓的总成本与nd值成正比,所以本问题优化设计的目标函数为minF(X)=Cn=nd=x1x2①强度约束条件为了保证安全可靠地工作,螺栓组联结必须满足强度条件;其中;N;对于粗牙普通螺纹:由文献[3]推荐,小径d1=0.85d所以,强度约束条件为:②密封约束条件为了保证密封安全,螺栓间距应小于10d,所以,密封约束条件为:③安装扳手空间约束条件为了保证足够的扳手空间,螺栓间距应大于5d,所以,安装约束条件为:④边界约束条件;3.3.3建立数学模型综上所述,本

4、问题的数学模型可表达为:设计变量:目标函数:minF(X)=x1x2约束条件:s.t.(i=1,2,3,4,5,)现运用MATLAB的优化函数进行求解:先编写M文件function[c,ceq]=mynas(x)c(1)=146192/(x(1)*x(2)^2)-106;%非线性不等式约束c(2)=400*pi/x(1)-10*x(2);c(3)=-400*pi/x(1)+5*x(2);ceq=[];%非线性等式约束在MATLAB命令窗口输入:fun='x(1)*x(2)';%目标函数x0=[4,6]

5、;%设计变量初始值A=[-1,0;0,-1];%线性不等式约束矩阵b=[0;0];Aeq=[];%线性等式约束矩阵beq=[];lb=[];%边界约束矩阵ub=[];[x,fval]=fmincon(fun,x0,A,b,Aeq,beq,lb,ub,@mynlsub)%调用有约束优化函数运行结果如下:x=11.449910.9751fval=125.6637所以,该问题优化结果为:n=11.4499,d=10.9751,目标函数最小值:F(X)=125.6637。根据实际问题的意义取整、标准化:n=1

6、2,d=12。由此例可以看出,与其它编程语言相比,MATLAB语言可以简化编程。图5是调用MATLAB绘图函数自动对上例绘制的数学模型要素图(标注数字的曲线为目标函数的等值线),为此在MATLAB命令窗口输入:x1=0.1:20;y1=146192./(106.*x1.^2);y2=400.*pi./(10.*x1);y3=400.*pi./(5.*x1);plot(y1,x1,y2,x1,y3,x1,x(1),x(2),'o')y4=0.1:0.1:20;[y4,x1]=meshgrid(y4,x1

7、);Q=y4.*x1;holdon;[c,h]=contour(y4,x1,Q);holdon;clabel(c,h);4.结束语从上述实例可以看出,利用求解最优化问题具有编程简单,精度很高,速度很快,各种工形式的最优化问题都适用等优点,巧妙各种利用MATLAB语言可以取得事半功倍的效果。MATLAB具有科学计算的强大能力,不管处理什么样的对象——算法、图形、图像、报告或者算法仿真——MATLAB都能够帮助大家不断提高工作效率。MATLAB环境能够完成算法开发、数据分析和可视化、高性能数据分析等工作,

8、相对于传统的C、C++或者FORTRAN语言,在MATLAB中完成这些工作所消耗的时间仅仅是传统手段的极小一部分。开放性的MATLAB软件和开发语言——M语言,能够快速实现用户好的想法和概念。MATLAB本身包含了600余个用于数学计算、统计和工程处理的函数,这样,就可以迅速完成科学计算任务而不必进行额外的开发。业内领先的工具箱算法极大的扩展了MATLAB的应用领域,例如信号处理,数字图像处理、数据分析和统计以及算法建模和仿真等。MATLAB的工具箱都是

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。