得分课程作业曲柄摇杆优化设计姓名: XX学号: XXXXX班级: XXXXXXX大学机械与动力学院目录1摘要2问题研究2.1 问题重述2.2 问题分析3数学模型的建立3.1 设计变量的确定3.2 目标函数的建立3.3 约束条件的确定3.4 标准数学模型4使用 MATLAB编程求解 4.1 调用功能函数4.2 首先编写目标函数 M 文件4.3 编写非线性约束函数 M 文件4.4 编写非线性约束函数 M 文件4.5 运行结果5结果分析6结论推广7过程反思8个人小结9参考文献1.1摘要 : 为分析机构能够满足给定的运动规律和运动空间的要求 , 运用 Matlab优化工具箱进行多约束条件下的连杆机构预定轨迹优化设计的方法 , 从而得到最接近给定运动规律的杆长条件 , 使机构的运动分析直观、简单和精确,提高了曲柄摇杆机构的设计精度和效率。
2问题研究2.1 问题重述要求设计一曲柄摇杆机构,当曲柄由0 转到 0 +90°时,摇杆的输出角实现如下给定的函数关系:02(0 )2 3式中0 和0 分别为对应于摇杆在右极限位置时曲柄和摇杆的位置角,它们是机架杆 l 4为原线逆时针度量的角度,见图 1。
45°,即:要求在该区间的运动过程中的最小传动角不得小于min [ ] 45通常把曲柄的长度当成单位长度,即l 1 。
另外,根据机构在机器中的许可=1空间,可以适当预选机架杆的长度,现取l 4 。
=52.2 问题分析设计时,可在给定最大和最小传动角的前提下,当曲柄从0转到0 90 时,要求摇杆的输出角最优地实现一个给定的运动规律f。
这里假设要求:E f2320( 1)图 1 曲柄摇杆机构简图对于这样的设计问题,可以取机构的期望输出角f和实际输出角EF的平方误差之和作为目标函数,使得它的值达到最小。
在图 1 所示的曲柄摇杆机构中,l1 、l2、l3、l4分别是曲柄、连杆、AB BC摇杆 CD和机架 AD的长度。
这里规定0 为摇杆在右极限位置0 时的曲柄起始位置角,它们由 l1、 l 2、 l3和 l4确定。
3 数学模型的建立3.1 设计变量的确定决定机构尺寸的各杆长度l1、l2、l3和l4,以及当摇杆按已知运动规律开始运行时,曲柄所处的位置角0应列为设计变量,所有设计变量有:xTl1 l 2 l3 l4Tx1 x2 x3 x4 x5 0 (2)考虑到机构的杆长按比例变化时,不会改变其运动规律,通常设定曲柄长度l1=,在这里可给定 l 4=,其他杆长则按比例取为l1的倍数。
若取曲柄的初始位置角为极位角,则及相应的摇杆l 位置角均为杆长的函数,其关系式为 :l1 2 l42 l 32 1 l 2 2 25l2 l32(3)0 arccos 2 l1 l 2 l4 10 1 l2l1 2 l42 l32 1 l 2 2 25l2 l32(4)0 arccos 2l 3l4 10l3因此,只有 l2、 l3为独立变量,则设计变量为xT Tx1 x2 l2 l3。
3.2 目标函数的建立目标函数可根据已知 - 的运动规律与机构实际运动规律之间的偏差最小为指标来建立,即:m2f x Eiii 1min (5)式中,Ei -期望输出角;m-输出角的等分数;i- 实际输出角,由图1 可知:图 2 曲柄摇杆机构的运动学关系i i 0 i (6)i2i i i式中,i arccos r i 2 l3 2l2 2 arccos ri2x2 2 x1 2 (7)2rl i 3 2r i x2i arccos r i 2 l4 2 l1 2arccos r i 2 24 (8)2rl i 4 10r ir i l12 l4 2 2l1l 4 cos i 26 10cos i (9)3.3 约束条件曲柄存在条件 :l1 l2 ; l1 l3 ,l1 l4 l 2 l 3 l2 l 4 l1 l3 ,l3 l4 l1 l2曲柄与机架共线位置时的传动角(连杆BC和摇杆 CD之间的夹角) : 最小传动角 r min min BCD 45最大传动角 r max max BCD 135由上面的分析可以算出:r minl22 l 32 l 42 l12 x12 x22 1645 (10)arccos 2l2l3 2x1x2r maxl22 l32 l 42 l12 x12 x22 36135 (11)arccos 2l2l3 2 x1 x23.4 标准数学模型通过上面的分析后,将输入角分成 30 等分( m=30),经过转化为标准形式得到曲柄摇杆机构优化设计标准数学模型为 :m 2f x Ei i mini 1x l 2 l 3 T x1 x2 Tg1 x 1 x1 0g2 x 1 x2 0g3 x 6 x1 x2 0s..t g4 x x1 x2 4 0 (12)g5 x x2 x1 4 0g6 x x1 2 x2 2 1.414x1 x2 36 0g7 x 36 x12 x2 2 1.414x1x2 0机械优化设计中的问题,大多数属于约束优化问题,此为非线性约束优化问题,运用 MATLAB优化工具箱的命令函数 fmincon 来处理有约束的非线性多元函数最小化优化问题。
4使用 MATLAB编程求解4.1 本问题属于一般非线性规划问题,其标准型为:min f (x)AX b, Aeq? X beq, C( X ) 0st..X vubCeq( X ) 0,vlb ( 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,options)[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,g rad,hessian] = fmincon( )[ 说明 ]fun 是目标函数options 设置优化选项参数fval 返回目标函数在最优解x 点的函数值exitflag 返回算法的终止标志output 返回优化算法信息的一个数据结构grad 返回目标函数在最优解x 点的梯度hessian 返回目标函数在最游解 x 点 Hessian 矩阵值编写程序求解4.2 首先编写目标函数M 文件function f=fun1(x)s=30;qb=1;jj=5;fx=0;ci0=acos(((qb+x(1))^2-x(2)^2+jj^2)/(2*(qb+x(1))*jj));%曲柄初始角fa0=acos(((qb+x(1))^2-x(2)^2-jj^2)/(2*x(2)*jj));% 摇杆初始角 for i=1:sci=ci0+(pi*i)/(2*s);fai(i)=fa0+(2*(ci-ci0)^2)/(3*pi);ri=sqrt(qb^2+jj^2-2*qb*jj*cos(ci));alfi=acos(((ri^2+x(2)^2)-x(1)^2)/(2*ri*x(2)));bati=acos((ri^2+jj^2-qb^2)/(2*ri*jj));if ci>0 && ci<=pipsi(i)=pi-alfi-bati;elseif ci>pi && ci<=2*pipsi(i)=pi-alfi+bati;endfx=fx+(fai(i)-psi(i))^2;endf=fx;i=1:1:30;plot(i,fai(i),i,psi(i),'--'); %legend('期望曲线 ',' 实际曲线 '); % 画曲线图标注曲线图对应名称4.3 编写非线性约束函数M 文件function [c,ceq]=confun(x)qb=1;jj=5;m=45*pi/180;n=135*pi/180;c(1)=x(1)^2+x(2)^2-2*x(1)*x(2)*cos(m)-(jj-qb)^2;%重合时最小传动角的非线性约束条件c(2)=-x(1)^2-x(2)^2+2*x(1)*x(2)*cos(n)+(jj+qb)^2;%共线时最小传动角的非线性约束条件ceq=[];4.4 在 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);4.5 运行结果x=[ ]fval =图3 输出角期望曲线与在 MATLAB结果下的实际曲线对比图图4 传动角与曲柄输入角变化关系图5 6 结果分析通过 Matlab 工具箱的优化求解,我们得到了最终的曲柄摇杆机构的最优杆长条件,即 L2=, L3=。
从运行结果上面来看,得到的数据还是比较理想的,在输出角期望曲线与在MATLAB结果下的实际曲线对比图(图 3)中,我们可以清楚地看到,期望曲线与实际曲线的拟合程度比较好。
在传动角结论推广由于在本问题当中,曲柄长度 L1 和机架长度 L4 是预先取的 L1=1,L4=5,我们通过对 L2 和 L3 的优化设计,最终得到了 L2=,L3=,如果把 1 看作是单位长度,那么我们最终求解出来的其实是曲柄摇杆机构符合已知运动轨迹的杆长比例。
只要曲柄摇杆机构的四杆长度按照这个比例,即 L1:L2:L3:L4=1:::5,那么我们得到的曲柄摇杆机构的运动轨迹都是比较理想的。
7 8 过程反思在曲柄摇杆优化设计的整个过程中,我们先通过对问题的分析,然后将求解曲柄摇杆机构杆长的问题转化为对求最优 L2,L3 的值的数学问题,然后我们通过建立数学模型,又使用了 Matlab 工具箱进行了编程求解,最终得到了我们的结果,即曲柄摇杆机构的最优杆长。