Gentlemen,
More thoughts on tool length compensation.
When using G17, G18 and G19 to set the working plane, commonly
called the circle interpolation plane, the working tool axis vector
changes at the same time.
G17 sets the working plane as the XY plane and the working tool axis
vector as the Z axis. A tool length offset is applied along the Z
axis. A vector of 0,0,1.
G18 sets the working plane as the XZ plane and the working tool axis
vector as the X axis. A tool length offset is applied along the Y
axis. A vector of 0,1,0.
G19 sets the working plane as the YZ plane and the working tool axis
vector as the Y axis. A tool length offset is applied along the X
axis. A vector of 1,0,0.
The purpose of tool length compensation is to modify the tool
position along the axis of the tool orientation to adjust for a
difference between the actual tool length and the expected
(programmed) tool length. The reason multiple axis tool length
compensation was unavailable when the first machines were built
is the processors were not fast enough to do the calculation as the
machines were running. This is no longer the case.
If, regardless of machine type, the tool length compensation
routine would adjust the axis positions through a matrix built with
the tool axis orientation vector the compensation would be correct.
This could allow the .ini file to configure the tool length
compensation protocol to the machine kinematics.
Also, a G code in the program could reconfigure any tool length
compensation protocol necessary to match any kinematic configuration
and the use of the machine.
Example:
I have a Haas VR-11 machine tool. This is a three axis mill with
a tilting rotary table mounted on the face of the Z axis carriage in
place of the normal spindle. The spindle is mounted on the second
rotary table. This machine has 5 axis tool length compensation. When I
replace a dull or broken cutter I do not have to match the tool length
of the original cutter. I reset the tool length value in the tool
length table. Exactly the same process used for a three axis mill. The
control uses the new value to calculate the compensation values and
applies the new values to the X, Y and Z positions. Sometimes, I must
put an angle head in the spindle to reach a feature to machine it. At
this point the 5 axis compensation is no longer valid. I would need to
reconfigure the compensation protocol to adjust the X, Y and Z
positions to adjust along the actual tool axis vector. This vector is
known, otherwise I would not be able to program or machine the part. A
G code would allow me to introduce this new vector for the control to
use as the tool axis vector.
I know I am asking for a major change. I can do these things with
my programming system. But then I have to reload the program into the
control after I finish processing and post processing the program in
my CAM system. I believe, having this capability in the machine
control would be a major enhancement of the control.
All tool length compensation could be run through the same matrix,
even the simple 3 axis mills or a 2 axis lathe. The configuration file
would set the tool length compensation protocol at machine start up.
This would allow EMC to be configured to utilize tool length
compensation on any machine tool kinematics with simple .ini
parameters and/or G code commands.
thoughts?
thanks
Stuart
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Emc-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-users