Harbin Institute of Technology
大作业设计说明书
课程名称:设计题目:院 系:班 级:设 计 者:学 号:指导教师:设计时间:
机械原理 凸轮机构设计 4
2015.5.10
哈尔滨工业大学
一、 设计题目
二、 运动方程式及运动线图
本实验假设凸轮逆时针旋转。
(1)设定角速度为ω1=2π/3。确定凸轮机构推杆升程、回程运动方程,并绘制推杆位移、速度、加速度线图。
升程:为等加速等减速( 0
在π/4之前,由公式得到
在π/4到π/2由公式可得
s=60-(480/pi^2)*(pi/2-φ)^2 v=((960*w)/(pi^2))*(pi/2-φ) a=-1840/pi^2*w^2
回程:为正弦加速度(3π/4
v = - hω/错误!未找到引用源。[1 –cos(2πT/错误!未找到引用源。)]; a = -2πh错误!未找到引用源。 sin(2πT/错误!未找到引用源。) ; T = φ–(错误!未找到引用源。)
得到
s=60*(43/16-(9*φ)/(4*π)+1/(2*π)*sin((9/2)*φ- 27*π/8)); v=-(135/π)*ω1*(1-cos((9/2)*φ-27*π/8)); a = -607.5*ω1^2/π*sin(9*φ/2-27*π/8);
由上述公式通过编程得到位移、速度、加速度曲线如下:
matlab代码 w = 2*pi/3
x = 0:(pi/100):(pi/4); s1 = (480/pi.^2) * x.^2 v1=(960/(pi.^2))*w.*x; a1 =97.4*w.^2;
t =(pi/4):(pi/100):(pi/2);
s11 = 60-(480/pi.^2)*(pi/2-t).^2;
v11 = ((960*w)/(pi.^2))*((pi/2-t)); a11=-(1840/pi.^2)*w.^2;
y = (pi/2):(pi/1000):(3*pi/4); s2 =60; v2=0; a2 = 0;
z = (3*pi/4 ):(pi/1000):(43*pi/36);
s3 = 60*(43/16 - (9*z)/(4*pi) + 1/(2*pi).*sin ((9/2)*z - 27* pi/8)); v3 = -135/pi * w .* (1 - cos((9/2)*z - 27*pi/8)); a3 = -((607.5 * w.^2)/pi) .*sin(9*z/2 - 27*pi/8); c = (43*pi/36):(pi/100):( 2*pi); s4 = 0; v4 = 0; a4 = 0;
plot(x,s1,'b',t,s11,'b',y,s2,'b',z,s3,'b',c,s4,'b') plot(x,v1,'g',t,v11,'g',y,v2,'g',z,v3,'g ',c,v4,'g') plot(x,a1,'r',t,a11,'r',y,a2,'r',z,a3,'r ',c,a4,'r') xlabel('转角/rad') ylabel('位移/(m/s)') title('位移与转角曲线')
三、 凸轮轮廓绘制
dss
1、 凸轮机构的d线图及基圆半径和偏距的确定
凸轮机构的
ds
s线图如下图所示d
Matlab代码
x = 0:(pi/100):(pi/4); s1 = (480/pi.^2) * x.^2 news1 = 2*(480/pi.^2) * x t =(pi/4):(pi/100):(pi/2);
s11 = 60-(480/pi.^2)*(pi/2-t).^2; new11=2*(480/pi.^2)*(pi/2-t); y = (pi/2):(pi/1000):(3*pi/4); s2 = 60; news2 = 0;
z = (3*pi/4 ):(pi/1000):(43*pi/36);
s3 = 60*(43/16 - (9*z)/(4*pi) + 1/(2*pi).*sin ((9/2)*z - 27* pi/8)); news3 = 60*( - 9/(4*pi) + 9/(4*pi).*cos ((9/2)*z - 27* pi/8)); c = (43*pi/36):(pi/100):( 2*pi); s4 = 0; news4 = 0;
plot(news1,s1,'b',new11,s11,'b',news2,s2,'b',news3,s3,'b',news4,s4,'b') xlabel('ds/dp');
ylabel('(位移s/mm)')
title('ds/dp 与位移s曲线') grid
设凸轮顺时针旋转,所以右侧是推程,左侧是回程。 得到取旋转轴心的区域(划线部分)
取O(10,-120) 偏距e=10
基圆半径r0=120
2、 滚子半径的确定及凸轮理论廓线和实际廓线的绘制
理论轮廓线
理论轮廓线和实际轮廓线(内层为实际轮廓,外层为理论轮廓)
Matlab代码 s0 =120;e =10;
x = 0:(pi/1000):(pi/4); s = (480/pi.^2) * x.^2;
x1 = (s + s0).*cos(x)-e*sin(x); y1 = (s0 + s).*sin(x) +e*cos(x); t =(pi/4):(pi/1000):(pi/2);
s= 60-(480/pi.^2)*(pi/2-t).^2; x11 = (s + s0).*cos(t)-e*sin(t); y11 = (s0 + s).*sin(t) + e*cos(t); y = (pi/2):(pi/1000):(3*pi/4); s =60;
x2 = (s + s0).*cos(y)-e*sin(y); y2 = (s0 + s).*sin(y) + e*cos(y); z = (3*pi/4):(pi/1000):(43*pi/36);
s = 60*(43/16 - (9*z)/(4*pi) + 1/(2*pi).*sin ((9/2)*z - 27* pi/8)); x3 = (s + s0).*cos(z)-e*sin(z); y3 = (s0 + s).*sin(z) + e*cos(z); c = (43*pi/36):(pi/1000):( 2*pi); s = 0;
x4 = (s + s0).*cos(c)-e*sin(c); y4 = (s0 + s).*sin(c) + e*cos(c);
plot(x1,y1,'b',x11,y11,'b',x2,y2,'b',x3,y3,'b',x4,y4,'b'); xlabel('x/mm') ylabel('y/mm')
title('理轮轮曲线')
3、凸轮轮廓绘制
取滚子半径为r=10mm 得到的内包络线图为:
得到的外包络线图为:
Matlab代码 w = 2*pi/3; s0 = 120; e = 10; r = 10;
x = 0:(pi/1000):(pi/4); s1 = (480/pi.^2) * x.^2;
x1 = (s1 + s0).*cos(x) - e*sin(x); y1 = (s0 + s1).*sin(x) + e*cos(x);
n1 = -(s1 + s0).*sin(x)+(2*(480/pi.^2) * x).*cos(x) -e*cos(x); m1 = (s0 + s1).*cos(x)+(2*(480/pi.^2) * x).*sin(x) - e*sin(x); xt1 = x1+(r*m1)./(sqrt(n1.^2+m1.^2)); yt1 = y1 - (r*n1)./sqrt(m1.^2 +n1.^2); xw1 = x1 - (r*m1)./sqrt(m1.^2 +n1.^2); yw1 = y1 + (r*n1)./sqrt(m1.^2 +n1.^2); t =(pi/4):(pi/100):(pi/2);
s11 = 60-(480/pi.^2)*(pi/2-t).^2; x11 = (s11 + s0).*cos(t) - e*sin(t); y11 = (s0 + s11).*sin(t) + e*cos(t);
n11= -(s11 + s0).*sin(t)+(2*(480/pi.^2)*(pi/2-t)).*cos(t) -e*cos(t); m11 = (s0 + s11).*cos(t)+(2*(480/pi.^2)*(pi/2-t)).*sin(t) - e*sin(t); xt11 = x11+(r*m11)./(sqrt(n11.^2+m11.^2));
yt11 = y11 - (r*n11)./sqrt(m11.^2 +n11.^2); xw11 = x11 - (r*m11)./sqrt(m11.^2 +n11.^2); yw11 = y11 + (r*n11)./sqrt(m11.^2 +n11.^2); y = (pi/2):(pi/1000):(3*pi/4); s2 = 60;
x2 = (s2 + s0).*cos(y)-e*sin(y); y2 = (s0 + s2).*sin(y) + e*cos(y); n2 = -(s2+s0).*sin(y)-e*cos(y); m2 = (s2+s0).*cos(y) - e*sin(y);
xt2 = x2 + (r*m2)./sqrt(m2.^2+n2.^2); yt2 = y2 - (r*n2)./sqrt(m2.^2+n2.^2); xw2 = x2 - (r*m2)./sqrt(m2.^2+n2.^2); yw2 = y2 + (r*n2)./sqrt(m2.^2+n2.^2); z = (3*pi/4 ):(pi/1000):(43*pi/36);
s3 = 60*(43/16 - (9*z)/(4*pi) + 1/(2*pi).*sin ((9/2)*z - 27* pi/8)); x3 = (s3 + s0).*cos(z)-e*sin(z); y3 = (s0 + s3).*sin(z) + e*cos(z);
n3 = -( s3 + s0).*sin(z)+(60*( - 9/(4*pi) + 9/(4*pi).*cos ((9/2)*z - 27* pi/8))).*cos(z)-e*cos(z);
m3 = (s0 + s3).*cos(z)+(60*( - 9/(4*pi) + 9/(4*pi).*cos ((9/2)*z - 27* pi/8))).*sin(z) - e*sin(z);
xt3= x3 + (r*m3)./sqrt(m3.^2+n3.^2); yt3 = y3 - (r*n3)./sqrt(m3.^2+n3.^2); xw3 = x3 -(r* m3)./sqrt(n3.^2+m3.^2); yw3 = y3 + (r*n3)./sqrt(n3.^2+m3.^2); c = (43*pi/36):(pi/100):( 2*pi); s4 = 0;
x4 = (s4 + s0).*cos(c)-e*sin(c); y4 = s0 .*sin(c) + e*cos(c);
n4 = -( s4+s0).*sin(c)-e*cos(c); m4 = (s0+s4 ).*cos(c) - e*sin(c); xt4= x4 + (r*m4)./sqrt(m4.^2+n4.^2); yt4 = y4 - (r*n4)./sqrt(m4.^2+n4.^2); xw4 = x4 - (r*m4)./sqrt(n4.^2+m4.^2); yw4 = y4 + (r*n4)./sqrt(n4.^2+m4.^2);
plot(xt1,yt1,'b',xt11,yt11,'b',xt2,yt2,'b',xt3,yt3,'b',xt4,yt4,'b'); xlabel('x/mm') ylabel('y/mm')
title('凸轮工作曲线') grid
将以上程序的plot(xt1,yt1,'b',xt11,yt11,'b',xt2,yt2,'b',xt3,yt3,'b',xt4,yt4,'b'); 改为plot(xw1,yw1,'b',xw11,yw11,’b’,xw2,yw2,'b',xw3,yw3,'b',xw4,yw4,'b'); 得到内包络线。
Harbin Institute of Technology
大作业设计说明书
课程名称:设计题目:院 系:班 级:设 计 者:学 号:指导教师:设计时间:
机械原理 凸轮机构设计 4
2015.5.10
哈尔滨工业大学
一、 设计题目
二、 运动方程式及运动线图
本实验假设凸轮逆时针旋转。
(1)设定角速度为ω1=2π/3。确定凸轮机构推杆升程、回程运动方程,并绘制推杆位移、速度、加速度线图。
升程:为等加速等减速( 0
在π/4之前,由公式得到
在π/4到π/2由公式可得
s=60-(480/pi^2)*(pi/2-φ)^2 v=((960*w)/(pi^2))*(pi/2-φ) a=-1840/pi^2*w^2
回程:为正弦加速度(3π/4
v = - hω/错误!未找到引用源。[1 –cos(2πT/错误!未找到引用源。)]; a = -2πh错误!未找到引用源。 sin(2πT/错误!未找到引用源。) ; T = φ–(错误!未找到引用源。)
得到
s=60*(43/16-(9*φ)/(4*π)+1/(2*π)*sin((9/2)*φ- 27*π/8)); v=-(135/π)*ω1*(1-cos((9/2)*φ-27*π/8)); a = -607.5*ω1^2/π*sin(9*φ/2-27*π/8);
由上述公式通过编程得到位移、速度、加速度曲线如下:
matlab代码 w = 2*pi/3
x = 0:(pi/100):(pi/4); s1 = (480/pi.^2) * x.^2 v1=(960/(pi.^2))*w.*x; a1 =97.4*w.^2;
t =(pi/4):(pi/100):(pi/2);
s11 = 60-(480/pi.^2)*(pi/2-t).^2;
v11 = ((960*w)/(pi.^2))*((pi/2-t)); a11=-(1840/pi.^2)*w.^2;
y = (pi/2):(pi/1000):(3*pi/4); s2 =60; v2=0; a2 = 0;
z = (3*pi/4 ):(pi/1000):(43*pi/36);
s3 = 60*(43/16 - (9*z)/(4*pi) + 1/(2*pi).*sin ((9/2)*z - 27* pi/8)); v3 = -135/pi * w .* (1 - cos((9/2)*z - 27*pi/8)); a3 = -((607.5 * w.^2)/pi) .*sin(9*z/2 - 27*pi/8); c = (43*pi/36):(pi/100):( 2*pi); s4 = 0; v4 = 0; a4 = 0;
plot(x,s1,'b',t,s11,'b',y,s2,'b',z,s3,'b',c,s4,'b') plot(x,v1,'g',t,v11,'g',y,v2,'g',z,v3,'g ',c,v4,'g') plot(x,a1,'r',t,a11,'r',y,a2,'r',z,a3,'r ',c,a4,'r') xlabel('转角/rad') ylabel('位移/(m/s)') title('位移与转角曲线')
三、 凸轮轮廓绘制
dss
1、 凸轮机构的d线图及基圆半径和偏距的确定
凸轮机构的
ds
s线图如下图所示d
Matlab代码
x = 0:(pi/100):(pi/4); s1 = (480/pi.^2) * x.^2 news1 = 2*(480/pi.^2) * x t =(pi/4):(pi/100):(pi/2);
s11 = 60-(480/pi.^2)*(pi/2-t).^2; new11=2*(480/pi.^2)*(pi/2-t); y = (pi/2):(pi/1000):(3*pi/4); s2 = 60; news2 = 0;
z = (3*pi/4 ):(pi/1000):(43*pi/36);
s3 = 60*(43/16 - (9*z)/(4*pi) + 1/(2*pi).*sin ((9/2)*z - 27* pi/8)); news3 = 60*( - 9/(4*pi) + 9/(4*pi).*cos ((9/2)*z - 27* pi/8)); c = (43*pi/36):(pi/100):( 2*pi); s4 = 0; news4 = 0;
plot(news1,s1,'b',new11,s11,'b',news2,s2,'b',news3,s3,'b',news4,s4,'b') xlabel('ds/dp');
ylabel('(位移s/mm)')
title('ds/dp 与位移s曲线') grid
设凸轮顺时针旋转,所以右侧是推程,左侧是回程。 得到取旋转轴心的区域(划线部分)
取O(10,-120) 偏距e=10
基圆半径r0=120
2、 滚子半径的确定及凸轮理论廓线和实际廓线的绘制
理论轮廓线
理论轮廓线和实际轮廓线(内层为实际轮廓,外层为理论轮廓)
Matlab代码 s0 =120;e =10;
x = 0:(pi/1000):(pi/4); s = (480/pi.^2) * x.^2;
x1 = (s + s0).*cos(x)-e*sin(x); y1 = (s0 + s).*sin(x) +e*cos(x); t =(pi/4):(pi/1000):(pi/2);
s= 60-(480/pi.^2)*(pi/2-t).^2; x11 = (s + s0).*cos(t)-e*sin(t); y11 = (s0 + s).*sin(t) + e*cos(t); y = (pi/2):(pi/1000):(3*pi/4); s =60;
x2 = (s + s0).*cos(y)-e*sin(y); y2 = (s0 + s).*sin(y) + e*cos(y); z = (3*pi/4):(pi/1000):(43*pi/36);
s = 60*(43/16 - (9*z)/(4*pi) + 1/(2*pi).*sin ((9/2)*z - 27* pi/8)); x3 = (s + s0).*cos(z)-e*sin(z); y3 = (s0 + s).*sin(z) + e*cos(z); c = (43*pi/36):(pi/1000):( 2*pi); s = 0;
x4 = (s + s0).*cos(c)-e*sin(c); y4 = (s0 + s).*sin(c) + e*cos(c);
plot(x1,y1,'b',x11,y11,'b',x2,y2,'b',x3,y3,'b',x4,y4,'b'); xlabel('x/mm') ylabel('y/mm')
title('理轮轮曲线')
3、凸轮轮廓绘制
取滚子半径为r=10mm 得到的内包络线图为:
得到的外包络线图为:
Matlab代码 w = 2*pi/3; s0 = 120; e = 10; r = 10;
x = 0:(pi/1000):(pi/4); s1 = (480/pi.^2) * x.^2;
x1 = (s1 + s0).*cos(x) - e*sin(x); y1 = (s0 + s1).*sin(x) + e*cos(x);
n1 = -(s1 + s0).*sin(x)+(2*(480/pi.^2) * x).*cos(x) -e*cos(x); m1 = (s0 + s1).*cos(x)+(2*(480/pi.^2) * x).*sin(x) - e*sin(x); xt1 = x1+(r*m1)./(sqrt(n1.^2+m1.^2)); yt1 = y1 - (r*n1)./sqrt(m1.^2 +n1.^2); xw1 = x1 - (r*m1)./sqrt(m1.^2 +n1.^2); yw1 = y1 + (r*n1)./sqrt(m1.^2 +n1.^2); t =(pi/4):(pi/100):(pi/2);
s11 = 60-(480/pi.^2)*(pi/2-t).^2; x11 = (s11 + s0).*cos(t) - e*sin(t); y11 = (s0 + s11).*sin(t) + e*cos(t);
n11= -(s11 + s0).*sin(t)+(2*(480/pi.^2)*(pi/2-t)).*cos(t) -e*cos(t); m11 = (s0 + s11).*cos(t)+(2*(480/pi.^2)*(pi/2-t)).*sin(t) - e*sin(t); xt11 = x11+(r*m11)./(sqrt(n11.^2+m11.^2));
yt11 = y11 - (r*n11)./sqrt(m11.^2 +n11.^2); xw11 = x11 - (r*m11)./sqrt(m11.^2 +n11.^2); yw11 = y11 + (r*n11)./sqrt(m11.^2 +n11.^2); y = (pi/2):(pi/1000):(3*pi/4); s2 = 60;
x2 = (s2 + s0).*cos(y)-e*sin(y); y2 = (s0 + s2).*sin(y) + e*cos(y); n2 = -(s2+s0).*sin(y)-e*cos(y); m2 = (s2+s0).*cos(y) - e*sin(y);
xt2 = x2 + (r*m2)./sqrt(m2.^2+n2.^2); yt2 = y2 - (r*n2)./sqrt(m2.^2+n2.^2); xw2 = x2 - (r*m2)./sqrt(m2.^2+n2.^2); yw2 = y2 + (r*n2)./sqrt(m2.^2+n2.^2); z = (3*pi/4 ):(pi/1000):(43*pi/36);
s3 = 60*(43/16 - (9*z)/(4*pi) + 1/(2*pi).*sin ((9/2)*z - 27* pi/8)); x3 = (s3 + s0).*cos(z)-e*sin(z); y3 = (s0 + s3).*sin(z) + e*cos(z);
n3 = -( s3 + s0).*sin(z)+(60*( - 9/(4*pi) + 9/(4*pi).*cos ((9/2)*z - 27* pi/8))).*cos(z)-e*cos(z);
m3 = (s0 + s3).*cos(z)+(60*( - 9/(4*pi) + 9/(4*pi).*cos ((9/2)*z - 27* pi/8))).*sin(z) - e*sin(z);
xt3= x3 + (r*m3)./sqrt(m3.^2+n3.^2); yt3 = y3 - (r*n3)./sqrt(m3.^2+n3.^2); xw3 = x3 -(r* m3)./sqrt(n3.^2+m3.^2); yw3 = y3 + (r*n3)./sqrt(n3.^2+m3.^2); c = (43*pi/36):(pi/100):( 2*pi); s4 = 0;
x4 = (s4 + s0).*cos(c)-e*sin(c); y4 = s0 .*sin(c) + e*cos(c);
n4 = -( s4+s0).*sin(c)-e*cos(c); m4 = (s0+s4 ).*cos(c) - e*sin(c); xt4= x4 + (r*m4)./sqrt(m4.^2+n4.^2); yt4 = y4 - (r*n4)./sqrt(m4.^2+n4.^2); xw4 = x4 - (r*m4)./sqrt(n4.^2+m4.^2); yw4 = y4 + (r*n4)./sqrt(n4.^2+m4.^2);
plot(xt1,yt1,'b',xt11,yt11,'b',xt2,yt2,'b',xt3,yt3,'b',xt4,yt4,'b'); xlabel('x/mm') ylabel('y/mm')
title('凸轮工作曲线') grid
将以上程序的plot(xt1,yt1,'b',xt11,yt11,'b',xt2,yt2,'b',xt3,yt3,'b',xt4,yt4,'b'); 改为plot(xw1,yw1,'b',xw11,yw11,’b’,xw2,yw2,'b',xw3,yw3,'b',xw4,yw4,'b'); 得到内包络线。