Results 1 to 11 of 11
  1. #1
    viper is offline Titanium
    Join Date
    May 2007
    Location
    nowhereville
    Posts
    3,724

    Default Help with programming/posting and G codes

    I am wondering if there is any way to adjust a post or program to allow our 1997 VF1 move the table back to starting position while the Z is executing tool change? It always waits until tool change is complete before moving XY. Not sure if that is just the lazy software with no lookahead or if there is a way around it.

  2. #2
    wrustle is offline Titanium
    Join Date
    Jun 2006
    Location
    Massachusetts
    Posts
    2,561

    Default

    I always have my tool change at the very end of the program, that way it allows me to start changing the parts while the tool changer gets back to the first tool.

    EX:

    G91 G28 Z0 M9
    G28 X0 Y0
    T1 M6
    M30

    Best Regards,
    Russ

  3. #3
    SeymourDumore is online now Diamond
    Join Date
    Aug 2005
    Location
    CT
    Posts
    6,212

    Default

    Viper

    Lookahead got nothing to do with this.
    If your toolchange and the Y-move is in separate blocks, then you'll get a sequential execution no matter what. In fact it would be a very bad day indeed if they were consecutive.
    If the toolchange and the Y move is on the same block, you must know that by rule all M-codes execute AFTER all other codes are complete on a HAAS.
    IOW
    G00 G53 Y0 M06
    would move the table to Y-home and only then will the M06 be executed.

    Now, to help with your issue, make your toolchange as follows:

    G00 G49 G53 Y0 Z0
    Tx M06

    Done.

  4. #4
    ARB's Avatar
    ARB
    ARB is offline Titanium
    Join Date
    Dec 2002
    Location
    Granville,NY,USA
    Posts
    3,614

    Default

    Quote Originally Posted by SeymourDumore View Post
    Viper
    G00 G49 G53 Y0 Z0
    Tx M06
    Done.

    Exactly!

    You can also put a X value in there to make sure the table is in a handy place to load and unload.

  5. #5
    viper is offline Titanium
    Join Date
    May 2007
    Location
    nowhereville
    Posts
    3,724

    Default

    Quote Originally Posted by SeymourDumore View Post
    Viper

    Lookahead got nothing to do with this.
    If your toolchange and the Y-move is in separate blocks, then you'll get a sequential execution no matter what. In fact it would be a very bad day indeed if they were consecutive.
    If the toolchange and the Y move is on the same block, you must know that by rule all M-codes execute AFTER all other codes are complete on a HAAS.
    IOW
    G00 G53 Y0 M06
    would move the table to Y-home and only then will the M06 be executed.

    Now, to help with your issue, make your toolchange as follows:

    G00 G49 G53 Y0 Z0
    Tx M06

    Done.
    What we are looking for is simultaneous motion of XY coordinates with the M6. The way I read your code, it would execute the YZ moves then go through M6. Before or after would make no difference for us, we are simply wanting to shave some time by allowing the table to return to start position for the next tool while it is doing TC. Is this possible?

    I guess my understanding of your code is that it will not execute the M6 until completion of the line before it. If they are on the same line, will it work as we hope?

    thanks

  6. #6
    g-coder05's Avatar
    g-coder05 is online now Stainless
    Join Date
    Mar 2006
    Location
    Zhongshan China
    Posts
    1,774

    Default

    The only control i know of that will execute table movement and tc at same time is seimens.
    you can have an G0 X,Y,A,B and M5 M9 M6 H0 all on the same line and it will happen sequintialy. I havnt figured out why Haas and Fanuc havnt caught up to that yet. otherwise your stuck with moving the table to a part change loc then execute a m6 comand so the tool changes while you prep for a part change. Just watch your head for swinging tools. on those smaller machines the tool in the arm tends to open up the scalp "found that out the hard way once" Damn those Data Flute mills are sharp.

  7. #7
    SeymourDumore is online now Diamond
    Join Date
    Aug 2005
    Location
    CT
    Posts
    6,212

    Default

    Viper, I'm not sure how much time you'd be saving, but no, it still executes the same way.
    There is no way you can toolchange before Z gets to home anyway and unless you get ultra big parts the Z is the one traveling the most, meaning X and Y would already be in position and waiting for Z to get there.
    Are you sending the machine home between toolchanges? If yes, then Why?

    Gcoder

    I think it's a safety thing. Perhaps the control wants to make sure that all things are in the programmed position before toolchange occurs. Possible that a 4th axis is in the way of the carousel or the toolchanger arm and unless the programmed position is achieved you should not be changing tools.
    On the lathes, Haas has a G200 command which is index on the fly. I guess it indexes while the head is traveling, though have not seen it in action.

  8. #8
    viper is offline Titanium
    Join Date
    May 2007
    Location
    nowhereville
    Posts
    3,724

    Default

    I think I get the just that the Haas will not move like I wished. Basically, what we are doing is working multiple parts from left to right. When We get done at the right side of the table, It does the TC and then jogs all the way back to the left side again. Not that big of a deal with our smaller machine but I like to optimize things if possible. If it was able to walk the table back to left "while" doing TC, it would be ready to drop the Z in the hole and go.

    Like I say, just trying to optimize here.

  9. #9
    SeymourDumore is online now Diamond
    Join Date
    Aug 2005
    Location
    CT
    Posts
    6,212

    Default

    Ok, let's assume it's a VF1-3. Your Z travel is 12", while the table is 30 max in X.
    Last fixture is at max X, first fixture is at min X. This makes the center point somewhere at X-16.

    How'bout this kind of toolchange:

    M09
    M05
    G00 G49 G53 X-16. Z0
    (NEW TOOL)
    Tx M06
    G00 G43 Hx Dx
    G54
    G00 Xn.n Yn.n Z1.

    This way the X is no more than half way to the first fixture by the time Z is at home. It can't travel during toolchange, which IMHO is not a bad idea.
    So, makes the toolchange and then travels in all 3 axes to the first fixture.
    Yes, you've lost the toolchange time, but that's all you've lost.
    That is why chip to chip toolchange time is a major selling point nowadays.

    """"
    If it was able to walk the table back to left "while" doing TC, it would be ready to drop the Z in the hole and go.
    """"

    Notice that:
    G91 G00 Z-10.
    takes exactly the same amount of time as:
    G91 G00 X-10. Y-10. Z-10.

    Sure looks buisier, but same time nonetheless.

  10. #10
    ARB's Avatar
    ARB
    ARB is offline Titanium
    Join Date
    Dec 2002
    Location
    Granville,NY,USA
    Posts
    3,614

    Default

    As always SD has great advise.

    You could always sequence your way back through the parts in the opposite direction with the next tool. This is something I do when production programming. Anything I can do to eliminate covering the same ground without cutting metal.

    Then the last thing you do is park the table for load unload.


    One thing that I do when programming for flat out running is to call the tool change right after the last line of working code.

    The machine will automatically shut off the spindle and coolant to change tools. This usually saves a couple of nanoseconds.

    One of the things that I have always disliked it that I can't rapid and start the spindle at the same time. I would love for the spindle to be winding up while it is moving down to the part. The dumb thing is that it will do it while feeding.:rolleyes:


    Nothing like programming balls to the wall.

  11. #11
    SeymourDumore is online now Diamond
    Join Date
    Aug 2005
    Location
    CT
    Posts
    6,212

    Default

    ARB

    I think you'll like tha Fanuc in that regard, as you can use M1003 after the toolchange. The M1003 is identical to M03 except that it won't wait for the spindle to statisfy the commanded speed. It starts to spin it up and then moves onto the next block.
    Haas has that too, except it isn't programmable, rather settable in parameters under Spindle Nowait. Problem is that it's an all or nothing, and sometimes you do want that thing to be spinning at the expected RPM when you reach the material, otherwise it's a CNC broach or a punch.

Bookmarks

Posting Permissions

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