HarbinInstituteofTechnology机械原理大作业凸轮题目序号:题目28院系:能源科学与工程学院班级:xxxxxxx班姓名:xxxxxxxxx学号:xxxxxxxxxxx指导教师:焦映厚陈照波设计时间:xxxxxxxx哈尔滨工业大学机械原理大作业———凸轮题号:281.基本参数:行程(mm)升程运动角(°)升程运动规律升程许用压力角(°)回程运动角(°)回程运动规律回程需用压力角(°)远休止角(°)近休止角(°)2560多项式3-4-53580余弦加速度70100120(本题设计采用MATLAB编程)流程框图:2.设计要求(1)绘制从动件位移、速度、加速度线图1.1位移线图升程:s=h[10×(𝜑Φ0)3−15×(𝜑Φ0)3+6×(𝜑Φ0)5],0≤𝜑≤Φ0远休止:s=h,Φ0≤𝜑≤Φ0+Φ𝑠回程:s=ℎ2{1+𝑐𝑜𝑠[𝜋Φ0′(𝜑−Φ0−Φ𝑠)]},Φ0+Φ𝑠≤𝜑≤Φ0+Φ𝑠+Φ0′,近休止:s=0,Φ0+Φ𝑠+Φ0′≤𝜑≤Φ0+Φ𝑠+Φ0′+Φ𝑠′,MATLAB程序:%凸轮推杆行程曲线clear;omiga=1;phi0=pi/3;phi01=8*pi/18;phis=10*pi/18;phis1=2*pi/3;h=25;phi1=0:(pi/180):phi0;s1=h*(10*(phi1/phi0).^3-15*(phi1/phi0).^4+6*(phi1/phi0).^5);phi2=phi0:pi/180:(phi0+phis);s2=h;phi3=(phi0+phis):(pi/180):(phi0+phis+phi01);s3=(h/2)*(1+cos(pi/phi01*(phi3-phi0-phis)));phi4=(phi0+phis+phi01):(pi/720):(2*pi);s4=0;plot(phi1*180/pi,s1,'r',phi2*180/pi,s2,'r',phi3*180/pi,s3,'r',phi4*180/pi,s4,'r');xlabel('角度(°)');ylabel('行程(mm)');title('推杆行程曲线');grid;1.2速度曲线升程:v=ℎ𝜔1Φ0[30×(𝜑Φ0)2−60×(𝜑Φ0)3+30×(𝜑Φ0)4],0≤𝜑≤Φ0远休止:v=0,Φ0≤𝜑≤Φ0+Φ𝑠回程:v=−𝜋2ℎ𝜔122{1+𝑠𝑖𝑛[𝜋Φ0′(𝜑−Φ0−Φ𝑠)]},Φ0+Φ𝑠≤𝜑≤Φ0+Φ𝑠+Φ0′,近休止:v=0,Φ0+Φ𝑠+Φ0′≤𝜑≤Φ0+Φ𝑠+Φ0′+Φ𝑠′,MATLAB程序:omiga=1;phi0=pi/3;phi01=8*pi/18;phis=10*pi/18;phis1=2*pi/3;h=25;phi1=0:pi/180:phi0;v1=h*omiga/phi0*(30*(phi1/phi0)^2-60*(phi1/phi0)^3+30*(phi1/phi)^4);phi2=Phi0:pi/180:(phi0+phis);v2=0;phi3=(phi0+phis):pi/180:(phi0+phis+phi01)v3=pi*h*omega/(2*phi01)*sin(pi*(phi-phi0-phis)/phi01);phi4=(phi0+phis+phi01):pi/180:(2*pi);v4=0;plot(phi1*180/pi,v1,'r',phi2*180/pi,v2,'r',phi3/pi*180,'r',phi4*180/pi,r4,'r');xlabel('角度(rad)');ylabel('速度(mm/s)');title('推杆速度曲线');grid;1.31.3加速度曲线升程:a=ℎ𝜔12Φ02[30×(𝜑Φ0)−60×(𝜑Φ0)2+30×(𝜑Φ0)3],0≤𝜑≤Φ0远休止:a=0,Φ0≤𝜑≤Φ0+Φ𝑠回程:a=−𝜋2ℎ𝜔122Φ0′2{1+𝑠𝑖𝑛[𝜋Φ0′(𝜑−Φ0−Φ𝑠)]},Φ0+Φ𝑠≤𝜑≤Φ0+Φ𝑠+Φ0′,近休止:v=0,Φ0+Φ𝑠+Φ0′≤𝜑≤Φ0+Φ𝑠+Φ0′+Φ𝑠′,MATLAB代码%凸轮推杆加速度曲线;phi1clear;omiga=1;phi0=pi/3;phi01=8*pi/18;phis=10*pi/18;phis1=2*pi/3;h=25;phi1=0:(pi/720):phi0;a1=h*(60*(phi1/phi0)-180*(phi1/phi0).^2+120*(phi1/phi0).^3);phi2=phi0:pi/720:(phi0+phis);a2=0;phi3=(phi0+phis):(pi/360):(phi0+phis+phi01);a3=-pi^2*h*omiga^2/(2*phi01^2)*cos(pi/phi01*(phi3-phi0-phis));phi4=(phi0+phis+phi01):(pi/720):(2*pi);a4=0;plot(phi1*180/pi,a1,'r',phi2*180/pi,a2,'r',phi3*180/pi,a3,'r',phi4*180/pi,a4,'r');xlabel('角度(°)');ylabel('加速度(mm/s2)');title('推杆加速度曲线');grid;(2)绘制凸轮机构的ds/dφ-s线图,并确定凸轮基圆半径和偏距2.1绘制ds/dφ-s线图MATLAB代码clear;pi=3.1415926;c=pi/180;h=25;f0=60*c;fs=100*c;f01=80*c;fs1=120*c;symstxs1=h*((10*(t/f0).^3-15*(t/f0).^4+6*(t/f0).^5));ds1=diff(s1,'t',1);%升程的位移线图s2=h;%远休止角s3=h/2*(1+cos(pi/f01*(t-f0-fs)));ds3=diff(s3,'t',1);%回程运动s4=0;%近休止角figure(1)ezplot(ds1,s1,[0,60*c]);holdonezplot(ds3,s3,[160*c,240*c]);gridont01=221.5*c;%升程阶段相切时的角度x01=subs(ds3,t,t01);y01=subs(s3,t,t01);%求出切点坐标t02=30.2*c;f1=tan(55*c)*(x-x01)+y01;f2=-tan(55*c)*x;x02=subs(ds1,t,t02);y02=subs(s1,t,t02);f3=-tan(20*c)*(x+x02)+y02;xlabel('ds/dφ');ylabel('s');title('ds/dφ-s线图1')figure(5)ezplot(ds1,s1,[0,60*c]);holdon;ezplot(ds3,s3,[160*c,240*c]);holdon;ezplot(f1,x,[-120,140]);holdon;ezplot(f2,[0,140]);holdon;ezplot(f3,[-120,140]);axis([-6060-7040]);gridonxlabel('ds/dφ');ylabel('s');title('ds/dφ-s线图2');绘得图线如下:由ds/dφ-s线图2得偏心距e和基圆半径r0的许用范围取偏心距e=15;基圆半径r0=23.43;(3)绘制凸轮理论轮廓上的压力角和曲率半径线图压力角α=arctan|dsdφ−e|𝑠0+𝑠绘制压力角图线MATLAB代码clear;e=15;r0=23.43;s0=18;pi=3.1415926;c=pi/180;h=25;f0=60*c;fs=100*c;f01=80*c;fs1=120*c;symstalpha1alpha2alpha3alpha4s1=h*((10*(t/f0).^3-15*(t/f0).^4+6*(t/f0).^5));ds1=diff(s1,'t',1);s2=h;s3=h/2*(1+cos(pi/f01*(t-f0-fs)));s4=0;ds3=diff(s3,'t',1);%回程运动alpha1=atan(abs(ds1-e)/(s0+s1))/c;alpha2=atan(abs(-e)*t/t/(s0+s2))/c;alpha3=atan(abs(ds3-e)/(s0+s3))/c;alpha4=atan(abs(-e)*t/t/(s0+s4))/c;figure(2)ezplot(t/c,alpha1,[0,60*c]);holdonezplot(t/c,alpha2,[60*c,160*c]);holdonezplot(t/c,alpha3,[160*c,240*c]);holdonezplot(t/c,alpha4,[240*c,360*c]);gridonxlabel('转角/°');ylabel('压力角/°');title('压力角线图');axis([0360-2090]);曲率半径数学模型:)/)(/()/)(/(])/()/[(22222/322dxdddydydddxddyddx其中:cos)(sin])/[(/0sseddsddxsin)(cos])/[(/0sseddsddysin])/[(cos])/(2[/02222ssdsdeddsdxdcos])/[(sin])/(2[/02222ssdsdeddsdyd利用上式可求的最小曲率半径,而后可确定实际廓线。曲率半径图线MATLAB代码clear;e=15;r0=23.43;s0=18;pi=3.1415926;c=pi/180;h=25;f0=60*c;fs=100*c;f01=80*c;fs1=120*c;symsrou1rou2rou3rou4ts1=h*((10*(t/f0).^3-15*(t/f0).^4+6*(t/f0).^5));ds1=diff(s1,'t',1);x1=(s0+s1)*sin(t)+e*cos(t);dx1=diff(x1,'t',1);ddx1=diff(x1,'t',2);y1=(s0+s1)*cos(t)-e*sin(t);dy1=diff(y1,'t',1);ddy1=diff(y1,'t',2);rou1=(dx1.^2+dy1.^2).^(3/2)/(-(dx1*ddy1)+(dy1*ddx1));s2=h;ds2=0;x2=(s0+s2)*sin(t)+e*cos(t);dx2=diff(x2,'t',1);ddx2=diff(x2,'t',2);y2=(s0+s2)*cos(t)-e*sin(t);dy2=diff(y2,'t',1);ddy2=diff(y2,'t',2);rou2=(dx2.^2+dy2.^2).^(3/2)/(-(dx2*ddy2)+(dy2*ddx2));s3=h/2*(1+cos(pi/f01*(t-f0-fs)));ds3=diff(s3,'t',1);x3=(s0+s3)*sin(t)+e*cos(t);dx3=diff(x3,'t',1);ddx3=diff(x3,'t',2);y3=(s0+s3)*cos(t)-e*sin(t);dy3=diff(y3,'t',1);ddy3=diff(y3,'t',2);rou3=(dx3^2+dy3^2)^(3/2)/(-(dx3*ddy3)+(dy3*ddx3));s4=0;ds4=0;x4=(s0+s4)*sin(t)+e*cos(t);dx4=diff(x4,'t',1);ddx4=diff(x4,'t',2);y4=(s0+s4)*cos(t)-e*sin(t);dy4=diff(y4,'t',1);ddy