哈工大机械原理大作业凸轮机构设计第3题.docx
《哈工大机械原理大作业凸轮机构设计第3题.docx》由会员分享,可在线阅读,更多相关《哈工大机械原理大作业凸轮机构设计第3题.docx(21页珍藏版)》请在冰豆网上搜索。
哈工大机械原理大作业凸轮机构设计第3题
机械原理大作业二
课程名称:
机械原理
设计题目:
凸轮设计
院系:
机电学院
班级:
1208103
完成者:
xxxxxxx
学号:
xx
指导教师:
林琳
设计时间:
工业大学
凸轮设计
一、设计题目
如图所示直动从动件盘形凸轮,其原始参数见表,据此设计该凸轮。
序号
升程(mm)
升程运动角(°)
升程运动规律
升程许用压力角(°)
回程运动角(°)
回程运动规律
回程许用压力角(°)
远休止角(°)
近休止角(°)
3
50
150
正弦加速度
30
100
余弦加速度
60
30
80
2、凸轮推杆升程、回程运动方程及其线图
1、凸轮推杆升程运动方程(
)
升程采用正弦加速度运动规律,故将已知条件
,
带入正弦加速度运动规律的升程段方程式中得:
;
;
;
2、凸轮推杆推程远休止角运动方程(
)
;
;
3、凸轮推杆回程运动方程(
)
回程采用余弦加速度运动规律,故将已知条件
,
,
带入余弦加速度运动规律的回程段方程式中得:
;
;
;
4、凸轮推杆回程近休止角运动方程(
)
;
5、凸轮推杆位移、速度、加速度线图
根据以上所列的运动方程,利用matlab绘制出位移、速度、加速度线图。
①位移线图
编程如下:
%用t代替转角
t=0:
:
5*pi/6;
s=50*((6*t)/(5*pi)-1/(2*pi)*sin(12*t/5));
holdon
plot(t,s);
t=5*pi/6:
:
pi;
s=50;
holdon
plot(t,s);
t=pi:
:
14*pi/9;
s=25*(1+cos(9*(t-pi)/5));
holdon
plot(t,s);
t=14*pi/9:
:
2*pi;
s=0;
holdon
plot(t,s),xlabel('φ/rad'),ylabel('s/mm');
gridon
holdoff
所得图像为:
②速度线图
编程如下:
%用t代替转角,设凸轮转动角速度为1
t=0:
:
5*pi/6;
v=60/pi*(1-cos((12*t)/5));
holdon
plot(t,v);
t=5*pi/6:
:
pi;
v=0;
holdon
plot(t,v);
t=pi:
:
14*pi/9;
v=-45*sin(9*(t-pi)/5);
holdon
plot(t,v);
t=14*pi/9:
:
2*pi;
v=0;
holdon
plot(t,v),xlabel('φ(rad)'),ylabel('v(mm/s)');
gridon
holdoff
所得图像为:
③加速度线图
利用matlab编程如下:
%用t代替转角,设凸轮转动角速度为1
t=0:
:
5*pi/6;
a=144/pi*sin(12*t/5);
holdon
plot(t,a);
t=5*pi/6:
:
pi;
a=0;
holdon
plot(t,a);
t=pi:
:
14*pi/9;
a=-81*cos(9*(t-pi)/5);
holdon
plot(t,a);
t=14*pi/9:
:
2*pi;
a=0;
holdon
plot(t,a),xlabel('φ(rad)'),ylabel('a(mm/s^2)');
gridon
holdoff
所得图形:
3、绘制
线图
根据运动方程求得:
利用matlab编程:
%用t代替φ,a代替ds/dφ,
t=0:
:
5*pi/6;
a=-(60/pi-60/pi*cos(12*t/5));
s=50*((6*t)/(5*pi)-1/(2*pi)*sin(12*t/5));
holdon
plot(a,s);
t=5*pi/6:
:
pi;
a=0;
s=50;
holdon
plot(a,s);
t=pi:
:
14*pi/9;
a=45*sin(9*(t-pi)/5);
s=25*(1+cos(9*(t-pi)/5));
holdon
plot(a,s);
t=14*pi/9:
:
2*pi;
a=0;
s=0;
holdon
plot(a,s),title('ds/dφ-s'),xlabel('ds/dφ(mm/rad)'),ylabel('s(mm)');
gridon
holdoff
得
图:
凸轮压力角的正切值
,左侧为升程,作与s轴夹
角等于升程许用压力角的切界线
,则在直线上或其左下方取凸轮轴心时,可使
,同理右侧回程,作与s轴夹角等于回程许用压力角
的切界线
,则在直线上或其右下方取凸轮轴心时,可使
。
在升程起始点,有S=0,
,为保证此时
,作直线
与纵坐标夹角为
,凸轮轴心只能在其线上或右下方选取。
三条限制线围成的下方阴影角区域为满足
的凸轮轴心的公共许用区域。
编程求得公共许用区域:
t0=0:
:
5*pi/6;
t1=5*pi/6:
:
pi;
t2=pi:
:
14*pi/9;
t3=14*pi/9:
:
2*pi;
a0=-(60/pi-60/pi*cos(12*t0/5));
a1=0;
a2=45*sin(9*(t2-pi)/5);
a3=0;
s0=50*((6*t0)/(5*pi)-1/(2*pi)*sin(12*t0/5));
s1=50;
s2=25*(1+cos(9*(t2-pi)/5));
s3=0;
k1=-tan(pi/3);
k2=tan(pi/6);
x=-50:
:
40;
b=s0-k1.*a0;
m=s2-k2.*a2;
g=min(b);
h=min(m);
y1=k1*x+g;
y2=k2*x+h;
plot(x,y1,'c',x,y2,'b');
holdon
x=-50:
:
0;
y3=tan(pi/2-pi/6)*x;
plot(x,y3,'m');
holdon
plot(a0,s0,'b',a1,s1,'g',a2,s2,'r',a3,s3,'c'),title('凸轮轴心位置确定'),xlabel('x(mm)'),ylabel('y(mm)');
gridon
得到:
则可取轴心为x=-10mm,,y=-40mm
得:
e=10mm,
,
4、绘制凸轮理论轮廓线以及基圆、偏距圆
凸轮理论轮廓方程:
;
;
利用matlab编程:
t=0:
:
5*pi/6;
x=-(40+50*((6*t)/(5*pi)-1/(2*pi)*sin(12*t/5))).*cos(t)+10*sin(t);
y=(40+50*((6*t)/(5*pi)-1/(2*pi)*sin(12*t/5))).*sin(t)+10*cos(t);
holdon
plot(x,y);
t=5*pi/6:
:
pi;
x=-(40+50).*cos(t)+10*sin(t);
y=(40+50).*sin(t)+10*cos(t);
holdon
plot(x,y);
t=pi:
:
14*pi/9;
x=-(40+25*(1+cos(9*(t-pi)/5))).*cos(t)+10*sin(t);
y=+(40+25*(1+cos(9*(t-pi)/5))).*sin(t)+10*cos(t);
holdon
plot(x,y);
t=14*pi/9:
:
2*pi;
x=-(40).*cos(t)+10*sin(t);
y=+(40).*sin(t)+10*cos(t);
holdon
plot(x,y);
%绘制基园,用绿色线条表示
t=0:
:
2*pi;
x=*cos(t);
y=*sin(t);
holdon
plot(x,y,'g');
%绘制偏距圆,用红色线条表示
t=0:
:
2*pi;
x=10*cos(t);
y=10*sin(t);
holdon
plot(x,y,'r'),title('凸轮理论廓线、基圆以及偏距圆'),xlabel('x(mm)'),ylabel('y(mm)');
gridon
holdoff
得到:
5、确定滚子半径
根据曲率半径公式:
利用matlab编程如下:
%t代替转角φ,p表示曲率半径
t=0:
:
5*pi/6;
x=-(40+50*((6*t)/(5*pi)-1/(2*pi)*sin(12*t/5))).*cos(t)+10*sin(t);
y=(40+50*((6*t)/(5*pi)-1/(2*pi)*sin(12*t/5))).*sin(t)+10*cos(t);
dx1=diff(x);
dy1=diff(y);
dx11=diff(x,2);
dy11=diff(y,2);
p=abs(sqrt((dx1.^2+dy1.^2).^3)/(dx1.*dy11-dy1.*dx11));
holdon
plot(t,p);
t=5*pi/6:
:
pi;
x=-(40+50).*cos(t)+10*sin(t);
y=(40+50).*sin(t)+10*cos(t);
dx1=diff(x);
dy1=diff(y);
dx11=diff(x,2);
dy11=diff(y,2);
p=abs(sqrt((dx1.^2+dy1.^2).^3)/(dx1.*dy11-dy1.*dx11));
holdon
plot(t,p);
t=pi:
:
14*pi/9;
x=-(40+25*(1+cos(9*(t-pi)/5))).*cos(t)+10*sin(t);
y=+(40+25*(1+cos(9*(t-pi)/5))).*sin(t)+10*cos(t);
dx1=diff(x);
dy1=diff(y);
dx11=diff(x,2);
dy11=diff(y,2);
p=abs(sqrt((dx1.^2+dy1.^2).^3)/(dx1.*dy11-dy1.*dx11));
holdon
plot(t,p);
t=14*pi/9:
:
2*pi;
x=-(40).*cos(t)+10*sin(t);
y=+(40).*sin(t)+10*cos(t);
dx1=diff(x);
dy1=diff(y);
dx11=diff(x,2);
dy11=diff(y,2);
p=abs(sqrt((dx1.^2+dy1.^2).^3)/(dx1.*dy11-dy1.*dx11));
holdon
plot(t,p);
holdoff
title('曲率半径ρ'),xlabel('φ(rad)'),ylabel('ρ(mm)');
gridon
得到:
由图可知:
,即基圆半径,又因为
,综上,可取滚子半径为10mm。
6、绘制凸轮实际廓线
根据凸轮实际廓线方程:
;
;
利用matlab编程如下:
%其中用红色线条表示其实际轮廓
h=50;
t0=pi*5/6;
t01=pi*5/9;
ts=pi/6;
ts1=pi*4/9;
e=10;%偏距
s0=40;
rr=10;%滚子半径
%升程阶段
t=linspace(0,pi*5/6,1000);
s=h*(t/t0-sin(2*pi*t/t0)/(2*pi));
a1=-(s0+s).*cos(t)+e*sin(t);
b1=+(s0+s).*sin(t)+e*cos(t);
dx1=-(h/t0-h*cos(2*pi*t/t0)/t0).*cos(t)+(s0+s).*sin(t)+e*cos(t);
dy1=+(h/t0-h*cos(2*pi*t/t0)/t0).*sin(t)+(s0+s).*cos(t)-e*sin(t);
x1=a1+rr*dy1./(sqrt(dx1.^2+dy1.^2));
y1=b1-rr*dx1./(sqrt(dx1.^2+dy1.^2));
holdon
plot(a1,b1);
plot(x1,y1,'r');
%远休止阶段
t=linspace(pi*5/6,pi,1000);
s=h;
a2=-(s+s0).*cos(t)+e*sin(t);
b2=+(s+s0).*sin(t)+e*cos(t);
dx2=sin(t).*(s+s0)+e*cos(t);
dy2=cos(t).*(s+s0)-e*sin(t);
x2=a2+rr*dy2./(sqrt(dx2.^2+dy2.^2));
y2=b2-rr*dx2./(sqrt(dx2.^2+dy2.^2));
holdon
plot(a2,b2);
plot(x2,y2,'r');
%回程阶段
t=linspace(pi,pi*14/9,1000);
s=*h*(1+cos(pi*(t-(t0+ts))/t01));
a3=-(s+s0).*cos(t)+e*sin(t);
b3=+(s+s0).*sin(t)+e*cos(t);
dx3=+*h*pi/(2*t01)*sin((pi/t01)*(t-(t0+ts))).*cos(t)+sin(t).*(s+s0)+e*cos(t);
dy3=*h*pi/(2*t01)*sin((pi/t01)*(t-(t0+ts))).*sin(t)+cos(t).*(s+s0)-e*sin(t);
x3=a3+rr*dy3./(sqrt(dx3.^2+dy3.^2));
y3=b3-rr*dx3./(sqrt(dx3.^2+dy3.^2));
holdon
plot(a3,b3);
plot(x3,y3,'r');
%近休止阶段
t=linspace(pi*14/9,pi*2,1000);
s=0;
a4=-(s+s0).*cos(t)+e*sin(t);
b4=+(s+s0).*sin(t)+e*cos(t);
dx4=sin(t).*(s+s0)+e*cos(t);
dy4=+cos(t).*(s+s0)-e*sin(t);
x4=a4+rr*dy4./(sqrt(dx4.^2+dy4.^2));
y4=b4-rr*dx4./(sqrt(dx4.^2+dy4.^2));
holdon
plot(a4,b4);
plot(x4,y4,'r'),title('凸轮实际轮廓'),xlabel('x(mm)'),ylabel('y(mm)');
holdoff
gridon
得到凸轮实际廓线,其中蓝色线条表示其理论轮廓,红色线条表示其实际轮廓: