What's new
What's new

Post Processor for Bobcam Wire FX20 - G54 vs G92?

tzak

Aluminum
Joined
Jun 10, 2016
I purchased Bobcam wire and it has gone from them telling me they can modify a post processor in a couple weeks, into they can look at it 6-8 week after a month has passed (not pleased). Anyway now I have to modify and change the post on my own. It's not terribly difficult and if anyone has one for a Mitsubishi FX20 that would be great. But one thing I'm trying to understand is what benefits or differences are there to use G92 or G54 in programming for part setup to adjust the post accordingly.

I had a test program with G92 and am wondering what is the best practice. Another shop I know says they only use g92. But when running the test program if I don't set the relative and start points exactly the same then I can just be cutting air as I have since learned.

I have used g54 mostly on the mills it makes a bit more sense to me. If I set a x0 y0 as the corner of my part for example and set that as G54 with the machine move to the correct starting point based on the G54 value.

So if G54 is X0 Y0, and the start of the cut is at x1 y-1 will the machine move there first before starting the cut? If so what should my starting blocks look like?

Thanks
 
Using G54 or G92 is really just a personal preference, either works . I would suggest understanding both clearly, then make the decision. Kind of depends on how you set things up and what kind of work you are doing.
 
I use G92 to assign machine position for the program being run. G54, G55 , G56 I use for each piece on the table.

%
L1/100
(INCH)
H001=000.00810
(H900 RESERVED)
H900=000.00000
G70
G90
G92 X0.0 Y0.0
Z1=0.000
Z2=0.585
Z5=1.170
G00 X1.0 Y-1.0
 
How would that look if you used g54 instead of g92, just substitute it?

Not a Mits user, but no, it won't.

With G54 ( with no G92 actually ), you set the X and Y work coordinates when you pickup the edges ( or whatever you use to define the location )
and then in your program you just move to wherever you want to start from and not have any G92 blocks.

Basically, you can use it just like on the mills.

For your example, let's say you pick up the L/R corner as X0 Y0, and set it for the G54 work coord.
Then your program would look like:

%
L1/100
(INCH)
H001=000.00810
(H900 RESERVED)
H900=000.00000
G70
G90
G54
Z1=0.000
Z2=0.585
Z5=1.170
G00 X1.0 Y-1.0
G01 G42 X0 Y-1.0
G01 X0 Y1.0
G01 X-1.0 Y1.0
G01 X-1.0 Y0
G01 X1.0 Y0
G01 G40 X1.0 Y-1.0
M30

That should cut a 1 x 1 square.
 
I purchased Bobcam wire and it has gone from them telling me they can modify a post processor in a couple weeks, into they can look at it 6-8 week after a month has passed (not pleased). Anyway now I have to modify and change the post on my own. It's not terribly difficult and if anyone has one for a Mitsubishi FX20 that would be great. But one thing I'm trying to understand is what benefits or differences are there to use G92 or G54 in programming for part setup to adjust the post accordingly.

I had a test program with G92 and am wondering what is the best practice. Another shop I know says they only use g92. But when running the test program if I don't set the relative and start points exactly the same then I can just be cutting air as I have since learned.

I have used g54 mostly on the mills it makes a bit more sense to me. If I set a x0 y0 as the corner of my part for example and set that as G54 with the machine move to the correct starting point based on the G54 value.

So if G54 is X0 Y0, and the start of the cut is at x1 y-1 will the machine move there first before starting the cut? If so what should my starting blocks look like?

Thanks

I run a different type of machine but,if you set a "0" corner in G54 or any other work coordinate and give yourself a thread point then start to cut your machine will do just that. The only time I tend to use G92 is for sub programs when I am using multiple work coordinates.

Example Program for a Diameter.
I thread in the center so it rapids to x0 y0 then threads.

N100 G90 ;
N110 G54;
N120 G00 X0. Y0. ;
N130 T91 ;
N140 C001 H001 ;
N150 G01 G41 X.0939 Y-.0937 ;
N160 G03 X.1876 Y0. I0. J.0937 ;
N170 X-.1876 I-.1876 J0. ;
N180 X.1876 I.1876 J0. ;
N190 G50 X.0939 Y.0937 I-.0937 J0. ;
N200 G01 G40 X0. Y0. ;
N210 C002 H002 ;
N220 G01 G42 X.0939 Y.0937 ;
N230 G02 X.1876 Y0. I0. J-.0937 ;
N240 X-.1876 I-.1876 J0. ;
N250 X.1876 I.1876 J0. ;
N260 G50 X.0939 Y-.0937 I-.0937 J0. ;
N270 G01 G40 X0. Y0. ;
N280 C003 H003 ;
N290 G01 G41 X.0939 Y-.0937 ;
N300 G03 X.1876 Y0. I0. J.0937 ;
N310 X-.1876 I-.1876 J0. ;
N320 X.1876 I.1876 J0. ;
N330 G50 X.0939 Y.0937 I-.0937 J0. ;
N340 G01 G40 X0. Y0. ;
N350 C004 H004 ;
N360 G01 G42 X.0939 Y.0937 ;
N370 G02 X.1876 Y0. I0. J-.0937 ;
N380 X-.1876 I-.1876 J0. ;
N390 X.1876 I.1876 J0. ;
N400 G50 X.0939 Y-.0937 I-.0937 J0. ;
N410 G01 G40 X0. Y0. ;
N420 T90 ;
N430 M02 ;
 
I wanted to bring this topic back us as I have done some more testing on the machine with regards to setting G54.

I seem to have the post working with the main part of my program looking like so, no sub program.


L100 / TEST G54
(MACHINE MITSUBISHI FX-20 )
G90
G53 G92 X0. Y0.
M20
M78 M78 (Fill Tank)

(2 AXIS ROUGH CUT)
M102
Z1=0.0000
Z2=0.3543
Z5=-0.7087
G00 G90 G54 X-1.2205 Y.15 M91
M80 (Fluid ON)
M82 (Wire ON)
M84 (Machining ON)
E1421 F.160
M90
G01 G41 X-1.2205 Y0. H1=.0081
X-1.2205 Y0.
X-.0197 Y0.


When I move the machine to my part setup I ZERO out my relative position and also make that my G54, (for this example). I can then move the machine anywhere on the table start the job up and the machine will position back to the G54. And the G54 and relative numbers are exactly the same. So the code is doing what it is supposed from what I can understand.

Here is the problem.

I have been setting up my job with a coordinate rotation. Meaning the part is not square in the machine. The machine can calculate this angle and then reset the X an Y to match the new angle making it square for cutting.

When calling up the G53 command at the start of the program with this rotation, the machine thinks the rotation angle is from the machine calibration point (machine 0,0 g53) and is compensating for the angle difference from that point. The further I move away from g53 the larger this number gets between the relative number I what I set ford my G54. If I turn off the rotation then both readouts are correct and the same. If I leave rotation ON the machine does no go to the place I set G54. Now in running jobs I usually use this rotation because I don’t square up parts to the table very often. How can I have the system ignore the rotation based on the g53 from X0 yY0? Having to square up all material is not a realistic option all the time but I'm sure that this can be solved with some G code tweak. Or a way to zero out the g54 to match where the actual X0 Y0 in my program is.

Hope someone can clarify this issue for me.

thanks
 
I wanted to bring this topic back us as I have done some more testing on the machine with regards to setting G54.

I seem to have the post working with the main part of my program looking like so, no sub program.


L100 / TEST G54
(MACHINE MITSUBISHI FX-20 )
G90
G53 G92 X0. Y0.
M20
M78 M78 (Fill Tank)

(2 AXIS ROUGH CUT)
M102
Z1=0.0000
Z2=0.3543
Z5=-0.7087
G00 G90 G54 X-1.2205 Y.15 M91
M80 (Fluid ON)
M82 (Wire ON)
M84 (Machining ON)
E1421 F.160
M90
G01 G41 X-1.2205 Y0. H1=.0081
X-1.2205 Y0.
X-.0197 Y0.


When I move the machine to my part setup I ZERO out my relative position and also make that my G54, (for this example). I can then move the machine anywhere on the table start the job up and the machine will position back to the G54. And the G54 and relative numbers are exactly the same. So the code is doing what it is supposed from what I can understand.

Here is the problem.

I have been setting up my job with a coordinate rotation. Meaning the part is not square in the machine. The machine can calculate this angle and then reset the X an Y to match the new angle making it square for cutting.

When calling up the G53 command at the start of the program with this rotation, the machine thinks the rotation angle is from the machine calibration point (machine 0,0 g53) and is compensating for the angle difference from that point. The further I move away from g53 the larger this number gets between the relative number I what I set ford my G54. If I turn off the rotation then both readouts are correct and the same. If I leave rotation ON the machine does no go to the place I set G54. Now in running jobs I usually use this rotation because I don’t square up parts to the table very often. How can I have the system ignore the rotation based on the g53 from X0 yY0? Having to square up all material is not a realistic option all the time but I'm sure that this can be solved with some G code tweak. Or a way to zero out the g54 to match where the actual X0 Y0 in my program is.

Hope someone can clarify this issue for me.

thanks

I use rotation all the time, different angles with multiple different pieces on the machine table all at the same time.

You need to have Coordinate rotation off it does not like to work with workpoints from my experience ... Workpoints like G54 G55 G56 are for multiple pieces. So do this during your setup: get the angle using coordinate or rotation but plug that angle in the program as "K" rotation.

%
K23.512
L1/101
(INCH)
H001=000.00520
(H900 RESERVED)
H900=000.00000
G70
G90
G92 X0.0 Y0.0
Z1=0.125
Z2=0.0625
Z5=0.0
G00 X0.0 Y-0.3
M20
M78 M78
M80
M82
E951 F0.075 H1
M84
G01 G42 X0.0 Y-0.08125 M90
E3652 F0.05
G03 X0.04747 Y0.06594 I0.0 J0.08125
G02 X0.05039 Y0.075 I0.00292 J0.00406
G01 X0.10139 Y0.075
X-0.12021 Y0.075
X-0.12021 Y0.085
X-0.10139 Y0.085
X-0.10139 Y0.075
X-0.05039 Y0.075
G02 X-0.04747 Y0.06594 I0.0 J-0.005
G03 X-0.03393 Y-0.07383 I0.04747 J-0.06594
M01
M80
M82
M84
X0.0 Y-0.08125 I0.03393 J0.07383
G01 G40 X0.0 Y-0.11125
M91
M21
G00 X0.0 Y0.0
K0.0
G23
%

Hope this helps.
 








 
Back
Top