Have you tried using G50 to set your C position?
G28 H0
G50 C0
(run 1st shape)
G28 H0
G50 C120.
(run 2nd shape)
G28 H0
G50 C240.
(run 3rd shape)
I am using a Daewoo Puma 240M with live tooling and fanuc 21-i control, I have to machine 3 identical shapes spaced equally on the outside of a part. I have programmed it once and I am wondering how to do the other 2 shapes.
I would like to use the C-axis (chuck) workshift to accomplish this.I would like to machine my first shape using g54 with the c axis offset set at 0, go home load g55 which has a c-axis offset of 120° Run the same code which has just been copied and pasted and then go home load g56 with a c offset of 240 and then run the code again. In the past i tried something similar and didn't have any luck. The machine did not take the C offset into consideration. I have done parts using this technique by offsetting the Z axis in g54 and g55 to be able to do 2 parts in a row and it worked fine. I know that if necessary i can just add 120° to each move in the program for the 2nd shape but there has got to be a better way.
Any suggestions would be great.
Brad
Have you tried using G50 to set your C position?
G28 H0
G50 C0
(run 1st shape)
G28 H0
G50 C120.
(run 2nd shape)
G28 H0
G50 C240.
(run 3rd shape)
Or, why dont you program the shape in a sub-program
and then call your 3 postions and just call the sub-program 3 times....
Save you the hassle of inputting the code 3 times over.....
There are many different ways that you can approach this to make it better. I would personally use variables to track and adjust were the C-position is and keep adjusting and setting the G55 C-axis variable as you go until you cut all 3 pcs. This would also give you the ability to start at whatever piece that you wanted in case you have to ditch the program after you have already done 1 or 2 pcs.
However the easiest way to set it up for now would be to use as Dcoupar has stated by shifting the C-axis via G50 command. Or if you insist on using G54,G55,G56 for your 3 parts you could make your routine to cut the parts a sub program like ScoobRs said. Say your sub is program 1000 you then make your main program as follows.
O1234
G54M98P1000
G55M98P1000
G56M98P1000
M30
Stevo
Thanks for the help. I ended up using the G50, it worked perfectly.