V带传动电算哈工大机械设计Word文件下载.docx
- 文档编号:21979719
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:20
- 大小:103.38KB
V带传动电算哈工大机械设计Word文件下载.docx
《V带传动电算哈工大机械设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《V带传动电算哈工大机械设计Word文件下载.docx(20页珍藏版)》请在冰豆网上搜索。
kW
2
设计功率
Pd
3
工作情况系数
KA
4
小带轮转速
n1
r/min
5
工作机载荷特性
GZJ
6
原动机类型
YDJ
7
带型号
Z、A-E
TYPE
8
小带轮基准直径
dd1
mm
9
大带轮基准直径
dd2
10
最小带轮直径
ddmin
ddMIN
11
带速
V
m/s
12
最大带速
VMAX
13
中心距
a
14
基准长度
Ld
15
小带轮包角
ALF1
度
16
V带根数
Z
17
额定功率
P0
18
功率增量
DIFP0
19
弯曲影响系数
Kb
20
传动比系数
Ki
21
长度系数
KL
22
包角系数
KALF
23
初拉力
F0
N
24
压轴力
Q
25
圆周率
PAI
26
轮缘宽度
B
三、程序框图
四、V带设计程序
#include<
stdio。
h〉
#include〈math.h>
#include〈string.h>
#definePAI3。
intTYPE_TO_NUM(chartype);
floatSelect_Ki(floati);
floatSelect_KA(floatH,intGZJ,intYDJ);
floatSelect_KL(floatLd,intTYPE);
floatSelect_M(intTYPE);
floatSelect_dd1(intTYPE);
floatSelect_dd2(intdd1,floati);
floatCompute_P0(floatV,intTYPE,floatdd1);
floatCompute_DIFP0(intTYPE,floatKi,intn1);
floatCompute_VMAX(intTYPE);
floatCompute_KALF(floatALF1);
floatCompute_B(intTYPE,intz);
float*Compute_LAK(floatdd1,floatdd2,intTYPE);
main()
{
floatP,H,i,n1,KA,Ki,dd1,dd2,V,P0,DIFP0,Pd,VMAX,*LAK,m,Ld,KALF,a,KL,z,F0,ALF1,Q,B;
intYDJ,GZJ,TYPE,ANS;
chartype,ans;
START:
printf("
欢迎使用普通V带传动设计电算软件\n"
);
机械设计电算\n张文奇1120810610\n
V带传动设计程序\n”);
\n”);
请输入各项原始参数\n"
1。
传递功率P(单位KW):
"
\n”);
scanf("
%f”,&P);
IF5:
if(P〉10)
{
printf("
警告:
传递功率过大,请重新输入\n"
);
传递功率P(单位KW):
printf(”\n”);
scanf("
%f”,&P);
gotoIF5;
}
printf(”\n"
2。
小带轮转速n1(单位r/min):
printf(”\n”);
scanf(”%f"
,&
n1);
IF4:
if(n1>
10000)
{
printf(”警告:
输入转速达到高速带传动,请降低转速并重新输入\n"
printf("
2.小带轮转速n1(单位r/min):
”);
scanf(”%f"
&n1);
gotoIF4;
}
printf(”3.传动比i:
”);
%f"
,&i);
IF6:
if(i>
4)
printf(”警告:
输入传动比过高,请重新输入\n”);
printf(”3。
传动比i:
printf(”\n”);
scanf("
%f”,&i);
gotoIF6;
}
4.原动机类型(I
(1)或II
(2)):
\n说明:
I类—普通鼠笼式电机、同步电机、直流电机(并激),n〉600r/min内燃机\nII类-交流电动机、直流电动机、单缸发动机、n<
600r/min内燃机\n"
%d”,&
YDJ);
IF1:
if(YDJ!
=2&
&YDJ!
=1)
printf(”输入错误!
请重新输入!
\n"
printf(”4。
原动机类型(I
(1)或II
(2)):
\n说明:
I类—普通鼠笼式电机、同步电机、直流电机(并激),n>
600r/min内燃机\nII类-交流电动机、直流电动机、单缸发动机、n〈600r/min内燃机\n"
%d”,&YDJ);
gotoIF1;
printf(”5.载荷类型:
\n0:
载荷平稳\n1:
载荷变动较小\n2:
载荷变动较大\n3:
载荷变动很大\n"
scanf(”%d”,&
GZJ);
IF2:
if(GZJ!
=0&&
GZJ!
=1&&GZJ!
=2&&GZJ!
=3)
{
输入错误!
请重新输入!
printf(”5.载荷类型:
载荷变动较小\n2:
载荷变动较大\n3:
scanf(”%d”,&
GZJ);
gotoIF2;
}
printf(”6。
每天的工作时间:
\n0:
<
10h(一班制)\n1:
10h~16h(两班制)\n2:
>
16h(三班制)\n"
scanf(”%f"
&
H);
IF3:
if(H!
=0&
&
H!
=1&&
H!
=2)
printf(”6。
10h(一班制)\n1:
10h~16h(两班制)\n2:
%f"
gotoIF3;
DX:
printf(”7.请选择V带带型(Z、A、B、C、D、E):
scanf(”%c"
&type);
TYPE=TYPE_TO_NUM(type);
KA=Select_KA(H,GZJ,YDJ);
Pd=KA*P;
VMAX=Compute_VMAX(TYPE);
DD1:
dd1=Select_dd1(TYPE);
V=PAI*dd1*n1/60000;
while(V〉VMAX)
所选小轮基准直径过小!
请重新选择!
dd1=Select_dd1(TYPE);
V=PAI*dd1*n1/60000;
dd2=Select_dd2(dd1,i);
P0=Compute_P0(V,TYPE,dd1);
Ki=Select_Ki(i);
DIFP0=Compute_DIFP0(TYPE,Ki,n1);
LAK=Compute_LAK(dd1,dd2,TYPE);
Ld=LAK[0];
a=LAK[1];
KL=LAK[2];
ALF1=180—57。
3*(dd2—dd1)/a;
KALF=Compute_KALF(ALF1);
z=ceil(Pd/(KALF*KL*(P0+DIFP0)));
if(z>
=10)
gotoDX;
m=Select_M(TYPE);
F0=500*Pd*(2.5—KALF)/(z*V*KALF)+m*V*V;
Q=2*z*F0*sin(ALF1*PAI/360);
B=Compute_B(TYPE,z);
printf(”计算结果\n"
printf("
小轮直径:
%fmm\n\n大轮直径:
%fmm\n\n中心距:
%fmm\n\n带长:
%fmm\n\n带宽:
%fmm\n\n带的根数:
%f\n\n初拉力:
%fN\n\n轴压力:
%fN\n\n”,dd1,dd2,a,Ld,B,z,F0,Q);
printf(”\n”);
X:
printf(”请选择:
\nY:
计算下一组带轮\nS:
重新开始\nN:
结束\n"
%c"
ans);
ANS=TYPE_TO_NUM(ans);
if(ANS==6)
gotoDD1;
elseif(ANS==7)
gotoSTART;
elseif(ANS==8)
printf(”程序结束"
else
printf(”输入错误,请重新输入"
gotoX;
}
}
/*工作情况系数选择*/
floatSelect_KA(floatH,intGZJ,intYDJ)
{
/*表5.7工作情况系数KA*/
floatka1[4][3]={{1。
0,1.1,1。
2},{1.1,1.2,1.3},{1。
2,1。
3,1.4},{1.3,1.4,1。
5}};
floatka2[4][3]={{1。
1,1.2,1。
3},{1.2,1.3,1.4},{1。
4,1。
5,1.6},{1。
5,1。
6,1。
8}};
floatKA;
if(YDJ==1)
if(H==0)
KA=ka1[GZJ][0];
elseif(H==2)
KA=ka1[GZJ][2];
else
KA=ka1[GZJ][1];
if(YDJ==2)
{
KA=ka2[GZJ][0];
KA=ka2[GZJ][2];
KA=ka2[GZJ][1];
returnKA;
/*传动比系数*/
floatSelect_Ki(floati)
floatm;
/*表5。
6传动比系数Ki*/
floatKi[10]={1。
0000,1。
0136,1.0276,1.0419,1。
0567,1。
0719,1.0875,1.1036,1.1202,1.1373};
floatI[10]={1.00,1。
02,1。
05,1。
09,1。
13,1。
19,1。
25,1.35,1。
52,2.00};
intj=9;
for(j=9;
j〉=0;
j-—)
m=i-I[j];
if(m>
=0)
break;
returnKi[j];
}
/*确定选择带型*/
intTYPE_TO_NUM(chartype)
intx;
if(type<
91)
type+=32;
switch(type)
case'
z'
:
x=0;
a'
:
x=1;
break;
case’b’:
x=2;
c'
x=3;
d'
x=4;
case’e'
x=5;
case’y’:
x=6;
s'
x=7;
n’:
x=8;
returnx;
/*计算额定功率*/
floatCompute_P0(floatV,intTYPE,floatdd1)
floatP0;
floatK1[6]={0.246,0.449,0.794,1.48,3.15,4。
57};
floatK2[6]={7.44,19.02,50.6,143.2,507.3,951.5};
floatK3[6]={0。
441e—4,0.765e—4,1。
31e-4,2。
34e—4,4.77e—4,7.06e—4};
P0=(K1[TYPE]*pow(V,-0。
09)-K2[TYPE]/dd1-K3[TYPE]*V*V)*V;
returnP0;
/*表5.5弯曲影响系数Kb*/
floatCompute_DIFP0(intTYPE,floatKi,intn1)
floatKb,DIFP0;
floatKB[6]={0.2925e—3,0。
7725e-3,1.9875e—3,5.625e-3,19。
95e-3,37。
35e-3};
Kb=KB[TYPE];
DIFP0=Kb*n1*(1-1/Ki);
returnDIFP0;
/*小带轮基准直径*/
floatSelect_dd1(intTYPE)
inti;
floatdd1;
floatDD1[6][4]={{50.0,63.0,71.0,80。
0},{75。
0,90.0,100.0,125.0},{125。
0,140.0,160.0,180。
0},
{200。
0,250。
0,315。
0,400。
0},{355.0,400。
0,450。
0,500。
0},{500.0,560。
0,630。
0,710.0}};
所选型号小带轮系列直径有(mm):
for(i=0;
i<
4;
i++)
%f”,DD1[TYPE][i]);
\n8.请选择输入小带轮基准直径dd1:
%f”,&dd1);
IF12:
if(dd1!
=DD1[TYPE][0]&
dd1!
=DD1[TYPE][1]&&dd1!
=DD1[TYPE][2]&&dd1!
=DD1[TYPE][3])
未输入有效数据,请重新输入”);
\n8.请选择输入小带轮基准直径dd1:
scanf(”%f"
&dd1);
gotoIF12;
returndd1;
/*大带轮基准直径*/
floatSelect_dd2(intdd1,floati)
floatDD2[]={50,56,63,71,80,90,100,112,125,140,150,160,180,200,224,
250,280,315,355,400,425,450,500,560,600,630,710,800};
floatdd2,temp,t;
intj=0;
temp=i*dd1;
for(j=0;
j<
28;
j++)
t=temp—DD2[j];
if(t〈=0)
if((DD2[j]—temp)<
(temp-DD2[j-1]))
dd2=DD2[j];
dd2=DD2[j—1];
returndd2;
/*估计中心距*/
float*Compute_LAK(floatdd1,floatdd2,intTYPE)
floata1,a2,a0,Ld0,temp,KALF,Ld,a,KL;
floatLAK[3];
floatkl[23][6]={{400,0.87},{450,0。
89},{500,0。
91},
{560,0.94},{630,0.96,0.81},{710,0。
99,0.83},{800,1。
00,0.85,0。
82},{900,1。
03,0。
87,0。
84,0.83},{1000,1。
06,0。
89,0。
86,0。
86,0。
83},
{1120,1.08,0.91,0.88,0。
88,0.86},{1250,1。
10,0.93,0.90,0.91,0.89},{1400,1。
14,0。
96,0.92,0。
93,0.91},{1600,1.16,0.99,0。
95,0.95,0.93},
{1800,1.18,1。
01,0。
98,0。
97,0.96},{2000,0,1.03,1。
00,0。
99,0.98},{2240,0,1。
06,1.03,1.02,1。
00},{2500,0,1.09,1.05,1.04,1。
03},
{2800,0,1。
11,1.07,1。
07,1。
06},{3150,0,1.13,1。
09,1.09,1.08},{3550,0,1。
17,1.13,1。
12,1。
11},{4000,0,1。
19,1.15,1.15,1。
14},{4500,0,0,1.18,1。
18,1。
17},{5000,0,0,0,1.21,1。
20}};
a1=0。
7*(dd1+dd2);
a2=2*(dd1+dd2);
printf(”\n”);
printf(”9.请选择输入初估中心距a0(范围为%。
2fmm~%.2fmm):
”,a1,a2);
a0);
IF11:
if(a0〈a1||a0〉a2)
printf(”输入中心距超出范围,请重新输入\n"
9.请选择输入初估中心距a0(范围为%.2fmm~%。
2fmm):
a1,a2);
,&a0);
gotoIF11;
Ld0=2*a0+(dd1+dd2)*PAI/2+(dd2-dd1)*(dd2-dd1)/a0/4;
23;
temp=Ld0—kl[j][0];
if(temp〈=0)
if((Ld0-kl[j-1][0])〉(kl[j][0]-Ld0))
{Ld=kl[j][0];
KL=kl[j][TYPE+1];
{Ld=kl[j—1][0];
KL=kl[j-1][TYPE+1];
a=a0+(Ld-Ld0)/2;
LAK[0]=Ld;
LAK[1]=a;
LAK[2]=KL;
returnLAK;
/*最大带速*/
floatCompute_VMAX(intTYPE)
floatVMAX;
switch(TYPE)
case0:
case1:
case2:
case3:
VMAX=25;
break;
case4:
case5:
VMAX=30;
break;
returnVMAX;
floatSelect_M(intTYPE)
floatM[6]={0.06,0。
1,0。
17,0.3,0.6,0。
9};
m=M[TYPE];
returnm;
floatCompute_B(intTYPE,intz)
floatf[6]={8,10,12.5,17,23,29};
floate[6]={12,15,19,25.5,37,44.5};
floatB;
B=(z—1)*e[TYPE]+2*f[TYPE];
returnB;
floatCompute_KALF(floatALF1)
floatkalf[2][14]={220,210,200,190,180,170,160,150,140,130,120,110,100,90,1.20,1.15,1.10,1。
00,0.98,0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 传动 电算 哈工大 机械设计