0% found this document useful (0 votes)
102 views53 pages

Tesi

The document describes designing different types of gear models through a graphic user interface in MATLAB. It discusses drawing spur gear, helix gear, straight bevel gear, and spiral bevel gear models based on an involute tooth profile. It also covers modifying the tooth profiles through tip and root relief modifications as well as lead crown relief. Finally, it presents applying the tooth profile modifications to the gear models and designing a GUI for users to view and compare the original and modified gear and tooth models.

Uploaded by

Manikanta Swamy
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
102 views53 pages

Tesi

The document describes designing different types of gear models through a graphic user interface in MATLAB. It discusses drawing spur gear, helix gear, straight bevel gear, and spiral bevel gear models based on an involute tooth profile. It also covers modifying the tooth profiles through tip and root relief modifications as well as lead crown relief. Finally, it presents applying the tooth profile modifications to the gear models and designing a GUI for users to view and compare the original and modified gear and tooth models.

Uploaded by

Manikanta Swamy
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 53

Design of Different Types of Gears through a

Graphic User Interface (GUI)

Student: Yang Qiao (s233218)


POLITECNICO DI TORINO
Tutor: ROSSO CARLO
Abstract
The first part of this thesis is about drawing four types of gear
models (Spur gear, Helix gear, straight and spiral bevel gear)
based on a perfect involute tooth profile with MATLAB codes.
In order to decrease the noise created during the engagement of
gear pairs and also increase resistance and reliability of the gear
pairs, tooth profile modification method is the most common used
and efficient way. So, in the second part, how to do tooth profile
modification ( tip and root relief modification) and tooth lead
crown relief by MATLAB codes are studied.
The third part is to apply the tooth profile modifications studied in
the second part to the established gear models. Besides, some
result images of the modified gear models will be shown.
At last, a GUI (Graphic User Interface) of MATLAB is designed for
the users. Through the GUI users can view and compare the 3D
tooth and gear model with the modified and the unmodified one
by just simply inputting parameter values in edit texts and clicking
few buttons.
Contents
1 Introduction .............................................................................................. 4

2 Different Tooth and Gear Models Drawing .............................................. 6

2.1 Spur Gear ......................................................................................... 7

2.2 Helix Gear ...................................................................................... 11

2.3 Bevel Gear ..................................................................................... 16

2.3.1 Straight Bevel Gear .............................................................. 17

2.3.2 Spiral Bevel Gear.................................................................. 24

3 Tooth Profile Modification ...................................................................... 27

3.1 Tooth Tip Linear Modification........................................................ 28

3.2 Tooth Tip Arc Modification ............................................................ 30

3.3 Tooth Tip Parabolic Modification .................................................. 32

3.4 Tooth Root Relief Modification ..................................................... 33

3.5 Tooth Lead Crown Relief ............................................................... 35

4 Applications of TPM on Different 3D Tooth and Gear Models ............... 38

4.1 Spur Gear with TPM ...................................................................... 39

4.2 Spur Gear with Tooth Lead Crown Relief ..................................... 39

4.3 Helix Gear with TPM...................................................................... 44

4.4 Straight Bevel Gear with TPM ....................................................... 45

4.5 Spiral Bevel Gear with TPM........................................................... 46

5 Implemented with GUI Design .............................................................. 47

6 Conclusion............................................................................................... 52

References .................................................................................................... 53
1 Introduction
In mechanical transmission system, gear pairs are widely used in
automotive industries because of its accurate transmission ratio
and good reliability. Noise is created during the engagement of
gear pairs system and the vibration comes down to excitation of
gear transmission error (TE). Many literature has revealed that
transmission error is the main parameter that affects the
performance and quality of transmission of gear pairs, especially
for NVH performance of vehicle. The most efficient and common
used way to control the transmission error is to do tooth profile
modification (TPM) on a perfect involute tooth profile. TPM can
decrease the interference during the engagement of gear pairs
and compensate teeth deflection under load without sacrificing the
tooth strength, therefore transmission error can be decreased by
doing TPM.
MATLAB comes with feature that allows you to design a GUI
(graphic user interface ) which can provide a convenient way to
the users who can interact with the electronic device without
knowing the programming code.
The structure of this thesis can be divided into 3 main parts, the
first part is to establish different types of gears by MATLAB codes.
To design gear models in MATLAB, the first step is to find out the
functions and the relationships of all the curves of the gear from
mathematic and geometric point of view, and then use proper
MATLAB codes and functions to programme it. Using programming
codes to design gear models is much simpler compared to
professional drawing software (Solidworks, AutoCAD…), especially
for designing tooth profile modification.
The second part is to study how to do tooth profile modification
based on a perfect involute tooth profile and apply those
modification codes to the established gear models. Thanks for
MATLAB can import and save data from a .mat file by using a
single command, this is helpful if you want to do analysis on
previously recorded data. So, after establishing the perfect
involute gear models by MATLAB codes, MATLAB can offer a
simple and convenient way to implement the tooth profile
modification codes with the established gear models codes to
obtain all kinds of modified gear models. Besides, for the tooth
profiles are consisted by coordinates, users can decrease the gap
between each nodes to improve the accuracy of modification.
At last, a GUI is designed to gather all the codes in a single
MATLAB file which provides a clear interface to the users. In the
GUI, users can easily obtain different types of gear models and do
tooth profile modifications on the established teeth and gears by
just simply inputting some parameters in the edit texts and clicking
few buttons.
2 Different Tooth and Gear Models Drawing
In total, four different types of gear models will be plotted in this
chapter which are: spur gear, helix gear, straight bevel gear and
spiral bevel gear. Before drawing the four whole gear models, the
tooth of the gear should be plotted at first.
The figure below is the right active flank (‘active’ means that goes
into contact with a conjugate tooth) and it is made up of 303
nodes.

Figure 2-1

The first step is to plot the whole tooth profile:


load('new_coordinates.mat');
%load the given 303 nodes to plot the right part
profile of the tooth
plot(coordinates(1,:),coordinates(2,:),'b');
axis equal;
hold on;
%plot the left part of the tooth
plot(-coordinates(1,:),coordinates(2,:),'b');
axis equal;
%plot the addendum curve of the tooth
xA = coordinates(1,end);
yA = coordinates(2,end);
theta0 = atan(xA/yA);
%the radius of addendum curve
r = sqrt(yA^2+xA^2);
t = -theta0:0.0001:theta0;
xc = r*sin(t);
yc = r*cos(t);
plot(xc,yc,'r-');
axis([-4 4 42 48]);

Figure 2-2: Perfect involute profile of tooth

2.1 Spur Gear


Spur gear is a gear wheel with teeth projecting parallel to the
wheel’s axis which transmits motion between two parallel shafts.
Along the Z direction, the curve of spur tooth is just a straight line ,
therefore the 3D model can be drawn by a simple ‘for’ cycle. Here
set the length of the face width of spur tooth equals to 6.35mm as
an example:
%Save all nodes of all the profiles to three
variables
y = [coordinates(2,:) yc fliplr(coordinates(2,:))];
x = [-coordinates(1,:) xc fliplr(coordinates(1,:))];
z = ones(1,length(x));
B = 6.35;
figure()
%Assume the interval between each profile along the
z-axis is 0.1mm
for i = 0:0.1:B
zz=i*z;
plot3(x,zz,y);
hold on;
end
%In order to have a better view, change the default
direction of axis
xlabel('X-axis');
ylabel('Z-axis');
zlabel('Y-axis');
Then the 3D model is plotted:

Figure 2-3

From aesthetic point of view, it would be more visible and clear to


plot the tooth as shown in figure (2-4). The mesh 3D model can
be plotted by using a mesh function in MATLAB. More specifically
the way to mesh the tooth is adding an another loop indicator j to
save all the coordinates and then mesh them:
j=0;
for i = 0:0.1:B
j=j+1;
zz=i*z;
hold on;
XX(j,:) = x;
YY(j,:) = zz;
ZZ(j,:) = y;
end
figure()
mesh(XX,YY,ZZ)
xlabel('X-axis');
ylabel('Z-axis');
zlabel('Y-axis');
Finally the mesh model of spur tooth is obtained:
Figure 2-4: 3D Model of Spur Tooth

In order to illustrate more briefly, for all types of gear and its tooth,
only the ‘mesh model images’ will be shown in this thesis.
The first step is to draw all the teeth with a base circle on 2D
plane at first, then find out the curve function along the z-axis and
the relationship functions between the three directions, finally use
proper ‘for’ loop codes to finish the gear model drawing.
Following the below codes:
%save the first tooth profile coordinates to two
variables
xx = [-coordinates(1,:),xc,coordinates(1,end:-1:1)];
yy = [ coordinates(2,:),yc,coordinates(2,end:-1:1)];
% number of teeth
nChi = 28;
% dalp is the angle between two adjoining teeth, tB
and rB are two variables to save the base curve of
the first tooth.
dalp = 360/nChi; alp = dalp*pi/180;
tha10 = atan(yy(end)/xx(end));
tha20 = pi-tha10;
dtha = abs(tha10-tha20);
hudu = alp-dtha;
tB = linspace(tha10,tha10-hudu,50);
rB = sqrt(yy(end)^2+xx(end)^2)*ones(size(tB));
[xF,yF]=pol2cart(tB,rB);
%Convert the coordinates of first tooth from
Cartesian to polar coordinates
[thetaChi1,rChi1] = cart2pol(xx,yy);
%To save the coordinates of the first tooth and its
corresponding base curve
thetaChiHu = [thetaChi1, tB];
rChiHu = [rChi1,rB];
%To save all the 28 teeth and the base circle
coordinates
Beta = [];
Rbet = [];
for kk1 = 1:1:nChi
Betak = thetaChiHu-(kk1-1)*alp;
Rbetk = rChiHu;
Beta = [Beta, Betak];
Rbet = [Rbet, Rbetk];
End
%Convert all the saved coordinates back to Cartesian
coordinates
[XX,YY] = pol2cart(Beta,Rbet);
figure()
plot(XX,YY,'LineWidth',2)
axis equal;
grid on;
%hCHI is the face width of gear
hChi = 6.35;
nPh = 40;
[row0,col0] = size(XX);
zz0 = linspace(0,hChi,nPh);
%the use of repmat function here is very important
which is to let the three direction variables X,Y,Z
have the same matrix dimension.
ZZk = repmat(zz0',1,col0);
XXk = repmat(XX,nPh ,1);
YYk = repmat(YY,nPh ,1);
Figure()
hold on;
mesh(XXk,YYk,ZZk)
%To draw the shaft cylinder, R is the radius of shaft
R = 30;
tc = linspace(0,2*pi,100);
xCk = R*cos(tc);
yCk = R*sin(tc);
xC = repmat(xCk,nPh,1);
yC = repmat(yCk,nPh,1);
zz0 = linspace(0,hChi,nPh);
zC = repmat(zz0',1,100);
mesh(xC,yC,zC)
%To fill up the top layer and bottom layer of spur
gear
nC = 10;
lenB = length(Beta);
XCin = zeros(lenB,nC);
YCin = zeros(lenB,nC);
for kk1 = 1:1:lenB
Rxk = linspace(R,Rbet(kk1),nC);
Thk = Beta(kk1)*ones(1,nC);
[xkin,ykin] = pol2cart(Thk,Rxk);
XCin(kk1,:) = xkin;
YCin(kk1,:) = ykin;
end
[p1,p2] = size(XCin);
Zcin1 = max(zz0)*ones(p1,p2);
Zcin2 = min(zz0)*ones(p1,p2);
mesh(XCin,YCin,Zcin1)
mesh(XCin,YCin,Zcin2)
xlabel('X-axis');
ylabel('Y-axis');
zlabel('Z-axis');
The whole spur gear model is obtained (note: only the simplified
version gear models without any fillet are plotted in this thesis for
all types.)

Figure 2-5: Spur Gear

2.2 Helix Gear


Compared with spur gears, helical gears operate more smoothly
and silently due to the way of teeth contact. For spur gear pairs,
the entire face width of teeth are contact during the engagement
which causes big noise and unstable transmission. However, for
helical gear pairs, the teeth shift a certain angle along the face
width. When two of the teeth are engaged, the contact is starting
from one end of the tooth and gradually contacting until the other
end. So, the load on the teeth of helical gear also gradually
increases from small value to big value and then back again to
small value, that is why the operation of helix gear is more quite
and stable.
As the figure 2-6 shown , the 3D tooth is formed by shifting its
first layer profile along the Z-axis until the end. The curvature of
the helix curve is decided by the controlled parameter helix angle.
Helix angle is the angle between helix and the axis as shown in the
figure 2-7, and it could be right-hand or left-hand orientation.

Figure 2-6 [6]

Figure 2-7 [7]

The first step is to write the parameterization function of helix


curve in polar coordinates:
%Example value of face width of helix tooth
B=40;
%In polar coordinates the parameters of helix curve
can be expressed by Z,R and TH. rb is the base radius
of helix gear, 20 is an example value of helix angle
Z=[0:1:B];
R=rb*ones(1,size(Z,2));
%'-' for left hand helix curve,'+' for right hand
helix curve. Assume helix angle equals to 20 degree
as an example.
TH=Z*tand(20)/rb;
Z=[0:1:B];
Then transfer polar coordinates to Cartesian coordinates and plot
it in three dimensional space:
[X,Y,Z]=pol2cart(TH,R,Z);
figure()
plot3(X,Y,Z)
xlabel('X');
ylabel('Y');
zlabel('Z');
axis equal;

Figure 2-8: Helix curve of Helix Tooth in 3D Space

save all the coordinates in polar coordinates at first:


x = [-coordinates(1,:) xc fliplr(coordinates(1,:))];
y = [coordinates(2,:) yc fliplr(coordinates(2,:))];
[u,t]=cart2pol(x,y);
z = ones(1,length(y));
Next step is to implement these polar coordinates with the helix
curve’s parameterization function, and then transfer them back to
Cartesian coordinates again. Finally, the 3D model of helix tooth is
plotted:
x = [-coordinates(1,:) xc fliplr(coordinates(1,:))];
y = [coordinates(2,:) yc fliplr(coordinates(2,:))];
[u,t]=cart2pol(x,y);
z = ones(1,length(y));
figure()
j=0;
for i = 0:1:B
j=j+1;
w=u+TH(j);
z = i*ones(1,length(y));
[P,Q]=pol2cart(w,t);
plot3(P,z,Q)
XX(j,:) = P;
YY(j,:) = z;
ZZ(j,:) = Q;
end
figure()
mesh(XX,YY,ZZ)
xlabel('X-axis');
ylabel('Z-axis');
zlabel('Y-axis');
grid on;

Figure 2-9: 3D Model of Helix Tooth

To draw the helix gear, the first step is the same as the spur gear
that is to draw all the teeth with a base circle on a 2D plane. The
difference is the straight line along the Z-axis is changed to a helix
curve, so the codes to plot the 3D model should be changed to:
%To save all the teeth and the base circle
coordinates along the z-axis and mesh the 28 teeth
with the base circle.
ABeta = [];
AR = [];
AZ = [];
for kk1 = 1:1:length(TH)
ABeta(kk1,:) = Beta+TH(kk1);
AR(kk1,:) = Rbet;
AZ(kk1,:) = Z(kk1)*ones(1,size(Rbet,2));
end
[XX,YY,ZZ] = pol2cart(ABeta,AR,AZ);
Figure()
hold on;
mesh(XX,YY,ZZ);
%To plot the shaft cylinder, assume the radius of
shaft is 30mm.
Rc = 30;
nPh = length(TH);
tc = linspace(0,2*pi,100);
xCk = Rc*cos(tc);
yCk = Rc*sin(tc);
xC = repmat(xCk,nPh,1);
yC = repmat(yCk,nPh,1);
zz0 = linspace(Z(1),Z(end),nPh);
zC = repmat(zz0',1,length(yCk));
mesh(xC,yC,zC)
%To fill up the top layer of helix gear
nC = 10;
Beta1 = ABeta(end,:);
Rbet1 = AR(end,:);
Z1 = Z(end);
lenB = length(Beta1);
XCin1 = zeros(lenB,nC);
YCin1 = zeros(lenB,nC);
for kk1 = 1:1:lenB
Rxk = linspace(Rc,Rbet1(kk1),nC);
Thk = Beta1(kk1)*ones(1,nC);
[xkin,ykin] = pol2cart(Thk,Rxk);
XCin1(kk1,:) = xkin;
YCin1(kk1,:) = ykin;
end
[p1,p2] = size(XCin1);
Zcin1 = Z1*ones(p1,p2);
%To fill up the bottom layer of helix gear
Beta2 = ABeta(1,:);
Rbet2 = AR(1,:);
Z2 = Z(1);
lenB = length(Beta2);
XCin2 = zeros(lenB,nC);
YCin2 = zeros(lenB,nC);
for kk1 = 1:1:lenB
Rxk = linspace(Rc,Rbet2(kk1),nC);
Thk = Beta2(kk1)*ones(1,nC);
[xkin,ykin] = pol2cart(Thk,Rxk);
XCin2(kk1,:) = xkin;
YCin2(kk1,:) = ykin;
end
[p1,p2] = size(XCin2);
Zcin2 = Z2*ones(p1,p2);
mesh(XCin1,YCin1,Zcin1)
mesh(XCin2,YCin2,Zcin2)
title('Helix Gear');
xlabel('X-axis');
ylabel('Y-axis');
zlabel('Z-axis');

Figure 2-10: 3D Model of Helix Gear

2.3 Bevel Gear


Bevel gears are very useful when the rotation of shafts needs to
be changed due to their ability to transmit power between two
shafts at any angle. The most common application of bevel tooth
is in vehicle’s differential system. In this thesis, the model of
straight bevel tooth and spiral bevel tooth will be established.
2.3.1 Straight Bevel Gear
The teeth of straight bevel gear are cut straight and tapered along
the pitch cone. Besides, the tooth profile of bevel gear is
perpendicular to the pitch cone as shown in the figure 2-11.

Figure 2-11: Lateral View of Bevel Gear System[3]

In order to design a standard straight bevel tooth, some macro-


geometry parameters should be constrained from the above lateral
view. from the given perfect involute profile, the following macro-
geometry parameters can be calculated:
load('new_coordinates.mat');
xA = coordinates(1,end);
yA = coordinates(2,end);
xB = coordinates(1,1);
yB = coordinates(2,1);
%Tooth height
toothH=yA-yB;
%Modulus of tooth
m=toothH/2.2;
%root cone radius
Rr= sqrt(xB^2+yB^2);
%Pitch cone radius
Rp=Rr/cos(20*pi/180);
%Number of teeth of pinion
z1=floor(2*Rp/m);
%In this case, assuming the number of gear's teeth
equals to pinion's
z2=z1;
%R is the outer cone distance(14)
R=0.5*m*sqrt(z1^2+z2^2);
%H0 is the height of the root cone
H0=sqrt(R^2-Rr^2);
According to the above parameters, the truncated cone where the
tooth stand on can be plotted:
%H is the height of the truncated cone which is equal
to (0.25-0.35)R as usual, here we take an example
value of 0.35R.
nH = 0.35;
H = H0*nH;
%theta is the angle of the root cone
theta = atan(Rr/H0);
%theta2 is the angle of the pitch cone
theta2=atan(Rp/H0);
tt = linspace(1,1-nH,100)*tan(theta);
[X,Y,Z] = cylinder(tt,200);
X = X*H0;
Y = Y*H0;
Z = Z*H;
%Modify the default axis directions
X3 = Y;
Y3 = Z;
Z3 = X;
figure()
mesh(X3,Y3,Z3)
axis equal;
hold on;
xlabel('x')
ylabel('z')
zlabel('y')
Figure 2-12: 3D Plot of Truncated Cone

The next step is to plot a center line of the tooth along the
truncated cone:
% round(R)=63, Assume 63 profiles that we are going
to plot along the cone
numP = round(R);
Z1 = linspace(0,nH,numP)*H0;
R1 = linspace(1,1-nH,numP)*Rr;
TH = 0*ones(1,numP);
[X1,Y1,Z1] = pol2cart(TH,R1,Z1);
X2 = Y1;
Y2 = Z1;
Z2 = X1;
% plot the center line
plot3(X2,Y2,Z2,'LineWidth',3)
axis equal;
Figure 2-13: The Straight Line Along The Truncated Cone

Then the tooth along the line is obtained:


%Place the 63 profiles along the straight line
xA = coordinates(1,end);
yA = coordinates(2,end);
r = sqrt(yA^2+xA^2);
theta0 = atan(xA/yA);
tt = -theta0:0.0001:theta0;
xc = r*sin(tt);
yc = r*cos(tt);
y = [coordinates(2,:) yc fliplr(coordinates(2,:))];
x = [-coordinates(1,:) xc fliplr(coordinates(1,:))];
[u,t] = cart2pol(x,y);
zz = linspace(0,H,numP);
%The size of the tooth tapers from top to the apex,
so we need to calculate the ratio between the first
profile and the last one
AD=coordinates(2,end)-coordinates(2,1);
AE=H/cos(theta);
CE=R-AE;
ratChi =CE/R ;
dChi = (1-ratChi)/(numP-1);
thetad = theta2*180/pi;
kk1 = 1;
w = u+TH(kk1);
H = zz(kk1)*ones(1,length(y));
[P,Q] = pol2cart(w,t);
P0 = (P(1)+P(end))/2;
Q0 = (Q(1)+Q(end))/2;

for kk1 = 1:1:numP


%Modify(decrease) the size of each tooth profile
along the Z-axis
Q1 = (1-(kk1-1)*dChi)*(Q-Q0)+Q0;
P1 = (1-(kk1-1)*dChi)*(P-P0)+P0;
Qk = Q1-X1(1)+X1(kk1);
Pk = P1-Y1(1)+Y1(kk1);
Zk = H-Z1(1)+Z1(kk1);
h2 = plot3(Pk,Zk,Qk,'LineWidth',2);
axis equal;

%Rotate around y-axis


loc = [X2(kk1),Y2(kk1),Z2(kk1)];
dircZ = [0,1,0];
rotate(h2,dircZ,TH(kk1)*180/pi,loc);

%Because the tooth profile is perpendicular to the


pitch cone, we need to rotate an angle of thetad.
thetad is the pitch angle(16)
dirc = [Pk(1),Zk(1),Qk(1)]-
[Pk(end),Zk(end),Qk(end)];
rotate(h2,dirc,thetad,loc);
xxk = h2.XData;
yyk = h2.YData;
zzk = h2.ZData;
end

Figure 2-14

At last, save the three direction values of the tooth to three


variables and mesh them. Meanwhile, delete the codes of
truncated cone and the straight line, then the final straight bevel
tooth is obtained:
XX(kk1,:) = xxk;
YY(kk1,:) = yyk;
ZZ(kk1,:) = zzk;
mesh(XX,YY,ZZ)
axis equal;
xlabel('X-axis');
ylabel('Z-axis');
zlabel('Y-axis');

Figure 2-15: 3D Model of Straight Bevel Tooth

To draw the straight bevel gear:


%mesh the truncated cone again
mesh(X3,Y3,Z3)
axis equal;
%nChi indicats the number of teeth, dalp is the angle
between each tooth.
nChi = 37;
dalp = 360/nChi;
%To plot all the 37 teeth on the truncated cone
dircZ = [0,1,0];
loc = [0,0,0];
for kk1 = 1:1:nChi
h2 = mesh(XX,YY,ZZ);
rotate(h2,dircZ,(kk1-1)*dalp,loc);
end
%To plot the gear's shaft, Rc is the shaft radius
Rc = 20;
nPh = length(TH);
tc = linspace(0,2*pi,100);
xCk = Rc*cos(tc);
yCk = Rc*sin(tc);
xC = repmat(xCk,nPh,1);
yC = repmat(yCk,nPh,1);
zz0 = linspace(Z(1),Z(end),nPh);
zC = repmat(zz0',1,length(yCk));
mesh(xC,zC,yC)
%To fill up the top(smallest circle) and
bottom(biggest circle) surface of the truncated cone
RR = (X.^2+Y.^2).^0.5;
rmin = min(min(RR)) ;
rmax = max(max(RR));
nC0 = 200;
nP0 = 20;
Th0 = linspace(0,2*pi,nC0);
R0 = linspace(rmin,Rc,nP0);
Z0 = max(max(Z));
Th0up = repmat(Th0',1,nP0);
R0up = repmat(R0,nC0,1);
Z0up = Z0*ones(nC0,nP0);
[Xup,Yup,Zup] = pol2cart(Th0up,R0up,Z0up);
mesh(Xup,Zup,Yup)
Th1 = linspace(0,2*pi,nC0);
Z1 = min(min(Z));
R1 = linspace(rmax,Rc,nP0);
Th1up = repmat(Th1',1,nP0);
R1up = repmat(R1,nC0,1);
Z1up = Z1*ones(nC0,nP0);
[Xd,Yd,Zd] = pol2cart(Th1up,R1up,Z1up);
mesh(Xd,Zd,Yd)
%To fill up the smallest profile of the 37 teeth
Xup = XX(end,:);
Yup = YY(end,:);
Zup = ZZ(end,:);
[THupk,Rupk,Zupk] = cart2pol(Xup,Zup,Yup);
nPup = 10;
Thup = repmat(THupk',1,nPup);
for kk1 = 1:1:length(THupk)
Rup1(kk1,:) = linspace(rmin,Rupk(kk1),nPup);
Zup1(kk1,:) = linspace(Z0,Zupk(kk1),nPup);
end
for kk1 = 1:1:nChi
Thup = Thup+dalp*pi/180;
[Xup,Yup,Zup] = pol2cart(Thup,Rup1,Zup1);
mesh(Xup,Zup,Yup)
end
%To fill up the biggest profile of the 37 teeth
Xdm = XX(1,:);
Ydm = YY(1,:);
Zdm = ZZ(1,:);
Z1 = min(min(Z));
[THdmk,Rdmk,Zdmk] = cart2pol(Xdm,Zdm,Ydm);
nPdm = 10;
Thdm = repmat(THdmk',1,nPdm);
for kk1 = 1:1:length(THdmk)
Rdm1(kk1,:) = linspace(rmax,Rdmk(kk1),nPdm);
Zdm1(kk1,:) = linspace(Z1,Zdmk(kk1),nPdm);
end
for kk1 = 1:1:nChi
Thdm = Thdm+dalp*pi/180;
[Xdm,Ydm,Zdm] = pol2cart(Thdm,Rdm1,Zdm1);
mesh(Xdm,Zdm,Ydm)
end

Then the 3D model of straight bevel is obtained:

Figure 2-16: 3D Model of Straight Bevel Gear

2.3.2 Spiral Bevel Gear


The basic definition of spiral bevel gear is a bevel gear with helical
teeth, so it is the combination of straight bevel gear and helix gear.
The codes to plot the 3D images of spiral bevel tooth are almost
as the same as the straight one, the only difference is the tooth
profile shifting along the truncated cone:
numP = round(R);
Z1 = linspace(0,nH,numP)*H0;
R1 = linspace(1,1-nH,numP)*Rr;
TH = -Z1*tand(20)./Rr;
[X1,Y1,Z1] = pol2cart(TH,R1,Z1);
X2 = Y1;
Y2 = Z1;
Z2 = X1
plot3(X2,Y2,Z2,'LineWidth',3)
axis equal;

Figure 2-17: Helix Curve Along the Truncated Cone

Figure 2-18: 3D Model of Spiral Bevel Tooth


The codes to plot the whole spiral bevel gear are totally as the
same as the straight bevel gear.

Figure 2-19: 3D Model of Spiral Bevel Gear


3 Tooth Profile Modification
The main goal of tooth profile modification method is to remove
material from the gear flanks. After modification the gear tooth is
no longer a perfect involute profile. Intentionally modifying the
gear tooth profiles has been proved theoretically and also
experimentally to significantly affect the static transmission error,
dynamic transmission error, dynamic load and the gear operation
life [4]. Therefore, proper tooth profile modification can
significantly reduce the gear vibration and gear noise during
engagement process and also increase the gear pairs working life.
‘tooth tip relief’ and ‘root relief’ will be studied in this thesis.
Tip relief modification method is a method to remove material
from the tooth addendum. As shown in the figure 3-1, the amount
of material removed is decided by three factors which are: ‘length
of profile modification (△La)’, ‘amount of profile modification (Ca)’
and the type of modification curve. Generally speaking, for one
gear pair, we do the same ‘amount of profile modification’ and
‘length of profile modification’ for both pinion and gear. In this
thesis, three different types of tip relief modification are involved
which are: tip linear modification, tip parabolic modification and tip
arc modification.

Figure 3-1: Tip relief modification [1]

In order to explain more straightly, example values 1mm and


0.2mm for the two controlled parameters △La (length of profile
modifications) and Ca (amount of profile modification) are used in
this chapter.
%amount of profile modification
Ca_1 = 0.2;
%length of profile modifications
Delta_La_1 = 1;
The first step is to find out the start modification node:
for i = n:-1:2
if abs(coordinates(2,n)-
coordinates(2,i))<=Delta_La_1 &&abs(coordinates(2,n)-
coordinates(2,i-1))>Delta_La_1;
ind = n-i+1;
break;
end
‘ind’ equals 32 in our example case which means 32 nodes need to
be modified which is from the 271th node to the 303th node from
the active flank.

Figure 3-2: Start Modification Node of Tip relief

3.1 Tooth Tip Linear Modification


For tip linear relief modification, after inputting the controlled
parameters Ca and △La, the removed materials can be
represented by a right triangle as shown in figure 3-3. The
modified curve is the coordinates of original involute tooth profile
minus the corresponding removed right triangle coordinates.
Figure 3-3: Material To Be Removed

Through the following codes:


ind0 = n-ind;
%start modification node
x0 = coordinates(1,ind0);
y0 = coordinates(2,ind0);
y1=coordinates(2,n);
%the linear equation about removed materials is y=kx,
k=(y1-yo)/(-Ca_1). we set the start modification
point as the original point of this linear line. So
the range of y is from the modification node to the
tip(last node)
y=coordinates(2,end-ind+1:end)-y0;
%To calculate the corresponding x-value in the linear
coordinate system
x=-(y*(-Ca_1)/(y1-y0));
% the modified curve of x axis equals the original x-
axis minus the corresponding removed materials
newx=coordinates(1,end-ind+1:end)-x;
plot(newx,coordinates(2,end-ind+1:end),'r');
axis equal;
title('Tip relief linear modification of pinion');
legend('unmodified','modified');

The modified line is obtained:


Figure 3-4: Tip relief Linear Modification

3.2 Tooth Tip Arc Modification


The arc equation in rectangular coordinate system is: r = (x-x0)²+
(y-y0)². As shown in the figure 3-4, from the character of
involute it can be seen that the center of the arc is on the
generating line of involute, the intersection of the vertical line over
the midpoint of AB and involute is the circle center [2].

Figure 3-5: Two-dimensional Coordinates of Gear Tooth Profile


Modification [2]

α’ is the pressure angle at node B, θ is a variable value which


varies along the involute profile, and α is the difference of α’ and
θ.
Through the following codes:
ind0 = n-ind;
%start of modification node(xb,yb)
xb = coordinates(1,ind0);
yb = coordinates(2,ind0);
%node a is the last modification node
xa=-Ca_1+coordinates(1,n);
ya=coordinates(2,n);
%transfer plane coordinate to polar coordinate of all
the nodes
[w,R]=cart2pol(coordinates(2,:),coordinates(1,:));
%modulus of the gear
m=3.175;
%number of the teeth
z=28;
% calculate the base radius
rb=((z*m)/2)*cos(20*pi/180);
%Calculate the pressure angle of all nodes on the
perfect involute profile
ar=acos(rb./R)
a=ar-w;

%formula to calculate the center of the arc


x0=(yb-tan(2*ar(ind0)-tan(ar(ind0)))*xb-
(ya+yb)/2+((xb-xa)/(ya-yb))*((xa+xb)/2))/((xb-
xa)/(ya-yb)-tan(2*ar(ind0)-tan(ar(ind0))))
y0=tan(2*ar(ind0)-tan(ar(ind0)))*x0-
tan(a(ind0))*xb+yb
%Radius of the arc
r=sqrt((xb-x0).^2+(yb-y0).^2)
y=coordinates(2,end-ind:end);
% use x function to represent y
x=x0+(r^2-(y-y0).^2).^0.5;
plot(x,coordinates(2,ind0:end),'r');axis equal;
title('Tip relief arc modification');
legend('unmodified','modified');

The modified arc curve is obtained:


Figure 3-6: Tip Relief Arc Modification

3.3 Tooth Tip Parabolic Modification


Parabolic modification method is a way to change the involute
profile curve to a parabolic curve. The main idea is to establish a
local coordinate system and its center is the start modification
node.
Through the following codes:
ind0 = n-ind;
x0 = coordinates(1,ind0);
y0 = coordinates(2,ind0);
% calculate the coefficient a of the parabolic
equation. the parabolic equation formula: x =
ay^2+by+c, x represents the amount of materials are
removed which has the trend of parabolic line.
Starting point of this line is zero which means no
materials are removed at the start point.
a=(Ca_1)/(y1-y0)^2;
%the range of y coordinates is from the starting
modification node to the
% tip.
y=coordinates(2,end-ind+1:end);
%x represents the amount of material to be removed
x=a*(y-y0).^2;
%new absolute x coordinate of the modified profile is
the difference between the original profile x-
coordinate and the corresponding materials removed.
newx=coordinates(1,end+1-ind:end)-x;
plot(newx,coordinates(2,end-ind+1:end),'r');
axis equal;
title('Tip relief parabolic modification of gear');
legend('unmodified','modified');

Then the modified parabolic curve is obtained:

Figure 3-6: Tip Relief Parabolic Modification

3.4 Tooth Root Relief Modification


In contrast with tip relief modification, root relief modification is a
method to remove material from the tooth root as shown in the
figure 3-6. As root relief can result in weakening root strength, and
in practice, modifying the root of a gear tooth will be much more
difficult than modifying the tip especially for some extreme low
contact ratio gears, making it preferable give only tip relief
modification [4].

Set the two controlled parameters △Lr (length of root relief) and Cr
(amount of root relief) for 1mm and 0.2mm as examples.
Figure 3-7: Root Relief Modification

The first step is also to find out the start modification node from
the active flank:
La2=1;
Ca2=0.2;
n=length(coordinates(1,:));
for i=1:1:n
if abs(coordinates(2,i)-
coordinates(2,1))<=La2&&abs(coordinates(2,i+1)-
coordinates(2,1))>La2;
ind=i;
break
end
end
x0 = coordinates(1,ind);
y0 = coordinates(2,ind);
plot(coordinates(1,ind),coordinates(2,ind),'r*')

Figure 3-8: Start Modification Node of Root Relief

Through the following codes:


y1=coordinates(2,1);
%Set the linear function
y=-(coordinates(2,1:ind)-y1);
k=-(Ca2/(y0-y1));
%x represents the materials to be removed
x=k*y;
newx=coordinates(1,1:ind);
newxx=fliplr(newx);
newxxx=newxx-x;
xx=fliplr(newxxx);
plot(newxxx,fliplr(coordinates(2,1:ind)),'r');
axis equal;
title('Root relief linear modification');
legend('unmodified','modified');

The modified line is obtained:

Figure 3-9: Root Relief Linear Modification

3.5 Tooth Lead Crown Relief


Tooth lead crown is an another common used tooth modification
method, this method is to change the curve along the face width
as shown in the figure 3-10, Lc is the controlled parameter called
the ‘amplitude of the lead relief’ which decides the curvature of the
modified face width curve. Here assume the controlled parameter
Lc equals to 0.2mm as an example.
Figure 3-10: Tooth Lead Crown Relief [5]

The first step is to plot the unmodified top land which is a


rectangle:
w = coordinates(1,end)*2;
width = 6.35;
height = w;
xCenter = -width/2;
yCenter = 0;
xLeft = xCenter - width/2;
yBottom = yCenter - height/2;
figure()
rectangle('Position', [xLeft, yBottom, width,
height],'EdgeColor', 'b','LineWidth', 1);
axis equal;
grid on;

Figure 3-11

Tooth crown modification is studied on this rectangle top land:


%The formula to calculate the radius of the modified
curve
R = ((B/2)^2+Lc^2)/2/Lc;
xB = -B/2
yB = w/2-Lc;
theta0 = atan(xB/(yB+R-w/2));
theta = linspace(theta0,-theta0,floor(B/0.2));
y = R*cos(theta)-R+w/2;
x = R*sin(theta)-B/2;
plot(x,y,'r-');hold on;
plot(x,-y,'r-');
axis equal;
Finally the top land with crown relief modification is obtained (red
curve):

Figure 3-12: Tooth Lead Crown Relief on Tooth Top Land


4 Applications of TPM on Different 3D Tooth
and Gear Models
In chapter two, four types of tooth and gear models are
established by MATLAB codes. Tooth profile modification and tooth
lead crown relief modification are studied in chapter three. In this
chapter, how to implement these modification methods to the
established gear models will be discussed and some resulted
images will be shown.
Because MATLAB can import and save data from a .mat file by
using a single command, this is helpful if you want to do analysis
on previously recorded data. So it is very simple and convenient to
apply the modification codes to the established gear models to
obtain the modified gear models. As mentioned in chapter two the
perfect involute tooth profile is made up of a series of nodes, the
first step is to save the modified profile’s coordinates to two
variables and save the two variables in a new ‘.mat’ file called ’
fianco_completo_P (G)’ (note: P for pinion, G for gear ), then load
the new mat file instead of ‘new_coordinates’ on the gear model’s
file, finally execute the codes again the modified gear models are
obtained:
%Use two variables u and h to save the coordinates of
the modified tooth profile
u=[coordinates(1,1:ind0);coordinates(2,1:ind0)];
h=[x;coordinates(2,ind0:end)];
%save the coordinates in a matrix form.
fianco_completo_P is for pinion and _G for gear
fianco_completo_P(G)=[u,h];
%save them in a file where you save the ‘.m’ file of
tooth and gears
save('C:\\users\\Administrator\\Desktop\\gui for
gear\\zuizhong\\fianco_completo_P','fianco_completo_P
')
…..
%Load this new .mat file (modified tooth profile) to
substitute the 'new_coordinates.mat' file (perfect
involute tooth profile)
load('fianco_completo_P(G)');
In order to compare the difference between the modified model
and the unmodified model clearly, two controlled parameters are
changed to: Ca=0.5mm, La=1.8mm for the following examples.
4.1 Spur Gear with TPM

Figure 4-1: Spur Tooth with Tip Linear MF

Figure 4-2: Spur Gear with Tip Linear MF

4.2 Spur Gear with Tooth Lead Crown Relief


Tooth lead crown relief on spur tooth is more complicated than
tooth profile modification. In chapter 3, the tooth lead crown relief
on the top land is studied, the following two pictures show the
modified top land. As shown in the figure 4-3, the shape of the
tooth profile tapers from the middle profile to the two ends. In the
figure 4-4, the red tooth profile is the middle profile and the blue
profile is the two ends profile.
Figure 4-3 [5]

Figure 4-4

Through the following codes:


%amplitude of the lead crown relief
Lc = 0.2;
dB = 0.1;
B = 6.35;
xA = coordinates(1,end);
yA = coordinates(2,end);
xB = -coordinates(1,end);
w = xA-xB;
R = ((B/2)^2+Lc^2)/2/Lc;
xB = -B/2;
yB = w/2-Lc;
y = R*cos(theta)-R+w/2;
x = R*sin(theta);
%dx is a variable value along the Z-axis, it tapers
from the middle to the two ends, the biggest value of
dx is equal to Lc when y=y(1)
dx = (w/2-y(1));
%the node’s coordinates of the smallest profile(the
first layer and last layer profile)
xA = fianco_completo_P(1,end)-dx;
yA = fianco_completo_P(2,end);
%plot the first layer profile
plot(fianco_completo_P(1,:)-
dx,fianco_completo_P(2,:));
axis equal;
hold on;
plot(-
fianco_completo_P(1,:)+dx,fianco_completo_P(2,:));
axis equal;
theta0 = atan(xA/yA);
r = sqrt(yA^2+xA^2);
t = linspace(-theta0,theta0,1000);
xc = r*cos(t);
yc = r*sin(t);
plot(yc,xc,'r-');
axis([-4 4 42 48]);
y1 = [fianco_completo_P(2,:) xc
fliplr(fianco_completo_P(2,:))];
z1 = ones(1,length(y1));
hold on;
for i = 1:floor(B/dB)
dx = (w/2-y(i));
x1 = [-fianco_completo_P(1,:)+dx yc
fliplr(fianco_completo_P(1,:)-dx)];
xloc(i,:) = x1;
yloc(i,:) = i*dB*z1;
zloc(i,:) = y1;

end
figure()
hold on;
mesh(xloc,yloc,zloc)
axis equal;
title('3D Spur Tooth with Crown Relief');
xlabel('X-axis');
ylabel('Z-axis');
zlabel('Y-axis');

The 3D model of spur tooth with lead crown relief is obtained:


Figure 4-5: Lead Crown Relief of Spur Tooth

Figure 4-6: Lead Crown Relief of Spur Gear

Apart from doing the tooth profile modification and tooth lead
crown relief modification independently, TPM and tooth lead crown
relief can be combined together. The combination procedure is
quite easy which is just to combine the two parts codes together,
the only thing that should be noticed is that TPM should be done
first.
Figure 4-7: Lead Crown Relief with Tip Linear Relief of Spur Tooth

Figure 4-8: Lead Crown Relief with Tip Linear Relief of Spur Gear
4.3 Helix Gear with TPM

Figure 4-9: Tip Relief Arc MF of Helix Tooth

Figure 4-10: Tip Relief Arc MF of Helix Gear


4.4 Straight Bevel Gear with TPM

Figure 4-11: Tip Relief Arc MF of Straight Bevel Tooth

Figure 4-12: Tip Relief Arc MF of Straight Bevel Gear


4.5 Spiral Bevel Gear with TPM

Figure 4-13: Tip Relief Parabolic MF of Spiral Bevel Tooth

Figure 4-14: Tip Relief Parabolic MF of Spiral Bevel Gear


5 Implemented with GUI Design
MATLAB comes with feature that allows you to design a GUI
(graphic user interface ) which can provide a convenient way to
the users who just input parameters in the edit texts and clicking
some buttons can interact with the electronic device without
knowing the programming codes. Besides, compared to do
modifications in MATLAB file, GUI can provide a simpler and more
straight way to do modifications. In MATLAB file users have to find
and delete the values of the variables at first, and then input new
parameters. However, in GUI, users just need to input modified
parameters in the corresponding texts which are clearly listed.
In the following, the designed GUI will be described with some
example input parameters.
The designed GUI consists of eight tabs:

Figure 5-1: Tab Lists of GUI


At the beginning users should click the ‘Macro-geometry’ tab to set
the basic parameters of gear, such as number of teeth, modulus,
face width, etc—— which decide the size and shape of gears and
pinions.

Figure 5-2: Tab of Macro-Geometry Modification

Then users can directly click the different tooth and gear tabs to
view the 3D model of tooth without any modification. If users
want to do micro-geometry modification on tooth, they should
click the ‘Tooth Tip and Root Relief Modification’ tab and ‘Tooth
Lead Crown Relief ’ tab to do the modifications at first.
Figure 5-3: Tab of Tooth Tip and Root Relief Modification

Figure 5-4: Tab of Tooth Lead Crown Relief Modification

Then users can click tooth and whole gear model tabs to view and
compare the modified models with the unmodified models:
Figure 5-5:Tab of Spur Tooth

Figure 5-6:Tab of Helix Tooth


Figure 5-7:Tab of Straight Bevel Tooth

Figure 5-8: Tab of Spiral Bevel Tooth


Figure 5-9: Tab of Whole Gear Models
6 Conclusion
Four types of gear models (spur gear, helix gear, straight bevel
gear, spiral bevel gear) are plotted by MATLAB codes and tooth
profile modification is successfully implemented with the
established tooth and gear models in this project, finally a GUI is
designed which includes all the contents of this work for the users.
To draw the gear models by MATLAB codes is difficult at the
beginning. Firstly, all the functions and relationships of gear curves
should be found out from mathematic and geometric point of view.
Secondly, all the curves of gear models are made up of a series of
nodes in matrix form, so how to handle with matrix operation like
matrix addition, matrix rotation should be learnt. Thirdly, proper
MATLAB programming languages and functions should be used,
such as ‘for’ loop codes, ‘repmat’ function, and ‘mesh’ function etc.
However, after establishing the gear model codes and tooth profile
modification codes, it would be easy to do tooth profile
modification on the gear models, because MATLAB can import
data from .mat file. So, every time doing the TPM, just load the
TPM code files to the tooth model files, the model with tooth
profile modification can be obtained.
MATLAB GUI is designed at last which gathers all the programming
codes in a single file. GUI provide a more straight and simpler way
for users to obtain gear models and to do TPM, because users just
have to input and click buttons in the interface without knowing
the programming codes.
References
[1] Zaigang Chen, Yimin Shao, “Mesh stiffness Calculation of a spur gear pair with
tooth profile modification and tooth root rack”.

[2] Wenjie Mei,1 Jingzhou Na,2 Fan Yang,3 Guike Shen,1 and Jiawei Chen, “The
Optimal Design Method and Standardized Mathematical Model of Tooth Profile
Modification of Spur Gear”, Hindawi Publishing Corporation Mathematical
Problems in Engineering Volume 2016, Article ID 6347987, 7 pages

[3] https://www.iso.org/obp/ui/#iso:std:iso:23509:ed-2:v1:en:sec:4.4

[4] Wennian Yu, ‘Dynamic modelling of gear transmission systems with and without
localized tooth defects’.

[5] Qibin Wang, Peng Hu, Yimin Zhang, Yi Wang, Xu Pang, and Cao Tong, “A Model
to Determine Mesh Characteristics in a Gear Pair with Tooth Profile Error”, Hindawi
Publishing Corporation Advances in Mechanical Engineering Volume 2014, Article ID
751476, 10 pages

[6] http://www.sdp-si.com/resources/elements-of-metric-gear-
technology/page3.php

[7] https://en.wikipedia.org/wiki/Helix_angle#/media/File:Helix_angle.jpg

You might also like