586,111 active members*
3,413 visitors online*
Register for free
Login
Page 1 of 2 12
Results 1 to 20 of 36
  1. #1
    Join Date
    Jun 2003
    Posts
    242

    Chuck open/close M-codes on 6T-B

    I've been reading through the posts and have not found a good explanation of how to determine if my lathe with a Fanuc 6T-B version 05 has an M-code for opening and closing the chuck. The machine has no port to connect a bar feeder so it likely was never used that way but I'd like to use a bar puller and need to know how to determine what M codes are used, apparently they are no always the same on different machines. Some have suggested that even if you have an M code for the chuck, it can't be used in MDI, so how do I find it? I've also seen where some one suggested having to use M31/M32 codes to over ride openning the chuck while a program is running.
    Any help would be appreciated.

  2. #2
    Join Date
    Feb 2009
    Posts
    6028
    100% builder specific. Has nothing to do with the Fanuc side of things. Post the machine type, someone can can help.

  3. #3
    Join Date
    Jun 2003
    Posts
    242
    The machine is an old, 1985, YAM CK-2.

    I have another issue with it as well. In many of the posts here relating to the 6T control, from what I've read, the recommended way to home the machine for a tool change is;
    G00 G28 U0 W0 TXX00;
    G50 XXX.XX ZXX.XX;
    Then call up the next tool but tmy machine won't home using that first line, it doesn't bring up an alarm, it just doesn't do it and the program stops. Any ideas what I'm doing wrong?

  4. #4
    Join Date
    Feb 2009
    Posts
    6028
    Try removing the T call on the G28 line.

  5. #5
    Join Date
    Aug 2011
    Posts
    2517
    hmm yeah most machines you can't move and tool change at the same time. T should be on a line where the machine is not moving in X/Z

    most common open/close M codes for Fanuc are M10/M11
    otherwise, in MDI type every M code from M0 to M99 one at a time, press start and see what happens.

  6. #6
    Join Date
    Jun 2003
    Posts
    242
    On the G28 line I was just cancelling the offsets on the way home as I read on a post somewhere in here that not cancelling them will lead to the start point of the program moving, "When using G50 coordinate set programming, you should cancel the tool offset before the next tool G50 is executed. If you don't you'll get a gradual creep of the start point of the program." What I have done is move the Txx00, offset cancel to the next line. I don't understand how the start point of the program would creep, maybe the offsets would accumulate, but I go to home to start the program so I'd think everything should cancel out at the home position.

    As for MDIing through everything from M10 to 97, I thought of that but someone said that open and close the chuck in MDI wouldn't work but that doesn't seem logical, but then again .........

  7. #7
    Join Date
    Aug 2011
    Posts
    2517
    the creep comes from the wear offset. G50 does not move the axis it just sets the display to X/Z something. but a Txxxx moves the axes because of the wear offset. so not cancelling it before reading the next G50 will give you a G50 position setting error amounting to the wear offset of the previous tool. on a machine using geometry offsets its not necessary to cancel offsets, but it's good practice to do it.

    MDI M codes work fine. just try it.
    however note you need to open/close in auto because even though open will work it wont let you close because the chuck clamp interlock prevents it (because chuck is open). if you do it in a small program or even in MDI M11;M10; with single block off it'll work fine.

  8. #8
    Join Date
    Jun 2003
    Posts
    242
    Quote Originally Posted by fordav11 View Post
    the creep comes from the wear offset. G50 does not move the axis it just sets the display to X/Z something. but a Txxxx moves the axes because of the wear offset. so not cancelling it before reading the next G50 will give you a G50 position setting error amounting to the wear offset of the previous tool. on a machine using geometry offsets its not necessary to cancel offsets, but it's good practice to do it.
    So if I program;
    G28 U0 W0; (old tool going to home)
    T0800; ( cancel offset of old tool)
    T0900; (call new tool)
    G50 Xxx Zxx;
    I should be OK?

    Quote Originally Posted by fordav11 View Post
    MDI M codes work fine. just try it.
    however note you need to open/close in auto because even though open will work it wont let you close because the chuck clamp interlock prevents it (because chuck is open). if you do it in a small program or even in MDI M11;M10; with single block off it'll work fine.
    Project for today! Thanks for the help.

  9. #9
    Join Date
    Aug 2011
    Posts
    2517
    almost. cancel the tool offset first before going home.
    to call the new tool you would use T0909. if you use 00 on the tool offset you have no offset even if you put one in the offset page for that tool.

  10. #10
    Join Date
    Jun 2003
    Posts
    242
    What I've been diong is

    G28 U0 W0; (old tool going to home)
    T0800; ( cancel offset of old tool)
    T0900; (call new tool)
    G50 Xxx Zxx;
    G0 Xxx.xx Zxx.xx T0909

    Will the tool not move if I cancel the offsets _before_ I go home, i.e.;

    T0800;
    G28 U0 W0;?

    I've not tried it so I don't know but comments I've read suggest that if you, for instance, replace the T0900 with T0909, the turret will move to reflect the new offsets. I've found that I can't combine the offset cancel and the G28 move on this machine so that's why I have been doing it the way I have.
    I understood that you should call the tool with no offsets and then call the offsets while you move into position to start the cut.

    BTW, I started going through the M codes, even though the panel switch for the tailstock shows M60 and M61, they don't work either. Another maintenance call I guess. #@%*#

  11. #11
    Join Date
    Aug 2011
    Posts
    2517
    cancelling or not cancelling the offset has no effect on the G28 movement. G28 means go home via another position. U0W0 is incremental and therefore no movement so the tool goes directly home from there. the tool will move regardless of the offset or not. the problem is after you reach home then cancel the offset the tool will move by the offset amount when the offset is cancelled. then you won't be at home. the zero return lights will not be on either because of the tiny movement.

    cancelling two tools together is not the right way to do it either.

    it's really not that complicated. the correct format is like this....

    N1 G50 X123.456 Z123.456 S1500
    G0 T0101
    G96 S350 M3
    G0 X100.0 Z10.0 M8
    (do some machining here)
    G0 X300.0 Z300.0 M9
    T0100 M5
    G28 U0 W0
    M1
    N2 G50 X123.456 Z123.456 S1500
    G0 T0202
    G96 S350 M3
    G0 X100.0 Z10.0 M8
    (do some machining here)
    G0 X300.0 Z300.0 M9
    T0200 M5
    G28 U0 W0
    M1

    etc etc etc

  12. #12
    Join Date
    Sep 2010
    Posts
    1230
    Quote Originally Posted by L98FIERO View Post
    I've not tried it so I don't know but comments I've read suggest that if you, for instance, replace the T0900 with T0909, the turret will move to reflect the new offsets. I've found that I can't combine the offset cancel and the G28 move on this machine so that's why I have been doing it the way I have.
    I understood that you should call the tool with no offsets and then call the offsets while you move into position to start the cut.
    What you're saying is correct. With a Series 6T control the slides will move by the offset registered if the tool is called as T0101 for example, and the offset cancelled with T0100, without any actual move command.

    If the G50 is being executed from the Reference Return position its common to use the following format.
    (FIRST TOOL
    N1 G21 G40
    G28 U0.0 W0.0
    G50 X111.111 Z111.111
    G50 T0100 S3000
    G96 S250 M03
    G00 X75.000 Z10.000 T0101 M08
    ---
    ---
    G00 X111.111 Z111.111 T0100 M09
    M01
    (NEXT TOOL)
    N2 G28 U0.0 W0.0
    G50 X222.222 Z222.222
    G50 T0200 S3000
    G96 S250 M03
    G00 X75.000 Z10.000 T0202 M08
    ---
    ---
    G00 X222.222 Z222.222 T0200 M09
    M01
    ETC

    When calling and cancelling offsets with no actual move command, small jerky movements will be apparent. By combining with an actual move, the tool offset application and cancel occurs concurrent with the move and is not seen. Also, if the G50 location is at the Refernce Return position, by coding the G28 U0.0 W0.0 immediately before the execution of the G50, that is, the first line of code for each new tool, there is a far reduced chance of the tool being out of position through a G50 being executed with the slide in the wrong position.

    Using G28 to return the tool to home at the conclusion of its operation is one way of geeting there, but its more likely that an operator may intervene between tool operation, which may mean moving the slide etc to change an inset for example. Having a G28 command at the end of a tool operation will not prevent the next G50 from setting an incorrect coordinate for the next tool if the tool has been move during any such intervention and not returned to the correct position before the G50 is ececuted. Having a G28 block at the head of each tool operation will avoid this problem.

    Regards,

    Bill

  13. #13
    Join Date
    Jun 2003
    Posts
    242
    Correct me if I'm wrong but in fordav11s format, are you moving away from the part to cancel the offsets so that it doesn't hit the part? If you had a very large offset, 1" for instance, would the tool move that much when the offset was cancelled? I'll have to try changing the offsets while at the home position, that would explain the comments I read about the start position creeping. In Bills format the offsets are cancelled during the move so even if that change was made you wouldn't see it, it seems a little 'cleaner' but again, my control doesn't seem to like combining the G28 and the offset cancel in one move although it doesn't seem to have a problem with invoking the offsets during a move. There must be something I'm missing in the program to cause the issues with the offset cancel move.
    When I return to home with the G28 when using a bar stop and the tailstock, to move the stop away I've been using a line like G28 U6. W.1, which by definition is return to home through an intermediate position. I haven't seen anyone describe using G28 in that way but it's working for me, is it an appropriate command? Can I run into unexpected problems with this? If I can find a way to combine the move and the offset cancel, this would seem to be the easiest/best way.
    BTW, thanks for the help, the machine is not very prductive when you have to single block through everything multiple times to make sure thing are working the way they are supposed to!:cheers: to both of you!

  14. #14
    Join Date
    Aug 2011
    Posts
    2517
    If you had a large offset of say 1" and you moved only 0.5" away, yes the tool would come back and hit the job when the offset is cancelled. But as far as I know you can't put in such a large offset. I don't remember the 6T limit but on modern controls the limit is usually 0.100" or 10mm. a parameter sets this number and it can be set to anything from 0.001 to 999.999
    my method and format is proven tested on real Fanuc 6T's. I can't comment about other formats & methods. however going home for each tool change is not always the best way. I worked a 6T machine that had a slow rapid and had a 20 foot bed. going home for each tool was not an option. G50's were calculated from a position about 12" away from the part. 1st tool was touched on the face of the part to set G50 Z0 then from there an index position was set and each following tool and G50 was set from that position. So you don't necessarily need to be at home as long as your G50 takes into consideration the actual position where the G50 is calculated. You can also use G30 if your machine has it (2nd Reference Point) as the index position. This X/Z position can be set using parameters. But G30 is usually an option.

  15. #15
    Join Date
    Jun 2003
    Posts
    242
    Quote Originally Posted by fordav11 View Post
    I worked a 6T machine that had a slow rapid and had a 20 foot bed. going home for each tool was not an option. G50's were calculated from a position about 12" away from the part. 1st tool was touched on the face of the part to set G50 Z0 then from there an index position was set and each following tool and G50 was set from that position. So you don't necessarily need to be at home as long as your G50 takes into consideration the actual position where the G50 is calculated. You can also use G30 if your machine has it (2nd Reference Point) as the index position. This X/Z position can be set using parameters. But G30 is usually an option.
    Can you explain using the G50 when not at the machine home in more detail, I had someone explain this to me but his writing is so close to indeciferable that I can't tell what he wrote. My machine is a chucker, only 18" c-c so it's not as much of an issue as having a 20 foot bed, but it is slow so if I can get it to barfeed and have a job with several tool changes the time savings could be significant. As it is, a tool change with a 13" Z axis move is 6 - 7 seconds so the time could add up quickly. Also, I haven't tried it but this seems to be a pretty basic machine so, if it's an option, I doubt that it has G30 but I'll get into the manual and see if I can set a second reference.

  16. #16
    Join Date
    Aug 2011
    Posts
    2517
    you still need a reference point, like the face of the part. touch that with the first tool manually. then in the program you would have...

    %
    O1234
    N1 G28 U0
    N2 G50 X12.345 Z0 (or maybe Z0.01 to face 0.01")
    G0 T0101
    G96 S350 M3
    G0 X10.0 Z0 M8
    G1 X0 F0.01
    G0 X10.0 Z0.05
    G71 P3 Q4 U0.02 W0.005 D2000 F0.014
    N3 G0 X5.0
    G1 Z0
    G3 X8.0 Z-1.5 R1.5
    G1 Z-3.0
    X9.0 Z-6.0
    Z-10.0
    N4 X10.0
    N5 G0 X20.0 Z15.0 M9
    T0100 M5
    G28 U0 (this is optional)
    M1
    N6 G50 X9.345 Z10.989 (without G28 above G50 is set from position X20.0 Z15.0 of previous tool, otherwise G50 is set from X home and Z15.0 of previous tool.
    G0 T0202
    G96 S400 M3
    G0 X10.0 Z0.05 M8
    G70 P3 Q4
    G0 X20.0 Z15.0 M9
    T0200 M5
    G28 U0 (this is optional)
    M1

    etc

    Now here's the catch.... if you want to skip to just T2 from the beginning you must touch the face with T1 and read the G28 and G50 lines (N1 and N2). Note if you already faced 0.01 off the face you must manually move Z away 0.01 so the G50 sets the correct position (such as if doing a rework). Then you can switch to edit and cursor to N5 then back to memory and press start. If you have other tools below and you want to go there instead you must read all of the G50 lines and end positions (index point) as well.

    basically (while in single block) read G28 and G50, skip to index position then read each line from there up to and including the next G50, skip to index position, read from there to next G50, skip to index position, read from there to the next G50 etc etc etc

    It requires more brain work and the G50 setting process is fairly advanced. I would not recommended this for an average button-pushing [L]user.
    It's more useful if you have pre-turned parts that you are finishing and machining a set amount off the face such as 0.01". you simply touch the face with T1 and then press start and it's all automatic after that.

    Disclaimer- To the whiners and wingers: I am not saying do this. The information is simply presented here because the OP asked :-)

    P.S. If your machine is a later Series 6 Model B you may be able to get geometry offsets added as an option then you will not have to deal with G50's at all. Much, much nicer because you don't need to worry about going home each time as a reference point :-)

  17. #17
    Join Date
    Jun 2003
    Posts
    242
    Thanks, it will take a little playing to get comfortable with it but it should make life easier in the long run!

  18. #18
    Join Date
    Aug 2011
    Posts
    2517
    I made a few edits and added some more info so re-read if you missed it :-)

  19. #19
    Join Date
    Sep 2010
    Posts
    1230
    Quote Originally Posted by L98FIERO View Post
    Can you explain using the G50 when not at the machine home in more detail, I had someone explain this to me but his writing is so close to indeciferable that I can't tell what he wrote. My machine is a chucker, only 18" c-c so it's not as much of an issue as having a 20 foot bed, but it is slow so if I can get it to barfeed and have a job with several tool changes the time savings could be significant. As it is, a tool change with a 13" Z axis move is 6 - 7 seconds so the time could add up quickly. Also, I haven't tried it but this seems to be a pretty basic machine so, if it's an option, I doubt that it has G30 but I'll get into the manual and see if I can set a second reference.
    The way you apply the G50 from the Reference Return Position is a relatively safe method, as the start position (Reference Return) is an easily located position on the slides. However, its quite common to run a machine using G50 Coordinate System Setting from a short G50 position, particularly in a production environment.

    It would seem that you know how to establish the G50 coordinates when using the Reference Return Position as the start point, and I'm sure you've noticed that the Z G50s in particular can vary quite significantly. Lets say that there's a 100mm length variation between the shortest and longest tool in Z. Correspondingly, the Z G50s for the tools will vary by 100mm. They vary by 100mm when the start point is the Reference Return position, and by the same 100mm if the start point is moved 200mm closer to the chuck.

    Staying with the Z axis example for the moment, if you shift the start position closer to the chuck in Z by 200mm then the Z G50 used from that closer start position will be 200mm less than the Z G50 when the Reference Return position is the start point. Basically, its no more complex than that. There is more than one way of establishing the X Z G50, but finding the G50 from the Reference Return and then subtracting the new start position shift amount from the Reference Return is one.

    One advantage of using the Reference Return Position as part of the setup for the short G50 position, is that if at any time you get lost due to an unexpected, unplanned program halt, the short G50 position is easily reestablished by performing a Reference return and moving the slides the shift amount back to the short G50 position.

    Moving the slides back to the short G50 position can be automated to some extent as shown in the following code example:

    (X, Z G50 AT REFERENCE RETURN = G50 X300.0 Z400.0)
    N1/G28 U0.0 W0.0
    /G00 U-100.0 W-250.0
    G50 X200.0 Z150.0
    G50 S3000 T0100
    G96 S200 M03
    G00 X100.0 Z10.0 T0101 M08
    MACHINING CODE HERE
    ----------------
    ----------------
    ----------------
    G00 X200.0 Z150.0 T0100 M09
    M01
    (NEXT TOOL)
    (X, Z G50 AT REFERENCE RETURN = G50 X250.0 Z350.0)
    N2/G28 U0.0 W0.0
    /G00 U-100.0 W-250.0
    G50 X150.0 Z100.0
    G50 S3000 T0300
    G96 S200 M03
    G00 X100.0 Z10.0 T0303 M08
    MACHINING CODE HERE
    ----------------
    ----------------
    ----------------
    G00 X150.0 Z100.0 T0300 M09
    M01

    and so it goes on.

    If the start position for each respective tool is not a consistent distance away from Reference Return, then the appropriate Incremental Shift amount is coded in the G00 U_ W_ block for each tool. If you need to repeat an out of sequence tool, or break into the program at a point other than the start, just place the cursor at the start of the Tool Operation block (the sequenced numbered block), and proceed as for lost position following.

    If at any time the start position is lost through an unexpected program interruption, the cursor is placed at the start block of the current tool, block delete is set to off and cycle start pressed with the control in Auto mode. The action will be for:
    1. a Reference Return to be executed

    2. the slides moved the incremental shift amount to the short G50 location

    3. the coordinate system is set to the short G50 position.

    Once the slides move to the cutting zone, the block delete switch is turned back to on. If this step is overlooked, there is no harm done; the current tool will return to the short G50 position at the end of its operation, and when the next tool operation executes, it will move to the Reference Return position as in the explanation above. Its a fairly safe method when using short G50's.

    In Australia, the metric mode is more frequently used I suspect than in countries that are more accustomed to the Imperial system. When using Metric programs with a machine that uses G50 Coordinate System setting, I round down to the next integer value of the actual G50. For example, the actual X Z G50 of X300.456 Z305.989 becomes G50 X300.0 Z305.0 in the program. The trailing decimal component is registered as a a negative offset for the respective X and Z offset. The offsets will initially be no larger than 0.999mm. Using the imperial system is not quite as clean; a 0.9999" offset is significant. When running an Imperial program, I round down to the next 0.1" and set the remainder of the decimal component as an offset.

    With turning and boring tools in particular, its seldom that the G50 for X and Z will be decimal component accurate from when a particular job is run for the first time to any subsequent repeats of the job in the future. But normally the integer component of the G50 will be the same. By rounding down to the next integer value, no calculation is required, you simply use the observed integer value for the G50 and the observed decimal component as the offset. This makes for a tidier program and one where the G50 seldom needs to be modified.

    Regards,

    Bill

  20. #20
    Join Date
    Jun 2003
    Posts
    242
    My hat is off to both of you for the help you give!

    Bill, the light finally went on about the rounding of offsets when I read th last two paragraphs of your post, thanks.

    LaVerne

Page 1 of 2 12

Similar Threads

  1. Mitsubishi TC8B , chuck open and close issue !
    By Centerline MFG. in forum CNC Machining Centers
    Replies: 0
    Last Post: 09-04-2009, 12:29 AM
  2. Open and close while running HL-2 chuck??
    By acrodave in forum Haas Lathes
    Replies: 5
    Last Post: 08-14-2009, 05:29 AM
  3. Parameter for open and close chuck option!
    By the mill kid in forum Mazak, Mitsubishi, Mazatrol
    Replies: 2
    Last Post: 08-14-2009, 01:09 AM
  4. What M Codes open/close your lathe collet ??????
    By nelZ in forum Uncategorised MetalWorking Machines
    Replies: 2
    Last Post: 09-05-2008, 02:28 PM
  5. Fanuc O-T chuck open/close M-code
    By Ztiggi in forum Fanuc
    Replies: 12
    Last Post: 01-29-2008, 01:27 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •