资源描述
东北大学机械原理课程设计 牛头刨床设计
机械原理课程设计说明书
课题:牛头刨床设计
班 级 :
姓 名 :
学 号 :
指导教师 :
成 绩 :
2009年 10月 23日
目录
1、设计任务 3
2、设计参数 4
3、机构的结构分析 5
4、主要设计计算过程 6
5、导杆机构的运动分析 7
5.1机构的分解 7
5.2 主动件的运动分析 7
5.3牛头刨床的运动主程序 7
5.4牛头刨床的计算结果与曲线图 9
1. 计算结果 9
2.曲线图 9
6、导杆机构的动态静力分析 10
6.1机构的分解 10
6.2对主动件进行动态静力分析 10
6.3动态静力分析程序 11
6.4牛头刨床的计算结果与曲线图 14
1. 计算结果 14
2.曲线图 15
7、收获和建议 16
8、参考文献 16
课题:牛头刨床机构分析
1、设计任务
牛头刨床是一种靠刀具的往复直线运动及工作台的间歇运动来完成工件的平面切削加工的机床。图1为其参考示意图。电动机经过减速传动装置(皮带和齿轮传动)带动执行机构(导杆机构和凸轮机构)完成刨刀的往复运动和间歇移动。刨床工作时,刨头6由曲柄2带动右行,刨刀进行切削,称为工作行程。在切削行程H中,前后各有一段0.05H的空刀距离,工作阻力F为常数;刨刀左行时,即为空回行程,此行程无工作阻力。在刨刀空回行程时,凸轮8通过四杆机构带动棘轮机构,棘轮机构带动螺旋机构使工作台连同工件在垂直纸面方向上做一次进给运动,以便刨刀继续切削。
设计要求对导杆机构进行运动分析:将导杆机构放在直角坐标系下,建立参数化的数学模型,编程分析出刨头6的位移、速度、加速度,画出运动曲线。
对导杆机构进行动态静力分析:通过建立机构仿真模型,并给系统加力,编制程序,求得杆组分析法下和简易求法下得到的平衡力矩曲线,并求反力矢端曲线。
(a) 机械系统示意图 (b) 刨头阻力曲线图
(c) 执行机构运动简图
图1 牛头刨床
2、设计参数
题 号
1
2
3
4
5
6
7
8
9
10
导杆
机构
运动
分析
转速n2(r/min)
48
49
50
52
50
48
47
55
60
56
机架lO2O4(mm)
380
350
430
360
370
400
390
410
380
370
工作行程H(mm)
310
300
400
330
380
250
390
310
310
320
行程速比系数K
1.46
1.40
1.40
1.44
1.53
1.34
1.50
1.37
1.46
1.48
连杆与导杆之比lBC / lO4B
0.25
0.30
0.36
0.33
0.30
0.32
0.33
0.25
0.28
0.26
导杆
机构
动态
静力
分析
工作阻力Fmax(N)
4500
4600
3800
4000
4100
5200
4200
4000
6000
5500
导杆质量m4 (kg)
20
20
22
20
22
24
26
28
26
22
滑块6质量m6 (kg)
70
70
80
80
80
90
80
70
80
60
导杆4质心转动惯量 Js4 (kg ·m2)
1.1
1.1
1.2
1.2
1.2
1.3
1.2
1.1
1.2
1.2
凸轮
机构
设计
从动件最大摆角ψmax
15°
15°
15°
15°
15°
15°
15°
15°
15°
15°
从动件杆长 lO9D(mm)
125
135
130
122
123
124
126
128
130
132
许用压力角
40°
38°
42°
45°
43°
44°
41°
40°
42°
45°
推程运动角
75°
70°
65°
60°
70°
75°
65°
60°
72°
74°
远休止角
10°
10°
10°
10°
10°
10°
10°
10°
10°
10°
回程运动角
75°
70°
65°
60°
70°
75°
65°
60°
72°
74°
2.1设计要求:
电动机轴与曲柄轴2平行,刨刀刀刃E点与铰链点C的垂直距离为50mm,使用寿命10年,每日一班制工作,载荷有轻微冲击。允许曲柄2转速偏差为±5%。要求导杆机构的最大压力角应为最小值;凸轮机构的最大压力角应在许用值[α]之内,摆动从动件9的升、回程运动规律均为等加速等减速运动。执行构件的传动效率按0.95计算,系统有过载保护。按小批量生产规模设计。
3、机构的结构分析
对结构的关键点编号并对机构拆分杆组,如图2。(6为滑枕质心,9为刨刀作用点)
4、主要设计计算过程
选择第5组数据
5,8点水平距离为0.15,垂直距离为0.05。
5,9点水平距离为0.4,垂直距离为0.05.
K=1.53,
θ=[180°*(K-1)/2(K+1)]=180°*(1.53-1)/2(1.53+1)≈19 °,
由工作行程分析知,BH=H/2= 0.38/2=0.190;
从而:r34=BF=BH/sinθ=0.19/sin19°=0.584;
r12=OF*sinθ=0.37* sin 19°=0.112;
r45=0.30*r34=0.30*0.584=0.175;
FD=[(r34+r45)cosθ+r34]/2=[(0.584+0.175)cos 19°+0.584]/2=0.651;
以O点(1点)为坐标原点,F点(3点)坐标为(0,-0.37),D点(6点)坐标为(0,0.281)。
主动件初始角度β=-(180°-α),其中α=θ。
主动件角速度ω=n2*2π/60=50*2π/60=5.236rad/s。
其余参数直接在表中取得。
5、导杆机构的运动分析
5.1机构的分解
把机构分解为主动件及杆组。本题可分解为主动件①,②③构件组成的RPR杆组及④⑤构件组成的RRP杆组。
5.2 主动件的运动分析
1) 调用bark函数求2点的运动参数。
形式参数
n1
n2
n3
k
r1
r2
gam
t
w
e
p
实值
1
2
0
1
r12
0.0
0.0
t
w
e
p
2)调用rprk函数求3点的运动参数。
形式参数
m
n1
n2
k1
k2
r1
r2
vr2
实值
1
3
2
3
2
0.0
&r2
&vr2
形式参数
ar2
t
w
e
p
vp
ap
实值
&ar2
t
w
e
p
vp
ap
3)调用bark函数求4点的运动参数
形式参数
n1
n2
n3
k
r1
r2
gam
t
w
e
p
实值
3
4
0
3
r34
0.0
0.0
t
w
e
p
4)调用rrpk函数求5点的运动参数。
形式参数
m
n1
n2
n3
k1
k2
k3
r1
r2
实值
1
4
6
5
4
5
6
r45
&r2
形式参数
vr2
ar2
t
w
e
p
vp
ap
实值
&vr2
&ar2
t
p
e
p
vp
ap
5.3牛头刨床的运动主程序
#include "stdio.h"
#include "graphics.h" /*图形库*/
#include "subk.c" /*运动子程序库*/
#include "draw.c" /*绘图子程序库*/
main()
{
static double p[20][2],vp[20][2],ap[20][2],del;
static double t[10],w[10],e[10],pdraw[370],vpdraw[370],apdraw[370];
/*创建数组用来储存数据 */
static int ic;
double r34=0.584,r12=0.112,r45=0.175; /*定义变量,对三个杆件长度赋初值*/
double r2,vr2,ar2;
double pi=4.0*atan(1.0),dr=pi/180.0;
/*求pi和求弧度*/
int i;
FILE *fp;
e[1]=0.0;
w[1]=-5.236;
del=10.0; /*设定步长*/
p[3][1]=0;
p[3][2]=-0.37;
p[1][1]=0.0;
p[1][2]=0.0;
p[6][1]=0.0;
p[6][2]=0.281; /*定坐标系*/
printf(" \n The Kinematic Parameters of Point 5\n");
printf("No HETA1 S5 V5 A5\n");
printf(" deg mm mm/s mm/(s*s)\n");
/*在屏幕上写表头*/
if((fp=fopen("file1","w"))==NULL)
{
printf(" Can't open this file.\n");
exit(0);
} /*建立并打开文件file1*/
fprintf(fp," \n The Kinematic Parameters of Point 5\n");
fprintf(fp,"No THETA1 S5 V5 A5\n");
fprintf(fp," deg m m/s m/(s*s)\n");
ic=(int)(360.0/del);
for(i=0;i<=ic;i++) /*建立循环*/
{
t[1]=(i)*del*dr;
bark(1,2,0,1,r12,0.0,0.0,t,w,e,p,vp,ap);
rprk(1,3,2,3,2,0.0,&r2,&vr2,&ar2,t,w,e,p,vp,ap);
bark(3,4,0,3,r34,0.0,0.0,t,w,e,p,vp,ap);
rrpk(1,4,6,5,4,5,6,r45,&r2,&vr2,&ar2,t,w,e,p,vp,ap);
/*调用各运动分析子程序*/
printf("\n%2d %12.3f%12.3f%12.3f%12.3f",i+1,t[1]/dr,p[5][1],vp[5][1],ap[5][1]);
fprintf(fp,"\n%2d%12.3f%12.3f%12.3f%12.3f",i+1,t[1]/dr,p[5][1],vp[5][1],ap[5][1]); /*把结果写入屏幕和文件file1中*/
pdraw[i]=p[5][1];
vpdraw[i]=vp[5][1];
apdraw[i]=ap[5][1];
/*把运算结果传入以备使用*/
if((i%32)==0){getch();} /*屏幕慢32行停顿*/
}
fclose(fp); /*关闭文件file1*/
getch();
draw1(del,pdraw,vpdraw,apdraw,ic); /*调用绘图子程序*/
}
5.4牛头刨床的计算结果与曲线图
1. 计算结果
The Kinematic Parameters of Point 5
No THETA1 S5 V5 A5
deg m m/s m/(s*s)
1 0.000 0.318 0.200 -3.025
2 20.000 0.298 0.381 -2.432
3 40.000 0.268 0.524 -1.870
4 60.000 0.229 0.629 -1.270
5 80.000 0.185 0.694 -0.661
6 100.000 0.138 0.717 -0.055
7 120.000 0.090 0.700 0.586
8 140.000 0.046 0.636 1.377
9 160.000 0.007 0.509 2.499
10 180.000 -0.020 0.292 4.112
11 200.000 -0.029 -0.047 6.061
12 220.000 -0.011 -0.505 7.456
13 240.000 0.039 -0.994 6.694
14 260.000 0.117 -1.311 2.164
15 280.000 0.205 -1.230 -4.463
16 300.000 0.274 -0.807 -7.286
17 320.000 0.312 -0.356 -5.868
18 340.000 0.324 -0.031 -4.020
19 360.000 0.318 0.200 -3.025
2. 运动参数曲线图
图4 5点的运动参数
6、导杆机构的动态静力分析
6.1机构的分解
见图2,把机构分解为主动件及杆组。本题可分解为主动件①,②③构件组成的RPR杆组及④⑤构件组成的RRP杆组。
6.2对主动件进行动态静力分析
1) 调用bark函数求2点的运动参数。
形式参数
n1
n2
n3
k
r1
r2
gam
t
w
e
p
实值
1
2
0
1
r12
0.0
0.0
t
w
e
p
2)调用rprk函数求3点的运动参数。
形式参数
m
n1
n2
k1
k2
r1
r2
vr2
实值
1
3
2
3
2
0.0
&r2
&vr2
形式参数
ar2
t
w
e
p
vp
ap
实值
&ar2
t
w
e
p
vp
ap
3)调用bark函数求4点的运动参数
形式参数
n1
n2
n3
k
r1
r2
gam
t
w
e
p
实值
3
4
0
3
r34
0.0
0.0
t
w
e
p
4)调用rrpk函数求5点的运动参数。
形式参数
m
n1
n2
n3
k1
k2
k3
r1
r2
实值
1
4
6
5
4
5
6
r45
&r2
形式参数
vr2
ar2
t
w
e
p
vp
ap
实值
&vr2
&ar2
t
p
e
p
vp
ap
5)两次调用bark函数,求7,8,9点的运动参数。
7点的运动参数
形式参数
n1
n2
n3
k
r1
r2
gam
t
w
e
p
vp
ap
实值
3
0
7
3
0.0
r37
0.0
t
w
e
p
vp
ap
8点的运动参数
形式参数
n1
n2
n3
k
r1
r2
gam
t
w
e
p
vp
ap
实值
5
0
8
5
0.0
r58
gam8
t
w
e
p
vp
ap
9点的运动参数
形式参数
n1
n2
n3
k
r1
r2
gam
t
w
e
p
vp
ap
实 值
5
0
9
5
0.0
r59
gam9
t
w
e
p
vp
ap
6)调用rrpf函数,计算4,5点的运动副反力。
形式参数
n1
n2
n3
ns1
ns2
nn1
nn2
nexf
k1
k2
实值
4
10
5
4
8
0
9
9
4
5
形式参数
p
vp
ap
t
w
e
fr
实值
p
vp
ap
t
w
e
e
7)调用rprf函数,计算2,3点的运动副反力。
形式参数
n1
n2
ns1
ns2
nn1
nn2
nexf
k1
k2
实值
3
2
7
2
4
0
0
3
2
形式参数
p
vp
ap
t
w
e
fr
fk
pk
实值
p
vp
ap
t
w
e
fr
fk
pk
8)调用barf函数,计算转动副1中的反力及应加于构件①上的平衡力矩tb。
形式参数
n1
ns1
nn1
k1
p
ap
e
fr
tb
实值
1
1
2
1
p
ap
e
fr
&tb
6.3动态静力分析程序
#include "graphics.h" /*图形库*/
#include "subk.c" /*运动分析子程序*/
#include "subf.c" /*静力分析子程序*/
#include "draw.c" /*绘图子程序*/
extf(p,vp,ap,t,w,e,nexf,fe)
double p[20][2],vp[20][2],ap[20][2],t[10],w[10],e[10],fe[20][2];
int nexf;
{
fe[nexf][2]=0.0;
if(vp[nexf][1]>0&&p[nexf][1]*10000>=2090&&p[nexf][1]*10000<=5510)
/*外阻力作用范围 */
{
fe[nexf][1]=-4000.0;
}
else fe[nexf][1]=0.0;
} /*工艺阻力子函数*/
main() /*主函数*/
{
static double p[20][2],vp[20][2],ap[20][2],del;
static double t[10],w[10],e[10],tbdraw[370],tb1draw[370];
static double sita1[370],fr1draw[370],sita2[370],fr2draw[370],sita3[370],
fr3draw[370],fr3,bt3;
static double fr[20][2],fe[20][2],fk[20][2],pk[20][2];
static int ic;
double r12,r34,r37,r45,r58,r59,r210,gam8,gam9;
double r2,vr2,ar2,r3,vr3,ar3;
double fr1,bt1,fr2,bt2,we1,we2,we3,we4,we5,tb1,tb; /*定义变量*/
double pi=4.0*atan(1.0),dr=pi/180.0; /*求pi和求弧度*/
int i;
FILE *fp;
char *m[]={"tb","tb1","fr1","","fr2"};
sm[1]=0.0; sm[2]=0.0; sm[3]=22.0; sm[4]=0.0; sm[5]=80.0; sj[3]=1.20;
r12=0.1205;r34=0.584;r37=0.292;r45=0.1749;r58=0.158;r59=0.403;
gam9=-atan(1/8);gam8=atan(1/3);
gam8=gam8*dr; gam9=gam9*dr;
t[5]=0.0; w[5]=0.0; e[5]=0.0; w[1]=(2*pi*50)/60; e[1]=0.0; /*赋初值*/
del=10.0; /*定步长*/
p[3][1]=0;
p[3][2]=-0.370;
p[1][1]=0.0;
p[1][2]=0.0;
p[6][1]=0.0;
p[6][2]=0.281;
/*定义坐标系,赋定铰链值*/
printf("\n The Kineto-static Analysis of Ntbc\n");
printf(" NO THETA1 FR1 BT1 FR4 BT4 TB TB1\n");
printf(" (deg.) (N) (deg.) (N) (deg.) (N.m) (N.m)\n");
/*在屏幕上写表头*/
if((fp=fopen("file","w"))==NULL)
{
printf("Can't open this file./n");
exit(0);
}
printf(fp,"\n The Kineto-static Analysis of Ntbc\n");
printf(fp,"NO THETA1 FR1 BT1 FR4 BT4 TB TB1\n" );
printf(fp," (deg.) (N) (deg.) (N) (deg.) (N.m) (N.m)\n" );
ic=(int)(360.0/del);
for(i=0;i<=ic;i++)
{
t[1]=(double)(i*del)*dr;
bark(1,2,0,1,r12,0.0,0.0,t,w,e,p,vp,ap);
rprk(1,3,2,3,2,0.0,&r2,&vr2,&ar2,t,w,e,p,vp,ap);
bark(3,4,0,3,r34,0.0,0.0,t,w,e,p,vp,ap);
rrpk(1,4,6,5,4,5,6,r45,&r2,&vr2,&ar2,t,w,e,p,vp,ap);
bark(3,0,7,3,0.0,r37,0.0,t,w,e,p,vp,ap);
bark(5,0,8,5,0.0,r58,gam8,t,w,e,p,vp,ap);
bark(5,0,9,5,0.0,r59,gam9,t,w,e,p,vp,ap);
/*调用运动分析子程序*/
rrpf(4,10,5,4,8,0,9,9,4,5,p,vp,ap,t,w,e,fr);
rprf(3,2,7,2,4,0,0,3,2,p,vp,ap,t,w,e,fr,fk,pk);
barf(1,1,2,1,p,ap,e,fr,&tb);
extf(p,vp,ap,t,w,e,9,fe);
/*调用静力分析子程序*/
fr1=sqrt(fr[1][1]*fr[1][1]+fr[1][2]*fr[1][2]);
bt1=atan2(fr[1][2],fr[1][1]); fr3=sqrt(fr[3][1]*fr[3][1]+fr[3][2]*fr[3][2]);
bt3=atan2(fr[3][2],fr[3][1]);
we1=-(ap[1][1]*vp[1][1]+(ap[1][2]+9.81)*vp[1][2])*sm[1]-e[1]*w[1]*sj[1];
we2=-(ap[2][1]*vp[2][1]+(ap[2][2]+9.81)*vp[2][2])*sm[2]-e[2]*w[2]*sj[2];
we3=-(ap[7][1]*vp[7][1]+(ap[7][2]+9.81)*vp[7][2])*sm[3]-e[3]*w[3]*sj[3];
we4=-(ap[10][1]*vp[10][1]+(ap[10][2]+9.81)*vp[10][2])*sm[4]-e[4]*w[4]*sj[4];
we5=-ap[8][1]*vp[8][1]*sm[5]+fe[9][1]*vp[8][1];
tb1=-(we1+we2+we3+we4+we5)/w[1];
/*用简易方法求平衡力矩*/
printf("\n%2d%10.3f%10.3f%10.3f%10.3f%10.3f%10.3f%10.3f",i+1,
t[1]/dr,fr1,bt1/dr,fr3,bt3/dr,tb,tb1);
fprintf(fp,"\n%2d%10.0f%10.3f%10.3f%10.3f%10.3f%10.3f%10.3f\n",i+1,
t[1]/dr,fr1,bt1/dr,fr3,bt3/dr,tb,tb1);
tbdraw[i]=tb;
tb1draw[i]=tb1;
fr1draw[i]=fr1;
sita1[i]=bt1;
fr2draw[i]=fr3;
sita2[i]=bt3;
fr3draw[i]=fr3;
sita3[i]=bt3;
if((i%16)==0) getch(); /*运行16行停顿*/
}
fclose(fp);
getch();
draw2(del,tbdraw,tb1draw,ic,m);
draw3(del,sita1,fr1draw,sita2,fr2draw,sita3,fr3draw,ic,m);
/*调用绘图程序画图*/
}
6.4牛头刨床的计算结果与曲线图
1. 计算结果
The Kineto-static Analysis of a six-bar Linkase
No HETA1 fr1 sita1 fr2 sita2 tb tb1
deg N radian N radian N.m N.m
1 0 377.483 161.961 88.612 -34.468 14.086 14.086
2 20 293.254 164.604 58.546 23.578 20.468 20.468
3 40 221.075 168.344 97.349 64.510 20.894 20.894
4 60 147.927 172.761 143.964 78.158 16.437 16.437
5 80 74.696 177.548 179.153 85.311 8.923 8.923
6 100 1.000 -177.548 202.291 90.949 0.119 0.119
7 120 81.086 7.239 218.381 97.092 -9.010 -9.010
8 140 192.515 11.656 235.709 105.807 -18.194 -18.194
9 160 375.159 15.396 270.829 119.850 -26.185 -26.185
10 180 692.691 18.039 363.777 139.558 -25.848 -25.848
11 200 9023.565 19.004 3968.467 174.265 18.910 18.910
12 220 10374.873 17.512 5145.272 178.955 478.170 478.170
13 240 11021.480 12.779 6041.345 177.990 974.790 974.790
14 260 10154.841 4.759 5979.247 168.951 1183.284 1183.284
15 280 1069.318 175.241 592.884 -9.142 -124.601 -124.601
16 300 1449.545 167.221 794.610 -35.330 -128.204 -128.204
17 320 918.580 162.488 464.300 -50.686 -42.337 -42.337
18 340 537.853 160.996 204.584 -52.131 -1.127 -1.127
19 360 377.483 161.961 88.612 -34.468 14.086 14.086
2.曲线图
图5 平衡力矩曲线
7、收获和建议
学会了对简单机构进行基本运动与受力分析的方法加深了对机械原理基础知识的理解。学会了用程序的方法解决机械运动受力分析的难题,熟悉了几个常用分析函数的调用方法,对函数接口知识有了进一步的了解,通过多次的分析调试过程,对构件分析的整个流程有了较深入的理解。
8、参考文献
1、赵满平 马星国主编 机械原理课程设计 沈阳:东北大学出版社,2005
2、王淑仁主编 机械原理课程设计 北京,科学出版社,2006
3、王淑仁 王丹主编 计算机辅助机构设计 沈阳:东北大学出版社,2001
第15页 共16页
展开阅读全文