东北大学机械原理课程设计(牛头刨床)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
机械原理课程设计说明书题目:牛头刨床机构方案分析
班级:
姓名:
学号:
指导教师:
成绩:
2012年月日
目录
1.题目说明.................................................................. 错误!未定义书签。
2.内容要求与作法 (2)
3.滑枕初始位置及行程H的确定方法 (2)
4.机构的结构分析 (3)
5.机构的运动分析 (3)
5-1 所调用杆组子程序中虚参与实参对照表 (3)
5-2主程序、计算结果及运行图像 (4)
6.机构的静力分析 .................................................. 错误!未定义书签。
6-1杆组运动分析子程序函数及形参实值对照表 (6)
6-2主程序、运行结果及运算图像 ................... 错误!未定义书签。7.飞轮转动惯量计算 . (12)
7-1飞轮转动惯量的计算方法 (12)
7-2飞轮转动惯量的程序及计算结果 (12)
8.主要收获与建议 (15)
9.参考文献 (15)
1.题目说明
(图a)所示为牛头刨床主机构的运动简图,已知,
l1=0.1m,l0=0.4m,l3=0.75m,l4=0.15m,l y=0.738m,l′3=0.375m,a=0.05m,b=0.15,c=0.4m,d =0.1m。只计构件3、5的质量,其余略去不计,m3=30kg,J s3=0.7kg·m2,m5=95kg。工艺阻力Q如图所示,Q=9000N。主轴1的转速为60r/min(顺时针方向),许用运转不均匀系数[δ]=0.03。
2.内容要求与作法
1.进行运动分析,绘制滑枕5的位移、速度和加速度线图。
2.进行动态静力分析,绘制固定铰链处的反力矢端图金额平衡力矩Tb的线图。
3.以主轴为等效构件,计算飞轮的转动惯量。
上机前认真读懂所用子程序,自编主程序,初始位置取滑枕5的左极限位置。3.滑枕初始位置及行程H的确定方法
滑枕初始位置为左极限位置,此时构件1和构件3在O1O2左侧垂直;滑枕行程H由运动分析的结果得知。滑枕的左极限位置为-0.337,右极限为0.038,所以行程为0.375;
4.机构的结构分析
5.机构的运动分析
5-1杆组运动分析子程序函数及形参与真值对照表
5-2主程序、运行结果、运行图像
主程序
/* Note:Your choice is C IDE */
#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[20],pdraw[370],vpdraw[370],apdraw[370];
static int ic; /*定义静态变量*/
double r13,r24,r45,r12;
double pi,dr;
double r2,vr2,ar2;
int i; /*定义局部变量*/
FILE *fp; /*定义文件指针变量*/
char *m[]={"p","vp","ap"};
/*定义字符串,改变字符串会改变绘图结果的标注*/ r13=0.1;r24=0.75;r45=0.15;r12=0.4;
pi=4.0*atan(1.0); /*求π*/
dr=pi/180.0 /*求弧度*/;
t[6]=0.0;w[6]=0.0;e[6]=0.0;
w[1]=-2*pi;e[1]=0.0;
del=15.0;
p[2][1]=0.0;
p[2][2]=0.0;
p[1][1]=0.0;
p[1][2]=0.4;
p[9][1]=-100;
p[9][2]=0.738; /*变量赋值*/
t[6]=0.0*dr; /*变角度为弧度*/
printf("\n The Kinematic Parameters of Point5\n");
printf("No THETA1 S5 V5 A5\n");
printf("\n deg m m/s m/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 Point5\n");
fprintf(fp,"No THETA1 S5 V5 A5\n");
fprintf(fp," deg m m/s m/s/s\n");
/*在文件file1中写表头*/
ic=(int)(360.0/del);
for(i=0;i<=ic;i++) /*建立循环,调用运动分析子程序*/
{
t[1]=(-(pi-asin(r13/r12)))+(-i)*del*dr;
bark(1,3,0,1,r13,0.0,0.0,t,w,e,p,vp,ap);
rprk(1,2,3,3,2,0.0,&r2,&vr2,&ar2,t,w,e,p,vp,ap);
bark(2,4,0,3,r24,0.0,0.0,t,w,e,p,vp,ap);
rrpk(-1,4,9,5,4,5,6,r45,&r2,&vr2,&ar2,t,w,e,p,vp,ap);
/*r2,vr2,ar2在子程序中已定义为指针变量,所以其前面要加&符号*/ 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]);
/*把运算结果写在文件中*/ pdraw[i]=p[5][1];
vpdraw[i]=vp[5][1];
apdraw[i]=ap[5][1];
/*将运算结果传给pdraw[i] 、vpdraw[i] 、apdraw[i]以备绘图用*/ if((i%16)==0){getch();} /*屏幕满16行停顿*/ }
fclose(fp); /*关闭文件*/
getch();
draw1(del,pdraw,vpdraw,apdraw,ic,m); /*调用绘图程序*/
} /*主程序结束*/
运行结果
The Kinematic Parameters of Point5
No THETA1 S5 V5 A5
deg m m/s m/s/s
1 -165.52
2 -0.337 -0.000 7.251
2 -180.522 -0.331 0.27
3 5.878
3 -195.522 -0.315 0.492 4.688
4 -210.522 -0.291 0.66
5 3.611
5 -225.522 -0.260 0.794 2.593
6 -240.522 -0.225 0.882 1.623
7 -255.522 -0.187 0.930 0.715
8 -270.522 -0.148 0.942 -0.123
9 -285.522 -0.109 0.921 -0.903
10 -300.522 -0.072 0.867 -1.668
11 -315.522 -0.037 0.781 -2.495
12 -330.522 -0.007 0.657 -3.470
13 -345.522 0.017 0.489 -4.671