Harbin Institute of Technology
凸轮机构设计说明书
课程名称:机械原理 设计题目:凸轮机构设计(32) 院 系:能源科学与工程学院 班 级:1302403 设 计 者:刘远华 学 号:1130240333 指导教师:焦映厚 陈照波 设计时间:2015年6月
哈尔滨工业大学
凸轮机构设计
一、设计题目
行程升程运升程运升程许回程运回程运回程许远休止近休止/mm 动角/。 动规律 用压力动角/。 动规律 用压力角/。 角/。 角/。 角/。 3-4-5多50 60 30 80 简-直-简 60 100 120 项式 二、凸轮升程、回程运动方程及推杆位移、速度、加速度线图
1、运动规律
(1)推程规律方程(3-4-5多项式)
位移方程
S=h[10*(φ/φ0)^3-15*(φ/φ0)^4+6*(φ/φ0)^5] S=50[10*(3φ/π)^3-15*(3φ/π)^4+6*(3φ/π)^5] 速度方程
V=hω1/φ0[30*(φ/φ0)^2-60*(φ/φ0)^3+30*(φ/φ0)^4] V=150ω1/π[30*(3φ/π)^2-60*(3φ/π)^3+30*(φ/π)^4] 加速度方程
a=h(ω1)^2/(φ0)^2[60*(φ/φ0) -180*(φ/φ0)^2+120*(φ/φ0)^3] a=450(ω1)^2/π^2[60*(3φ/π) -180*(3φ/π)^2+120*(3φ/π)^3]
(2)回程运动规律方程(简-直-简) 位移方程
S=h-2h/[4+(n-2) π]{1-cos[nπ(φ-φ0-φs 速度方程
加速度方程
2、编程及代码
位移、速度、加速度MATLAB代码
clear,clc
%推程运动规律方程 h = 50;
omega1 = 10; PHI0 = pi/3;
phi1 = 0:pi/1000:PHI0;
s1 = h*(10*(phi1/PHI0).^3 - 15*(phi1/PHI0).^4 + 6*(phi1/PHI0).^5);
nu1 = ((h*omega1)/PHI0)*(30*(phi1/PHI0).^2 - 60*(phi1/PHI0).^3 30*(phi1/PHI0).^4);
a1 = ((h*omega1^2)/PHI0^2)*(60*(phi1/PHI0) - 180*(phi1/PHI0).^2 120*(phi1/PHI0).^3);
%远休止行程 PHIs = 5*pi/9;
phi2 = [PHI0,PHI0+PHIs];
s2 = [s1(end),s1(end)]; nu2 = [0,0]; a2 = [0,0];
%回程运动规律方程(简-直-简) n = 3;
PHI00 =4*pi/9;
phi3 = (PHI0 + PHIs):pi/1000:(PHI0 + PHIs + PHI00/n);
phi4 = (PHI0 + PHIs + PHI00/n):pi/1000:(PHI0 + PHIs + PHI00*(n - 1)/n); phi5 = (PHI0 + PHIs + PHI00*(n - 1)/n):pi/1000:(PHI0 +PHIs + PHI00);
s3 = h - (2*h/(4 + (n - 2)*pi))*(1 - cos(n*pi*(phi3 - PHI0 - PHIs)/(2*PHI00)));
+
+
s4 = h - (h/(4 + (n - 2)*pi))*(n*pi*(phi4 - PHI0 - PHIs)/PHI00 - pi + 2);
s5 = (2*h/(4 + (n - 2)*pi))*(1 + cos(n*pi*(phi5 - PHI0 - PHIs)/(2*PHI00) - (n - 2)*pi/2));
nu3 = -(h*n*pi*omega1/((4 + (n - 2)*pi)*PHI00))*sin(n*pi*(phi3 - PHI0 - PHIs)/(2*PHI00));
nu4 = -h*n*pi*omega1/((4 + (n - 2)*pi)*PHI00) + zeros(size(phi4));
nu5 = -(h*n*pi*omega1/((4 + (n - 2)*pi)*PHI00))*sin(n*pi*(phi5 - PHI0 - PHIs)/(2*PHI00) - (n - 2)*pi/2);
a3 = -(h*n^2*pi^2*omega1^2/(2*(4 + (n - 2)*pi)*PHI00^2))*cos(n*pi*(phi3 - PHI0 - PHIs)/(2*PHI00));
a4 = 0;
a5 = -(h*n^2*pi^2*omega1^2/(2*(4 + (n - 2)*pi)*PHI00^2))*cos(n*pi*(phi5 - PHI0 - PHIs)/(2*PHI00) - (n - 2)*pi/2);
%近休止行程
phi6 = [PHI0 + PHIs + PHI00,2*pi]; s6 = [0 0]; nu6 = [0 0]; a6 = [0 0];
plot(phi1,s1,phi2,s2,phi3,s3,phi4,s4,phi5,s5,phi6,s6); axis([0 7 0 60]); title('位移');
plot(phi1,nu1,phi2,nu2,phi3,nu3,phi4,nu4,phi5,nu5,phi6,nu6); title('速度');
plot(phi1,a1,phi2,a2,phi3,a3,phi4,a4,phi5,a5,phi6,a6); title('加速度');
三、凸轮机构的线图,并依次确定凸轮的基圆半径和偏距 MATLAB代码
clear,clc %ÍÆ³ÌÔ˶¯¹æÂÉ·½³Ì h = 50;
omega1 = 10; PHI0 = pi/3; n = 3;
PHI00 =4*pi/9; PHIs = 5*pi/9;
syms phi1phi3phi4phi5
s1 = h*(10*(phi1/PHI0).^3 - 15*(phi1/PHI0).^4 + 6*(phi1/PHI0).^5); s11 = diff(s1,phi1); %»Ø³ÌÔ˶¯¹æÂÉ·½³Ì£¨¼ò-Ö±-¼ò£©
s3 = h - (2*h/(4 + (n - 2)*pi))*(1 - cos(n*pi*(phi3 - PHI0 - PHIs)/(2*PHI00)));
s4 = h - (h/(4 + (n - 2)*pi))*(n*pi*(phi4 - PHI0 - PHIs)/PHI00 - pi + 2);
s5 = (2*h/(4 + (n - 2)*pi))*(1 + cos(n*pi*(phi5 - PHI0 - PHIs)/(2*PHI00) - (n - 2)*pi/2));
s33 = diff(s3,phi3); s44 = diff(s4,phi4); s55 = diff(s5,phi5);
phi1 = 0:pi/1000:PHI0;
phi3 = (PHI0 + PHIs):pi/1000:(PHI0 + PHIs + PHI00/n);
phi4 = (PHI0 + PHIs + PHI00/n):pi/1000:(PHI0 + PHIs + PHI00*(n - 1)/n); phi5 = (PHI0 + PHIs + PHI00*(n - 1)/n):pi/1000:(PHI0 +PHIs + PHI00);
plot(subs(s11),subs(s1),subs(s33),subs(s3),subs(s44),subs(s4),subs(s55),subs(s5)); axis([-100 100 -100 100]) axis square grid on hold on
%xÊÇs11(ds/dphi)µÄ¾ßÌåÊý¾Ý yÊÇsµÄ¾ßÌåÊý¾Ý phi1 = [];
phi1 = 0:pi/2000:PHI0; k = sqrt(3); x = eval(s11); p = length(x);
xx = x(1:(p + 1)/2); y = eval(s1);
yy = y(1:(p + 1)/2);
K = diff(yy)./diff(xx); %ÇúÏßÉϼÆËã³öµÄбÂÊ delta = abs(K- k); deltamin = min(delta);
Ifindu = find(delta == deltamin); X = xx(Ifindu); %ÕÒµÄÇеã Y = yy(Ifindu); %
XX = -100:100;
YY = k*(XX - X) + Y; plot(XX,YY)
phi5 = [];
phi5 = (PHI0 + PHIs + PHI00*(n - 1)/n):pi/2000:(PHI0 +PHIs + PHI00); k1 = tan(5*pi/6); xx1 = eval(s55); yy1 = eval(s5);
K1 = diff(yy1)./diff(xx1); %ÇúÏßÉϼÆËã³öµÄбÂÊ delta1 = abs(K1 - k1); deltamin1 = min(delta1);
Ifindu1 = find(delta1 == deltamin1); X1 = xx1(Ifindu1); %ÕÒµÄÇеã Y1 = yy1(Ifindu1); XX1 = -100:100;
YY1 = k1*(XX1 - X1) + Y1; plot(XX1,YY1)
k2 = tan(2*pi/3); XX2 = 0:100; YY2 = k2*XX2; plot(XX2,YY2)
图
作出如上图所示的dsd-s曲线,因凸轮机构压力角tan=dsd-e,式s0+s中,s0=r02-e2,右侧为升程,作与s轴夹角等于升程许用压力角30°的切界线Dtdt,则在直线上或其右下方取凸轮轴心时,可使
=arctandsd-e,同理左侧回程,作与s轴夹角等于回程许用压s0+s力角60°的切界线Dt'dt',则在直线上或其左下方取凸轮轴心时,可使=arctan-edsd-e。在升程起始点,有tan=,为保证此时s0+ss0,作直线B0d0与纵坐标夹角为30°,凸轮轴心只能在其线上或
左下方选取。三条线围成的下方阴影角区域为满足的凸轮轴心的公共许用区域。在许用区域内取满足上述条件的一点,取偏距
e = 40mm 基圆半径
绘制凸轮理论轮廓上的压力角线图和曲率半径线图 压力角:=arctan压力角。
曲率半径:凸轮逆时针转动,从动件导路偏置于凸轮轴心右侧,凸
x=(s0+s)sin+ecos轮理论轮廓线方程为:,(02),在参数方程
y=(s+s)cos-esin0'2'2(x+y)32dsd-e,此时由上知e = 40mm,可由如此公式求s0+s下确定凸轮轮廓线的曲率半径
MATLAB 代码
=''''''。 xy-xyclear,clc
r0 = 90; e = 40;
s0 = sqrt(r0^2 - e^2); h = 50;
PHI0 = pi/3; n = 3;
PHI00 =4*pi/9; PHIs = 5*pi/9; rr = 10;
syms phi1phi2phi3phi4phi5phi6
s1 = h*(10*(phi1/PHI0).^3 - 15*(phi1/PHI0).^4 + 6*(phi1/PHI0).^5);
s2 = h*(10 - 15 + 6);
s3 = h - (2*h/(4 + (n - 2)*pi))*(1 - cos(n*pi*(phi3 - PHI0 - PHIs)/(2*PHI00)));
s4 = h - (h/(4 + (n - 2)*pi))*(n*pi*(phi4 - PHI0 - PHIs)/PHI00 - pi + 2);
s5 = (2*h/(4 + (n - 2)*pi))*(1 + cos(n*pi*(phi5 - PHI0 - PHIs)/(2*PHI00) - (n - 2)*pi/2));
s6 = 0;
x1 = -(s0 + s1)*sin(phi1) - e*cos(phi1); %ÀíÂÛÂÖÀª y1 = (s0 + s1)*cos(phi1) - e*sin(phi1);
x2 = -(s0 + s2)*sin(phi2) - e*cos(phi2); %ÀíÂÛÂÖÀª y2 = (s0 + s2)*cos(phi2) - e*sin(phi2);
x3 = -(s0 + s3)*sin(phi3) - e*cos(phi3); y3 = (s0 + s3)*cos(phi3) - e*sin(phi3);
x4 = -(s0 + s4)*sin(phi4) - e*cos(phi4); y4 = (s0 + s4)*cos(phi4) - e*sin(phi4);
x5 = -(s0 + s5)*sin(phi5) - e*cos(phi5); y5 = (s0 + s5)*cos(phi5) - e*sin(phi5);
x6 = -(s0 + s6)*sin(phi6) - e*cos(phi6); y6 = (s0 + s6)*cos(phi6) - e*sin(phi6);
dy1 = diff(y1,phi1); dx1 = diff(x1,phi1);
dy2 = diff(y2,phi2); dx2 = diff(x2,phi2);
dy3 = diff(y3,phi3); dx3 = diff(x3,phi3);
dy4 = diff(y4,phi4); dx4 = diff(x4,phi4);
dy5 = diff(y5,phi5); dx5 = diff(x5,phi5);
dy6 = diff(y6,phi6); dx6 = diff(x6,phi6);
ds1 = diff(s1,phi1); ds2 = diff(s2,phi2); ds3 = diff(s3,phi3);
%ÀíÂÛÂÖÀª %ÀíÂÛÂÖÀª %ÀíÂÛÂÖÀª %ÀíÂÛÂÖÀª ds4 = diff(s4,phi4); ds5 = diff(s5,phi5); ds6 = diff(s6,phi6);
alpha1 = atan(abs(ds1 - e)/(s0 + s1)); alpha2 = atan(abs(ds2 - e)/(s0 + s2)); alpha3 = atan(abs(ds3 - e)/(s0 + s3)); alpha4 = atan(abs(ds4 - e)/(s0 + s4)); alpha5 = atan(abs(ds5 - e)/(s0 + s5)); alpha6 = atan(abs(ds6 - e)/(s0 + s6));
dx11 = diff(dx1,phi1); dy11 = diff(dy1,phi1);
dx22 = diff(dx2,phi2); dy22 = diff(dy2,phi2); dx33 = diff(dx3,phi3); dy33 = diff(dy3,phi3); dx44 = diff(dx4,phi4); dy44 = diff(dy4,phi4); dx55 = diff(dx5,phi5); dy55 = diff(dy5,phi5); dx66 = diff(dx6,phi6); dy66 = diff(dy6,phi6);
rou1 = abs(((dx1^2 + dy1^2)^1.5)/(dx1*dy11 - dx11*dy1)); rou2 = abs(((dx2^2 + dy2^2)^1.5)/(dx2*dy22 - dx22*dy2)); rou3 = abs(((dx3^2 + dy3^2)^1.5)/(dx3*dy33 - dx33*dy3)); rou4 = abs(((dx4^2 + dy4^2)^1.5)/(dx4*dy44 - dx44*dy4)); rou5 = abs(((dx5^2 + dy5^2)^1.5)/(dx5*dy55 - dx55*dy5)); rou6 = abs(((dx6^2 + dy6^2)^1.5)/(dx6*dy66 - dx66*dy6));
phi1 = 0:pi/1000:PHI0;
phi2 = PHI0:pi/1000:PHI0+PHIs;
phi3 = (PHI0 + PHIs):pi/1000:(PHI0 + PHIs + PHI00/n);
phi4 = (PHI0 + PHIs + PHI00/n):pi/1000:(PHI0 + PHIs + PHI00*(n - 1)/n); phi5 = (PHI0 + PHIs + PHI00*(n - 1)/n):pi/1000:(PHI0 +PHIs + PHI00); phi6 = (PHI0 + PHIs + PHI00):pi/1000:2*pi;
plot(phi1,subs(alpha1),
phi2,subs(alpha2),phi3,subs(alpha3),phi4,subs(alpha4),phi5,subs(alpha5),phi6,subs(alpha6))
plot(phi1,subs(rou1),
phi2,subs(rou2),phi3,subs(rou3),phi4,subs(rou4),phi5,subs(rou5),phi6,subs(rou6))
压力角线图
曲率半径线图
三、确定滚子半径,绘制凸轮理论轮廓和实际轮廓
凸轮逆时针转动,从动件导路偏置于凸轮轴心右侧,凸轮理论轮廓线方程为:x=(s0+s)sin+ecos,(02)
y=(s+s)cos-esin0逐段代入位移表达式则可求凸轮理论轮廓线方程,用Matlab编写程序绘制如图所示。
逐段求出最小值得,,取滚子半径,以理论
轮廓上各点为圆心、以滚子半径为半径作出的滚子圆族包络线即为滚子从动件盘形凸轮的工作轮廓,其方程为:
dydX=x+rr22(dxd)+(dyd),02 dxdY=y-rr(dxd)2+(dyd)2MATLAB代码
clear,clc r0 = 90; e = 40;
s0 = sqrt(r0^2 - e^2); h = 50;
PHI0 = pi/3; n = 3;
PHI00 =4*pi/9; PHIs = 5*pi/9; rr = 10;
syms phi1phi2phi3phi4phi5phi6
s1 = h*(10*(phi1/PHI0).^3 - 15*(phi1/PHI0).^4 + 6*(phi1/PHI0).^5);
s2 = h*(10 - 15 + 6);
s3 = h - (2*h/(4 + (n - 2)*pi))*(1 - cos(n*pi*(phi3 - PHI0 - PHIs)/(2*PHI00)));
s4 = h - (h/(4 + (n - 2)*pi))*(n*pi*(phi4 - PHI0 - PHIs)/PHI00 - pi + 2);
s5 = (2*h/(4 + (n - 2)*pi))*(1 + cos(n*pi*(phi5 - PHI0 - PHIs)/(2*PHI00) - (n - 2)*pi/2));
s6 = 0;
x1 = -(s0 + s1)*sin(phi1) - e*cos(phi1); %ÀíÂÛÂÖÀª y1 = (s0 + s1)*cos(phi1) - e*sin(phi1);
x2 = -(s0 + s2)*sin(phi2) - e*cos(phi2); %ÀíÂÛÂÖÀª y2 = (s0 + s2)*cos(phi2) - e*sin(phi2);
x3 = -(s0 + s3)*sin(phi3) - e*cos(phi3); %ÀíÂÛÂÖÀª y3 = (s0 + s3)*cos(phi3) - e*sin(phi3);
x4 = -(s0 + s4)*sin(phi4) - e*cos(phi4); %ÀíÂÛÂÖÀª y4 = (s0 + s4)*cos(phi4) - e*sin(phi4);
x5 = -(s0 + s5)*sin(phi5) - e*cos(phi5); %ÀíÂÛÂÖÀª y5 = (s0 + s5)*cos(phi5) - e*sin(phi5);
x6 = -(s0 + s6)*sin(phi6) - e*cos(phi6); %ÀíÂÛÂÖÀª y6 = (s0 + s6)*cos(phi6) - e*sin(phi6);
dy1 = diff(y1,phi1); dx1 = diff(x1,phi1);
dy2 = diff(y2,phi2); dx2 = diff(x2,phi2);
dy3 = diff(y3,phi3); dx3 = diff(x3,phi3);
dy4 = diff(y4,phi4); dx4 = diff(x4,phi4);
dy5 = diff(y5,phi5); dx5 = diff(x5,phi5);
dy6 = diff(y6,phi6); dx6 = diff(x6,phi6);
X1 = x1 - rr*dy1/sqrt(dx1^2 + dy1^2); %ʵ¼ÊÂÖÀª Y1 = y1 + rr*dx1/sqrt(dx1^2 + dy1^2);
X2 = x2 - rr*dy2/sqrt(dx2^2 + dy2^2); %ʵ¼ÊÂÖÀª Y2 = y2 + rr*dx2/sqrt(dx2^2 + dy2^2);
X3 = x3 - rr*dy3/sqrt(dx3^2 + dy3^2); %ʵ¼ÊÂÖÀª Y3 = y3 + rr*dx3/sqrt(dx3^2 + dy3^2);
X4 = x4 - rr*dy4/sqrt(dx4^2 + dy4^2); %ʵ¼ÊÂÖÀª
Y4 = y4 + rr*dx4/sqrt(dx4^2 + dy4^2);
X5 = x5 - rr*dy5/sqrt(dx5^2 + dy5^2); %ʵ¼ÊÂÖÀª Y5 = y5 + rr*dx5/sqrt(dx5^2 + dy5^2);
X6 = x6 - rr*dy6/sqrt(dx6^2 + dy6^2); Y6 = y6 + rr*dx6/sqrt(dx6^2 + dy6^2);
phi1 = 0:pi/1000:PHI0;
phi2 = PHI0:pi/1000:PHI0+PHIs;
phi3 = (PHI0 + PHIs):pi/1000:(PHI0 + PHIs + PHI00/n);
phi4 = (PHI0 + PHIs + PHI00/n):pi/1000:(PHI0 + PHIs + PHI00*(n - 1)/n); phi5 = (PHI0 + PHIs + PHI00*(n - 1)/n):pi/1000:(PHI0 +PHIs + PHI00); phi6 = (PHI0 + PHIs + PHI00):pi/1000:2*pi;
plot(subs(X1),subs(Y1),subs(X2),subs(Y2),subs(X3),subs(Y3),subs(X4),subs(Y4),subs(X5),subs(Y5),subs(X6),subs(Y6)) hold on
plot(subs(x1),subs(y1),subs(x2),subs(y2),subs(x3),subs(y3),subs(x4),subs(y4),subs(x5),subs(y5),subs(x6),subs(y6))hold off axis square
凸轮轮廓图
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- axer.cn 版权所有 湘ICP备2023022495号-12
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务