hexagon logo

Dimension Out of Tolerance command?

I think I did this in intermediate class, but that was 4 years ago: I want to be able to output various other commands when a dimension is out of tolerance. Can anyone give me any ideas on how?
  • If then statement based on the out of tolerance of the feature.

    If/DIM1.X.OUTTOL>0
    .
    .
    your commands...
    .
    .
    end/if
  • Thanks J!
    Is there a way to do it for all the dimensions in one statement?
  • I am not sure how. I imaging that you could write a script for that. Craig, Don, or Mr. Comment are among the few that should be able to answer that.
  • Yes it can be scripted. Some questions would be what do you want for an output? Do you need an output for each out of tolerance condition or just one output at the end of execution?

    You could probably bastardize one of the existing code samples. I think there is one out there that counts up the total out of tolerance.

    I have had issues lately where I can't run scripts any more on a machine where I do most of my debugging but I recently uninstalled and reinstalled (over other issues) so I might be able to run there now, not sure.

    Could you describe your "output" requirements?
  • I have 2 different outputs I want to use:
    (1) A stop in the program after the Out of tolerance dimension
    (2) A wav file stating "There is a out of tolerance issue with Dimension__"
  • Do you want to stop after each out of tolerance dimension like a message box or just stop the program all together? As far as the wave file goes you'd need to automate a voice emulator to say each dimension specifically.

    I think it would be tough and involved, do you have blind people running your CMM?

    Some of this can be done I think without too much trouble depending on exactly what you want. A bas would likely loop through each dimension to find out of tolerance ones. I am not sure how to code it so it only looks for the most recently measured one while ignoring the rest without hard coding it. Then you'd have to write a bas for each individual part program that would have to be edited with each part program as well. It might be best to code it with PCDMIS. Like J said an IF/End IF evaluation after each dimension. If you had a voice emulator then you could pass a string to a bas that automated it perhaps. If it is going to be dimension specific then I say do it with PCDMIS.
  • I have 2 different outputs I want to use:
    (1) A stop in the program after the Out of tolerance dimension
    (2) A wav file stating "There is a out of tolerance issue with Dimension__"


    Have it say "Well, your day just got a little worse, that last dimension was out of tolerance. Have fun!"
  • Does anyone have a better example they could post including some more of the code involved.. ? what about an end/if statement to use with reducing the angle range taken on a radius? sometimes my range needs to be -10 on each start and end angle to come in..
    Aaron