hexagon logo

Parameter Sets and Autocalibration

Myself and another colleague were working on some Operator programs, and we were trying to find faster ways to incorporate Autocalibrate commands instead of them using the "Calibrate Tips" option from the Marked Set Window.

We were playing around with parameter sets, and were trying to find ways to avoid having to make a set for each program, but a set for each probe build instead. We created a parameter set with no tips selected.
And selected the option "Used in Routine" for the "Tips to use if none explicitly selected". It worked, and let us create this set, and we put that Parameter Set in the Autocalibrate command. It worked with no issues, even between Load Probe commands.

Is there a risk or downside to us streamlining the process in this manner? Has anyone else tried to use an Empty Parameter set in this manner?
  • Can you share this code with me. I am working on a project with similar needs?
  • Only problem is if probe angles are in a variable or hidden in a closed group. One way around this is to have the probe angles in the program with a go to statement to a label just past the rotations that are used as a variable.
  • Myself and another colleague were working on some Operator programs, and we were trying to find faster ways to incorporate Autocalibrate commands instead of them using the "Calibrate Tips" option from the Marked Set Window.

    We were playing around with parameter sets, and were trying to find ways to avoid having to make a set for each program, but a set for each probe build instead. We created a parameter set with no tips selected.
    And selected the option "Used in Routine" for the "Tips to use if none explicitly selected". It worked, and let us create this set, and we put that Parameter Set in the Autocalibrate command. It worked with no issues, even between Load Probe commands.

    Is there a risk or downside to us streamlining the process in this manner? Has anyone else tried to use an Empty Parameter set in this manner?



    And this is why I love this place!

    So you're not selecting ALL_TIPS_WITH_DEFAULTS, but creating a set with no tips selected and using the 'Used in routine' option to force the tip selection.

    That is genius! This means we don't have to update parameter sets when we add remove tips.

    As Kp61Dude said: if it works, it works!

    I shall be trying this next week with my Level 2 trainees.

    Many thanks!
  • That is correct! I didn't even think they would let you create an empty set with 0 tips. I actually searched high and low here for an answer on this before I suggested that to my colleague. I'm glad to hear my outside of the box idea came out as a net positive.

    I didn't even think about how useful that would be for updating parameter sets when adding and removing tips, holy crap. That sounds like a bonus outcome from this, awesome!

    I have only been training on the CMM for a year so, I'm still learning a lot and I tend to think completely opposite to my 10 year Senior CMM trainer from time to time. I'm thankful for the positive feedback from you all.
  • Okay, good to know. I haven't had to use groups at all since I started here. I think in the past all the people who trained our employees before me never used Groups, so we have no programs with them.

    If it came down to it I'd probably put my tips before each group, or just put all tips I'm using before the group, then mark them, that way they still get calibrated. I'm sure there's a way to wiggle around that.



  • Here is a snippet of code from the first program we have tried this on. We only just figured out we can do this on Friday, so it is not refined extensively.

    We basically just asked if we needed to calibrate, and if we select yes, it will calibrate. If we select no it will skip calibration.

    We have a second skip expression because we wanted to see if we could safely calibrate mid program after the tips are used for the first time instead of calibrating and switching tips at the beginning. So we can cut time with less probe changes overall. In our test it worked fine, just make sure you have the proper clearance moves after any calibration mid program because of your part setup and clearplanes. Don't want you crashing into anything.

    C1         =COMMENT/YESNO,NO,FULL SCREEN=YES,AUTO-CONTINUE=NO,OVC=NO,
                DO YOU NEED TO CALIBRATE TIPS?
                IF_GOTO/C1.INPUT=="NO",GOTO = SKIP_CAL1
                AUTOCALIBRATE/PROBE, PARAMETER_SET=AUTOSET, QUALTOOL_MOVED=YES_DCC,
                              CHECK COLLISION=NO, SHOW_SUMMARY=NO, OVERWRITE_RESULTSFILE=YES
    SKIP_CAL1  =LABEL/
    
    IF_GOTO/C1.INPUT=="NO",GOTO = SKIP_CAL2
                AUTOCALIBRATE/PROBE, PARAMETER_SET=AUTOSET, QUALTOOL_MOVED=NO,
                              CHECK COLLISION=NO, SHOW_SUMMARY=NO, OVERWRITE_RESULTSFILE=YES
    SKIP_CAL2  =LABEL/​
  • Time doesn't always equate to what you'd expect. I've worked with 40+ yrs of experience folks who either didn't have energy to care or did not learn much in that time. Though I have been around others who could run circles around me without much effort.
  • I don't understand the problem in the original post but I'm excited that some people think the solution is an amazing find. Can someone explain the main issue? I don't quite understand. I also don't use operator mode. I use protected mode.
  • It wasn't exactly about a problem, but more of an err on the side of caution. I'm still need to CMM programming, and I wanted to seek advice from veterans who have been doing this stuff enough to see the bigger picture. I wanted to make sure that I avoid any bad habits when it comes to programming.

    We have hundreds of programs that run in Operator mode, and we have moments where Inspectors completely skip the Calibration process. Either on accident, or of their own volition. We wanted to make a catch-all for anyone who would skip Calibration by including it within the program. So that if they don't calibrate tips, it will at least prompt them in the program to Calibrate.

    I'm sure there's better ways of programming, but I'm just a noob.