Results 1 to 11 of 11
  1. #1
    ttx336 is offline Plastic
    Join Date
    Jul 2012
    Location
    Houston, TX
    Posts
    23

    Default Is there a way to test for Skip Signal?

    I'd like to make the G31 move, then test to see whether or not I actually got the Skip Signal, I can compare the axis position to the commanded position but I'd rather do it more simply and directly if possible... just in case I miss the target, that's what I am checking for, to see if I actually touched the part.

    Thanks in advance,
    -Gary

  2. #2
    Denim's Avatar
    Denim is offline Aluminum
    Join Date
    Oct 2007
    Location
    Norway
    Posts
    81

    Default

    Here's an example for an X-axis move. Is this what you're looking for?

    G53
    #1=#5041(X START POS)
    G91G31G01X#24F200.
    IF[ABS[#5061-[#1+#24]] LT 0.001]GOTO9999
    ...
    ...
    N9999 #3000=1(NO SKIP SIGNAL)

  3. #3
    ttx336 is offline Plastic
    Join Date
    Jul 2012
    Location
    Houston, TX
    Posts
    23

    Default

    Quote Originally Posted by Denim View Post
    Here's an example for an X-axis move. Is this what you're looking for?

    G53
    #1=#5041(X START POS)
    G91G31G01X#24F200.
    IF[ABS[#5061-[#1+#24]] LT 0.001]GOTO9999
    ...
    ...
    N9999 #3000=1(NO SKIP SIGNAL)
    Denim,

    I was hoping to avoid all of the processing just to check for the Skip Signal, but yes, that is what I will do if there's no other way...

    I do see that you are using 5041 as opposed to 5001, why is that?

    -Gary

  4. #4
    ttx336 is offline Plastic
    Join Date
    Jul 2012
    Location
    Houston, TX
    Posts
    23

    Default

    Quote Originally Posted by ttx336 View Post
    Denim,

    I do see that you are using 5041 as opposed to 5001, why is that?

    -Gary
    I think I see why, 5001 is where it was commanded to go, we want to see where it actually went.

    If I'm right about that, can I simply compare 5001 and 5041, if they're equal, won't that tell me that I missed?

    -G

  5. #5
    Denim's Avatar
    Denim is offline Aluminum
    Join Date
    Oct 2007
    Location
    Norway
    Posts
    81

    Default

    Quote Originally Posted by ttx336 View Post
    I think I see why, 5001 is where it was commanded to go, we want to see where it actually went.

    If I'm right about that, can I simply compare 5001 and 5041, if they're equal, won't that tell me that I missed?

    -G
    Hmm, since the current position is saved to #1 prior to the skip-feed block I would think that #5001 and #5041 both hold the same value at this point.
    You might be able to compare #5001 to #5041 (or the actual skip coordinate, #5061) on the first block after the skip move, but I have not tested this so I can't be sure.

    Either way, it is probably a good idea to check if the difference between the positions is larger than a very small amount (0.001mm in my example) rather than checking if they are equal. The reason for this is to avoid false errors due to floating point rounding errors in the control.

  6. #6
    ttx336 is offline Plastic
    Join Date
    Jul 2012
    Location
    Houston, TX
    Posts
    23

    Default

    Quote Originally Posted by Denim View Post
    Hmm, since the current position is saved to #1 prior to the skip-feed block I would think that #5001 and #5041 both hold the same value at this point.
    You might be able to compare #5001 to #5041 (or the actual skip coordinate, #5061) on the first block after the skip move, but I have not tested this so I can't be sure.

    Either way, it is probably a good idea to check if the difference between the positions is larger than a very small amount (0.001mm in my example) rather than checking if they are equal. The reason for this is to avoid false errors due to floating point rounding errors in the control.
    I do agree with that, I have seen some equality tests fail because of that... you are hitting on something that I am trying to get a handle on... that is, what is/are the differences in 5001, 5041 and 5061? I see that 5001 is without tool comp, but also, Fanuc say in the manual that it is "Block End Point" so I am under the impression that is where the machine is being commanded to as opposed to where it actually at since we have this Skip Function and it is providing us a way to stop short if we desire to with a probe, etc. But what the heck is this #540X"Current" position versus #560X"Skip Signal Position"? Seems to me that they would be the same always... I really wish I could just go put my hands on a machine and test this all but all of the machines are running production, not like when I worked in a job shop and I setup and ran my own machine(s).

    And even then, for #5001, if I am at X8.5 in WCS and I command an incremental move of, say, G91X1.0, would #5001 show X1.0 or X9.5?

  7. #7
    3t3d is offline Titanium
    Join Date
    Nov 2004
    Location
    WI
    Posts
    3,553

    Default

    Since No machine can stop Instantaneously! there is the location where the skip signal was detected, and the location where the machine was finally able to slam to a stop, after seeing the skip signal.
    The slower the feed rate, the closer the two positions will be.

    The commanded position will be farther along than the position where the skip was detected, if it did in fact sense something.

  8. #8
    angelw is offline Hot Rolled
    Join Date
    Sep 2010
    Location
    Victoria Australia
    Posts
    816

    Default

    To merely test if a Skip Signal has occurred, a common technique is to compare the Skip Signal System Variable, with the Block End Point. The logic in this, is that an end point past the expected Skip Signal position is normally programmed. Accordingly, the Skip Signal System Variable will be a value other than the Block End Point if the Skip Signal was turned on in a G31 block. If the Skip Signal was not turned on, the end point of the specified block is held in the Skip Signal System Variables.


    Regards,

    Bill

  9. #9
    Stuart Caruk is offline Hot Rolled
    Join Date
    Feb 2007
    Location
    Ridgefield, WA
    Posts
    827

    Default

    If you simply want to know if skip check works, go to a Manual Data Input window and enter

    G91 G31 X5.0 F1. and run it

    The machine should attempt to move 5" in X at a very slow feed rate. Once it starts moving manually trigger your probe. If everything is working, motion should stop and you should still see soem value in the disatnce to go screen.

    The axis is irrelevant. It can be any axis that won't result in a collision before the movement completes.

  10. #10
    ttx336 is offline Plastic
    Join Date
    Jul 2012
    Location
    Houston, TX
    Posts
    23

    Default

    Quote Originally Posted by Stuart Caruk View Post
    If you simply want to know if skip check works, go to a Manual Data Input window and enter

    G91 G31 X5.0 F1. and run it

    The machine should attempt to move 5" in X at a very slow feed rate. Once it starts moving manually trigger your probe. If everything is working, motion should stop and you should still see soem value in the disatnce to go screen.

    The axis is irrelevant. It can be any axis that won't result in a collision before the movement completes.
    Thanks Stuart,

    I was assuming that the probe is functioning properly, my aim here, is to make sure that the probe actually touched the part. My concern is that during an unattended operation, and using a setup probing routine, if, say a bore was oversize, then possibly the probe could travel all the way to the programmed dimension and actually make it to the block endpoint and I wanted to know if I could test for that... Here's an exaggerated hypothetical case: I'm probing a 3" bore for a new fixture offset but I inadvertently program for a 2" bore... I was thinking that if the probe missed the part completely (stopping short on each move) I would not get any change from the initial fixture offset because each probing move would be exactly the same length... Something like that anyway. So if I could look for some kind of signal that the Skip Function was activated then I would know that the probe was indeed triggered. It sounds like the general consensus is that I can compare the Block Endpoint with the Skip Signal Position - so something like

    IF[#5001EQ#5061]THEN#3001=99(PROBE MISSED)

    The reason I would not want to simply program an excessively large move is that I will often be probing down in counterbores and if I overrun the bore, the body of the probe will contact the casting and wreck the probe, so I need to be very conservative on the probing moves.

    This new machine is set to arrive next week and will be operational soon after. I will certainly test all of this and report back what I learn about it.

    -Gary

  11. #11
    Stuart Caruk is offline Hot Rolled
    Join Date
    Feb 2007
    Location
    Ridgefield, WA
    Posts
    827

    Default

    If you're using a Renishaw probe and one of their probing macros, it will alarm out if it doesn't trigger within the skip check distance you called out in the program. If you use protected positioning moves, it will alarm out if it triggers before you start your probing routine, although if the machine is in full rapid, you may not have a stylus left when it stops.... I typically bump the rapids down to 25% when I close the doors and walk away... just in case...

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
  •