机械原理大作业一平面连杆机构的运动分析.docx
- 文档编号:14967933
- 上传时间:2023-06-28
- 格式:DOCX
- 页数:42
- 大小:178.29KB
机械原理大作业一平面连杆机构的运动分析.docx
《机械原理大作业一平面连杆机构的运动分析.docx》由会员分享,可在线阅读,更多相关《机械原理大作业一平面连杆机构的运动分析.docx(42页珍藏版)》请在冰点文库上搜索。
机械原理大作业一平面连杆机构的运动分析
大作业
(一)
平面连杆机构的运动分析
学校:
西北农林科技大学
学院:
机械与电子工程学院
指导老师:
郭红利
一.题目及原始数据;
二、
牛头刨床机构的运动分析方程
三.计算程序框图;
计算源程序;
5.计算结果;
6.运动线图及运动分析
7.参考书;
一、题目及原始数据;
图b所示的为一牛头刨床(山级机构)。
假设已知各构件的尺寸如表2所示,原动件1以等角速度^i=lrad/s沿着逆时针方向回转,试求各从动件的角位移、角速度和角加速度以及刨头C点的位移、速度和加速度的变化情况。
b)
表2牛头刨床机构的尺寸参数(单位:
mm)
题号
/ab
/cd
/de
h
虹
h2
八
B
C
7—A
180
960
160
900
460
110
112=120
加=135
尼=140
要求:
每三人一组,每人一个题目,每组中至少打印出一份源程序,每人计算出原动件从0。
〜360。
时(N=36)各运动变量的人小,并绘出各组对应的运动线图以及E点的轨迹曲线。
二、牛头刨床机构的运动分析方程
1)位置分析
建立封闭矢屋多边形
由图可知%=.故未知量有2、如、S、、S5o利用两个封闭图形ABDEA和EDCGE,
建立两个封闭矢量方程,由此可得:
把(式1)写成投影方程得:
IjCOsQ+$3cosE=h2+AcLsinQ+^sinq訥+hsi厶cos©+/3cosq—q=0(sinQ+£sinq=h
(式II)
由以上各式用型转化法可求得g$S,55,
解:
xb=/、+£*cosq%=h+h*smq
xd=/4*cos^4
^=/4*sin^
耳=丁(£一忑)'+(儿+”)‘
s1116Z=^ % xc=xd+l^sina=xd+l^(xb-xd)/s.yc=yd+/3*cosa=儿+1,*(yfc-yd)/\ ae(AE)=Jh: +hj 高斯消去法求解 2.速度分析 对(式1【)求一次导数得: -/4*sinq*0+S3'*cosq—4*sin&3*g=*sinq*a\ l4*cosQ*©+夕'*sin&3+%*cos2*0=/]*cosq*©-/4*sinq*0_£*smQ*g_盯=0 (式【【【) 厶*cosQ*q+4*cosq*g=0 矩阵式: COS&3 -53sin^ -/4sill04 0_ sj _/]sin0{ sinQ S3COS&3 /4cos^4 0 W3 hcosq 0 -Z3sin^ -/4sill04 -1 0 (IV) 0 /3COS&3 /4cos^4 0 — _^5'_ 0_ 采用高斯消去法可求解(式IV)可解得角速度33,34; 3•加速度分析 把式【丫对时间求导数得矩阵式: 采用高斯消去法可求解(式V)可得角加速度y8 3. cos0—s5sin.3^ sin.乞cosQ O—Z3sin比 —Z4sin3a /4COS0 —Z4sin 厶cos已 —w3sin@ 1 —s3sin03—s3w3cos@ —/4W4cosg 0~ JMcosq w3cos@ f S3cos@—s3w3sin03 —/4vv4sin2 0 +mi 0 —厶旳cosQ —仃叫cosq 0 0 0 —l3w3sin03 —/4vv4sin 0 .0. (式V) OZ3COS&J 程序流程图 -位置分析・I—- I— 速度分析 B(J)=B(J)3 调用系数矩阵A子程序,并计算A 调用牛顿迭代法子程序求解位置方程 (1)求得0心〃5及“6(或/bgS5)并计算m及比 调用原动件位置参数列阵B子程序,并计算B J=l,N I— 调用高斯消去法子程序求解速度方程 (2)求得0" 3,695及06(或/眈,比)再求出'&及怜 调用系数矩阵A子程序,并计算其矩阵DA 调用系数矩阵3子程序,并计算其矩阵DB 加速度分析 DB(K)=DB(K)Qi C9(l)=g69 (2)=03 69(3)=0469(4)=695 K=l,N 〃=人N B(K)=・DA(K,〃)«! (II)+DB(K) 调用高斯消去法子程序求解加速度方程(3)求得a: a3,ou,(15及c(6(或/购,ac)再求出dEx及血y 迭代次数/r=o 求得心值 停止 调用系数矩阵A 调用高斯消去法子程序求解44o求出4厶 四、计算源程序 ttinclude ttdefinettdefinettdefinettdefine PI3.1415926 N4 E0.0001 T1000 voidSolutionangle(doubleL12],double);/*迭代法求角位移*/ voidSolutionspeed(double[N][N],double[N],double[12],double);/* 角速度求解*/ voidSolutionacceleration(double[N][N],double[N][N],double[N],double[12]);/*角加速度求解*/ voidGaussianE(double[N][N],double[N],double[N]);/*高斯消去*/voidFoundmatrixA(double[12],double[N][N]);//创建系数矩阵A voidFoundmatrixB(double[12],double,double[N]);//创建系数矩阵BvoidFoundmatrixDA(doub1e[12],double[N][N]);//创建矩阵DAvoidFoundmatrixDB(double[12],double,double[N]);//创建矩阵DB//定义全局变量 double11=180,13=960,14=160,h=900,hl=460,h2=110,asl=l.0; //主函数 voidmain() { inti,j; FILE*fp; doubleshuju[36][12]; doublepsvalue[12],a[N][N],da[N][N],b[N],db[N],angl; 〃建立文件,并制表头 if((fp=fopen("shuju","w"))==NULL) { printf("Cann'topenthisfile.\n"); exit(0); } fprintf(fp,〃\n LI=%lfMl); fprintf(fp,"\n s3ang3 ang4 s5 〃); fprintf(fp," s3‘as3 as4 s5' 〃); fprintf(fp,” s3‘'aas3 aas4 s5'' \n〃); //计算数据并写入文件 psvalue[0]=480;psvalue[l]=65*PI/180;psvalue[2]=10*PI/180;psvalue[3]=500; for(i=0;i<36;i++) { angl=i*PI/18; Solutionangle(psvalue,angl); FoundmatrixB(psvalue,angl,b); FoundmatrixA(psvalue,a); Solutionspeed(a,b,psvalue,angl); FoundmatrixDA(psvalue,da); FoundmatrixDB(psvalue,angl,db); Solutionacceleration(a,da,db,psvalue); for(j=l;j<3;j++) psvalue[j]=psvalue[j]*180/PI; for(j=0;j<12;j++) {shujuEil[j]二psvaluelj];} fprintf(fp,"\n"); for(j=0;j<12;j++) fprintf(fp,z,%12.3f"、shujuli][j]); for(j=l;j<3;j++) psvalueEj]=psvalue[j]*PI/180; for(j=0;j<4;j++) psvalue[j]+=psvalue[j+4]; } fclose(fp); 〃输出数据 for(i=0;i<36;i++) { angl=i*PI/18; printf(,z\n输出angl=%d时的求解\n",i*10); printf("angleangspeedangacceleration: \n"); for(j=0;j<4;j++) printf(”%If\t",shujuEi][j]); printf("\n"); for(j=4;j<8;j++) printf(”%If\t",shujuEi][j]); printf("\n"); for(j=8;j<12;j++) printf(”%If\t",shujuEi][j]); printf("\n"); } } /*矢量法求角位移*/ voidSolutionangle(doublevalue[12],doubleangl) { doubleae,s3,ang3,ang4,s5,t二0; s3=value[0_;ang3=value[l];ang4二value[2]: s5=value[3]; doublexb,yb,xd,yd,xc,yc; while(t { xb=h2+ll*cos(angl);yb=hl+ll*sin(angl); xd=14*cos(ang4);yd=14*sin(ang4); s3=sqrt((xd-xb)*(xd-xb)+(yd~yb)*(yd-yb)); xc二xd+13*(xb~xd)/s3; yc=yd+13*(yb-yd)/s3; ang3=atan2(yc-yd,xc-xd); s5=xc; ae=sqrt(hl*hl+h2*h2); if(fabs(yc~h) return; else ang4=atan((yd-yc+h)/(14*cos(ang4))); value[0]=s3;value[1J=ang3;value[2]=ang4;value[3]=s5; while(value[1]>2*PI) value[1]-=2*PI; while(value[1]<0) value[1]+=2*PI; while(value[2]>PI) value[2]-=2*PI; while(value[2]<~PI) value[2]+=2*PI; t+=l; if(t>=T) {printf(〃%f迭代失败.\n",angl*180/PI);exit(0);} } } /*角速度求解*/ voidSolutionspeed(doublea2[N][N],doubleb2[N],doublevalue[12],double angl) { doublep2[N]; GaussianE(a2,b2,p2); value[4]=p2[0]; value[5]=p2[l]; value[6]=p2[2]; value[7]=p2[3]; } /*角加速度求解*/ voidSolutionacceleration(doublea3[NJ[N],doubleda3[N][N],double db3[N],doublevalue[121) { inti,j; doublebk[N]={0}; doublep3[N]; for(i=0;i { for(j=0;j { bk[i]+=-da3[i][j]lvalue[4+j]; } bk[i]+=db3[i]*asl; } GaussianE(a3,bk,p3); value[8]=p3[0]; value[9]=p3[1]; value[10]=p3[2]; value[ll]=p3[3]; } /*高斯消去法解矩阵方程*/ voidGaussianE(doublea4[N][N],doubleb4[N],doublep4[N]){ inti,j,k; doublea4g[N][N],b4g[N],t; for(i=0;i for(j=0;j a4g[i][j]二a4[i][j]; for(i=0;i b4g[i]二b4[i]; //施主对角线上的值尽可能大 if(a4g[0][0]〈a4g[l][0]&&a4g[0][1]>a4g[l][1]) { for(j=0;j {t=a4g[01[j];a4g[0][j]二a4g[l][j];a4g[l][j]二t;} t=b4g[0];b4g[0]=b4g[l];b4g[l]=t; } if(a4g[2][2] { for(j=0;j {t=a4g[2][j];a4g[2][j]二a4g[3][j];a4g[3][j]二t;} t=b4g[2];b4g[2]=b4g[11;b4g[3]=t; } 〃初等行变换 for(j=0;j for(i=0;i { { for(k=0;k if(k! =j) {a4g[i][k]-二a4g[i][j]/a4g[j][j]*a4g[j][k];}b4g[i]-二b4g[j]*a4g[i][j]/a4g[j][j]; a4g[i][j]二0; } } for(i=0;i b4g[i]/=a4g[i][i]; p4[0]=b4g[0]; p4[l]=b4g[l]; p4[2]=b4g[2]; p4[3]=b4g[3]; } //创建系数矩阵A voidFoundmatrixA(doublevalued[12],doublea5[N][N]) { doubles3,ang3,ang4,s5; s3=value5[0];ang3=value5[1];ang4=value5[2]: s5=value5[3]: a5[0][0]=cos(ang3);a5[0][1]二-s3*sin(ang3);a5[0][2]=-14*sin(ang4); a5[1][0]二sin(ang3);a5[l][l]=s3*cos(ang3);a5[l][2]二14*cos(ang4); a5[2][1]二-13*sin(ang3);a5[2][2]=-14*sin(ang4);a5[2][3]二-1; a5[3][l]=13*cos(ang3);a5[3][2]=14*cos(ang4); a5[0][3]=a5[l][3]=a5[2][0]=a5[3][0]=a5[3][3]=0; } //创建系数矩阵B voidFoundmatrixB(doublevalue6[12],doubleangl,doubleb6[N]) { b6[0]=~ll*sin(angl)*asl; b6[1]=ll*cos(angl)*asl; b6[2]=b6[3]=0; } 〃创建矩阵DA voidFoundmatrixDA(doublevalue7[12],doubleda7[N][N]) { doubles3,ang3,ang4,s5,s3g,as3,as4,s5g; s3=value7[0];ang3=value7[1];ang4=value7[2]: s5=value7[3]; s3g=value7[4];as3=value7[5];as4=value7[6J: s5g=value7[7]; da7[0][0]=-as3*sin(ang3);da7[0][l]=-s3g*sin(ang3)-s3*cos(ang3)*as3; da7[0][2]=-14*cos(ang4)*as4; da7[1][0]=as3*cos(ang3);da7[1][l]=s3g*cos(ang3)-s3*sin(ang3)*as3; da7[l][2]=-14*sin(ang4)*as4; da7[2][1]二-13*cos(ang3)*as3;da7[2][2]二-14*cos(ang4)*as4; da7[3][1]=-I3*sin(ang3)*as3;da7[3][2]二-14*sin(ang4)*as4; da7[0][3]=da7[l][3]=da7[2][0]=da7[2][3]=da7[3][0]=da7[3][3]=0; } 〃创建矩阵DB voidFoundmatrixDB(doublevalueS[12],doubleangl,doubledb8[N]) { db8[0]=-ll*asl*cos(angl); db8[1]=~1l*asl*sin(angl); db8[2]=db8[3]=0; } 四、计算结果、数据 10—B: 1AB=180,1CD=960,IDE=160,h=900,hl=460,h2=135 程序运行结果: 输出aiigl=O时的求解 angle aiigspeed angacceleration 504.039076 74.795444 -9.495711 409.583017 198.751387 0.098628 -0.157357 ・95.522022 18.491125 0.270992 -0.379393 -267.416873 输出aiigl=10时的求解 angle aiigspeed angacceleration 538.732197 75.993711 -11.339083 389.224179 197.279713 0.138772 -0.205532 -135.726082 -33.646469 0.193548 -0.180789 -197.071140 输出aiigl=20时的求解 angle aiigspeed angacceleration 572.425650 77.533490 -13.505230 362.809939 187.595715 0.167668 -0.223341 -165.511310 -75.745240 0.141311 -0.030832 -147.198703 输出aiigl=3O时的求解 angle aiigspeed angacceleration 603.833542 79.322650 -15.730731 331.874448 171.336235 0.189198 -0.218510 -187.964199 -109.306697 0.107995 0.081095 -112.082167 输出aiigl=40时的求解 angle aiigspeed angacceleration 631.929215 81.302128 -17.818172 297.500218 149.836341 0.206101 -0.196427 -205.198868 -136.045702 0.087401 0.168929 -86.713350 输出aiigl=5O时的求解 angle aiigspeed angacceleration 655.895287 83.435335 -19.612773 260.468398 124.171060 0.220187 -0.160339 -218.604642 -157.205807 0.075112 0.242928 ・67.783866 输出aiigl=60时的求解 angle aiigspeed angacceleration 675.082991 85.700444 -20.984446 221.360521 95.237132 0.232630 -0.112076 -229.118402 -173.6142790.068177 0.309123 ■53.324566 输出aiigl=70时的求解 angle 688.993808 63.810569 -185.854285 aiigspeed 88.084993 0.244175 0.064519 angacceleration-21.817377-0.0527350.370066 180.619839 -237.413048 -42.223597 输出aiigl=80时的求解 angle 697.252336 30.576581 -194.400792 aiigspeed 90.582388 0.255245 0.062475 angacceleration-22.0051850.0167900.425589 138.586009 -244.016229 -33.864710 输出aiigl=90时的求解 angle 699.596674 -3.858944 -199.694701 aiigspeed 93.188858 0.265988 0.060504 angacceleration
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 机械 原理 作业 平面 连杆机构 运动 分析