大作业(二) 凸轮机构设计(题号:8) 班级:姓名、学号:成绩:完成日期:目录1.凸轮机构大作业题目 (2)2.推杆运动规律及凸轮廓线方程 (3)3.程序流程图 (3)4.源程序…………………………………………………^55.计算结果 (14)6.凸轮机构图 (16)7.体会及建议 (19)8.参考资料 (20)一、凸轮机构大作业题目试用计算机辅助设计完成下列摆动滚子推杆盘形凸轮机构的设计,已知数据如下表所示,凸轮沿着逆时针方向做匀速转动。
表1 凸轮机构的推杆运动规律表2 两种凸轮机构的推杆在近休、推程、远休及回程阶段的凸轮转角表3 摆动滚子推杆盘形凸轮机构的已知参数要求:每组(每三人为一组,每人一题)至少打印出一份源程序,每人打印出原始数据;凸轮理论轮廓与实际轮廓的坐标值;推程与回程的最大压力角,以及出现最大压力角时凸轮的相应转角;凸轮实际轮廓曲线的最小曲率半径,以及相应的凸轮转角;与最后说确定的基圆半径。
计算点数N=72~120。
绘出凸轮的理论轮廓与实际轮廓(可用计算机绘图)。
二、推杆运动规律及凸轮廓线方程:推程(正弦加速度):s=h[(δ/δ0)-sin(2πδ/δ0)/(2π)]回程(等加速段):s=h-2hδ2/δ'02回程(等减速段):s=2h(δ'0-δ)2/δ'02凸轮理论廓线方程:x=l OA sinδ-l AB sin(δ+φ+φ0)y=l OA cosδ-l AB cos(δ+φ+φ0)式中,φ0为推杆的初始位置角,其值为:φ四、源程序clear;r0=22;%初选的基圆半径dr0=0、05;a=72; %机架长度L=68;%摆杆长度rr=18;%滚子半径fai=28*pi/180;%推杆摆角PI=3、141592653;alpha1=45;%许用压力角α1alpha2=65;%许用压力角阿尔法2lambda=6、3;%许用最小曲率半径N=120;%取用点的个数delta1=180*pi/180;%推程凸轮最大转角delta2=70*pi/180; %远休凸轮最大转角delta3=80*pi/180;%回程凸轮最大转角delta4=30*pi/180;%近休凸轮最大转角alphamax1=0;% 推程最大压力角初值alphamax2=0; %回程最大压力角初值roumin=100; %凸轮最小曲率半径初值X=ones(1,121);Y=ones(1,121);XP=ones(1,121);YP=ones(1,121);FAI=ones(1,121);I=0;%初始化while(I<=N)F0=acos((a*a+L*L-r0*r0)/(2*a*L));delta=3*I*pi/180;if(delta<180*pi/180&delta>=0) %正弦推程F0=acos((a*a+L*L-r0*r0)/(2*a*L));F=fai* ((delta/delta1)-sin(2*pi*delta/delta1)/(2*pi));x=a*sin(delta)-L*sin(delta+F+F0);y= a*cos(delta)-L*cos(delta+F+F0);dF= fai*(1/delta1-cos(2*pi*delta/delta1)/delta1);ddF=fai*2*pi*sin(2*pi*delta/delta1)/(delta1*delta1);dx=a*cos(delta)-L*cos(delta+F+F0)*(1+dF);ddx=-a*sin (delta)+L* sin(delta+F+F0)*(1+dF)^2-L*cos(delta+F+F0)*ddF;dy=-a*sin(delta)+L*sin(delta+F+F0)*(1+dF);ddy=-a*cos (delta)+L* cos(delta+F+F0)*(1+dF)^2+ L*sin(delta+F+F0)*ddF;stheta=dx/sqrt(dx*dx+dy*dy);ctheta=-dy/sqrt(dx*dx+dy*dy);xp=x-rr*ctheta;yp=y-rr*stheta;alpha=atan((L*abs(dF)+(a*cos(F+F0)-L))/(a*sin(F+F0)))*180/pi;alpha=abs(alpha);if (alpha>alphamax1)alphamax1=alpha;deltamax1=delta*180/pi;endendif(delta>=180*pi/180&delta<250*pi/180)%远休F0=acos((a*a+L*L-r0*r0)/(2*a*L));F=fai;x=a*sin(delta)-L*sin(delta+F+F0);y= a*cos(delta)-L*cos(delta+F+F0);dF=0;ddF=0;dx=a*cos(delta)-L*cos(delta+F+F0)*(1+dF);ddx=-a*sin (delta)+L* sin(delta+F+F0)*(1+dF)^2-L*cos(delta+F+F0)*ddF;dy=-a*sin(delta)+L*sin(delta+F+F0)*(1+dF);ddy=-a*cos (delta)+L* cos(delta+F+F0)*(1+dF)^2+ L*sin(delta+F+F0)*ddF;stheta=dx/sqrt(dx*dx+dy*dy);ctheta=-dy/sqrt(dx*dx+dy*dy);xp=x-rr*ctheta;yp=y-rr*stheta;endif(delta>=250*pi/180&delta<290*pi/180)%等加速回程F0=acos((a*a+L*L-r0*r0)/(2*a*L));F=fai-2*fai*(delta-250*pi/180)*(delta-250*pi/180)/(delta3*delta3);x=a*sin(delta)-L*sin(delta+F+F0);y=a*cos(delta)-L*cos(delta+F+F0);dF=-4*fai*(delta-250*pi/180)/(delta3*delta3);ddF=-4*fai/(delta3*delta3);dx=a*cos(delta)-L*cos(delta+F+F0)*(1+dF);ddx=-a*sin (delta)+L* sin(delta+F+F0)*(1+dF)^2-L*cos(delta+F+F0)*ddF;dy=-a*sin(delta)+L*sin(delta+F+F0)*(1+dF);ddy=-a*cos (delta)+L* cos(delta+F+F0)*(1+dF)^2+ L*sin(delta+F+F0)*ddF;stheta=dx/sqrt(dx*dx+dy*dy);ctheta=-dy/sqrt(dx*dx+dy*dy);xp=x-rr*ctheta;yp=y-rr*stheta;alpha=atan((L*abs(dF) -(a*cos(F+F0)-L))/(a* sin(F+F0))) *180/pi;alpha=abs(alpha);if (alpha>alphamax2)alphamax2=alpha;deltamax2=delta*180/pi;endendif(delta>=290*pi/180&delta<330*pi/180)%等减速回程F0=acos((a*a+L*L-r0*r0)/(2*a*L));F=2*fai*(delta3-(delta-250*pi/180))*(delta3-(delta-250*pi/180))/(d elta3*delta3);dF=-4*fai*(delta3-(delta-250*pi/180))/(delta3*delta3);ddF=4*fai/(delta3*delta3);x=a*sin(delta)-L*sin(delta+F+F0);y=a*cos(delta)-L*cos(delta+F+F0);dx=a*cos(delta)-L*cos(delta+F+F0)*(1+dF);ddx=-a*sin (delta)+L* sin(delta+F+F0)*(1+dF)^2-L*cos(delta+F+F0)*ddF;dy=-a*sin(delta)+L*sin(delta+F+F0)*(1+dF);ddy=-a*cos (delta)+L* cos(delta+F+F0)*(1+dF)^2+ L*sin(delta+F+F0)*ddF;stheta=dx/sqrt(dx*dx+dy*dy);ctheta=-dy/sqrt(dx*dx+dy*dy);xp=x-rr*ctheta;yp=y-rr*stheta;alpha=atan((L*abs(dF)-(a*cos(F+F0)-L))/(a*sin(F+F0)))*180/pi;alpha=abs(alpha);if (alpha>alphamax2)alphamax2=alpha;deltamax2=delta*180/pi;endendif(delta>=330*pi/180&delta<=360*pi/180) %近休F0=acos((a*a+L*L-r0*r0)/(2*a*L));F=0;x=a*sin(delta)-L*sin(delta+F+F0);y=a*cos(delta)-L*cos(delta+F+F0);dF=0;ddF=0;dx=a*cos(delta)-L*cos(delta+F+F0)*(1+dF);ddx=-a*sin (delta)+L* sin(delta+F+F0)*(1+dF)^2-L*cos(delta+F+F0)*ddF;dy=-a*sin(delta)+L*sin(delta+F+F0)*(1+dF);ddy=-a*cos (delta)+L* cos(delta+F+F0)*(1+dF)^2+ L*sin(delta+F+F0)*ddF;stheta=dx/sqrt(dx*dx+dy*dy);ctheta=-dy/sqrt(dx*dx+dy*dy);xp=x-rr*ctheta;yp=y-rr*stheta;endif (alphamax1>alpha1)||(alphamax2>alpha2) %优化条件r0=r0+dr0;I=0;alphamax1=0;alphamax2=0;continueendrou=((dx^2+dy^2)^(3/2))/(dx*ddy-dy*ddx); %计算曲率半径if (rou<0)rou=-rou;if ((rou-rr)<(0、35*rr)) %优化条件r0=r0+dr0;I=0;alphamax1=0; alphamax2=0;continueendif(rou<roumin)roumin=rou;deltamin=delta *180/pi; roumina=roumin-rr;endendX(I+1)=x;Y(I+1)=y;XP(I+1)=xp;YP(I+1)=yp;I=I+1;endfigure(1);axis equalhold ont=0:3:360;X_1=r0*cosd(t); %画基圆Y_1=r0*sind(t);X_2=rr*cosd(t)+X(10); %画滚子Y_2=rr*sind(t)+Y(10);plot(X_1,Y_1,'m--',X,Y,':',XP,YP,'k',X_2,Y_2,'c--'); legend('基圆','理论轮廓','实际轮廓');plot(0,0,'ko'); %固定凸轮点plot(X(10),Y(10),'ko'); %固定滚子点title('凸轮轮廓曲线图');xlabel('X/mm');ylabel('Y/mm');hold offdisp('推程最大压力角:');alphamax1disp('推程最大压力角相应转角:'); deltamax1disp('回程最大压力角:');alphamax2disp('回程最大压力角相应转角:'); deltamax2disp('凸轮最小曲率半径:');roumindisp('凸轮最小曲率半径相应转角:');rouminadisp('最后确定的凸轮基圆半径:');r0五、计算结果A组:推程最大压力角:alphamax1 =34、9492推程最大压力角相应转角: deltamax1 =45回程最大压力角:alphamax2 =46、7626回程最大压力角相应转角: deltamax2 = 255凸轮最小曲率半径:roumin =15、0000凸轮最小曲率半径相应转角: roumina =5、0000最后确定的凸轮基圆半径:r0 =19、7000B组:推程最大压力角:alphamax1 =24、2568推程最大压力角相应转角: deltamax1 = 177、0000回程最大压力角: alphamax2 = 51、9666回程最大压力角相应转角: deltamax2 = 291、0000凸轮最小曲率半径:roumin = 24、3000凸轮最小曲率半径相应转角: roumina =6、3000最后确定的凸轮基圆半径: r0 =32、8000C组:推程最大压力角: alphamax1 =24、2568推程最大压力角相应转角: deltamax1 = 177、0000回程最大压力角: alphamax2 = 51、9666回程最大压力角相应转角: deltamax2 = 291、0000凸轮最小曲率半径:roumin = 24、3000凸轮最小曲率半径相应转角: roumina =6、3000最后确定的凸轮基圆半径: r0 =32、8000六、凸轮机构图A组:B组:C组:七、体会及建议本次凸轮机构的设计,我们熟悉了解析法在机构设计中的应用,锻炼了编程能力。