Click here to read more about our BEST-SELLING
CNC Programming Courses. They cover just about
everything you'll ever need to know, whether you're advanced
or a beginner...
Click
here to read more about them NOW
-- |
Programming feed rate in degrees per
minute - CNC Tech Talk
Feed rate for all linear axes can be specified in
per-minute fashion (either inches or millimeters per minute). For
many machines, feed rate can also be specified in per-revolution
fashion (either inches or millimeters per revolution). This makes
feed rate specification easy. But one constant headache for
programmers is that feed rate for most rotary axes must be specified
in degrees per minute.
Determining degrees per minute feed rate is
cumbersome. This feed rate is based upon the amount of rotary axis
departure, the cutting tool's position relative to the center of
rotation and the desired per-minute feed rate in either inches or
millimeters per minute.
And the actual value of the feed rate word in
degrees per minute can be misleading. For a motion that requires a
large rotary axis departure with the tool close to the center of
rotation, the feed rate word's value may exceed a value of 300
degrees per minute (F300.0)!
For these reasons, CNC setup people and operators
may be reluctant to modify feed rate for rotary axis motions. Again,
a cumbersome calculation must be made, and they may not believe the
results of their calculations. If a mistake is made, the results
could be disastrous.
If your machine has custom macro B (or any version
of parametric programming), you can create an arithmetic function
within the control that determines feed rate in degrees per minute.
The function will accept input (arguments) in the
form of desired per minute feed rate, the tool's position relative
to the center of rotation, the amount of angular departure and the
variable number in which the calculated degrees per minute feed rate
will be stored.
The function will calculate the degrees per minute
feed rate based on the input data and store the results in the
specified variable. This variable will be used to specify the feed
rate in the rotary axis command.
Our example is shown in the inch mode, but it
would be easy to modify this example for Metric.
Here is an example call statement to invoke the
custom macro that calculates degrees per minute feed rate. It will
be placed in the program just prior to the rotary axis command.
N055 G65 P1000 F4.5 D2.25 B30.0 R101.0 (Invoke
custom macro to calculate dpm feed rate)
N060 G91 G01B30.0 F#101 (Make rotary axis motion
at calculated feed rate.)
In line N055, we're calling program O1000 and
passing the desired ipm feed rate with F, the distance from the tool
tip to center of rotation with D, the incremental angular departure
of the rotary axis with B, and the return variable number with R. In
line N060, we're using the feed rate calculated by the custom macro
(variable #10l). Note that this example uses the incremental mode to
rotate the axes, but you could program this motion in the absolute
mode as well. Just remember that in line N055, B must specify an
incremental rotary axis departure amount.
Now here's the short custom macro:
O1000 (Calculate degrees per minute feed
rate)
#[#18] = #2/[[3.1416 * 2 * #7] * #2 /360] / #9
(Store dpm feed rate in variable)
M99 (End of custom macro)
The calculation being done in this custom macro is
based upon the formula: DPM = Angular departure distance / time
required for motion.
Time is equal to motion distance divided by the
desired inches per minute feed rate. We calculate motion distance by
determining the circumference of the tool tip circle (pi times 2
times the radius) and multiplying it times the portion of a full
circle being machined (angular departure divided by 360).
You may be thinking that the programmer should be
doing this calculation while programming the job. But remember, one
of the goals of this technique is to help setup people and operators
easily modify the feed rate for motions involving the rotary axis.
In this example, if the operator wants to change the feed rate for
this motion, he or she simply specifies a new inches per minute feed
rate in line N055 with the F word.
While this specific technique may not be important
to you (maybe you don't even have a rotary axis), be thinking of
times when your setup people and operators must perform calculations
prior to editing a program.
Truly, any time you see employees using a calculator
prior to modifying a program, it should be taken as a signal
that this technique can simplify their efforts.
Author: Mike Lynch
About the Author
See Mike Lynch on MODERN MACHINE SHOP Online at: www.mmsonline.com/experts/lynch.html
|