What's new
What's new

Fanuc O M controller, Z axis overtravel on G43

Kjeksen

Aluminum
Joined
Dec 21, 2017
Location
Sogn
Hi there!


Having some issues on the mill.

Each time the G43 H# code gets called the Z axis goes upwards and trips the overtravel.

Im using positive tool compensation and zero the work as the manual says. Zero the axes, probing, writing down the values and adding the lenght of the probe tool to set the final Z work height.


Has anybody had any simular issues? Using Fusion 360 and generic Fanuc postprocessor.
 

Kjeksen

Aluminum
Joined
Dec 21, 2017
Location
Sogn
Exact numbers I dont have in front of me now. The probe is about 205mm long when the dial is zero, and the part wich
sits in the vice are approx. value of -250. So in the Z offset at G54 it is -455 point something. According to user manual, that is the correct way to set Z offset.

Been a while since I made som parts on this mill, and I had this problem once before. I cannot remember what was the issue then, but I have made parts on it.
 

706jim

Stainless
Joined
Jun 14, 2006
Location
Thunder Bay Canada
The problem you mention commonly occurs when the positive length of the tool exceeds the distance down to the fixture zero.

Can you check distance to go screen when starting the G43 line?
 

Kjeksen

Aluminum
Joined
Dec 21, 2017
Location
Sogn
Yep, will check. But it is shell mill with barely 100mm`s of length and is only a 25mm steel plate inserted into a vice..
Should not have that issue?
 

DMF_TomB

Diamond
Joined
Dec 13, 2008
Location
Rochester, NY, USA
Hi there!


Having some issues on the mill.

Each time the G43 H# code gets called the Z axis goes upwards and trips the overtravel.

Im using positive tool compensation and zero the work as the manual says. Zero the axes, probing, writing down the values and adding the lenght of the probe tool to set the final Z work height.


Has anybody had any simular issues? Using Fusion 360 and generic Fanuc postprocessor.

if z axis all the way up normally you would say G43 H1 Z30. (if H is 10.0")(tool tip at Z30.) if Z40. is as high as machine Z will go obvious it will alarm if cant go any higher in Z
 

rainman

Cast Iron
Joined
Sep 10, 2008
Location
Orlando, FL
Your G54 (or whatever) has to have a negative Z component of a larger value than your tool length or it will indeed go up.
 

Kjeksen

Aluminum
Joined
Dec 21, 2017
Location
Sogn
My tool offset is 100.323 and Z offset (G54) is at -457.501. Using G43 as positive tool offset. G43 Z15 H2 is
the code that makes it trip the alarm as the Z runs out of range.

I checked the distance to go, and Z values rockets to 100 or something and moves up while doing it
and then trips the alarm.
 

Kjeksen

Aluminum
Joined
Dec 21, 2017
Location
Sogn
Snippet of G code.


But the program stops at the G43 code.


%
O1035
(T2 D=80. CR=0. - ZMIN=-2. - FACE MILL)
G90 G94 G17 G49 G40 G80
G21
G28 G91 Z0.
G90

(FACE1)
T2 M06
S2500 M03
G54
M08
G00 X292. Y-97.5
G43 Z15. H02
G00 Z7.25
G18 G03 X284. Z-0.75 I-8. F1000.


etc...
 

angelw

Diamond
Joined
Sep 10, 2010
Location
Victoria Australia
My tool offset is 100.323 and Z offset (G54) is at -457.501. Using G43 as positive tool offset. G43 Z15 H2 is
the code that makes it trip the alarm as the Z runs out of range.

I checked the distance to go, and Z values rockets to 100 or something and moves up while doing it
and then trips the alarm.

Hello Kjeksen,
Based on your numbers, assuming they're correct, and your program snippet, you shouldn't have an issue. The way you're setting the Work and Tool Offset, it seems that the Work Offset is the distance from the Spindle Nose (Gauge Line) to Z Zero on the Workpiece and your Tool length is from the Spindle Nose to the tool tip. This being the case, its correct that the Tool Length Offset is a Positive Value and Work Shift is Negative.

Check that there is no value set in the Z register of G53. Any value registered there value will be added to all Workshift values.

Regards,

Bill
 

Kjeksen

Aluminum
Joined
Dec 21, 2017
Location
Sogn
After much headscratching and wtf moments I am getting closer to the issue. But I cannot explain it, since CNC`ing is pretty new to me.

Every time a tool gets called up something happens to the coordinate system. Tool subprog is this:

O9000;
M09;
G91 G28 Z0;
T#149 M06;
M08;
M99;
%


If I dont call up a tool and run that sub everything is fine and works like a charm. Why is that?
 

angelw

Diamond
Joined
Sep 10, 2010
Location
Victoria Australia
After much headscratching and wtf moments I am getting closer to the issue. But I cannot explain it, since CNC`ing is pretty new to me.

Every time a tool gets called up something happens to the coordinate system. Tool subprog is this:

O9000;
M09;
G91 G28 Z0;
T#149 M06;
M08;
M99;
%


If I dont call up a tool and run that sub everything is fine and works like a charm. Why is that?

Hello Kjeksen,
I believe the following will explain your issue.

Program O9000 is called via a “T” code by setting the TCS parameter bit to “1”. In this case, the M06 in your program O1035 is redundant. Accordingly omit the M06 in your Tool Call Block (T2 instead of T2 M06). The Tool Number to call in the Tool Change Macro is stored in Common Variable #149 when the program is called by a “T” Code.

When program O9000 is called, the Group 03 G Code(G90 - G91) will be set to G91 (Incremental) irrespective of what Group 03 G Code was Modal in your Main Program. Program O9000 as it stands will return control to the calling (Main) program with G91 as the Modal Group 03 G Code. Accordingly, when the following Block is executed:

G43 Z15. H02

it will be executed in Incremental Mode. In this case, if the Z axis is at the Reference Return Position (Machine Coordinate Z0.0), then the Z axis will go into Z+ over-travel immediately when G43 Z15. H02 is executed. Actually, I’m surprised that your not reporting an error in the X, Y positioning when G00 X292. Y-97.5 is executed after a Tool Change has been called, as this movement would also be in Incremental Mode.

The reason the problem doesn’t occur when a Tool is not called is that G90 is specified after the G28 G91 Z0 in your program, but does occur when a Tool is called because the G90 in your Main Program is specified before the Tool Call. To circumvent this problem, modify your Tool Change Program as shown in Red following

O9000;
#1 = #4003 (STORE THE CURRENT GROUP 03 G CODE)
M09;
G91 G28 Z0;
T#149 M06;
M08;
G#1 (RESTORE THE ORIGINAL GROUP 03 G CODE)
M99;
%

The above will ensure that the Group 03 G Code that was Modal before the Tool Change Call is restored before control is returned to the Main Program (Calling Program).


Regards,

Bill
 
Last edited:

Kjeksen

Aluminum
Joined
Dec 21, 2017
Location
Sogn
Hello Kjeksen,
I believe the following will explain your issue.

Program O9000 is called via a “T” code by setting the TCS parameter bit to “1”. In this case, the M06 in your program O1035 is redundant. Accordingly omit the M06 in your Tool Call Block (T2 instead of T2 M06). The Tool Number to call in the Tool Change Macro is stored in Common Variable #149 when the program is called by a “T” Code.

When program O9000 is called, the Group 03 G Code(G90 - G91) will be set to G91 (Incremental) irrespective of what Group 03 G Code was Modal in your Main Program. Program O9000 as it stands will return control to the calling (Main) program with G91 as the Modal Group 03 G Code. Accordingly, when the following Block is executed:

G43 Z15. H02

it will be executed in Incremental Mode. In this case, if the Z axis is at the Reference Return Position (Machine Coordinate Z0.0), then the Z axis will go into Z+ over-travel immediately when G43 Z15. H02 is executed. Actually, I’m surprised that your not reporting an error in the X, Y positioning when G00 X292. Y-97.5 is executed after a Tool Change has been called, as this movement would also be in Incremental Mode.

The reason the problem doesn’t occur when a Tool is not called is that G90 is specified after the G28 G91 Z0 in your program, but does occur when a Tool is called because the G90 in your Main Program is specified before the Tool Call. To circumvent this problem, modify your Tool Change Program as shown in Red following

O9000;
#1 = #4003 (STORE THE CURRENT GROUP 03 G CODE)
M09;
G91 G28 Z0;
T#149 M06;
M08;
G#1 (RESTORE THE ORIGINAL GROUP 03 G CODE)
M99;
%

The above will ensure that the Group 03 G Code that was Modal before the Tool Change Call is restored before control is returned to the Main Program (Calling Program).


Regards,

Bill



This did the trick! Thanks Bill.
 

voicurob

Plastic
Joined
Jun 18, 2021
Hello,

I have a similar problem on a fanuc O-MC machine from 1998.
When i try to use multiple work coordonates, in this case G54, G55 and G56, and it gets to G55 at the line with G43 in it, it goes z overtravel.
If i run the same program with just one woork coordoante system (doesn't matter which one), it runs fine. Below you can see a part of the program. I use Fusion360 as CAM and the Fanuc post processor from fusion library, if that matters in any way.
Program.jpg
 








 
Top