机械原理课程设计牛头刨床导杆机构.docx
《机械原理课程设计牛头刨床导杆机构.docx》由会员分享,可在线阅读,更多相关《机械原理课程设计牛头刨床导杆机构.docx(16页珍藏版)》请在冰豆网上搜索。
机械原理课程设计牛头刨床导杆机构
牛头刨床导杆机构的运动阐发之樊仲川亿创作
时间:
二O二一年七月二十九日
1设计任务及要求……………………………
2数学模型的建立……………………………
3程序框图……………………………………
4程序清单及运行结果………………………
5设计总结……………………………………
6参考文献……………………………………
机械原理课程设计任务书
(一)
姓名郭娜专业机械工程及自动化班级机械08-3班学号0807100305
一、设计题目:
牛头刨床导杆机构的运动阐发
二、系统简图:
三、任务条件
已知:
曲柄每分钟转数n2,各构件尺寸及重心位置,且刨头导路x-x位于导杆端点B所作圆弧高的平分线上.
四、原始数据
导杆机构的运动阐发
80
450
120
850
306
425
285
840
五、要求:
1)作机构的运动简图(A4或A3图纸).
2)用C语言编写主程序调用子程序,对机构进行运动阐发,并打印出程序及计算结果.
3)画出导轨4的角位移
角速度
角加速度
的曲线.
4)编写设计计算说明书.
指导教师:
开始日期:
2010年7月10日完成日期:
2010年7月16日
1.设计任务及要求
设计
内容
导杆机构的运动分析
单位
r/min
mm
符号
n2
lo2o4
lo2A
lo4B
lBC
lo4s4
数据
80
450
120
850
306
425
要求
(1)作机构的运动简图.
(2)用C语言编写主程序调用子程序,对机构进行运动阐发,动态显示,并打印程序及运算结果.
(3)画出导轨的角位移Ψ,角速度Ψ’,角加速度Ψ”.
(4)编写设计计算说明书.
二、数学模型
如图四个向量组成封锁四边形,于是有
按单数式可以写成
a(cosα+isinα)-b(cosβ+isinβ)+d(cosθ3+isinθ3)=0
(1)
由于θ3=90º,上式可化简为
a(cosα+isinα)-b(cosβ+isinβ)+id=0
(2)
按照
(2)式中实部、虚部辨别相等得
acosα-bcosβ=0(3)
asinα-bsinβ+d=0(4)
(3)(4)联立解得
β=arctan
(5)
b=
(6)
将
(2)对时间求一阶导数得
ω2=β’=
ω1cos(α-β)(7)
υc=b’=-aω1sin(α-β)(8)
将
(2)对时间求二阶导数得
ε3=β”=
[aε1cos(α-β)-aω
sin(α-β)-2υcω2](9)
ac=b”=-aε1sin(α-β)-aω
cos(α-β)+bω
(10)
ac即滑块沿杆标的目的的加速度,通常曲柄可近似看作均角速转动,则ε3=0.
三、程序框图
程序设计时,一般
是未知量罢了
知且为常数,它们的关系为,
取相等时间间隔
则
其中N为整数
输入a,d,ω1,输入N
作循环,For(i=0;i=N;i++)
依次计算β,b,ω2,υc,ε2,ac
将计算的β,b,ω2,υc,ε2,ac结果辨别存入数组
或文件中
按格局输出所有计算结果
初始化图形系统
绘制直角坐标系
直角坐标系下辨别绘出角位移、角速度、角加速度图象
四、程序清单及运算结果
符号说明
Q1:
曲柄1的角位移Q3:
导杆3的摆动的角位移
S3:
C点沿杆3的位移Q31:
导杆3摆动的角速度w3
S31:
C点相对于导杆3的速度Q311:
导杆3摆动的角加速度a3
S311:
C点相对于导杆3的加速度L1:
曲柄1的长度
L6:
曲柄1与导杆3的回转中心的距离
(1)程序清单
①导杆3的计算程序
#include"math.h"
#include"conio.h"
#include
#definePI3.1415926
#defineM0.017453
main()
{intQ1,i=0,j=0,Q_1[71];
floatS_e[71],S_e1[71],Q_411[71],S_e11[71];
floatQ3,Q31,Q311,w3,a3,Q4,Q41;
floatQ411,s3,s31,s311,Se,w4,Ve,Se1,a4,Se11;
FILE*f1;
if((f1=fopen("fdata.txt","w"))==NULL)
{printf("fdata.txtfilecannotopen!
\n");
exit(0);
}
clrscr();
printf("jiaoduweiyisudujiaojiasudujiasudu\n");
for(Q1=0;Q1<360;Q1+=5)
{i++;
if(i%12==0)
{getch();
printf("jiaoduweiyisudujiaojiasudujiasudu\n");
}
if(Q1>=0&&Q1<90||Q1>270&&Q1<=360)
{Q3=atan((350+90*sin(Q1*M))/(90*cos(Q1*M)));
Q3/=M;
}
elseif(Q1==90||Q1==270)
{Q3=90;}
elseif(Q1>90&&Q1<270)
{Q3=PI+atan((350+90*sin(Q1*M))/(90*cos(Q1*M)));
Q3/=M;
}
if(Q3!
=90&&Q3!
=270)
s3=90*cos(Q1*M)/cos(Q3*M);
elseif(Q3==90)
s3=440;
else
s3=260;
s31=-90*6.8*sin((Q1-Q3)*M);
Q31=90*6.8*cos((Q1-Q3)*M)/s3;
w3=Q31;
Q311=(6.8*6.8*90*sin((Q3-Q1)*M))-2*w3*s31;
a3=Q311;
Q4=180-asin((530-580*sin(Q3*M))/174)/M;
Se=580*cos(Q3*M)+174*cos(Q4*M);
Q41=-w3*580*cos(Q3*M)/(174*cos(Q4*M));
w4=Q41;
Se1=-w3*580*sin((Q3-Q4)*M)/cos(Q4*M);
Q411=(Q31*Q31*580*sin(Q3*M)+Q41*Q41*174*sin(Q4*M)-Q311*580*cos(Q3*M))/(174*cos(Q4*M));
Se11=-(a3*580*sin((Q3-Q4)*M)+w3*w3*580*cos((Q3-Q4)*M-w4*w4*174))/cos(Q4*M);
Q_1[j]=Q1;
S_e[j]=Se;
S_e1[j]=Se1;
Q_411[j]=Q411;
S_e11[j]=Se11;
printf("%d%6.4f%6.4f%6.4f%6.4f\n",Q_1[j],S_e[j],S_e1[j],Q_411[j],S_e11[j]);
fprintf(f1,"%d%6.4f%6.4f%6.4f%6.4f\n",Q_1[j],S_e[j],S_e1[j],Q_411[j],S_e11[j]);
}
j=j+1;
fclose(f1);
}
1运算结果
jiaoduweiyisudujiaojiasudujiasudu
0-26.6410-225.61212980.1992-1888597.5000
5-29.9571-290.31192725.9580-1771214.1250
10-34.0705-349.91242465.3013-1653869.1250
15-38.9176-404.72002204.1282-1537997.5000
20-44.4389-455.04671947.2355-1422954.2500
25-50.5790-501.19671698.4697-1310516.2500
30-57.2860-543.45511460.8784-1201652.5000
35-64.5119-582.08171236.8556-1094043.1250
40-72.2113-617.30461028.2677-987876.7500
45-80.3420-649.3168836.5630-884575.3750
50-88.8637-678.2743662.8631-784632.6250
55-97.7381-704.2951508.0354-683126.8125
60-106.9280-727.4584372.7512-586413.1250
65-116.3972-747.8099257.5296-487261.8125
70-126.1095-765.3591162.7702-391189.9375
75-136.0290-780.085188.7760-292519.0312
80-146.1191-791.939735.7695-195399.5156
85-156.3424-800.85483.9034-99716.0781
90-166.6487-806.7209-6.7326-336.6043
95-177.0345-809.45263.890798381.1172
100-187.4224-808.914435.7439201360.3906
105-197.7818-804.984188.7376303868.6875
110-208.0682-797.5251162.7193406435.0625
115-218.2356-786.4084257.4662513216.6875
120-228.2362-771.4974372.6755620025.8750
125-238.0202-752.6618507.9477731897.5625
130-247.5368-729.7744662.7639842337.0000
135-256.7329-702.7089836.4528958104.5625
140-265.5542-671.34011028.14671074799.1250
145-273.9447-635.54081236.72491193481.0000
150-281.8466-595.17981460.73901314749.0000
155-289.2006-550.11581698.32281439326.0000
.0826*******
165-302.0172-445.24912203.97171691299.2500
170-307.3508-385.08512465.14281820088.8750
175-311.8776-319.49322725.80101949062.5000
180-315.5267-248.24372980.04812077653.1250
185-318.2238-171.09693220.74982204597.7500
190-319.8919-87.82053439.45042327887.5000
195-320.45081.78353626.36182445203.0000
200-319.818597.83453770.49542553216.0000
205-317.9123200.31153859.98852647628.7500
210-314.6508308.97103882.69172723199.0000
215-309.9581423.24373827.11742773568.0000
220-303.7680542.11773683.78472790752.7500
225-296.0309664.01813446.96482767703.0000
230-286.7217786.7083116.77712694137.2500
235-275.8483907.23652701.33252562871.7500
240-263.46101021.97732218.59182369156.0000
245-249.66051126.78561697.22962103209.7500
250-234.60201217.28931175.84841775365.7500
255-218.49651289.3079699.96671384495.5000
260-201.60461339.3322316.6331947077.5000
265-184.22541364.965967.3372484325.1562
270-166.6487806.7209-6.7326-157.5224
275-149.29131340.702167.0276-468633.1875
280-132.36731293.2650316.0499-919479.5000
285-116.18341225.9053699.1774-1320767.6250
290-100.97281142.21141174.9329-1666306.5000
295-86.92081046.00011696.2716-1955622.0000
300-74.1637940.97472217.6743-2177823.7500
305-62.7928830.49842700.5159-2345273.5000
310-52.8588717.47613116.0991-2456901.5000
315-44.3785604.31563446.4526-2518143.0000
320-37.3407492.93573683.4421-2537459.0000
325-31.7127384.80893826.9407-2520536.7500
330-27.4455281.01593882.6650-2475456.0000
335-24.4783182.30363860.0955-2407529.5000
340-22.742789.14173770.7129-2322242.2500
345-22.16561.77493626.6663-2224271.0000
350-22.6721-79.72963439.8213-2117387.2500
②导杆3的角位移的,角速度,角加速度曲线图的设计程序
#include
#include
#include
#definepi3.1415926
main()
{floatw1=2*pi*64/60,L1=90,L6=350;
floatQ3,Q1,s3,w3,s31,s311;
intgd=DETECT,gmode,i;
initgraph(&gd,&gmode,"");
clrscr();
for(Q1=0;Q1<=2*pi;Q1+=1.0/1000*pi)
{if(Q1>=0&&Q1pi*1.5&&Q1<=2*pi)
Q3=atan((L6+L1*sin(Q1))/(L1*cos(Q1)));
elseif(Q1==pi/2||Q1==1.5*pi)
Q3=pi/2;
else
Q3=pi+atan((L6+L1*sin(Q1))/(L1*cos(Q1)));
if(Q1!
=pi/2&&Q1!
=1.5*pi)
s3=L1+L6;
elses3=L6-L1;
s31=-L1*w1*sin(Q1-Q3);
w3=L1*w1*cos(Q1-Q3)/s3;
s3=sqrt(L1*L1+L6*L6+2*L1*L6*sin(Q1));
putpixel(100+Q1*180/pi,60+s3*sin(Q3)/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+Q1*180/pi,188+L1*w1*cos(Q1-Q3)/s3*30,6);/*v*/
putpixel(100+Q1*180/pi,200+(w1*w1*L1*sin(Q3-Q1)-2*w3*s31)/s3*6,4);/*a*/
}
outtextxy(400,120,"v:
sudu");
outtextxy(220,230,"s:
weiyi");
outtextxy(400,300,"a:
jiasudu");
getch();
}
②
③导杆机构运动模拟程序
#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<=70;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=800;
intl02a=95;
floatxa,ya,xb,yb,l;
floatss,theta;
for(i=0;i<=63;i++)/*循环动画*/
{ss=i*0.1;
x04=350;x02=350;/*坐标计算*/
y04=320;y02=145;
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(250);
}
}
③
五、设计总结
通过这次机械原理课程设计,自己受益匪浅.
这次课程是机械原理教学的一个重要组成部分.课程设计的目的在于进一步稳固和加深学生所学的理论知识,使其对于机械的组成结构,运动学以及动力学的阐发与设计建立较完整的概念以及知识系统,培养学生独立阐发和解决有关本课程实际问题以及进一步提高阐发设计、查阅技术资料的能力和独立自主能力.更加重要的是培养开发和创新机械的能力.
为了培养学生开发和创新机械产品的能力,对机械原理课程设计提出的要求是:
“结合一个简单的机械系统,综合运用所学理论和办法,使学生能受到拟定机械运动计划的初步训练,并能对计划中某些机构进行阐发和设计”.我们以基本要求精神为指导,以适应当的开发、设计新产品为核心的科技进步需要而做的努力.其内容为:
结合专业特点,选择工程实际的问题作为课程设计题目,对所选题目进行计划论证,定出两个较好的计划进行需要的阐发、计算及绘图.
本课程设计以解析法为主,运用计算机帮助设计对选定的机构进行阐发与设计.为了提高自己的自主创新能力有着很大的帮忙.
六、参考文献
[1]谭浩强编著.C程序设计(第二版).北京:
清华大学出版社,1999
[2]孙桓陈作模葛文杰著.机械原理(第七版)北京:
初等教育出版社,2005
[3]罗笑南,王若梅等著.计算机图形学广州:
中山大学,1996.10
[4]裘建新编著机械原理课程设计指导书北京:
初等教育出版社2005.