机械原理课程设计编程说明书.docx

上传人:b****1 文档编号:572549 上传时间:2023-04-29 格式:DOCX 页数:18 大小:68.32KB
下载 相关 举报
机械原理课程设计编程说明书.docx_第1页
第1页 / 共18页
机械原理课程设计编程说明书.docx_第2页
第2页 / 共18页
机械原理课程设计编程说明书.docx_第3页
第3页 / 共18页
机械原理课程设计编程说明书.docx_第4页
第4页 / 共18页
机械原理课程设计编程说明书.docx_第5页
第5页 / 共18页
机械原理课程设计编程说明书.docx_第6页
第6页 / 共18页
机械原理课程设计编程说明书.docx_第7页
第7页 / 共18页
机械原理课程设计编程说明书.docx_第8页
第8页 / 共18页
机械原理课程设计编程说明书.docx_第9页
第9页 / 共18页
机械原理课程设计编程说明书.docx_第10页
第10页 / 共18页
机械原理课程设计编程说明书.docx_第11页
第11页 / 共18页
机械原理课程设计编程说明书.docx_第12页
第12页 / 共18页
机械原理课程设计编程说明书.docx_第13页
第13页 / 共18页
机械原理课程设计编程说明书.docx_第14页
第14页 / 共18页
机械原理课程设计编程说明书.docx_第15页
第15页 / 共18页
机械原理课程设计编程说明书.docx_第16页
第16页 / 共18页
机械原理课程设计编程说明书.docx_第17页
第17页 / 共18页
机械原理课程设计编程说明书.docx_第18页
第18页 / 共18页
亲,该文档总共18页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

机械原理课程设计编程说明书.docx

《机械原理课程设计编程说明书.docx》由会员分享,可在线阅读,更多相关《机械原理课程设计编程说明书.docx(18页珍藏版)》请在冰点文库上搜索。

机械原理课程设计编程说明书.docx

机械原理课程设计编程说明书

机械原理课程设计编写说明书

 

设计题目:

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

(1)

指导教师:

王春华何凡

设计者:

冯帅

学号:

01

班级:

机械07-2班

2009年7月10日

辽宁工程技术大学

目录

1设计任务及要求…………………………………………………

2数学模型的建立…………………………………………………

3程序框图…………………………………………………………

4程序清单及运行结果……………………………………………

5设计总结…………………………………………………………

6参考文献…………………………………………………………

 

一、设计任务及要求

已知:

曲柄每分钟转数n2,各构件尺寸及重心位置,且刨头导路X-X位于导杆端点B所作圆弧的平分线上,数据见下表:

 

设计内容

导杆机构的运动分析

单位

r/min

mm

符号

n2

lo2o4

lo2A

lo4B

lBC

lo4s4

参数

60

380

110

540

0.25lo4B

0.5lo4B

要求:

(1)作机构的运动简图

(2)用C语言编写主程序调用子程序,对机构进行运动分析,动态显示,并打印程序及运算结果。

(3)画出导轨4的角位移

,角速度

,角加速度

二、数学模型

如图四个向量组成封闭四边形,于是有

(1)

按复数式可以写成

由于θ3=90º,上式可化简为

(2)

根据

(2)式中实部、虚部分别相等得

(3)

(4)

(3)(4)联立解得

(5)

(6)

(2)对时间求一阶导数得

(7)

(8)

(2)对时间求二阶导数得

(9)

(10)

即滑块沿杆方向的加速度,通常曲柄可近似看作均角速转动,则

三、程序框图

输入a,d,

输入N

作循环,For(i=0;i=N;i++)

依次计算β,b,

ac

将计算的β,b,

ac结果分别存入数组或文件中

按格式输出所有计算结果

初始化图形系统

绘制直角坐标系

直角坐标系下分别绘出角位移、角速度、角加速度图象

四、程序清单及运算结果

(1)数据

#include"math.h"

#include"conio.h"

#include

#definePI3.1415926

#defineM0.017453/*M=PI/180*/

main()

{intP1,i=0,j=0,P_1[71];

floatP_3[71],P_31[71],P_311[71];

floatP3,P31,P311,w3;

floats3,s31,s311;

FILE*f1;

if((f1=fopen("fdata.txt","w"))==NULL)

{printf("fdata.txtfilecannotopen!

\n");

exit(0);

}

clrscr();

printf("jiaoduweiyisudujiaojiasudu\n");

for(P1=0;P1<360;P1+=5)

{i++;

if(i%12==0)

{getch();

printf("jiaoduweiyisudujiaojiasudu\n");

}

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

{P3=atan((380+110*sin(P1*M))/(110*cos(P1*M)));

P3/=M;

}

elseif(P1==90||P1==270)

{P3=90;}

elseif(P1>90&&P1<270)

{P3=PI+atan((380+110*sin(P1*M))/(110*cos(P1*M)));

P3/=M;

}

if(P3!

=90&&P3!

=270)

s3=110*cos(P1*M)/cos(P3*M);

elseif(P3==90)

s3=440;

else

s3=240;

s31=-110*6.3*sin((P1-P3)*M);

P31=110*6.3*cos((P1-P3)*M)/s3;

w3=P31;

P311=(6.3*6.3*110*sin((P3-P1)*M))-2*w3*s31;

P_1[j]=P1;

P_3[j]=P3;

P_31[j]=P31;

P_311[j]=P311;

printf("%d%6.4f%6.4f%6.4f\n",P_1[j],P_3[j],P_31[j],P_311[j]);

fprintf(f1,"%d%6.4f%6.4f%6.4f\n",P_1[j],P_3[j],P_31[j],P_311[j]);

}

j=j+1;

fclose(f1);

}

程序运行结果

Jiaoduweiyisudujiaojiasudu

073.85690.48713545.2410

574.29120.60563298.7236

1074.81520.71313056.4053

1575.42050.81052819.8806

2076.09930.89842590.1260

2576.84430.97752367.6550

3077.64871.04842152.6230

3578.50641.11161944.9271

4079.41141.16771744.2717

4580.35821.21721550.2241

5081.34171.26031362.2594

6083.40001.32931002.1545

6584.46581.3557828.7104

7085.55061.3771658.7670

7586.65031.3934491.6280

8087.76121.4051326.5978

8588.87931.4120162.9724

9090.00001.57500.0000

9591.12301.4120-162.8737

10092.24121.4051-326.4991

10593.35201.3934-491.5290

11094.45181.3771-658.6653

Jiaoduweiyisudujiaojiasudu

11595.53651.3558-828.6074

12096.60241.3294-1002.0498

12597.64521.2977-1179.6742

13098.66071.2604-1362.1470

13599.64431.2172-1550.1101

140100.59111.1678-1744.1528

145101.49611.1117-1944.8036

150102.35381.0484-2152.4961

155103.15830.9776-2367.5242

160103.90330.8985-2589.9907

165104.58210.8106-2819.7402

170105.18750.7132-3056.2615

180106.14590.4872-3545.0913

185106.48170.3571-3793.4160

190106.70950.2149-4040.1492

195106.81950.0600-4280.6279

200106.8013-0.1081-4508.6533

205106.6445-0.2892-4716.2061

210106.3388-0.4832-4893.1987

215105.8743-0.6891-5027.3159

220105.2423-0.9052-5104.0347

225104.4354-1.1291-5106.9404

230103.4489-1.3572-5018.4829

Jiaoduweiyisudujiaojiasudu

235102.2813-1.5845-4821.2866

240100.9355-1.8052-4500.0879

24599.4196-2.0119-4044.2471

25097.7478-2.1967-3450.5139

25595.9407-2.35162725.5784

26094.0251-2.4687-1887.6504

26592.0338-2.5418-966.4163

27090.0000-1.5750-0.3448

27587.9729-2.5419964.6959

28085.9814-2.46891886.0481

28584.0657-2.35182724.1545

29082.2584-2.19703449.3188

26592.0338-2.5418-966.4163

27090.0000-1.5750-0.3448

27587.9729-2.5419964.6959

28085.9814-2.46891886.0481

28584.0657-2.35182724.1545

29082.2584-2.19703449.3188

Jiaoduweiyisudujiaojiasudu

29580.5863-2.01224043.2969

30079.0701-1.80564499.3887

30577.7240-1.58504820.8208

31076.5561-1.35765018.2305

31575.5693-1.12965106.8682

32074.7621-0.90565104.1118

32574.1297-0.68955027.5117

33073.6649-0.48364893.4844

33573.3590-0.28964716.5571

34073.2019-0.10844509.0503

34573.18340.05974281.0542

35073.29320.21474040.5911

Jiaoduweiyisudujiaojiasudu

35573.52080.35693793.865

(2)导杆机构运动模拟程序

#include

#include

#include

voidpist(floatx0,floaty0,floatl,floath,floattheta);

voidpirot(floatx0,floaty0,floatl);

voidsgd();

main()

{intgd=DETECT,gmode,n;

initgraph(&gd,&gmode,"");

for(n=1;n<=60;n++)

{setbkcolor(0);

sgd();

}

getch();

}

/*摇块子程序*/

voidpist(floatx0,floaty0,floatl,floath,floattheta)

{floatx,y;

x=x0-cos(theta)*1/2+h/2*sin(theta);

y=y0+1/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);

}

/*支点子程序*/

voidpirot(floatx0,floaty0,floatl)

{floatpi=3.1415926;

floatx,y;

inti,n;

inth=4;

setcolor(3);

circle(x0,y0,3);

setcolor(150);

x=x0-1/2;

y=y0+sin(pi/3)*l;

moveto(x0,y0);

lineto(x,y);

linerel(20,0);

lineto(x0,y0);

n=1/4;

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

{moveto(x+i*h,y+h);

lineto(x+(i+1)*h,y);

}

}

/*连杆,摇块,导轨程序*/

voidsgd()

{inti;

intx04,y04,x02,y02;

intl04b=580;

intl02a=110;

floatxa,ya,xb,yb,l;

floatss,theta;

for(i=0;i<=59;i++)/*循环动画*/

{ss=i*0.1;

x04=380;x02=380;/*坐标计算*/

y04=320;y02=135;

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;

theta=-atan((ya-y04)/(xa-x04));

setcolor(14);

cleardevice();/*清屏*/

circle(xa+4,ya-8,3);

setcolor

(2);

line(x02,y02,xa+4,ya-8);

line(xb,yb,x04,y04);

setcolor(9);

pirot(x02,y02,16);/*画支点Xo4,Xo2*/

pirot(x04,y04,16);

pist(xa,ya,20,10,theta);

delay(3000);

}

}

程序运行结果图如下:

(3)导杆3的角位移的,角速度,角加速度曲线图的设计程序

#include

#include

#include

#definepi3.1415926

main()

{floatw1=2*pi*60/60,M1=110,M6=380;

floatP3,P1,s3,w3,s31,s311;

intgd=DETECT,gmode,i;

initgraph(&gd,&gmode,"");

clrscr();

for(P1=0;P1<=2*pi;P1+=1.0/1000*pi)

{if(P1>=0&&P1pi*1.5&&P1<=2*pi)

P3=atan((M6+M1*sin(P1))/(M1*cos(P1)));

elseif(P1==pi/2||P1==1.5*pi)

P3=pi/2;

else

P3=pi+atan((M6+M1*sin(P1))/(M1*cos(P1)));

if(P1!

=pi/2&&P1!

=1.5*pi)

s3=M1+M6;

elses3=M6-M1;

s31=-M1*w1*sin(P1-P3);

w3=M1*w1*cos(P1-P3)/s3;

s3=sqrt(M1*M1+M6*M6+2*M1*M6*sin(P1));

putpixel(100+P1*180/pi,60+s3*sin(P3)/2.5,5);/*位移*/

line(100,200,500,200);/*坐标系*/

line(495,205,500,200);

line(495,195,500,200);

line(100,10,100,350);

line(95,15,100,10);

line(105,15,100,10);

putpixel(100+P1*180/pi,188+M1*w1*cos(P1-P3)/s3*30,6);/*速度*/

putpixel(100+P1*180/pi,200+(w1*w1*

1*sin(P3-1)-2*w3*s31)/s3*6,4);/*加速度*/

}

outtextxy(400,120,"v:

sudu");

outtextxy(220,230,"s:

weiyi");

outtextxy(400,300,"a:

jiasudu");

getch();

}

程序运行结果图如下:

五、设计总结:

《机械原理课程设计》是主要的专业基础课之一,是必修课,是培养学生机械设计能力的重要环节。

在这一周的时间里,通过对牛头刨床导杆机构的设计及运动分析,进一步巩固和加深了所学的理论知识、培养了独立解决机械设计中的实际问题的能力,使我对于机构的综合以及运动学和动力学分析有一个较完整的概念;并且进一步提高了计算、绘图和计算机辅助设计的能力。

使我能够更好的运用所学的知识,具有初步的机构选型与组合和确定运动方案的能力。

我个人认为,课程设计这门课十分重要,他把所学的知识和实际相结合,对今后的工作起到了很重要的作用,让我们对设计这类工作有了初步的了解,并能更好的认清自我,找到所学知识中的漏洞,从而及时修补。

六、参考文献:

(1)谭浩强C程序设计(第二版)

(2)《机械原理》孙恒、陈作模,高等教育出版社,1995.8

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2