块状物品推送机机械原理课程设计
机械原理课程设计说明书设计题目:块状物品推送机的机构综合与结构设计
班级:
姓名:
学号:
同组成员:
组长:
指导教师:
时间:
一、设计题目 (2)
二、设计数据与要求 (2)
三、设计任务 (3)
四、方案设计 (4)
1.凸轮连杆组合机构 (4)
2.凸轮机构 (5)
3.连杆机构 (6)
4.凸轮齿轮组合机构 (7)
五、方案尺寸数据及发动机参数 (7)
六、运动分析 (8)
1.位移分析 (8)
2.速度分析 (9)
3.加速度分析 (10)
七、飞轮设计 (11)
八、个人总结 (12)
一、设计题目
在自动包裹机的包装作业过程中,经常需要将物品从前一工序转送到下一工序。现要求设计一用于糖果、香皂等包裹机中的物品推送机,将块状物品从一位置向上推送到所需的另一位置,如图所示。
二、设计数据与要求
1.向上推送距离H=120mm,生产率为每分钟推送
物品120件。
2.推送机的原动机为同步转速为3000转/分的三
相交流电动机,通过减速装置带动执行机构主动件等速转动。
3.由物品处于最低位置时开始,当执行机构主动件转过1500时,推杆从最
低位置运动到最高位置;当主动件再转过1200时,推杆从最高位置又回
到最低位置;最后当主动件再转过900时,推杆在最低位置停留不动。
4.设推杆在上升运动过程中,推杆所受的物品重力和摩擦力为常数,其值
为500N;设推杆在下降运动过程中,推杆所受的摩擦力为常数,其值
为100N。
5.使用寿命10年,每年300工作日,每日工作16小时。
6.在满足行程的条件下,要求推送机的效率高(推程最大压力角小于350),
结构紧凑,振动噪声小。
三、设计任务
1.至少提出三种运动方案,然后进行方案分析评比,选出一种运动方案进
行机构综合。
2.确定电动机的功率与满载转速。
3.设计传动系统中各机构的运动尺寸,绘制推送机的机构运动简图。
4.在假设电动机等速运动的条件下,绘制推杆在一个运动周期中位移、速
度和加速度变化曲线。
5.如果希望执行机构主动件的速度波动系数小于3%,求应在执行机构主动
件轴上加多大转动惯量的飞轮。
6.进行推送机减速系统的结构设计,绘制其装配图和两张零件图。
7.编写课程设计说明书。
四、方案设计
1.凸轮连杆组合机构
凸轮-连杆组合机构也可以实现行程放大功能,在水平面得推送任务中,优势较明显,但在垂直面中就会与机架产生摩擦,加上凸轮与摆杆和摆杆与齿条的摩擦,积累起来,摩擦会很大,然后就是其结构较为复杂,非标准件较多,加工难度比较大,从而生产成本也比较大,连杆机构上端加工难度大,而且选材时,难以找到合适的材料,使其既能满足强度刚度条件又廉价,因此不宜选择该机构来实现我们的设计目的。
方案结构简单紧凑,噪音小,运用蜗轮蜗杆传递动力,采用了带传动,凸轮机构回转运动,易于完成小范围内的物料推送任务,效率较高并且运动精确稳定效应迅速,可使推杆有确定的运动,完全符合设计目标。
利用等价的平面连杆机构实现机构的推送任务,几何封闭,传送稳定性高,通过设计合适的杆长可以实现预期的运动,当以AB杆作为原动件时,运动传到推杆K产生一定的增力效果,但是此机构由于运用了很多杆件,进行了多次中间传力,会导致机械效率的降低和误差的积累,而且连杆及滑块产生的惯性力难以平衡加以消除,因此在高速推送任务中,不宜采用此机构。
4.凸轮齿轮组合机构
凸轮-齿轮组合机构,可以将摆动从动件的摆动转化为齿轮齿条机构的齿条直线往复运动。当扇形齿轮的分度圆半径大于摆杆长度时,可以加大齿条的位移量。但是比较难设计,不好实现。
经过比较,选定方案2。
五、方案尺寸数据及发动机参数
经程序运算和查询相关资料,最终尺寸确定为凸轮基圆半径r0=100mm, 推程h=120mm,滚子半径rb=20mm;经附录程序运算,得推程最大压力角为29.8度,符合要求。
蜗杆m=4,头数为一,分度圆直径d=40mm;右旋;
蜗轮m=4,齿数25,分度圆直径d=100mm ; V 带基准长度250;
带轮1基准直径
a d =50,外径
a d =52.2; 槽型为 Y ;
带轮2基准直径a
d =20,外径a
d =23.2 槽型为 Y ;
电动机效率η1 =80% 单头蜗杆传动效率η2= 75% V 带传送效率η3=85% 凸轮传动效率η4= 95% 移动副传动效率η5= 95%
电动机型号选为YD100L-6/4/2型三项异步电机,此电动机额定功率为1.8KW ,工作电压为380V ,额定电流为4.8A ,额定转速为3000r/min,转子转动惯量为0.0014Kg*2
m 。计算可知,在一个工作周期T=0.5s 中, 阻力功w=(500*120+100*120)*0.001=0.072 J ; 阻力功率p1=w/T=0.144J/s ,
机构总效率η=η1*η2*η3*η4*η5=0.3826; 机构驱动力功率p2=p1/η=0. 3764 J/s=1.36kw
六、运动分析
1.位移分析
22
12/s h δδ=
1(0,/2]
δδ∈
2
2
112()/s h h δδδ
=--
11(/2,]δδδ∈
21
[1cos()]/2
s h
πδ
δδ
=+
-
12
(,]
δδδ
∈
其中1
δ
=150°,2
δ
=270°
由曲线可知,在一个周期内推杆位移先增加(0°-150°)后减小(150°-270°)后不变(270°-360°),符合推杆先上升后下降再停顿。
2.速度分析
2
1
4/
v hδδ
=
1
(0,/2)
δδ
∈
2
11
4()/
v hδδδ
=--
11
(/2,)
δδδ
∈
2121
sin()
v
ππδ
δδδδ
=-
--12
(,)
δδδ
∈
其中1
δ
=150°,2
δ
=270°
凸轮的推程(0°-150°)选择的是等加速等减速运动规律,由上图可知在150°之前,无速度突变即无刚性冲击,推杆速度先均匀增大后均匀较小至零。回程时(150°-270°)选择的是五次多项式运动规律,先增加后减小至零,曲线完全符合,无速度突变亦即无刚性冲击。近休时(270°-360°),速度为零,无刚性冲击。
3.加速度分析
2
14/a h δ= 1(0,/2)δδ∈
2
14/a h δ
=
11(/2,)
δδδ∈
2
21
21
(
)cos(
)
a ππδδδδδ=--- 12(,)δδδ∈
其中1
δ=150°,2
δ=270°
凸轮的推程(0°-150°)选择的是等加速等减速运动规律,在开始时(0°)、(75°-80°)、(150°)加速度有突变,但是突变有限,因而引起的冲击较小,故只存在柔性冲击。回程时(150°-270°)选择的是五次多项式运动规律,由曲线可知加速度无突变,即无柔性冲击。
启动电机,通过带传动涡轮蜗杆传动减速并带动凸轮转动,凸轮推动推杆运动。最初150度,凸轮从最低点运动到最高点作推程运动时,推杆推送物品作上升运动,同时压缩弹簧。接下来120度,凸轮从最高点作回程运动时,推杆在自身重力和弹簧弹力的作用下作下降运动。最后的的90度推杆在最低位置静止不动。电动机不断地提供电能带动整个装置的传动,完成构件上下往复运动,把一个物品从一个位置推送到另一个位置。
七、飞轮设计
由五可得△Wmax=0.1162J
Wm=w=4*Π;
m;
Jf=△Wmax/([δ]*Wm*Wm)-Je=0.0232 Kg*2
八、个人总结
实际操作永远不会像想象的那样简单。在平常的学习中,尽管自己不承认,但多多少少还是存在眼高手低的情况。这次的课程设计就给了自己当头一棒,刚开始的时候完全不懂。通过在网上查找资料,到图书馆借书才逐渐理清头绪。这次课程设计对对机械原理的掌握要求非常高,而且不仅仅如此,它还需要我们学习CAD、C语言、ADAMS、MATLAB等软件,是一次对综合能力的考察。虽然这次的课程设计完成了,但是借鉴了不少前辈的经验,自己还有很多地方需要努力,而这也许才是这次课程设计最重要的收获。
最后要感谢我的队友的大力帮助以及老师的辛勤教导。
参考文献:
《机械原理》第七版高等教育出版社孙恒
《机械原理课程设计指导》北京航空航天大学出版社张晓玲《机械原理课程设计》高等教育出版社裘建新
《机械原理创新设计》华中科技大学出版社强建国《ADAMS 2005 机械设计高级应用实例》机械工业出版社郑凯凸轮部分代码:
#include
#include
#include
#define PI 3.141592653
double fact[72][2];
double theory[72][2];
int ang1=150,ang2=270,ang3=360;
double h=120, rb=60,b=2;
double A1=30*PI/180, A2=70*PI/180;
double P=13,e=0;
double So,r=18;
double S(int I)
{
double s;
double A;
double B;
if(I<=ang1/2)
{
A=I*PI/180;
B=ang1*PI/180;
s=2*h*pow(A/B,2);
}
else if((I>ang1/2)&&(I<=ang1))
{
A=I*PI/180;
B=ang1*PI/180;
s=h-2*h*pow((B-A)/B,2);
}
else if(I<=ang2)
{
A=(I-ang1)*PI/180;
B=(ang2-ang1)*PI/180;
s=h-(10*h*pow(A/B,3)-15*h*pow(A/B,4)+6*h*pow(A/B,5));
}
else s=0;
return(s);
}
double ds(int Q)
{
double A,B,C;
if(Q<=ang1/2)
{
A=Q*PI/180;
B=ang1*PI/180;
C=4*h*A/(B*B);
}
else if((Q>ang1/2)&&(Q<=ang1))
{
A=Q*PI/180;
B=ang1*PI/180;
C=4*h*(B-A)/(B*B);
}
else if(Q<=ang2)
{
A=(Q-ang1)*PI/180;
B=(ang2-ang1)*PI/180;
C=-30*h*A*A/pow(B,3)+60*h*pow(A,3)/pow(B,4)-30*h*pow(A,4)/pow(B,5);
}
else C=0;
return C;
}
double dss(int B3)
{
double A,B,C;
if(B3<=ang1/2)
{
A=B3*PI/180;
C=ang1*PI/180;
B=4*h/(C*C);
}
else if(B3>ang1/2&&B3<=ang1)
{
A=B3*PI/180;
C=ang1*PI/180;
B=-4*h/(C*C);
}
else if(B3<=ang2)
{
A=(B3-ang1)*PI/180;
C=(ang2-ang1)*PI/180;
B=-60*h* A/pow(C,3)+180*h*A*A/pow(C,4)-120*h*pow(A,3)/pow(C,5);
}
else B=0;
return(B);
}
void xy(int ang)
{
double A,B,C,E,F,dx,dy;
A=ang*PI/180;
B=S(ang);
C=ds(ang);
dx=(So+B)*cos(A)+sin(A)*C-e*sin(A);
dy=-sin(A)*(So+B)+C*cos(A)-e*cos(A);
E=r*dy/sqrt(dx*dx+dy*dy);
F=r*dx/sqrt(dx*dx+dy*dy);
theory[ang/5][0]=(So+B)*sin(A)+e*cos(A);
theory[ang/5][1]=(So+B)*cos(A)-e*sin(A);
fact[ang/5][0]=theory[ang/5][0]-E;
fact[ang/5][1]=theory[ang/5][1]+F;
}
double a(int B1)/*****求解压力角****/
{
double A,B;
A=sqrt((ds(B1)-e)*(ds(B1)-e));
B=S(B1);
return atan(A/(B+So));
}
double p(int B2)
{
double dx,dy,dxx,dyy;
double A,B,C,D,E;
A=B2*PI/180;
B=ds(B2);
C=S(B2);
D=dss(B2);
dx=(So+C)*cos(A)+sin(A)*B-e*sin(A);
dy=-sin(A)*(So+C)+B*cos(A)-e*cos(A);
dxx=-(C+So)*sin(A)+cos(A)*B+D*sin(A)-e*cos(A);
dyy=-cos(A)*(So+C)-B*sin(A)+D*cos(A)-sin(A)*B+e*sin(A);
E=sqrt(pow(dx*dx+dy*dy,3))/sqrt(pow((dx*dyy-dxx*dy),2));
return(E);
}
//计算数据并写入文件
void main()
{ FILE *fp;
int i;
int k,h,l;
double angle1max=0,angle2max=0,pmin=1000;
if((fp=fopen("f:\\sanying","w"))==NULL)
{
printf("Cann't open this file.\n");
exit(0);
}
fprintf(fp,"\n The Kinematic Parameters of Point 4\n");
fprintf(fp," x y x' y' ");
for(;i!=360;)
{
rb=rb+b;
So=sqrt(rb*rb-e*e);
for(i=0;i<=ang1;i=i+5)
{
if(a(i)>A1||p(i)
break;
}
if(ang1+5-i)continue;
for(i=ang1+5;i<=ang2;i=i+5)
{
if(a(i)>A2||p(i)
break;
}
if(ang2+5-i)continue;
for(i=ang2+5;i<360;i=i+5)
{
if(p(i)
break;
}
}
for(i=0;i<360;i=i+5)
{
xy(i);
}
for(i=0;i<=ang1;i=i+5)
{
if(angle1max { angle1max=a(i); k=i; } if(pmin>p(i)) { pmin=p(i); h=i; } } for(i=ang1;i<=ang2;i=i+5) {