牛头刨床导杆机构的设计及运动分析

更新时间:2024-06-21 05:26:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

机械原理课程设计

编程说明书

设计题目:牛头刨床导杆机构的设

计及运动分析

指导教师:**** *** 设 计 者: ** 学 号: 0 4 班 级:机电07-1班

2009年7月09日 ************大学

目 录

一、 二、 三、 四、 五、 六、 七、

计任务及要求…………………………………………………… 数学模型的建立……………………………………………… 程序框…………………………………………………… 程序中符号说明………………………………………… 程序清单及运行结果……………………………………… 课程设计总结……………………………………………… 参考文献 ………………………………………………

牛头刨床导杆机构运动分析

一、 设计任务及要求:

已知:牛头刨床的导杆机构的曲柄每分钟转速n2,各构件尺寸及重

心位置,且报头导路x-x位于导杆端点B所作圆弧的平分线上。数据如下表所示:

设计内容 单位 符号 数据 r/min n1 70 LO2O4 400 LO2A 95 导杆机构运动分析 mm LO4B 800 LBE 256 LO4S4 400 要求:

1、用c语言编写计算程序,对机构进行动态分析和动态显示。 2、上机调试程序并打印结果。

3、画出导杆4的角位移,角速度,角加速度的曲线。 4、编写设计计算说明书。

二、 数学模型的建立:

该牛头刨床导杆机构为六杆机构,拆分成两个四杆机构:1)摆动导杆机构;2) 曲柄滑块机构。求导杆4的角位移,角速度,角加速度,分析摆动导杆机构。如图所示建立坐标。三个向量构成封闭图形,所以可得:

YAZ3daZ1αCβbZ2BX

按复数形式可以写成:

a(cos??isin?)?b(cos??isin?)?d(cos?3?isin?3)?0?3?90?,上式可以简化为

a(cos??isin?)?b(cos??isin?)?d(cos?3?isin?3)?(02)根据(2)式中实部、虚部分别acos??bcos??(03)asin??bsin??d?(04)(3),(4)联立解得相等得??arctgb?2d?asin?acos?2(5)a?d?2adsin?(6)得将(2)对时间求一阶导数,。.?4????。ab?2cos(???)(7)vA?b?a?2sin(???)(8)将(2)式对时间求二阶导数。。

,求解得2?4???1b[a?2cos(???)?a?2sin(???)?2vA?4](9)

?4即导杆的角速度,?4即为导杆的角加速度,

因为曲柄可看作匀角速转动,则?2=0。

三、 刨头刨床导杆机构运动分析设计程序框图:

开始

读入lo2o4,lo2A,lo4B,lBE,l61, ω2及一个运动循环曲柄转过角度?1 ↓ ?1=5 ↓ 求导杆3的角位移?3,角速度ω3, 角加速度α3; 求A点的位移S3,速度V3 ↓ 求杆4 的角位移?4,角速度ω4; 求刨头E点位移SE速度Ve及加速度αE ↓ ?1≤360 ↓ 输出E点位移SE 速度VE加速度αE

?1=? 1+5 画出位移速度加速度随?1 变化曲线图 ↓

结束

四、程序中符号说明:

Q2:曲柄2转过的角度(与x正半轴的夹角);w2:曲柄2的角速度Q4:杆4转过的角度(与x正半轴的夹角) w3:摆块3的转动角速度 a3:摆块的加速度Q5:杆5转过的角度(与x正半轴的夹角) sA:A点的位移;sE:E点的位移。w4:杆4转动的角速度a4:杆4的角加速度。

五、程序清单及运行结果:

1、数学建模程序 #include #include #include #include #define PI 3.1415926 #define M PI/180 #define C 2*PI*70/60 #define l1 95 #define l2 400 #define l4 800

#define l5 (0.32*l4)

#define Ys6 22.88996918 #define l7 l4-Ys6 void dtmn();

void pist(float x0,float y0,float l,float h, float theta); void slide(float x0,float y0,float x1,float h); void pirot(float x0,float y0,float l); void sgd();

void cur();

/****************************主函数****************************/ main()

{int Q2,i=0,j=0,Q_2[72];

float Q4,Q41,Q411,w3,a3,Q5,Q51;

float Q511,sA,sA1,sA11,Se,w4,Ve,Se1,a4,Se11; float S_e[72],S_e1[72],S_e11[72],Q_511[72]; FILE *fl;

if((fl=fopen(\ {printf(\ exit(0); }

/*int gd=DETECT,gm;

initgraph(&gd,&gm,\ cleardevice();*/

clrscr();

printf(\ 角位移 位移 速度 角加速度 加速度 \\n\ for(Q2=0;Q2<=360;Q2+=5)

{i++;

if(i==0){getch();

printf(\ 角位移 位移 速度 角加速度 加速度\\n\ }

if(Q2>=0&&Q2<90||Q2>270&&Q2<=360)

{Q4=atan((l2+l1*sin(Q2*M))/(l1*cos(Q2*M)));Q4/=M;} else if(Q2==90||Q2==270) {Q4=90;}

else if(Q2>90&&Q2<180)

{Q4=PI-atan((l2+l1*sin(Q2*M))/(-l1*cos(Q2*M)));Q4/=M;} else if(Q2>=180&&Q2<270)

{Q4=PI-atan((l2+l1*sin(Q2*M))/(-l1*cos(Q2*M)));Q4/=M;} if(Q4==90) sA=l2+l1; else if(Q4==270) sA=l2-l1; else

sA=l1*cos(Q2*M)/cos(Q4*M); sA1=-l1*C*sin((Q2-Q4)*M); Q41=-l1*C*cos((Q2-Q4)*M)/sA; w3=Q41;

Q411=(C*C*l1*sin((Q4-Q2)*M)-w3*sA1)/sA; a3=Q411;

if(((l7-l4*sin(Q4*M))/l5)>=0&&((l7-l4*sin(Q4*M))/l5)<=1) Q5=180-asin(l7-(l4*sin(Q4*M))/l5)/M;

else if(((l7-l4*sin(Q4*M))/l5)>=-1&&((l7-l4*sin(Q4*M))/l5)<=0) Q5=180+asin((l7-l4*sin(Q4*M))/l5)/M; Se=l4*cos(Q4*M)+l5*cos(Q5*M); Q51=-w3*l4*cos(Q4*M)/(l5*cos(Q5*M)); w4=Q51;

Se1=-w3*l4*sin((Q4-Q5)*M)/cos(Q5*M);

Q511=(Q41*Q41*l4*sin(Q4*M)+Q51*Q51*l5*sin(Q5*M)-Q411*l4*cos(Q4*M))/(l5*cos(Q5*M));

Se11=-(a3*l4*sin((Q4-Q5)*M)+w3*w3*l4*cos((Q4-Q5)*M)-w4*w4*l5)/cos(Q5*M);

S_e[j]=Se; S_e1[j]=Se1; Q_511[j]=Q511; S_e11[j]=Se11; Q_2[j]=Q2;

printf(\ %-7.3f %-7.3f %-7.3f %-7.3f\\n\e[j],

S_e1[j],Q_511[j],S_e11[j]);

fprintf(fl,\ %-7.3f %-7.3f %-7.3f %-7.3f\\n\e[j],

S_e1[j],Q_511[j],S_e11[j]); } j++; fclose(fl); cur();

dtmn(); sgd();

}

/**********************sudu,jiasudu,weiyi,quxiantu hanshu*************************/ void cur()

{/*float w1=2*PI,L1=110,L4=135,L61=490,L3=540,L6=380; */ float Q4,Q2,sA,w3,sA1,sA11,Se,Se1,Se11,a3,a4,Q411,Q5,Q51,w4; int gd=DETECT, gmode,i;

initgraph(&gd,&gmode,\ clrscr();

for(Q2=0;Q2<=2*PI;Q2+=1.0*PI/1000)

{if(Q2>=0&&Q2PI*1.5&&Q2<=2*PI) Q4=atan((l2+l1*sin(Q2))/(l1*cos(Q2))); else if(Q2==PI/2.0||Q2==1.5*PI) Q4=PI/2;

else if(Q2>PI/2&&Q2

Q4=PI-atan((l2+l1*sin(Q2))/(-l1*cos(Q2))); else

Q4=PI-atan((l2+l1*sin(Q2))/(-l1*cos(Q2))); if(Q2!=PI/2&&Q2!=1.5*PI) sA=l1*cos(Q2)/cos(Q4); else if(Q2==PI/2) sA=l1+l2; else

sA=l2-l1;

/* sA1=-l1*w1*sin(Q2-Q4); */

w3=l1*C*cos(Q2-Q4)/sA;

Q411=(C*C*l1*sin(Q4-Q2)-2*w3*sA)/sA; a3=Q411;

if(((l7-l4*sin(Q4))/l5)>=0&&((l7-l4*sin(Q4))/l5)<=1) Q5=PI-asin((l7-l4*sin(Q4))/l5);

else if(((l7-l4*sin(Q4))/l5)>=-1&&((l7-l4*sin(Q4))/l5)<0) Q5=PI+asin((l7-l4*sin(Q4))/l5); Se=l4*cos(Q4)+l5*cos(Q5); Q51=-w3*l4*cos(Q4)/(l5*cos(Q5)); w4=Q51;

Se1=-w3*l4*sin(Q4-Q5)/cos(Q5);

/*Q511=(Q41*Q41*l4*sin(Q4)+Q51*Q51*l5*sin(Q5)-Q411*Q411*l4*cos(Q4))/(l5*cos(Q5));*/

Se11=-(a3*l4*sin(Q4-Q5)+w3*w3*l4*cos(Q4-Q5)-w4*w4*l5)/cos(Q5); line(100,200,500,200); setcolor(5);

line(492,201,500,200); line(492,199,500,200); line(100,10,100,350); setcolor(5);

line(99,18,100,10); line(101,18,100,10);

putpixel(100+Q2*180/PI,200-Se/5,1); /*绘制位移曲线*/ putpixel(100+Q2*180/PI,200-Se1/100,2); /*绘制速度曲线*/

putpixel(100+Q2*180/PI,200-Se11/100,4);} /*绘制加速度曲线*/ setcolor(10);

settextjustify(CENTER_TEXT,0);

outtextxy(300,300,\ outtextxy(300,330,\ outtextxy(300,360,\

/* outtextxy(300,50,\JIASUDU WEIYI GUAN XI QU XIAN TU\

outtextxy(300,50,\ getch(); closegraph();}

数据

角位移 位移 速度 角加速度 加速度 0 -71.142 304.647 8.723 -9953.699 5 -75.351 401.248 7.939 -9740.870 10 -80.667 490.578 7.002 -9468.886 15 -87.004 572.911 5.950 -9140.816 20 -94.281 648.534 4.820 -8759.899 25 -102.420 717.730 3.645 -8329.566 30 -111.345 780.766 2.453 -7853.440 35 -120.986 837.896 1.272 -7335.324

40 -131.273 889.345 0.125 -6779.141 45 -142.139 935.321 -0.968 -6188.921

50 -153.521 976.003 -1.990 -5568.732 55 -165.357 1011.550 -20924 -4922.648 60 -177.586 1042.098 -3.759 -4254.695 65 -190.149 1067.764 -4.482 -3568.840 70 -202.990 1088.634 -5.086 -2868.893 75 -216.050 80 -229.276 85 -242.611 90 -256.000 95 -269.389 100 -282.724 105 -295.950 110 -309.010 115 -321.851 120 -334.414 125 -346.643 130 -358.479 135 -369.861 140 -380.727 145 -391.014 150 -400.655 155 -409.580 160 -417.719 165 -424.996 170 -431.333 175 -436.649 180 -440.858 185 -443.872 190 -445.602 195 -445.954 200 -444.835 205 -442.156 210 -437.831 215 -431.781 220 -423.944 1104.795 1116.298 1123.185 1125.473 1123.182 1116.297 1104.794 1088.633 1067.761 1042.097 1011.550 976.002 935.319 889.344 837.894 780.766 717.729 648.534 572.911 490.578 401.248 304.647 200.530 88.711 -30.899 -158.241 -293.048 -434.768 -582.479 -734.799 -5.563 -5.907 -6.115 -6.185 -6.115 -5.907 -5.563 -5.086 -4.482 -3.759 -2.924 -1.990 -0.968 0.125 1.272 2.453 3.645 4.820 5.950 7.002 7.939 8.723 9.313 9.667 9.741 9.495 8.893 7.909 6.526 4.748 -2158.586 -1441.448 -720.852 0.004 718.097 1430.578 2134.752

2828.065

3508.075 4172.396 4818.689 5444.576 6047.605 6625.189 7174.511 7692.463 8175.566 8619.898 9021.038 9374.011 9673.283

9912.797 10086.062 10186.335

10206.849 10141.209 9983.816 9730.355 9378.272 8927.134

225 -414.275 -889.798 2.601 8378.840 230 -402.757 -1044.928 0.136 7737.403

235 -389.408 -1196.994 -2.562 7008.511 240 -374.285 -1342.188 -5.381 6198.696 245 -357.495 -1476.201 -8.178 5314.545 250 -339.200 -1594.439 -10.791 4362.119 255 -319.613 260 -299.004 265 -277.684 270 -256.000 275 -234.316 280 -212.996 285 -192.387 290 -172.800 240 -374.285 245 -357.495 250 -339.200 255 -319.613 260 -299.004 265 -277.684 270 -256.000 275 -234.316 280 -212.996 285 -192.387 290 -172.800 295 -154.505 300 -137.715 305 -122.592 310 -109.243 315 -97.725 320 -88.056 325 -80.219 330 -74.169 335 -69.844 340 -67.165 345 -66.046 -1692.325 -1765.690 -1811.176 -1125.473 -1811.174 -1765.694 -1692.326 -1594.441 -1342.188 -1476.201 -1594.439 -1692.325 -1765.690 -1811.176 -1125.473 -1811.174 -1765.694 -1692.326 -1594.441 -1476.203 -1342.190 -1196.996 -1044.929 -889.799 -734.800 -582.480 -434.768 -293.048 -158.241 -30.899 -13.053 3347.051 -14.803 2275.500 -15.912 1155.762 -6.185 0.005 -15.912 -1174.578 -14.803 -2346.066 -13.053 -3489.404

-10.791 -4579.275

-5.381 6198.696 -8.178 5314.545 -10.791 4362.119 -13.053 3347.051 -14.803 2275.500 -15.912 1155.762 -6.185 0.005 -15.912 -1174.578 -14.803 -2346.066 -13.053 -3489.404 -10.791 -4579.275 -8.178 -5593.049 -5.381 -6513.247 -2.562 -7328.699 0.136 -8034.470 2.601 -8630.820 4.748 -9121.607 6.526 -9512.740 7.909 -9810.804 8.893 -10022.228 9.495 -10152.754 9.741 -10207.297

350 -66.398 88.710 9.667 -10189.990

2、动画模拟程序

/***************************运动模拟图函数*******************/

void dtmn()

{

int gd=DETECT,gmode,n;

initgraph(&gd,&gmode,\ cleardevice(); do

{setbkcolor(0); sgd();

}while(!kbhit()); getch(); }

/****************************导轨函数 *********************/ void slide(float x0,float y0,float x1,float h) {float xr; int i,n;

xr=x0+x1;

line(x0,y0,xr,y0); n=x1/h;

for(i=0;i<=n;i++)

{moveto(x0+i*h,y0+h); lineto(x0+(i+1)*h,y0); } }

/************************摇块函数*************************/ void pist(float x0,float y0,float l,float h,float theta) {float x,y;

x=x0-cos(theta)*l/2+h/2*sin(theta); y=y0+l/2*sin(theta)+h/2*cos(theta); moveto(x,y);

linerel(l*cos(theta),-l*sin(theta)); /***绘制轮廓线******/ linerel(-h*sin(theta),-h*cos(theta)); linerel(-l*cos(theta),l*sin(theta)); lineto(x,y); }

/*************************支点函数*********************/ void pirot(float x0,float y0,float l) {/*float PI=3.1415926;*/ float x,y; int i,n; int h=4; setcolor(4); circle(x0,y0,3); setcolor(9); x=x0-l/2; y=y0+sin(PI/3)*l; moveto(x0,y0); lineto(x,y); linerel(18,0); lineto(x0,y0); n=l/4;

for(i=0;i<=n;i++) {moveto(x+i*h,y+h); lineto(x+(i+1)*h,y); } }

/************************连杆,摇块,导轨函数 ***************/ void sgd()

{int i;

int x04,y04,x02,y02; int l02a=l1/2; int l04b=l4/2;

float xa,ya,xb,yb,xc,yc,l; float lbc=l5/2; float ss,theta;

for(i=0;i<64;i++) /*****动态模拟******/ {ss=i*0.1; /*坐标计算*/

x04=400; x02=400; y04=400; y02=225; xa=x02+l02a*cos(ss); ya=y02+l02a*sin(ss);

l=sqrt((xa-x04)*(xa-x04)+(ya-y04)*(ya-y04)); xb=x04+(xa-x04)*l04b/l; yb=y04+(ya-y04)*l04b/l; yc=135;

xc=xb-sqrt(lbc*lbc-(yb-yc)*(yb-yc)); theta=-atan((ya-y04)/(xa-x04)); setcolor(4); cleardevice(); circle(xb,yb,3); circle(xa,ya,3); circle(xc,yc,3); setcolor(8);

line(50,135,500,135);

rectangle(xc+7,yc+6,xc-7,yc-6); /*绘制滑块C*/ line(x02,y02,xa,ya); line(xc,yc,xb,yb); line(xb,yb,x04,y04);

setcolor(7);

pirot(x02,y02,16); /*绘制支点X04,X02*/ pirot(x04,y04,16);

pist(xa,ya,20,10,theta); /*绘制滑块A*/ slide(60,135,100,10); slide(500,135,570,10); setcolor(8);

settextstyle(3,0,2);

outtextxy(200,30,\ outtextxy(200,440,\ KEY TO RETURN\ outtextxy(200,420,\ delay(2000);}

}

曲线图象及导杆图形

六、课程设计总结:

通过一周的课程设计,使我更加了解了机械原理课程设计的各方面内容;进一步掌握机构分析与综合的基本知识,熟悉机构设计的一般方法。通过对分析法进行机构设计的练习,训练了自己从工程问题中提炼数学模型的能力,以及利用计算机程序特别是C语言解决数学问题的方法。同时在课程设计过程中我也遇到许多问题,特别是数学建模和程序设计中,发现了自己能力的有限,幸好在老师的指导、同学的帮助下,我能够顺利的完成课程设计。这不仅仅是一个课程设计,同时也检验了我对课本知识的了解,对实践机械运动的认识,这是一个对自己全方面的考察。在今后我一定会努力学习各方面的知识,认真对待生产实践机械工程问题,培养创新精神,提高解决问题的能力。

七:参考文献

1、《机械原理》孙桓、陈作模,高等教育出版社,1995.8 2、《机械原理课程设计指导书》 徐萃萍 冷兴聚 3、《机械原理》电算课程设计指导书》 冷兴聚 4、《C语言设计》 谭浩强 清华大学出版社 1995.3 5、《C语言典型零件CAD》 王占勇 东北大学出版社 2000.9

6、《计算机图形学》 罗笑南 王若梅 中山大学出版社

1996.10

本文来源:https://www.bwwdw.com/article/kxj3.html

Top