Contents
CASE STUDY 7C
clear, clc, home
fprintf('The date and time: %s \n \n', datestr(now))
fprintf('BendingStressSpurGearSh function: \n \n')
help BendingStressSpurGearSh
fprintf('\nSurfaceStressSpurGearSh function: \n \n')
help SurfaceStressSpurGearSh
The date and time: 29-Dec-2008 13:04:22
BendingStressSpurGearSh function:
Calculates the bending stresses setup inside a spur gear. English Units.
Shows all K values
Synopsis: [Sigma] = BendingStressSpurGearSh(Qv, Vt, FW, p_d, DrivingShock, ...
DrivenShock, size, m_b, idleness, J, Wt)
input: Qv = (required) Gear quality. Constant between 3 and 11.
Vt = (required) pitch-line velocity. r cross omega.
FW = (required) Face width factor. Number in inches.
p_d = (required) dimetral pitch. p_d = N/d.
DrivingShock = (required) 'Uniform', 'Light Shock', or
'Medium Shock'.
DrivenShock = (required) 'Uniform', 'Moderate Shock', or
'Heavy Shock'.
size = (required) Must be a structured array. size must contain
size.shape: 'rectangle', 'circle', or 'number'
size.rotation: 'nonrotating', 'rotating', NA
size.dim: 1x1 (radius of circle) or 1x2 (height (i.e. the
cubed value) and width); must be in inches.
fur number just put a number
m_b = (required) backup ratio. m_b = t_r/h_t
idleness = (required) 'idle' or 'non-idle'.
J = (required) Bending strength geometry factor. See page 666 for values.
Wt = (required) The tangential force on the tooth
output: Sigma = bending stress.
Warning: Error most likely due to the interpolation of Km.
All values must be constants, no matrices allowed. Use the following to
get around this rule though:
use matirx for Qv, Vt, or other variable, for example:
Quality = [5, 6, 7, 8];
len = length(Quality);
Sigma = ones(1,len);
for coun = 1:len
Qv = Quality(coun);
Sigma(coun) = BendingStressSpurGearSh(Qv, Vt, FW, p_d, DrivingShock, ...
DrivenShock, size, m_b, idleness, J, Wt);
end
SurfaceStressSpurGearSh function:
Calculates the surface stresses setup between two spur gears. English Units.
Show C values
Synopsis: [Sigma] = SurfaceStressSpurGearSh(Qv, Vt, FW, DrivingShock, ...
DrivenShock, size, I, Cp, surf, Wt, d)
input: Qv = (required) Gear quality. Constant between 3 and 11.
Vt = (required) pitch-line velocity. r cross omega.
FW = (required) Face width factor. Number in inches.
DrivingShock = (required) 'Uniform', 'Light Shock', or
'Medium Shock'.
DrivenShock = (required) 'Uniform', 'Moderate Shock', or
'Heavy Shock'.
size = (required) Must be a structured array. size must contain
size.shape: 'rectangle', 'circle', or 'number'
size.rotation: 'nonrotating', 'rotating', NA
size.dim: 1x1 (radius of circle) or 1x2 (height (i.e. the
cubed value) and width); must be in inches.
fur number just put a number
I = (required) Surface geometry factor. See page 673 for values.
surf = (required) should equal 1. If surface is very rough then
the value can be increased.
Wt = (required) The tangential force on the tooth
d = (required) diameter of smaller gear
output: Sigma = surface stress.
Warning: Error most likely due to the interpolation of Km.
All values must be constants, no matrices allowed. Use the following to
get around this rule though:
use matrix for Qv, Vt, or other variable, for example:
Quality = [5, 6, 7, 8];
len = length(Quality);
Sigma = ones(1,len);
for coun = 1:len
Qv = Quality(coun);
Sigma(coun) = SurfaceStressSpurGearSh(Qv, Vt, FW, DrivingShock, ...
DrivenShock, size, I, Cp, surf, Wt, d);
end
Given and Assumes
fprintf('----------------------- \n')
fprintf('----- Given Data: ----- \n')
fprintf('----------------------- \n \n')
fprintf('m_G, gear ratio (Ng/Np). ')
m_G = 2.5
fprintf('omega_g, angular velocity of gear (rad/s). ')
omega_g = 1600*(2*pi/60)
fprintf('PA, pressure angle (degrees).')
PA = 20
AGMA = 'Full-Depth';
Loading = 'HPSTC';
fprintf('x_p, elongation (percent).')
x_p = 0
phi = PA*(2*pi/360);
fprintf('J_p, Bending strength geometry factor for pinion (Table 11-9).')
J_p = 0.34
fprintf('J_g, Bending strength geometry factor for gear (Table 11-9).')
J_g = 0.40
fprintf('T_max, maximum Torque (lb*in).')
T_max = 585
fprintf('T_min, minimum Torque (lb*in).')
T_min = -175
fprintf('E, Modulus of elasticity (psi).')
E = 30E6
fprintf('v, Poissons ratio.')
v = 0.28
fprintf('reliab, reliability (percent).')
reliab = 99
fprintf('HB_p, Brinell Hardness for pinion.')
HB_p = 250
fprintf('HB_g, Brinell Hardness for gear.')
HB_g = HB_p
fprintf('temp, temperature (Degrees F).')
temp = 200
fprintf('N, life of part (Number of cycles).')
N = 3750.*(60*2080).*10
fprintf('DrivingShock, shock load.')
DrivingShock = 'Light Shock'
fprintf('DrivenShock, shock load.')
DrivenShock = 'Heavy Shock'
fprintf('idleness_p, the idleness of the pinion.')
idleness_p = 'non-idle'
fprintf('idleness_g, the idleness of the gear.')
idleness_g = 'non-idle'
fprintf('m_b, Rim thickness factor.')
m_b = 3
size.shape = 'number';
fprintf('dim, Ks value.')
size.dim = 1
fprintf('Qv, Gear quality.')
Qv = 10
fprintf('N_p, number of teeth on pinion.')
N_p = 20
fprintf('d_p, diameter of pinion (in).')
d_p = 4
fprintf('d_g, diameter of gear (in).')
d_g = 10
fprintf('surf, sets Ks equal to 1. (in).')
surf = 1
-----------------------
----- Given Data: -----
-----------------------
m_G, gear ratio (Ng/Np).
m_G =
2.5000
omega_g, angular velocity of gear (rad/s).
omega_g =
167.5516
PA, pressure angle (degrees).
PA =
20
x_p, elongation (percent).
x_p =
0
J_p, Bending strength geometry factor for pinion (Table 11-9).
J_p =
0.3400
J_g, Bending strength geometry factor for gear (Table 11-9).
J_g =
0.4000
T_max, maximum Torque (lb*in).
T_max =
585
T_min, minimum Torque (lb*in).
T_min =
-175
E, Modulus of elasticity (psi).
E =
30000000
v, Poissons ratio.
v =
0.2800
reliab, reliability (percent).
reliab =
99
HB_p, Brinell Hardness for pinion.
HB_p =
250
HB_g, Brinell Hardness for gear.
HB_g =
250
temp, temperature (Degrees F).
temp =
200
N, life of part (Number of cycles).
N =
4.6800e+009
DrivingShock, shock load.
DrivingShock =
Light Shock
DrivenShock, shock load.
DrivenShock =
Heavy Shock
idleness_p, the idleness of the pinion.
idleness_p =
non-idle
idleness_g, the idleness of the gear.
idleness_g =
non-idle
m_b, Rim thickness factor.
m_b =
3
dim, Ks value.
size =
shape: 'number'
dim: 1
Qv, Gear quality.
Qv =
10
N_p, number of teeth on pinion.
N_p =
20
d_p, diameter of pinion (in).
d_p =
4
d_g, diameter of gear (in).
d_g =
10
surf, sets Ks equal to 1. (in).
surf =
1
Solution
fprintf('-------------------------------------------- \n')
fprintf('----- Calculation of diametral pitch: ------ \n')
fprintf('-------------------------------------------- \n \n')
fprintf('N_g, Number of teeth on gear. \n')
fprintf('N_g, N_g = N_p.*m_G.')
N_g = N_p.*m_G
fprintf('p_d, diametric pitch. \n')
fprintf('p_d = N_p./d_p.')
p_d = N_p./d_p
fprintf('--------------------------------------- \n')
fprintf('----- Calculation of face width: ------ \n')
fprintf('--------------------------------------- \n \n')
fprintf('FW, face width (in) - Assume nominal value of 12. \n')
fprintf('FW = 12/p_d.')
FW = 12/p_d
fprintf('-------------------------------------------- \n')
fprintf('----- Calculation of Tangential load: ------ \n')
fprintf('-------------------------------------------- \n \n')
fprintf('Wt_max, Maximum Tangential force (lbf). \n')
fprintf('Wt_max = T_max./(d_g./2).')
Wt_max = T_max./(d_g./2)
fprintf('Wt_min, Minimum Tangential force (lbf). \n')
fprintf('Wt_min = T_min./(d_g./2).')
Wt_min = T_min./(d_g./2)
fprintf('-------------------------------------------- \n')
fprintf('----- Calculation of Tooth velocity: ------ \n')
fprintf('-------------------------------------------- \n \n')
omega_p = 2.5.*omega_g;
fprintf('Vt, Tooth velocity (ft/min).')
Vt = d_p./(2*12).*omega_p.*60
fprintf('-------------------------------------------------- \n')
fprintf('----- K values and Bending Stress for pinion ----- \n')
fprintf('-------------------------------------------------- \n \n')
[Sigma_bending_p] = BendingStressSpurGearSh(Qv, Vt, FW, p_d, DrivingShock, ...
DrivenShock, size, m_b, idleness_p, J_p, Wt_max)
fprintf('------------------------------------------------ \n')
fprintf('----- K values and Bending Stress for gear ----- \n')
fprintf('------------------------------------------------ \n \n')
[Sigma_bending_g] = BendingStressSpurGearSh(Qv, Vt, FW, p_d, DrivingShock, ...
DrivenShock, size, m_b, idleness_g, J_g, Wt_max)
fprintf('------------------------------------------------ \n')
fprintf('----- Surface Stresses ------------------------- \n')
fprintf('------------------------------------------------ \n \n')
fprintf('Dis_pg, Distance between center of gears. \n')
fprintf('Dis_pg = (d_p + d_g)./2.')
Dis_pg = (d_p + d_g)./2
fprintf('I_pg, Surface Geometry Factor for pinion gear pair. \n')
fprintf('I_pg = cos(phi)./((1/rho_p + 1/rho_g).*d_p).')
rho_p = sqrt((d_p./2 + (1 + x_p)./(p_d)).^2-(d_p./2.*cos(phi)).^2)-(pi/p_d).*cos(phi);
rho_g = Dis_pg.*sin(phi) - rho_p;
I_pg = cos(phi)./((1/rho_p + 1/rho_g).*d_p)
fprintf('Cp, Elastic coefficient. \n')
fprintf('Cp = sqrt(1./(pi.*( ((1 - v.^2)./(E)) + ((1 - v.^2)./(E))))).')
Cp = sqrt(1./(pi.*( ((1 - v.^2)./(E)) + ((1 - v.^2)./(E)))))
fprintf('----------------------------------------- \n')
fprintf('----- C values and Surface Stresses ----- \n')
fprintf('----------------------------------------- \n \n')
[Sigma_surface_pg] = SurfaceStressSpurGearSh(Qv, Vt, FW, DrivingShock, ...
DrivenShock, size, I_pg, Cp, surf, Wt_max, d_p)
fprintf('------------------------------------------------- \n')
fprintf('----- Fatigue Bending Strength and K values ----- \n')
fprintf('------------------------------------------------- \n \n')
S_fb_prime = -274 + 167.*HB_p - .152.*HB_p.^2
if temp <= 250
Kt = 1;
else
Kt = (460 + Tf)./(620);
end
if reliab == 90;
Kr = 0.85;
elseif reliab == 99;
Kr = 1;
elseif reliab == 99.9;
Kr = 1.25;
elseif reliab == 99.99;
Kr = 1.5;
elseif reliab == 1;
Kr = 1;
else
fprintf('Error: reliab must use only the accepted values.');
Kr = 1;
end
Kl = 1.3558.*(N).^(-0.0178);
Kl, Kt, Kr
fprintf('---------------------------------------------- \n')
fprintf('----- Corrected Fatigue Bending Strength ----- \n')
fprintf('---------------------------------------------- \n \n')
S_fb = Kl./(Kt.*Kr).*S_fb_prime
fprintf('------------------------------------------------- \n')
fprintf('----- Fatigue Surface Strength and K values ----- \n')
fprintf('------------------------------------------------- \n \n')
S_fs_prime = 26000 + 327.*HB_p;
if temp <= 250
Kt = 1;
else
Kt = (460 + Tf)./(620);
end
if reliab == 90;
Kr = 0.85;
elseif reliab == 99;
Kr = 1;
elseif reliab == 99.9;
Kr = 1.25;
elseif reliab == 99.99;
Kr = 1.5;
elseif reliab == 1;
Kr = 1;
else
fprintf('Error: reliab must use only the accepted values.');
Kr = 1;
end
Cl = 1.4488.*(N).^(-0.023);
if HB_p/HB_g < 1.2
A = 0;
elseif HB_p/HB_g <= 1.7
A = 0.00898.*HB_p/HB_g - 0.00829;
else
A = 0.00698;
end
m_G = N_g./N_p;
Ch = 1 + A.*(m_G -1);
Ct = Kt, Cr = Kr, Cl, Ch
fprintf('---------------------------------------------- \n')
fprintf('----- Corrected Fatigue Surface Strength ----- \n')
fprintf('---------------------------------------------- \n \n')
S_fs = (Cl.*Ch)./(Ct.*Cr).*S_fs_prime
fprintf('------------------------- \n')
fprintf('----- Safty Factors ----- \n')
fprintf('------------------------- \n \n')
fprintf('SF_bend_pinion, Safty Factor for pinion in bending. \n')
fprintf('SF_bend_pinion = S_fb./Sigma_bending_p')
SF_bend_pinion = S_fb./Sigma_bending_p
fprintf('SF_bend_gear, Safty Factor for gear in bending. \n')
fprintf('SF_bend_gear = S_fb./Sigma_bending_g')
SF_bend_gear = S_fb./Sigma_bending_g
fprintf('SF_surf_pg, Safty Factor for the gear and pinion surfaces. \n')
fprintf('SF_surf_pg = (S_fs./Sigma_surface_pg).^2')
SF_surf_pg = (S_fs./Sigma_surface_pg).^2
--------------------------------------------
----- Calculation of diametral pitch: ------
--------------------------------------------
N_g, Number of teeth on gear.
N_g, N_g = N_p.*m_G.
N_g =
50
p_d, diametric pitch.
p_d = N_p./d_p.
p_d =
5
---------------------------------------
----- Calculation of face width: ------
---------------------------------------
FW, face width (in) - Assume nominal value of 12.
FW = 12/p_d.
FW =
2.4000
--------------------------------------------
----- Calculation of Tangential load: ------
--------------------------------------------
Wt_max, Maximum Tangential force (lbf).
Wt_max = T_max./(d_g./2).
Wt_max =
117
Wt_min, Minimum Tangential force (lbf).
Wt_min = T_min./(d_g./2).
Wt_min =
-35
--------------------------------------------
----- Calculation of Tooth velocity: ------
--------------------------------------------
Vt, Tooth velocity (ft/min).
Vt =
4.1888e+003
--------------------------------------------------
----- K values and Bending Stress for pinion -----
--------------------------------------------------
Ka =
2
Km =
1.5800
Kv =
0.7968
Ks =
1
Kb =
1
Ki =
1
Sigma_bending_p =
2.8432e+003
------------------------------------------------
----- K values and Bending Stress for gear -----
------------------------------------------------
Ka =
2
Km =
1.5800
Kv =
0.7968
Ks =
1
Kb =
1
Ki =
1
Sigma_bending_g =
2.4167e+003
------------------------------------------------
----- Surface Stresses -------------------------
------------------------------------------------
Dis_pg, Distance between center of gears.
Dis_pg = (d_p + d_g)./2.
Dis_pg =
7
I_pg, Surface Geometry Factor for pinion gear pair.
I_pg = cos(phi)./((1/rho_p + 1/rho_g).*d_p).
I_pg =
0.0999
Cp, Elastic coefficient.
Cp = sqrt(1./(pi.*( ((1 - v.^2)./(E)) + ((1 - v.^2)./(E))))).
Cp =
2.2761e+003
-----------------------------------------
----- C values and Surface Stresses -----
-----------------------------------------
Cv =
0.7968
Cm =
1.5800
Ca =
2
Cs =
1
Cf =
1
Sigma_surface_pg =
5.0058e+004
-------------------------------------------------
----- Fatigue Bending Strength and K values -----
-------------------------------------------------
S_fb_prime =
31976
Kl =
0.9121
Kt =
1
Kr =
1
----------------------------------------------
----- Corrected Fatigue Bending Strength -----
----------------------------------------------
S_fb =
2.9167e+004
-------------------------------------------------
----- Fatigue Surface Strength and K values -----
-------------------------------------------------
Ct =
1
Cr =
1
Cl =
0.8681
Ch =
1
----------------------------------------------
----- Corrected Fatigue Surface Strength -----
----------------------------------------------
S_fs =
9.3543e+004
-------------------------
----- Safty Factors -----
-------------------------
SF_bend_pinion, Safty Factor for pinion in bending.
SF_bend_pinion = S_fb./Sigma_bending_p
SF_bend_pinion =
10.2584
SF_bend_gear, Safty Factor for gear in bending.
SF_bend_gear = S_fb./Sigma_bending_g
SF_bend_gear =
12.0687
SF_surf_pg, Safty Factor for the gear and pinion surfaces.
SF_surf_pg = (S_fs./Sigma_surface_pg).^2
SF_surf_pg =
3.4920