机械原理大作业学院:机械与电子信息学院授课老师:曾小慧:京学号:20131004547日期:2015-5-23目录1.求轮廓曲线○1推程阶段○2远休止阶段○3回程阶段○4近休止阶段○5Matlab程序设计○6轮廓图形2.求工作廓线○1推程阶段○2远休止阶段○3回程阶段○4近休止阶段○5Matlab程序设计○6轮廓图形3.求解最大压力角○1压力角公式○2MATLAB程序设计○3根据MATLAB程序作图可得出其压力角与角度的关系并分析○4失真情况分析4.附录 Matlab程序凸轮轮廓9-14试设计偏置直动滚子推杆盘形凸轮机构的理论轮廓曲线和工作廓线。
已知凸轮轴置于推杆轴线右侧,偏距e=20mm ,基圆半径r。
=50mm ,滚子半径rr=10mm 。
凸轮以等角速度沿顺时针方向回转,在凸轮转过角d 1=120º的过程中,推杆按正弦加速度运动规律上升h=50mm ;凸轮继续转过d 2=30º时,推杆保持不动;其后,凸轮再回转角度d 3=60º时,推杆又按余弦加速度运动规律下降至起始位置;凸轮转过一周的其余角度时,推杆又静止不动。
解:1.求理论廓线对于偏置直动滚子推杆盘形凸轮机构,凸轮理论廓线上B 点(即滚子中心)的直角坐标为]cos sin )[(0δδe s s x ++-=δδsin cos )(0e s s y -+= (a ) 式中mm mm e r s 826.452050222200=-=-=① 推程阶段3212001πδ=︒=)]2/()3sin()2/3[()]2/()/2sin()/[(110110111πδπδπδπδδδ-=-=h h s (⎥⎦⎤⎢⎣⎡=32,01πδ) ② 远休止阶段 63002πδ=︒=502=s ⎥⎦⎤⎢⎣⎡=6,02πδ③ 回程阶段36003πδ=︒=2/)]3cos(1[2/)]/cos(1[30333δδπδ+=+=h h s ⎥⎦⎤⎢⎣⎡=3,03πδ ④ 近休止阶段6515004πδ=︒= 04=s ⎥⎦⎤⎢⎣⎡=65,04πδ○5Matlab 程序设计: a1=linspace(0,2*pi/3); %推程阶段的自变量s1=h*(3*a1/2/pi-sin(3*a1)/2/pi); %推杆产生的相应位移x1=-((s0+s1).*sin(a1)+e*cos(a1)); %x 函数y1=(s0+s1).*cos(a1)-e*sin(a1); %y 函数a2=linspace(0,pi/6); %远休止阶段的自变量s2=50; %推杆位移x2=-((s0+s2).*sin(a2+2*pi/3)+e*cos(a2+2*pi/3)); %x 函数y2=(s0+s2).*cos(a2+2*pi/3)-e*sin(a2+2*pi/3); %y 函数a3=linspace(0,pi/3); %回程阶段的自变量s3=h*(1+cos(3*a3))/2; %推杆位移x3=-((s0+s3).*sin(a3+5*pi/6)+e*cos(a3+5*pi/6)); %x 函数y3=(s0+s3).*cos(a3+5*pi/6)-e*sin(a3+5*pi/6); %y 函数a4=linspace(0,5*pi/6); %近休止阶段的自变量s4=0; %推杆位移x4=-((s0+s4).*sin(a4+7*pi/6)+e*cos(a4+7*pi/6)); %x 函数y4=(s0+s4).*cos(a4+7*pi/6)-e*sin(a4+7*pi/6); %y 函数a0=linspace(0,2*pi); %基圆自变量x5=r0*cos(a0); %x 函数y5=r0*sin(a0); %y 函数○6轮廓图形 通过Matlab 软件,编写程序,将以上各相应值代入式(a)计算理论轮廓线上各点的坐标值。
在计算时应注意:在推程阶段取1δδ=,在远休止阶段取201δδδ+=,在回程阶段取30201δδδδ++=,在近休止阶段取4030201δδδδδ+++=。
画出的图形如下图所示2.求工作廓线θcos 'r r x x -= θsin 'r r y y -= (b )其中 22)/()/(/)/(sin δδδθd dy d dx d dx +-= 22)/()/(/)/(cos δδδθd dy d dx d dy +=① 推程阶段⎥⎦⎤⎢⎣⎡=32,01πδ 1011cos )(sin })2/()]3cos(1[3{/δδπδδs s e h d dx +----=1011sin )(cos })2/()]3cos(1[3{/δδπδδs s e h d dy +---=② 远休止阶段⎥⎦⎤⎢⎣⎡=6,02πδ )3/2cos()()3/2sin(/202δπδπδ++-+=s s e d dx)3/2sin()()3/2cos(/202δπδπδ++-+-=s s e d dy③ 回程阶段⎥⎦⎤⎢⎣⎡=3,03πδ )6/5cos()()6/5sin(]2/)3sin(3[/3033δπδπδδ++-++=s s e h d dx)6/5sin()()6/5cos(]2/)3sin(3[/3033δπδπδδ++-++-=s s e h d dy④ 近休止阶段⎥⎦⎤⎢⎣⎡=65,04πδ )6/7cos()()6/7sin(/404δπδπδ++-+=s s e d dx)6/7sin()()6/7cos(/404δπδπδ++-+-=s s e d dy○5Matlab 程序设计: %工作廓线m1=-(h*3/2/pi*(1-cos(3*a1))-e).*sin(a1)-(s0+s1).*cos(a1); %中间变量dx/d$ n1=(h*3/2/pi*(1-cos(3*a1))-e).*cos(a1)-(s0+s1).*sin(a1); %中间变量dy/d$ p1=-m1./sqrt(m1.^2+n1.^2); %sin&q1=n1./sqrt(m1.^2+n1.^2); %cos&x6=x1-r*q1; %x'函数y6=y1-r*p1; %y'函数m2=-(s0+s2).*cos(a2+2*pi/3)+e*sin(a2+2*pi/3); %中间变量dx/d$ n2=-(s0+s2).*sin(a2+2*pi/3)-e*cos(a2+2*pi/3); %中间变量dy/d$ p2=-m2./sqrt(m2.^2+n2.^2); %sin&q2=n2./sqrt(m2.^2+n2.^2); %cos&x7=x2-r*q2; %x'函数y7=y2-r*p2; %y'函数m3=(h*3/2*sin(3*a3)+e).*sin(a3+5*pi/6)-(s0+s3).*cos(a3+5*pi/6); %中间变量dx/d$ n3=-(h*3/2*sin(3*a3)+e).*cos(a3+5*pi/6)-(s0+s3).*sin(a3+5*pi/6);%中间变量dy/d$ p3=-m3./sqrt(m3.^2+n3.^2); %sin&q3=n3./sqrt(m3.^2+n3.^2); %cos&x8=x3-r*q3; %x'函数y8=y3-r*p3; %y'函数m4=-(s0+s4).*cos(a4+7*pi/6)+e*sin(a4+7*pi/6); %中间变量dx/d$ n4=-(s0+s4).*sin(a4+7*pi/6)-e*cos(a4+7*pi/6); %中间变量dy/d$p4=-m4./sqrt(m4.^2+n4.^2); %sin&q4=n4./sqrt(m4.^2+n4.^2); %cos&x9=x4-r*q4; %x'函数y9=y4-r*p4; %y'函数○6轮廓图形同理,通过Matlab软件,编写程序,将以上各相应值代入式(a)计算理论轮廓线上各点的坐标值。
获得凸轮的工作廓线如下图所示。
将滚子画在上图中,可得最终的图形。
将Matlab中编程获得的凸轮轮廓曲线点的坐标保存为后缀名为dat文件,导入到UG中,完成凸轮的三维建模,如下图所示。
3.求解最大压力角○1压力角公式 压力角|)0/()e -/(|arctan s s d ds +=σα○2MATLAB 程序设计 clearr0=50;e=20;h=50;s0=sqrt(r0^2-e^2);r=10;a1=0:0.01:2*pi/3;s1=h*(3*a1/2/pi-sin(3*a1)/2/pi);c1=h*(3/2/pi- 3*cos(3*a1)/2/pi); %中间变量ds/d бt1=atan( abs((c1-e)/(s0+s1))); %压力角的计算plot(a1,t1)grid onhold ona2=2*pi/3:0.01:5*pi/6;s2=50;c2=0;t2=atan( abs((c2-e)/(s0+s2)));plot(a2,t2)grid onhold ona3=5*pi/6:0.01:7*pi/6;s3=h*(1+cos(3*(a3-5*pi/6)))/2;c3=-h*3*sin(3*(a3-5*pi/6))/2;t3=atan( abs((c3-e)/(s0+s3)));plot(a3,t3)grid onhold ona4=7*pi/6:0.01:2*pi;s4=0;c4=0;t4=atan( abs((c4-e)/(s0+s4)));plot(a4,t4)grid on○3根据MATLAB 程序作图可得出其压力角与角度的关系并分析当在推程段时,0=δ度时,得最大压力角度即为5.2341.0=α; 当在远休止段时,其压力角为定值,度即为7.1121.0=α;当其在回程段时,度时189=δ,得最大压力角度;即为8.5597.0=α 当在近休止段时,其压力角为定值,度即为5.2341.0=α○4失真情况分析由实际轮廓线可知其并未出现尖端,故其没有发生失真情况。
4.附录 Matlab程序%凸轮理论廓线与工作廓线的画法clear %清除变量r0=50; %定义基圆半径e=20; %定义偏距h=50; %推杆上升高度s0=sqrt(r0^2-e^2);r=10; %滚子半径%理论廓线a1=linspace(0,2*pi/3); %推程阶段的自变量s1=h*(3*a1/2/pi-sin(3*a1)/2/pi); %推杆产生的相应位移x1=-((s0+s1).*sin(a1)+e*cos(a1)); %x函数y1=(s0+s1).*cos(a1)-e*sin(a1); %y函数a2=linspace(0,pi/6); %远休止阶段的自变量s2=50; %推杆位移x2=-((s0+s2).*sin(a2+2*pi/3)+e*cos(a2+2*pi/3)); %x函数y2=(s0+s2).*cos(a2+2*pi/3)-e*sin(a2+2*pi/3); %y函数a3=linspace(0,pi/3); %回程阶段的自变量s3=h*(1+cos(3*a3))/2; %推杆位移x3=-((s0+s3).*sin(a3+5*pi/6)+e*cos(a3+5*pi/6)); %x函数y3=(s0+s3).*cos(a3+5*pi/6)-e*sin(a3+5*pi/6); %y函数a4=linspace(0,5*pi/6); %近休止阶段的自变量s4=0; %推杆位移x4=-((s0+s4).*sin(a4+7*pi/6)+e*cos(a4+7*pi/6)); %x函数y4=(s0+s4).*cos(a4+7*pi/6)-e*sin(a4+7*pi/6); %y函数a0=linspace(0,2*pi); %基圆自变量x5=r0*cos(a0); %x函数y5=r0*sin(a0); %y函数%工作廓线m1=-(h*3/2/pi*(1-cos(3*a1))-e).*sin(a1)-(s0+s1).*cos(a1); %中间变量dx/d$ n1=(h*3/2/pi*(1-cos(3*a1))-e).*cos(a1)-(s0+s1).*sin(a1); %中间变量dy/d$ p1=-m1./sqrt(m1.^2+n1.^2); %sin&q1=n1./sqrt(m1.^2+n1.^2); %cos&x6=x1-r*q1; %x'函数y6=y1-r*p1; %y'函数m2=-(s0+s2).*cos(a2+2*pi/3)+e*sin(a2+2*pi/3); %中间变量dx/d$n2=-(s0+s2).*sin(a2+2*pi/3)-e*cos(a2+2*pi/3); %中间变量dy/d$p2=-m2./sqrt(m2.^2+n2.^2); %sin&q2=n2./sqrt(m2.^2+n2.^2); %cos&x7=x2-r*q2; %x'函数y7=y2-r*p2; %y'函数m3=(h*3/2*sin(3*a3)+e).*sin(a3+5*pi/6)-(s0+s3).*cos(a3+5*pi/6); %中间变量dx/d$ n3=-(h*3/2*sin(3*a3)+e).*cos(a3+5*pi/6)-(s0+s3).*sin(a3+5*pi/6);%中间变量dy/d$ p3=-m3./sqrt(m3.^2+n3.^2); %sin&q3=n3./sqrt(m3.^2+n3.^2); %cos&x8=x3-r*q3; %x'函数y8=y3-r*p3; %y'函数m4=-(s0+s4).*cos(a4+7*pi/6)+e*sin(a4+7*pi/6); %中间变量dx/d$n4=-(s0+s4).*sin(a4+7*pi/6)-e*cos(a4+7*pi/6); %中间变量dy/d$p4=-m4./sqrt(m4.^2+n4.^2); %sin&q4=n4./sqrt(m4.^2+n4.^2); %cos&x9=x4-r*q4; %x'函数y9=y4-r*p4; %y'函数%画滚子g1=x1(1)+r*cos(a0);j1=y1(1)+r*sin(a0);g2=x1(25)+r*cos(a0);j2=y1(25)+r*sin(a0);g3=x1(50)+r*cos(a0);j3=y1(50)+r*sin(a0);g4=x1(60)+r*cos(a0);j4=y1(60)+r*sin(a0);g5=x1(75)+r*cos(a0);j5=y1(75)+r*sin(a0);g6=x1(90)+r*cos(a0);j6=y1(90)+r*sin(a0);g7=x2(1)+r*cos(a0);j7=y2(1)+r*sin(a0);g8=x2(50)+r*cos(a0);j8=y2(50)+r*sin(a0);g9=x3(1)+r*cos(a0);j9=y3(1)+r*sin(a0);g10=x3(25)+r*cos(a0);j10=y3(25)+r*sin(a0);g11=x3(40)+r*cos(a0);j11=y3(40)+r*sin(a0);g12=x3(50)+r*cos(a0);j12=y3(50)+r*sin(a0);g13=x3(75)+r*cos(a0);j13=y3(75)+r*sin(a0);g14=x4(1)+r*cos(a0);j14=y4(1)+r*sin(a0);g15=x4(50)+r*cos(a0);j15=y4(50)+r*sin(a0);figure %创建图形窗口plot(x1,y1,'b-',x2,y2,'g-',x3,y3,'m-',x4,y4,'c-',...x6,y6,'b-',x7,y7,'g-',x8,y8,'m-',x9,y9,'c-',...'LineWidth',2) %画函数曲线grid on %加网格hold on %保持图像plot(x5,y5,'r--',g1,j1,'k-',g2,j2,'k-',g3,j3,'k-',...g4,j4,'k-',g5,j5,'k-',g6,j6,'k-',g7,j7,'k-',...g8,j8,'k-',g9,j9,'k-',g10,j10,'k-',g11,j11,'k-',...g12,j12,'k-',g13,j13,'k-',g14,j14,'k-',g15,j15,'k-','LineWidth',2) %画基圆title('凸轮理论廓线与工作廓线','FontSize',16) %标题axis ([-100,80,-120,60])axis('equal')points=[x6',y6',zeros(100,1);x7',y7',zeros(100,1);...x8',y8',zeros(100,1);x9',y9',zeros(100,1)]%最大压力角clearr0=50;e=20;h=50;s0=sqrt(r0^2-e^2);r=10;a1=0:0.01:2*pi/3;s1=h*(3*a1/2/pi-sin(3*a1)/2/pi);c1=h*(3/2/pi- 3*cos(3*a1)/2/pi); %中间变量ds/dбt1=atan( abs((c1-e)/(s0+s1))); %压力角的计算plot(a1,t1)grid onhold ona2=2*pi/3:0.01:5*pi/6;s2=50;c2=0;t2=atan( abs((c2-e)/(s0+s2))); plot(a2,t2)grid onhold ona3=5*pi/6:0.01:7*pi/6;s3=h*(1+cos(3*(a3-5*pi/6)))/2; c3=-h*3*sin(3*(a3-5*pi/6))/2; t3=atan( abs((c3-e)/(s0+s3))); plot(a3,t3)grid onhold ona4=7*pi/6:0.01:2*pi;s4=0;c4=0;t4=atan( abs((c4-e)/(s0+s4))); plot(a4,t4)grid on。