简单的机械设计作品机械设计大作业.docx
《简单的机械设计作品机械设计大作业.docx》由会员分享,可在线阅读,更多相关《简单的机械设计作品机械设计大作业.docx(7页珍藏版)》请在冰豆网上搜索。
简单的机械设计作品机械设计大作业
简单的机械设计作品【机械设计大作业】
《机械设计》齿轮设计程序
姓名吴磊班级:
08机械二班学号:
[1**********]34
#include
#include
floatmin(floatx,floaty);
floatmax(floatx,floaty);
voidmain()
{intB1,B2,b,z1,z2;
floatP1,u,T1,Kt,FAId,CHlim1,CHlim2,S,n1,j,l,ZE,N1,N2,KHN1,KHN2,
d1t,v,mt,h,p,KA,KV,KH1,KH2,KF1,KF2,YFa1,YFa2,YSa1,YSa2,CFE1,CFE2,
KFN1,KFN2,CH1,CH2,CH,CF1,CF2,a,d1,d2,m,w,K,bt,z1t,z2t,q;
printf("请选择齿轮的精度等级、和处理方法\n");
printf("请输入小齿轮的齿数z1和齿数比u:
\n");
scanf("%f%f",&z1t,&u);
printf("下面进行齿面强度计算\n");
printf("请输入输入功率P1,小齿轮的转速n1,j,齿轮工作时间l:
\n");
scanf("%f%f%f%f",&P1,&n1,&j,&l);
T1=(9550000*P1)/n1;
N1=60*n1*j*l;
N2=N1/u;
printf("T1=%10.4eN1=%10.4eN2=%10.4e\n",T1,N1,N2);
printf("请输入大小齿轮的接触疲劳强度极限CHlim1,CHlim2和系数S:
\n");scanf("%f%f%f",&CHlim1,&CHlim2,&S);
printf("请输入接触疲劳寿命系数KHN1,KHN2:
\n");
scanf("%f%f",&KHN1,&KHN2);
CH1=KHN1*CHlim1/S;
CH2=KHN2*CHlim2/S;
CH=min(CH1,CH2);
printf("CH1=%10.4f\nCH2=%10.4f\nCH=%10.4f\n",CH1,CH2,CH);
printf("\n");
printf("请输入载荷系数Kt,齿宽系数FAId,弹性影响系数ZE:
\n");
scanf("%f%f%f",&Kt,&FAId,&ZE);
q=pow(ZE/CH,2)*Kt*T1*(u+1)/(FAId*u);
d1t=2.32*pow(q,1.0/3.0);
v=3.1415926*d1t*n1/60000;
bt=FAId*d1t;
mt=d1t/z1t;
h=2.25*mt;
p=bt/h;
printf("d1t=%10.4fv=%10.4fmt=%10.4fp=%10.4f\n",d1t,v,mt,p);
printf("\n");
printf("根据v,P和精度等级查KV,KH1,KF1,KH2,KF2,KA:
\n");
scanf("%f%f%f%f%f%f",&KV,&KH1,&KF1,&KH2,&KF2,&KA);
K=KA*KV*KH1*KH2;
d1=d1t*pow(K/Kt,1.0/3.0);
m=d1/z1t;
printf("d1=%10.4fm=%10.4f\n",d1,m);
printf("\n");
printf("请输入齿根弯曲强度计算所需的弯曲疲劳强度极限CFE1和CFE2,KFN1,KFN2,S:
\n");scanf("%f%f%f%f%f",&CFE1,&CFE2,&KFN1,&KFN2,&S);
CF1=KFN1*CFE1/S;
CF2=KFN1*CFE2/S;
K=KA*KV*KF1*KF2;
printf("请输入齿形系数YFa1、YFa2和应力校正系数YSa1、YSa2\n");
scanf("%f%f%f%f",&YFa1,&YFa2,&YSa1,&YSa2);
w=max(YFa1*YSa1/CF1,YFa2*YSa2/CF2);
m=pow(2*Kt*T1*w/(FAId*z1t*z1t),1.0/3.0);
printf("m=%10.4f\n",m);
printf("请根据上述计算值选取m:
\n");
scanf("%f",&m);
z1t=d1/m;
z2t=u*z1t;
printf("z1t=%10.4fz2t=%10.4f\n",z1t,z2t);
printf("请根据z1t,z2t选择合适的z1,z2:
\n");
scanf("%d%d",&z1,&z2);
d1=z1*m;
d2=z2*m;
a=(d1+d2)/2;
bt=FAId*d1;
printf("bt=%f\n",bt);
printf("请选择合适的b值:
\n");
scanf("%d",&b);
B2=b;
B1=B2+5;
printf("z1=%dz2=%dd1=%5.2fd2=%5.2f\nm=%5.2f
B2=%d\n",z1,z2,d1,d2,m,a,B1,B2);
printf("\n");
}
floatmin(floatx,floaty)
{
if(x>=y)
returny;
else
returnx;a=%5.2fB1=%d
}
floatmax(floatx,floaty)
{
if(x>=y)
returnx;
else
returny;
}
程序中未说明的参数说明:
z1,z2——小齿轮、大齿轮的齿数;d1,d2——小齿轮、大齿轮的分度圆直径;m——模数;a——中心距;B1,B2——大小齿轮的宽度;
N1,N2——应力循环次数;K——载荷系数;
KFN1,KFN2——弯曲疲劳寿命系数;
j——齿轮每转一圈,同一齿面啮合的次数
内容仅供参考