曲柄摇杆机构matlab优化设计_第1页
曲柄摇杆机构matlab优化设计_第2页
曲柄摇杆机构matlab优化设计_第3页
曲柄摇杆机构matlab优化设计_第4页
曲柄摇杆机构matlab优化设计_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于MATLAB的曲柄摇杆机构优化设计1. 问题的提出根据机械的用途和性能要求的不同,对连杆机构设计的要求是多种多样的,但这些设计要求可归纳为以下三种问题:(1)满足预定的运动规律要求;(2)满足预定的连杆位置要求;(3)满足预定的轨迹要求。设实际的函数为(称为再现函数),而再现函数一般是与期望函数不一致的,因此在设计时应使机构再现函数尽可能逼近所要求的期望函数。2. 曲柄摇杆机构的设计在图 1 所示的曲柄摇杆机构中, 、 分别是曲柄AB、连杆BC、摇杆CD和机架AD的长度。这里规定为摇杆在右极限位置时的曲柄起始位置角,它们由 、和确定。图1曲柄摇杆机构简图设计时,可在给定最大和最小传动角的前

2、提下,当曲柄从转到时,要求摇杆的输出角最优地实现一个给定的运动规律。这里假设要求: (1)对于这样的设计问题,可以取机构的期望输出角和实际输出角的平方误差之和作为目标函数,使得它的值达到最小。2.1 设计变量的确定决定机构尺寸的各杆长度 、和,以及当摇杆按已知运动规律开始运行时,曲柄所处的位置角应列为设计变量,即: (2)考虑到机构的杆长按比例变化时,不会改变其运动规律,通常设定曲柄长度=1.0,在这里可给定=5.0,其他杆长则按比例取为的倍数。若取曲柄的初始位置角为极位角,则及相应的摇杆位置角均为杆长的函数,其关系式为: (3) (4)因此,只有、为独立变量,则设计变量为。2.2目标函数的建

3、立目标函数可根据已知的运动规律与机构实际运动规律之间的偏差最小为指标来建立,即: (5)式中,-期望输出角;m-输出角的等分数;-实际输出角,由图可知: (6)式中, (7) (8) (9)2.3约束条件曲柄存在条件: 曲柄与机架共线位置时的传动角(连杆BC和摇杆CD之间的夹角):最小传动角最大传动角由上面的分析可以算出: (10) (11)3.用MATLAB工具箱优化计算结果通过上面的分析后,将输入角分成 30 等分(m=30),经过转化为标准形式得到曲柄摇杆机构优化设计标准数学模型为: (12) 这个问题为非线性约束优化问题,运用 MATLAB 优化工具箱的命令函数 fmincon 来处理

4、有约束的非线性多元函数最小化优化问题。3.1 编写程序求解本问题属于一般非线性规划问题,其标准型为: (13)调用MATLAB软件优化工具箱中非线性规划求解函数fmincon来求解。其命令的基本格式为:函数 fmincon格式x = fmincon(fun,x0,A,b)x = fmincon(fun,x0,A,b,Aeq,beq)x = fmincon(fun,x0,A,b,Aeq,beq,lb,ub)x = fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon)x = fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon,option

5、s)x,fval = fmincon()x,fval,exitflag = fmincon()x,fval,exitflag,output = fmincon()x,fval,exitflag,output,lambda = fmincon()x,fval,exitflag,output,lambda,grad = fmincon()x,fval,exitflag,output,lambda,grad,hessian = fmincon()说明fun 是目标函数options 设置优化选项参数fval 返回目标函数在最优解x点的函数值exitflag 返回算法的终止标志output 返回优化算

6、法信息的一个数据结构grad 返回目标函数在最优解x点的梯度hessian 返回目标函数在最游解x点Hessian矩阵值 (1).首先编写目标函数 M 文件fun1.mfunction f=fun1(x)s=30;L1=1;L4=5;Ex=0;%误差初值为0fai0=acos(L1+x(1)2-x(2)2+L42)/(2*(L1+x(1)*L4);%曲柄初始角Fai0=acos(L1+x(1)2-x(2)2-L42)/(2*x(2)*L4);%摇杆初始角for i=1:s fai=fai0+(pi*i)/(2*s); Fai(i)=Fai0+(2*(fai-fai0)2)/(3*pi);%输出

7、角理论值 ri=sqrt(L12+L42-2*L1*L4*cos(fai); alfi=acos(ri2+x(2)2)-x(1)2)/(2*ri*x(2); bati=acos(ri2+L42-L12)/(2*ri*L4); if fai>0 && fai<=pi psi(i)=pi-alfi-bati;% 输出角实际值 elseif fai>pi && fai<=2*pi psi(i)=pi-alfi+bati; % 输出角实际值 endEx=Ex+(Fai(i)-psi(i)2;% %输出角理论值和实际值之间的累计误差 endf=Ex

8、;%将误差函数赋值为函数f.i=1:1:30;plot(i,Fai(i),i,psi(i),'-'); %做出输出角的理论值和实际值曲线legend('期望曲线','实际曲线'); %标注曲线图对应名称(2).编写非线性约束函数 M 文件 confun.mfunction c,ceq=confun(x)L1=1;L4=5;m=45*pi/180;n=135*pi/180;c(1)=x(1)2+x(2)2-2*x(1)*x(2)*cos(m)-(L4-L1)2; %重合时最小传动角的非线性约束条件c(2)=-x(1)2-x(2)2+2*x(1)*x

9、(2)*cos(n)+(L4+L1)2;%共线时最小传动角的非线性约束条件ceq=;(3).在 MATLAB 命令窗口调用优化程序x0=6;6;lb=1;1;ub=;A=-1 0;0 -1;-1 -1;1 -1; -1 1;b=-1;-1;-6;4;4;options=optimset('LargeScale','off','display','iter');x,fval,exitflag=fmincon(fun1,x0,A,b,lb,ub,confun,options);xfval3.2运行结果x =4.1285 2.3226f

10、val = 0.0076图3 输出角期望曲线与在MATLAB结果下的实际曲线对比图图4 传动角与曲柄输入角变化关系图5.结 论结果分析通过Matlab工具箱的优化求解,我们得到了最终的曲柄摇杆机构的最优杆长条件,即L2=4.1285,L3=2.3226。从运行结果上面来看,得到的数据还是比较理想的,在输出角期望曲线与在MATLAB结果下的实际曲线对比图(图3)中,我们可以清楚地看到,期望曲线与实际曲线的拟合程度比较好。MATLAB优化工具箱具有强大的优化工具,应用它求解优化问题时工作量小,操作简单,计算结果精确,大大地提高了设计的时效性和准确性。利用 MATLAB 优化工具箱对曲柄摇杆机构设计,达到了设计的预期目的。参考文献1 孙桓,陈作模,葛文杰.机械原理M.北京:高等教育出版

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论