Let me take a crack at this.
I'm thinking because you are using I,J instead of R's when its mirroring they are backwards in your sub program.
Just a guess.
I started using G68 (rotation ) to correct alignment problems with our fixtures.
It works great until I activate G101 (mirror image).
There are two sets of code below. The first set is from the main program, the second is the sub.
It runs good until G101 is activated and returns to the sub.
At that point I get alarm 304 (INVALID I,J, OR K IN G02 OR G03).
There is nothing wrong with the circular code or it would not have run at G54 and G55.
I am using G68 all through the main and it works fine if G101 is not active.
HAAS is working on this for me, but I have not received anything back yet.
( .32 CHF MILL )
( PRE REAM CHF )
( SIDE 2 )
T10 M6
T6 M0
G68 X0 Y0 R-.184
G0 G90 G55 X0 Y.1476 M88
G43 H10 Z1. M31
S10000 M3
Z.2 M8
G4 P3.
M97 P70
G54 M97 P70
G101 X0 Y0
G56 M97 P70
G57 M97 P70
G100 X0 Y0
G69 M98 P28
( .32 CHF MILL SUB )
( PRE REAM CHF )
N70
G0 G90 X0 Y.1476
Z.2
G1 Z.025 F1.
X.0286
G3 X0. Y.1762 I-.0286 J0.
X-.0286 Y.1476 I0. J-.0286
X0. Y.1191 I.0286 J0.
X.0286 Y.1476 I0. J.0286
G1 X0
G0 Z.2
X0 Y-.1083
G1 Z.025
X.068
G3 X0. Y-.0403 I-.068 J0.
X-.068 Y-.1083 I0. J-.068
X0. Y-.1762 I.068 J0.
X.068 Y-.1083 I0. J.068
G1 X0
G0 Z.2
M99
Let me take a crack at this.
I'm thinking because you are using I,J instead of R's when its mirroring they are backwards in your sub program.
Just a guess.
Have you tried taking out the G68 and running it in Graphics?
I use G101 X0 Y0 on numerous programs with I and J in the G02 and G03 commands without problems. Mirroring both axes is equivalent to rotating 180 degrees.
You could try putting the G68 in the subprogram.
An open mind is a virtue...so long as all the common sense has not leaked out.
I use two different CadCam programs.
Post processors for both output circular code as IJK, not R.
G101 runs fine without G68, both in real time and graphics.
I have been using G101 for years without problem until the addition of G68.
I will try G68 in the sub.
Yes, changing from IJK to R gets around the issue.
I think the factory needs to address this problem.
Here is the new sub that does the job:
( .32 CHF MILL SUB )
( PRE REAM CHF )
N70
G0 G90 X0 Y.1476
Z.2
G1 Z.025 F1.
X.0286
G3 X-.0286 R.0286
X.0286 R.0286
G1 X0
G0 Z.2
X0 Y-.1083
G1 Z.025
X.068
G3 X-.068 R.068
X.068 R.068
G1 X0
G0 Z.2
M99
I get the use of G68, but why would you need to mirror at the control when you are programming in CAM?
My fixtures hold four workpieces.
They are are symetrical about the Y axis, but not the X (use G101).
I program for one part and set G54-G57 in the main.
The main calls the sub program to mill a single part feature.
I need to use G54 - G58 to adjust for positional variation in the fixtures.
The use of G68 allows me to remove more positional error.
I opend up my post processer for BobCad and found it real quick and easy to change the output from IJK to R.
I will manually update existing code from IJK to R.
Thanks again to all for the help.
I would have just made my work holding correct to begin with.
http://www.kirkcon.com/
Thats nice.
I would have as well.
These fixtures were made long before I came to work here.
Fix them. Mill edges square with fixtured part location. You aren't talking about more than a few thousandths I am sure. Either that or reprogram with rotation taken into account.
http://www.kirkcon.com/
The bad thing about using the mirror function is that it changes tool direction too and that is generally not a good thing as it can change sizes on some things to a small degree and presents other problems.
If there is a way to fix the fixture or modify the program, then that is the way to go.
But hey, parts is parts huh!
Mike
Haas VF-2, HA5C, Hardinge CHNC 1, BobCAD V23