凸轮机构运动分析.docx
《凸轮机构运动分析.docx》由会员分享,可在线阅读,更多相关《凸轮机构运动分析.docx(10页珍藏版)》请在冰豆网上搜索。
![凸轮机构运动分析.docx](https://file1.bdocx.com/fileroot1/2022-11/16/64c2c6bf-c046-4e2b-ad06-e29129bc344b/64c2c6bf-c046-4e2b-ad06-e29129bc344b1.gif)
凸轮机构运动分析
大作业
(二)
凸轮机构设计
(题号:
6-ABC摆动滚子推杆盘型凸轮机构)
班级____05020905_______
成绩______________________
小组成员周海龙2009301399
王江2009301464
王建辉2009301395_____
完成日期2011年11月27日
目录
凸轮机构设计3
1.题目及原始数据3
2.推杆运动规律及图轮廓线方程3
3.计算程序4
4.计算结果及分析8
5.凸轮廓线图8
6.体会及建议10
7.参考书10
8.小组互评10
凸轮机构设计
1.题目及原始数据
使用计算机辅助设计完成题目要求的摆动滚子推杆判刑凸轮机构的设计,已知数据如下表,凸轮沿逆时针方向运动。
表1转角
转角
进休转角
推程转角
远休转角
回程转角
王江
0°~60°
60°~180°
180°~270°
270°~360°
周海龙
0°~45°
45°~210°
210°~260°
260°~360°
王建辉
0°~30°
30°~210°
210°~280°
280°~360°
表2已知参数
数据(mm)
初选基圆半径
机架长度
摆杆长度
滚子半径
推杆摆角
许用压力角
需用最小曲率半径
王江
15
60
55
10
24
35
70
0.3
周海龙
20
70
65
14
26
40
70
0.3
王建辉
22
72
68
18
28
45
65
0.35
2.推杆运动规律及图轮廓线方程
表3运动规律
题号
推程运动规律
回程运动规律
6—A,B,C
等加速等减速运动
余弦加速度运动
摆杆转角方程:
理论廓线方程:
工作廓线方程:
3.计算程序
clear
q=1;%选择组别(1,2,3-A,B,C)
r0=[15,20,22];loa=[60,70,72];
lab=[55,65,68];rr=[10,14,18];
h=[24,26,28];alpha1=[5,40,45];
alpha2=[70,70,65];u=[0.3,0.3,0.35];
j1=[60,45,30];j2=[180,210,210];
j3=[270,260,280];
r0=r0(q);loa=loa(q);lab=lab(q);rr=rr(q);h=h(q);alpha1=alpha1(q);
alpha2=alpha2(q);u=u(q);j1=j1(q);j2=j2(q);j3=j3(q);
j=[0:
1:
360];
fori=1:
100
s0=acosd((loa^2+lab^2-r0^2)/(2*loa*lab));
alpha=0;
forp=1:
361
ifj(p)s(p)=0;
dxdj(p)=loa*cosd(j(p))-lab*cosd(j(p)+s0);
dydj(p)=-loa*sind(j(p))+lab*sind(j(p)+s0);
ddxdj(p)=-loa*sind(j(p))+lab*sind(j(p)+s0);
ddydj(p)=-loa*cosd(j(p))+lab*cosd(j(p)+s0);
alpha(p)=atand((lab*0-(loa*cosd(s0+s(p))-lab))/loa*sind(s0+s(p)));
else
ifj(p)<0.5*(j2+j1)
s(p)=2*h*(j(p)-j1)^2/((j2-j1)^2);
dxdj(p)=loa*cosd(j(p))-lab*cosd(j(p)+2*h*(j(p)-j1)^2/(j2-j1)^2+s0)*(1+4*h*(j(p)-j1)/(j2-j1)^2);
dydj(p)=-loa*sind(j(p))+lab*sind(j(p)+2*h*(j(p)-j1)^2/(j2-j1)^2+s0)*(1+4*h*(j(p)-j1)/(j2-j1)^2);
ddxdj(p)=-loa*sind(j(p))+lab*sind(j(p)+2*h*(j(p)-j1)^2/(j2-j1)^2+s0)*(1+4*h*(j(p)-j1)/(j2-j1)^2)^2-4*lab*cosd(j(p)+2*h*(j(p)-j1)^2/(j2-j1)^2+s0)*h/(j2-j1)^2;
ddydj(p)=-loa*cosd(j(p))+lab*cosd(j(p)+2*h*(j(p)-j1)^2/(j2-j1)^2+s0)*(1+4*h*(j(p)-j1)/(j2-j1)^2)^2+4*lab*sind(j(p)+2*h*(j(p)-j1)^2/(j2-j1)^2+s0)*h/(j2-j1)^2;
alpha(p)=atand((lab*pi/180*4*h*(j(p)-j1)/(j2-j1)^2-(loa*cosd(s0+s(p))-lab))/loa*sind(s0+s(p)));
elseifj(p)s(p)=h-2*h*(j2-j(p))^2/((j2-j1)^2);
dxdj(p)=loa*cosd(j(p))+lab*cosd(-j(p)-h+2*h*(j2-j(p))^2/(j2-j1)^2-s0)*(-1-4*h*(j2-j(p))/(j2-j1)^2);
dydj(p)=-loa*sind(j(p))+lab*sind(-j(p)-h+2*h*(j2-j(p))^2/(j2-j1)^2-s0)*(-1-4*h*(j2-j(p))/(j2-j1)^2);
ddxdj(p)=-loa*sind(j(p))-lab*sind(-j(p)-h+2*h*(j2-j(p))^2/(j2-j1)^2-s0)*(-1-4*h*(j2-j(p))/(j2-j1)^2)^2+4*lab*cosd(-j(p)-h+2*h*(j2-j(p))^2/(j2-j1)^2-s0)*h/(j2-j1)^2;
ddydj(p)=-loa*cosd(j(p))+lab*cosd(-j(p)-h+2*h*(j2-j(p))^2/(j2-j1)^2-s0)*(-1-4*h*(j2-j(p))/(j2-j1)^2)^2+4*lab*sind(-j(p)-h+2*h*(j2-j(p))^2/(j2-j1)^2-s0)*h/(j2-j1)^2;
alpha(p)=atand((lab*(-4*h*(j2-j(p))/(j2-j1)^2)-(loa*cosd(s0+s(p))-lab))/loa*sind(s0+s(p)));
elseifj(p)s(p)=s(p-1);
dxdj(p)=loa*cosd(j(p))-lab*cosd(j(p)+h+s0);
dydj(p)=-loa*sind(j(p))+lab*sind(j(p)+h+s0);
ddxdj(p)=-loa*sind(j(p))+lab*sind(j(p)+h+s0);
ddydj(p)=-loa*cosd(j(p))+lab*cosd(j(p)+h+s0);
alpha(p)=atand((lab*0-(loa*cosd(s0+s(p))-lab))/loa*sind(s0+s(p)));
else
s(p)=h*(1+cos(pi*(j(p)-j3)/(360-j3)))/2;
dxdj(p)=loa*cosd(j(p))-lab*cosd(j(p)+1/2*h*(1+cos(pi*(j(p)-j3)/(360-j3)))+s0)*(1-1/2*h*sin(pi*(j(p)-j3)/(360-j3))*pi/(360-j3));
dydj(p)=-loa*sind(j(p))+lab*sind(j(p)+1/2*h*(1+cos(pi*(j(p)-j3)/(360-j3)))+s0)*(1-1/2*h*sin(pi*(j(p)-j3)/(360-j3))*pi/(360-j3));
ddxdj(p)=-loa*sind(j(p))+lab*sind(j(p)+1/2*h*(1+cos(pi*(j(p)-j3)/(360-j3)))+s0)*(1-1/2*h*sin(pi*(j(p)-j3)/(360-j3))*pi/(360-j3))^2+1/2*lab*cosd(j(p)+1/2*h*(1+cos(pi*(j(p)-j3)/(360-j3)))+s0)*h*cos(pi*(j(p)-j3)/(360-j3))*pi^2/(360-j3)^2;
ddydj(p)=-loa*cosd(j(p))+lab*cosd(j(p)+1/2*h*(1+cos(pi*(j(p)-j3)/(360-j3)))+s0)*(1-1/2*h*sin(pi*(j(p)-j3)/(360-j3))*pi/(360-j3))^2-1/2*lab*sind(j(p)+1/2*h*(1+cos(pi*(j(p)-j3)/(360-j3)))+s0)*h*cos(pi*(j(p)-j3)/(360-j3))*pi^2/(360-j3)^2;
alpha(p)=atand((-lab*(0.5*h*(pi/(360-j3))*sin(pi*(j(p)-j3)/(360-j3)))+(loa*cosd(s0+s(p))-lab))/(loa*sind(s0+s(p))));
end
end
end
end
ifj(p)==j2
alphat=0;
alphat=alpha;
end
end
row=((dxdj.^2+dydj.^2).^(3/2))./(dxdj.*ddydj-dydj.*ddxdj);
fori=1:
361
ifrow(i)>0
row(i)=10000;
else
row(i)=-row(i);
end
end
alpha=abs(alpha);
alphat=abs(alphat);
if(max(alphat)>alpha1)||(max(alpha)>alpha2)||((min(row)-rr)
r0=r0+1;
else
break;
end
break
end
[max_t,j_t]=max(alphat);
a=[max_t,j_t];
[max_h,j_h]=max(alpha);
a=[a,max_h,j_h];
[min_row,j_row]=min(row);
min_row=min_row-rr;
a=[a,min_row,j_row,r0]
sinj=dxdj./sqrt(dxdj.^2+dydj.^2);
cosj=-dydj./sqrt(dxdj.^2+dydj.^2);
x=loa*sind(j)-lab.*sind(j+s+s0);
y=loa*cosd(j)-lab.*cosd(j+s+s0);
x1=x-rr*cosj;
y1=y-rr*sinj;
%绘图
holdon
gridon
axisequal
plot(x,y,'LineWidth',2,'LineStyle','--','color','b')
plot(x1,y1,'LineWidth',2,'LineStyle','-','co