资源描述
哈工大机械设计大作业V带传动电算说明书
20
2020年4月19日
文档仅供参考
设计说明书——
普通V带传动CAD
系别:机械设计制造及其自动化
姓名:蒋延达
学号:H
班级:1008101
时间: .11.1
指导教师:宋宝玉
一:普通V带传动设计内容和任务
1、普通V带传动设计内容
给定原始数据:传递的功率P,小带轮转速n,传动比i及工作条件。
设计内容:带型号,基准长度Ld,根数Z,传动中心距a,带轮基准直径dd1、dd2,带轮轮缘宽度B,初拉力F0,和压轴力Q。
2、CAD任务:
(1)编制V带传动设计程序框图。
(2)编制V带传动设计原程序。
(3)按习题或作业中数据运行程序,要求对每一组数据各按三种V带型号计算,对每一种带型号选三种小带轮直径进行计算并输出所有结果。
二、变量标识符
序号
名称
代号
标识符
单位
1
名义功率
P
p
kw
2
设计功率
Pd
pd
kw
3
工作情况系数
KA
KA
4
小带轮转速
n1
n
r/min
5
工作机载荷特性
载荷情况.list
6
原动机类型
电机类型.list
7
工作时间
工作时间.list
8
带型号
带型.list
9
小带轮基准直径
dd1
tt
mm
10
大带论基准直径
dd2
dd2
mm
11
带速
v
v
m/s
12
最大带速
vmax
vmax
m/s
13
预估中心距
a0
a0
mm
14
基准长度
Ld
ld
mm
15
实际中心距
a
a
mm
16
小带轮包角
α1
bao
度
17
V带根数
Z
z
18
基本额定功率
P0
po
kw
19
功率增量
ΔP0
ddp
kw
20
传动比系数
Ki
ki
21
长度系数
KL
kl
22
包角系数
KALF
kao
23
弯曲影响系数
Kb
kb
24
初拉力
F0
fchu
N
25
压轴力
Q
fq
N
26
轮缘宽度
B
bmm
mm
三、程序框图
开始
输入原始数据
P,n,i并选择电机
计算设计功率
由带型号确定最大带速,小带轮直径系,带的相关参数m,f,e 相关系数Kb
确定带型号
选择小带轮直径
验算带速
v<vmax?
计算大带轮直径
给定范围,预估中心距
A
A
计算Ld并取标准值,计算实际中心距并圆整
计算小带轮包角
计算选择相关系数:Kα, Ki 。
插值计算P0 ,计算ΔP0
计算带根数Z
Z<10?
计算相关参数
结束
下一型号带
下一带轮直径
B
B
四、 VC++源程序
//请勿将本程序用于其它用途
//在未经设计者允许请勿转载、复制等侵权行为
//这个程序凝聚了设计者的巨大心血请尊重劳动者的成果
//设计者 蒋延达 H
//时间 .11.1 22:50 哈尔滨工业大学A02公寓
#include<stdio.h>
#include<math.h>
#include<stdlib.h>
#include<ctype.h>
#include "process.h"
#define Pi 3.1415926
double P,Pd,KA,n1,aMIN,aMAX,V,a,Ld0,ALF1,z,P0,DIFP0,Kb,Ki,KL,KALF,F0,FQ,j,c,m0;
char TYPE,q;
int Ld,dd1,dd20,dd2,i,reply;
char A,B,C,D,E,Y,Z;
main()
{
printf("设计者 蒋延达 \n");
printf("以下用到的表均取自《机械设计》第五版,宋宝玉,王黎钦,著,高等教育出版社 ;\n");
printf("V带的型号选用Z,A,B,C,D,E六种可选带型;\n");
printf("请输入额定功率P(kW):");
scanf("%lf",&P);//名义功率
printf("请输入转速n1(r/min):");
scanf("%lf",&n1);//小带轮转速
printf("请查表5.7并输入工况系数KA:");
scanf("%lf",&KA);
printf("环境恶劣否?n/y\n");
scanf(" %c",&q);
switch(q)
{
case 'n':Pd=P*KA;printf("名义功率Pd为:%.3fkW",Pd);break;
case 'y':Pd=P*1.1*KA;printf("名义功率Pd为:%.3fkW",Pd);break;
}
for(j=1;j<=5;j++)
{
printf("\n请查图5.17,根据功率和转速选择带的类型:");
scanf(" %c",&TYPE);
//带轮型号和弯曲影响系数
//*************************************************************
switch(TYPE)
{
case 'Y': printf("带轮最小基准直径是20mm\n");
printf("Y型带轮基准直径分别是20、28、35.5、40mm\n");m0=0.02;
break;
case 'Z': printf("带轮最小基准直径是50mm\n");Kb=0.0002925;m0=0.06;
printf("Z型带轮基准直径分别是50、63、71、80mm");
break;
case 'A': printf("带轮最小基准直径是75mm\n");Kb=0.0007725;m0=0.1;
printf("A型带轮基准直径分别是75、90、100、125mm\n");
break;
case 'B': printf("带轮最小基准直径是125mm\n");Kb=0.0019875;m0=0.17;
printf("B型带轮基准直径分别是125、140、160、180mm\n");
break;
case 'C': printf("带轮最小基准直径是200mm\n");Kb=0.005625;m0=0.3;
printf("C型带轮基准直径分别是200、250、315、400mm\n");
break;
case 'D': printf("带轮最小基准直径是355mm\n");Kb=0.01995;m0=0.6;
printf("D型带轮基准直径分别是355、400、450、500mm\n");
break;
case 'E': printf("带轮最小基准直径是500mm\n");Kb=0.03735;m0=0.9;
printf("E型带轮基准直径分别是500、560、630、710mm\n");
break;
}
//****************************************************************
printf("请选择合适小带轮直径dd1(mm):");
scanf("%d",&dd1);
printf("小带轮直径dd1(mm):%d",dd1);
printf("请输入传动比i:");
scanf("%d",&i);
dd20=dd1*i;
printf("大带轮直径为%d",dd20);
printf("大带轮直径为%.3d mm:",dd20);
printf("\n请查表取标准值并输入大带轮直径dd2(mm):");
scanf("%d",&dd2);
for (c=1;c<4;c++)
{ if (fabs((dd2/dd1-i)/i)>=0.05)
{
printf("传动比误差过大,不可用!");
}
else break;
printf("\n请查表取标准值重新输入大带轮直径dd2(mm):");
scanf("%lf",&dd2);
}
printf("\n传动比误差小于5%,可用\n");
V=Pi*dd1*n1/60000;
if(V>25)
{ printf("带速过大,请重新选择小带轮直径!");
exit(0);
}
aMIN=0.7*(dd1+dd2);
aMAX=2*(dd1+dd2);
printf("请初步确定中心距(mm),并使%.3fmm<a<%.3fmm:",aMIN,aMAX);
scanf("%lf",&a);
Ld0=2*a+Pi/2*(dd1+dd2)+pow(dd2-dd1,2)/(4*a);
printf("V带基准长度为%.3fmm,请查表5.2选择V带标准基准长度(mm):",Ld0);
scanf("%d",&Ld);
a=a+(Ld-Ld0)/2;//实际中心距
printf("实际中心距a=%lf\n",a);
ALF1=180-(dd2-dd1)/a*57.3;//小带轮包角
printf("%c",TYPE);
printf("型带的弯曲影响系数Kb=");
printf("%lf\n",Kb);
//传动比系数表
//*****************************************
if((i>=1.00)&&(i<=1.01))
{Ki=1.0000;printf("传动比系数Ki=");
printf("%lf\n",Ki);}
if((i>=1.02)&&(i<=1.04))
{Ki=1.0136;printf("传动比系数Ki=");
printf("%lf\n",Ki);}
if((i>=1.05)&&(i<=1.08))
{Ki=1.0276;printf("传动比系数Ki=");
printf("%lf\n",Ki);}
if((i>=1.09)&&(i<=1.12))
{Ki=1.0419;printf("传动比系数Ki=");
printf("%lf\n",Ki);}
if((i>=1.13)&&(i<=1.18))
{Ki=1.0567;printf("传动比系数Ki=");
printf("%lf\n",Ki);}
if((i>=1.19)&&(i<=1.24))
{Ki=1.0719;printf("传动比系数Ki=");
printf("%lf\n",Ki);}
if((i>=1.25)&&(i<=1.34))
{Ki=1.0875;printf("传动比系数Ki=");
printf("%lf\n",Ki);}
if((i>=1.35)&&(i<=1.51))
{Ki=1.1036;printf("传动比系数Ki=");
printf("%lf\n",Ki);}
if((i>=1.52)&&(i<=1.99))
{Ki=1.1202;printf("传动比系数Ki=");
printf("%lf\n",Ki);}
if(i>=2)
{Ki=1.1373;printf("传动比系数Ki=");
printf("%lf\n",Ki);}
//****************************************
DIFP0=Kb*n1*(1-1/Ki);
printf("功率增量△P0= %lf\n",DIFP0);
printf("小带轮包角为α=%.5f°\n",ALF1);
//************************************************
//********包角修正系数***************************
if((ALF1>=85)&&(ALF1<=95))
{KALF=0.68;printf("包角修正系数KALF为:");
printf("%lf\n",KALF);}
if((ALF1>95)&&(ALF1<=105))
{KALF=0.73;printf("包角修正系数KALF为:");
printf("%lf\n",KALF);}
if((ALF1>105)&&(ALF1<=115))
{KALF=0.78;printf("包角修正系数KALF为:");
printf("%lf\n",KALF);}
if((ALF1>115)&&(ALF1<=125))
{KALF=0.82;printf("包角修正系数KALF为:");
printf("%lf\n",KALF);}
if((ALF1>125)&&(ALF1<=135))
{KALF=0.86;printf("包角修正系数KALF为:");
printf("%lf\n",KALF);}
if((ALF1>135)&&(ALF1<=145))
{KALF=0.89;printf("包角修正系数KALF为:");
printf("%lf\n",KALF);}
if((ALF1>145)&&(ALF1<=155))
{KALF=0.92;printf("包角修正系数KALF为:");
printf("%lf\n",KALF);}
if((ALF1>155)&&(ALF1<=165))
{KALF=0.95;printf("包角修正系数KALF为:");
printf("%lf\n",KALF);}
if((ALF1>165)&&(ALF1<=175))
{KALF=0.98;printf("包角修正系数KALF为:");
printf("%lf\n",KALF);}
if((ALF1>175)&&(ALF1<=185))
{KALF=1.00;printf("包角修正系数KALF为:");
printf("%lf\n",KALF);}
if((ALF1>185)&&(ALF1<=195))
{KALF=1.05;printf("包角修正系数KALF为:");
printf("%lf\n",KALF);}
if((ALF1>195)&&(ALF1<=205))
{KALF=1.10;printf("包角修正系数KALF为:");
printf("%lf\n",KALF);}
if((ALF1>205)&&(ALF1<=215))
{KALF=1.15;printf("包角修正系数KALF为:");
printf("%lf\n",KALF);}
if((ALF1>215)&&(ALF1<=225))
{KALF=1.20;printf("包角修正系数KALF为:");
printf("%lf\n",KALF);}
//********************************************************
//********************************************************
printf("V带基准长度为%.3dmm",Ld);
//***************长度系数KL
switch(Ld)
{
case 800:KL=0.85;printf("长度系数KL%.3f",KL);break;
case 900:KL=0.87;printf("长度系数KL%.3f",KL);break;
case 1000:KL=0.89;printf("长度系数KL%.3f",KL);break;
case 1120:KL=0.91;printf("长度系数KL%.3f",KL);break;
case 1250:KL=0.93;printf("长度系数KL%.3f",KL);break;
case 1400:KL=0.96;printf("长度系数KL%.3f",KL);break;
}
//********************************************
//**************单根带的基本额定功率P0(kW)
switch(dd1)
{
case 75:P0=0.51;printf("单根带的基本额定功率P0:%.3fkW",P0);break;
case 90:P0=0.77;printf("单根带的基本额定功率P0:%.3fkW",P0);break;
case 100:P0=0.95;printf("单根带的基本额定功率P0:%.3fkW",P0);break;
case 125:P0=1.37;printf("单根带的基本额定功率P0:%.3fkW",P0);break;
}
//**************************
z=Pd/((P0+DIFP0)*KALF*KL);
printf("V带的根数为:%.2f ,请输入元整后的结果:",z);
scanf("%lf",&z);
printf("单位长度所选带的质量(kg/m):");
printf("%lf",m0);
F0=500*Pd/z/V*(2.5-KALF)/KALF+m0*V*V;//初拉力
FQ=2*z*F0*sin(ALF1/2*Pi/180);//作用在轴上的压力
printf("\n下面是计算的最后结果:\n");
printf("带型为%c\n设计功率Pd=%.3fkW\n小带轮直径dd1=%.3dmm\n大带轮直径dd2=%.3dmm\nV带基准长度Ld=%.3dmm\n实际轴间距a=%.3fmm\n单根V带额定功率P0=%.3fkW\n额定功率增量DIFPP0=%.3fkW\n带速V=%.3fm/s\n小带轮包角ALF1=%.5f°\nV带根数z=%.3f\nV带单位长度的质量m0=%.3fkg/m\n单根V带的预紧力F0=%.3fN\n作用在轴上的力FQ=%.3fN\n",TYPE,Pd,dd1,dd2,Ld,a,P0,DIFP0,V,ALF1,z,m0,F0,FQ);
}
system("pause");
}
六、设计总结
经过这段时间的V带传动设计,一方面我对V带传动设计过程有了更深的了解,另一方面也让我对程序设计的一般过程与规范以及注意事项有了一定的认识。同时在程序设计的过程中,我对VC++6.0这款软件有了一定的了解,学习了一些基本的应用。
经过这次设计,锻炼了我们各方面的能力,比如合作能力、自学能力等,使我们获益颇丰!
展开阅读全文