Você está na página 1de 5

Dustin K.

Sloane
Pennsylvania State University, Timken Team 1
Timken Company
3/22/18

CENTERING ALGORITHM AND PROCESS


OVERVIEW

This document will review a process developed for the Timken Company
by PSU Timken Team 1. The process will be used to automatically center a
bearing on a magnetic chuck within 50 microns of the rotational center of a CNC
lathe device. This document will be discussing this process at two levels; the
mechanical process used to center the bearing, and the control algorithm that
will be programmed onto an Arduino microcontroller.

SECTION SUMMARY

The concept for the mechanism consists of three actuator-sensor


assemblies, equally spaced at 120 degrees. Each of these assemblies will consist
of a fixed linear actuator stepper motor component, on which a linear
potentiometer is mounted. Each assembly will be handled independently by the
Arduino microcontroller in order to center the bearing.

The concept for the algorithm on the microcontroller involves a closed loop
iterative process. It is closed loop because it will be taking in measurements
actively throughout the process, but iterative in the sense that positional
correction will be done in stages. The goal for this algorithm is that it converges
to a solution within the tolerance of 50 microns within the allotted time of 30
seconds to a minute.
PHYSICAL PROCESS DESCRIPTION
Before describing the algorithm used to position the bearing, it is worth reviewing the
mechanics and behavior of the system. For the prototype that will be created by PSU Timken
Team 1, the bearing must first be placed in the center with a tolerance of .5 cm, and the turn
table must be set to a constant spin rate of no more than 1hz. Upon completing these steps,
the user is responsible for resetting the microcontroller, after which the following stages will
occur automatically:

1. The actuators will move the potentiometers


up to the surface of the bearing and stop
upon reading a .5 cm displacement on the
potentiometers.
2. The potentiometers will read in the runout
(displacement) for at least two full rotations.
3. The Arduino will use the data to calculate the
radial distance from the bearing center to the
chuck center (according to each individual
sensor).
4. The actuators will move forward
independently according to their respective
radial distance corrections. The bearing will
bump off of each actuator arm as it rotates
moving it inwards.
5. Steps b through d will repeat until converging
to a radial distance below a threshold of at
least 50 microns.
6. The actuators will be moved away from the
bearing to their home position.

2
CONTROL ALGORITHM DESCRIPTION

The control algorithm will follow a state-logic control system. Each state will perform a certain
function until reaching some desired trigger point, at which time the control state will change. The
Control algorithm will be organized into the following states:

1. State 1: Initialization
a. The Arduino will move the actuator at a constant rate using a polling detection system
to determine when the potentiometer has been depressed by .5 cm, at which point it
will move to State 2.
2. State 2: Reading data
a. The Arduino will run an interrupt upon the change of state of the rotational encoder. (if
there is no rotational encoder it will simply run an interrupt an interval determined by
the known rate of the turn table divided the number of desired data points)
b. The interrupt will read in the state of each potentiometer into 3 respective arrays of
displacement values.
c. Upon reaching at least one full rotation, the interrupt will be detached, and a function
will be called that calculates the radial distance from the center. The function will work
as follows.
i. Perform a FFT (fast-fourier transform) of data the in each array (which will look
like the graph seen on top below in the time domain).

ii. In the frequency domain, single out the frequency that corresponds to 1hz in
the time domain.

This corresponds be the amplitude of the sine wave that is a least-squares fit to
the data, ignoring frequencies that correspond to surface imperfections. This
sine wave amplitude “R” is the radial distance from the true center and is saved
for each actuator.

3
iii. If the radius is within tolerance, change to state 4, otherwise the process will
move onto to state 3.

3. State 3: Positioning
a. Each actuator will move forward by a percentage of their distance R, close to 100%, but
not too far in order to prevent overshoot (i.e. 99%).

This is the correction that should occur. The original position of an irregular circle shown in yellow and blue,
and in green is shown after centering. Shown right is the original amplitude for the blue reading and the final
amplitude reading for the green. This was tested in Rhino 3d and Grasshopper.

b. Return to state 2.
4. State 4: End process
a. Return all actuators to home position.

4
CONCLUSION
The process described is the method which Timken Team 1 plans to
implement as a solution to the problem given by the Timken Company; to
automatically center a bearing on a magnetic chuck in less than 30 seconds to a
tolerance of 50 microns. This process is shown to involve an iterative approach,
using alternating stages of sensor data collection and motion control.

By the end of the process, the bearing will theoretically have been
successfully moved to the center of the chuck within 50 microns, and in a time
span of at most 30 seconds. However, in practice there may be sources of error in
this process, and these should be considered when developing this process as a
prototype. Some of these sources of error may include the positioning error of
the centering assembly and the rotation rate of the chuck. Such external factors
could affect the rate of the convergence as well as the accuracy. In order to verify
the accuracy in practice, the team will be using a dial indicator to measure the
runout of the bearing surface.

Você também pode gostar