Gearmake is a small utility program to help an engineer quickly visualize a gear profile. Gearmake is being developed on a Pentium III-450 running slackware linux, and written in the C programming language. OpenGL and GLUT libraries are used to for graphical display. The program will regenerate the gear and rescale the viewing window whenever a gear parameter is changed. This program was written as a final project for MAE 152 at UCSD.
Gearmake generated the involute gear profile through joining piece-wise functions of angle (theta). Assuming the standard positive x-axis corresponds with theta=0, the program steps from theta=0 to theta=2*pi. Along the way, the proper radius is evaluated. The steps below describe the basic algorithm as of version 0.03:
- Find the space occupied by each complete occurance of a gear tooth. This is evaluated as delta_theta = (2*pi) / (number of teeth).
- Calculate inner, outer and pitch diameters. The pitch diameter is given by ( diametral pitch ) * ( number of teeth ). The outer and inner diameters are the pitch diameter add/subtract addendum. ( for simplicity, the program will consider addendum = dedendum). The addendum is given by 1 / ( diametral pitch)
- Start a loop which will assign the beginning value of theta to the piecewise radial function. The values of theta assigned will be 0, 1*delta_theta, 2*delta_theta, ... , (number of teeth - 1) * delta_theta.
- The piecewise function is:
- involute curve from given value of theta until r > r_outer. return theta at r = r_outer.
- outer radius from theta (from step 1) to base thickness (radians) - current value of theta. this is done because the involute tooth profile is symmetric, and the radial distance spanned by the outer radius is = radial thickness of tooth base - 2 * radial thickness of the involute.
- mirrored/reverse involute curve from theta ( same theta given to upper limit in previous step). proceed until r < r_inner. return theta.
- proceed from value of theta given in step 3 to the next beginning of the piecewise function, at index * delta_theta
- The user is then allowed to modify the values. The radial thickness of the tooth base may be modified independently of the other parameters.
- When the user is satisfied with the result, gearmake allows the user to adjust resolution prior to DXF export.