详细算法如下:
z1=21;
z2=33;
mn=2.5; //=m标准值
αn=20; //=α标准值
han=1; //=ha标准值
cn=0.25;//=c标准值
a'=70;
β=0;
b=40; //齿宽
π=3.1415927;
pii=π/180;
?mt=mn/cos(β*pii);
?αt=atan(tan(αn*pii)/cos(β*pii))/pii;
?hat=han*cos(β*pii);
?ct=cn*cos(β*pii);
inv(x)=tan(x)-x;
-----------------------------------
未变位时的中心矩:
?a=1/2*mt*(z1+z2)
分度圆直径:
?d1=mt*z1;
?d2=mt*z2;
中心矩变动系数:
?yt=(a'-a)/mt;
啮合角:
?αt'=acos(a/a'*cos(αt*pii))/pii;
总变位系数:
?xtΣ=(z1+z2)/(2*tan(αt*pii))*(inv(αt'*pii)-inv(αt*pii));
?xnΣ=xtΣ/cos(β*pii);
根据哈工大的线图2.2-9选择变位系数:
?xn1=0.55;
?xn2=xnΣ-xn1;
?xt1=xn1*cos(β*pii);
?xt2=xn2*cos(β*pii);
齿顶高变动系数:
?dyt=xtΣ-yt;
齿顶高:
?ha1=mn*(han+xn1)-dyt*mt;
?ha2=mn*(han+xn2)-dyt*mt;
齿根高:
?hf1=mn*(han+cn-xn1);
?hf2=mn*(han+cn-xn2);
齿全高:
?h=ha1+hf1;
齿顶圆直径:
?da1=d1+2*ha1;
?da2=d2+2*ha2;
齿跟圆直径:
?df1=d1-2*hf1;
?df2=d2-2*hf2;
基圆直径:
?db1=d1*cos(αt*pii);
?db2=d2*cos(αt*pii);
齿顶圆压力角:
?αat1=acos(db1/da1)/pii;
?αat2=acos(db2/da2)/pii;
齿数比
?u=z2/z1
分度圆齿厚:
?s1=mt*(π/2+2*xt1*tan(αt*pii));
?s2=mt*(π/2+2*xt2*tan(αt*pii));
齿顶厚:
?sa1=da1*((π/2+2*xt1*tan(αt*pii))/z1+inv(αt*pii)-inv(αat1*pii));
?sa2=da2*((π/2+2*xt2*tan(αt*pii))/z2+inv(αt*pii)-inv(αat2*pii));
----------------------------------------------
*****传动质量指标的验算********
重合度:
?εα=1/(2*π)*(z1*(tan(αat1*pii)-tan(αt'*pii))+z2*(tan(αat2*pii)-tan(αt'*pii)))
?εβ=b*sin(β*pii)/(π*mn);
?ε=εα+εβ
滑动率:
?η1=(tan(αat2*pii)-tan(αt'*pii))/((1+z1/z2)*tan(αt'*pii)-tan(αat2*pii))*(u+1)/u
?η2=(tan(αat1*pii)-tan(αt'*pii))/((1+z2/z1)*tan(αt'*pii)-tan(αat1*pii))*(u+1)
跨齿数:
int(x)=x-x%1+1-(x%1<0.5) //四舍五入取整
z1'=z1*inv(αt*pii)/inv(αn*pii)
k1=z1'/π*acos(z1'*cos(αn*pii)/(z1'+2*xn1))+0.5
?k1=int(k1)
z2'=z2*inv(αt*pii)/inv(αn*pii)
k2=z2'/π*acos(z2'*cos(αn*pii)/(z2'+2*xn2))+0.5
?k2=int(k2)
公法线长度:
?Wk1=mn*cos(αn*pii)*(π*(k1-0.5)+z1'*inv(αn*pii))+2*xn1*mn*sin(αn*pii)
?Wk2=mn*cos(αn*pii)*(π*(k2-0.5)+z2'*inv(αn*pii))+2*xn2*mn*sin(αn*pii)
量柱直径:
?dp=1.732*mn
量柱中心在渐开线上的压力角:
?inv_αMt1=inv(αt*pii)+dp/(mn*z1*cos(αn*pii))+2*xn1*tan(αn*pii)/z1-π/2/z1
temp1=0;
temp2=αat1*pii;
temp=(temp1+temp2)/2;
PB=fabs(inv(temp)-inv_αMt1)>10^(-10)
while(PB){
if(inv(temp)-inv_αMt1>0){
temp2=temp;
}
else{
temp1=temp;
}
temp=(temp1+temp2)/2;
PB=fabs(inv(temp)-inv_αMt1)>10^(-10);
}
?αMt1=temp/pii
?inv_αMt2=inv(αt*pii)+dp/(mn*z2*cos(αn*pii))+2*xn2*tan(αn*pii)/z2-π/2/z2
temp1=0;
temp2=αat2*pii;
temp=(temp1+temp2)/2;
PB=fabs(inv(temp)-inv_αMt2)>10^(-10)
while(PB){
if(inv(temp)-inv_αMt2>0){
temp2=temp;
}
else{
temp1=temp;
}
temp=(temp1+temp2)/2;
PB=fabs(inv(temp)-inv_αMt2)>10^(-10);
}
?αMt2=temp/pii;
量柱跨距M:
量柱中心到齿轮中心的距离RM
?RM1=d1/2*cos(αt*pii)/cos(αMt1*pii);
if(z1%2==0){
?M1=2*RM1+dp; //偶数齿
}
else{
?M1=2*RM1*cos(π/2/z1)+dp; //奇数齿
}
?RM2=d2/2*cos(αt*pii)/cos(αMt2*pii);
if(z2%2==0){
?M2=2*RM2+dp; //偶数齿
}
else{
?M2=2*RM2*cos(π/2/z2)+dp; //奇数齿
}