hexagon logo

AutoCalibration

Hi guys. I recently created a form in VB studio to be used for a front end GUI. I am currently creating a button for autocalibration. So in a nutshell this is what im doing. The operator will click on the autocalibration button and it opens up a file dialog box to navigate to whatever program they want to run. After they select the program I wrote a code to go into said program and find all the active tip angles in said program and it then writes them to a txt file on the desktop. After that, it opens up a program I wrote that pretty much just has a DO loop to open/read the text file with the tip angles and loops through each individual line/angle and calibrates them accordingly using the autocalibrate command, some IF/GOTO statements, and parameter sets. I have that working fluently, The problem is we use sooooo many different tip angles so this process would be extremely tedious and time consuming to do for every angle the machine is capable to index to. My question is, is there a way to assign a variable to a parameter set so I can just create one single autocalibrate command and loop through each line in my text file and assign that tip angle to both the tip command and parameter set? Or maybe an easier way than how i am going about doing this. Any help or direction would be appreciated. See attachment for my current program format.

Attached Files
Parents
  • Good luck!

    I'm pretty sure you could pass a variable into the AutoCalibrate command for the parameter set, but you'd have to create a parameter set for each probe-tip angle combo, 720 I believe for a Renishaw head, 1000's for a Tesa head (maybe 10,000 for the 2.5° tesastar head) - and this would have to be done for each probe file!

    Now, within the VB automation language there are two Probe.Calibrate methods (or maybe Probe.Qualify - I forget which) which are meant to achieve what you want, HOWEVER, I have tried numerous times to get this to work without success.

    One method appears to work (I can select the required tips, the machine moves and looks like it's calibrating the tips, BUT the .prb files are not updated with the latest measurements)

    The second method will calibrate the tips and the .prb file is updated, BUT before this happens it asks if I want to calibrate all the angles (even though I've already made it select just the ones used in the program).


    The only way I got it to work (proof of concept only - never really finished it) was to do this...

    For each probe used:
    Write out all tip data to a text file
    Delete all the tips
    Add in just the tips used in that program
    Calibrate using the method above which asks to calibrate all tips and updates the .prb file
    After calibration add back programatically the tips which hadn't just been calibrated








    It's been a while but I finally started messing with this again haha. So I tried to get the "probe.Qualify()" method to work and I cant get the machine to set the probe in motion. I am just trying the bare bones way right now to prove concept. I got PCDMIS to open the Probe Utilities dialog box, and "SelectAllTips", but it just bombs out from there. Any recommendations? See code below. Hope to hear from you!

    probes = part.Probes
    probe = probes._Item("1MM_WITH_EXTENSION_ADAPTER")
    probe.Dialog()
    probe.SelectAllTips()
    probe.Qualify()
Reply
  • Good luck!

    I'm pretty sure you could pass a variable into the AutoCalibrate command for the parameter set, but you'd have to create a parameter set for each probe-tip angle combo, 720 I believe for a Renishaw head, 1000's for a Tesa head (maybe 10,000 for the 2.5° tesastar head) - and this would have to be done for each probe file!

    Now, within the VB automation language there are two Probe.Calibrate methods (or maybe Probe.Qualify - I forget which) which are meant to achieve what you want, HOWEVER, I have tried numerous times to get this to work without success.

    One method appears to work (I can select the required tips, the machine moves and looks like it's calibrating the tips, BUT the .prb files are not updated with the latest measurements)

    The second method will calibrate the tips and the .prb file is updated, BUT before this happens it asks if I want to calibrate all the angles (even though I've already made it select just the ones used in the program).


    The only way I got it to work (proof of concept only - never really finished it) was to do this...

    For each probe used:
    Write out all tip data to a text file
    Delete all the tips
    Add in just the tips used in that program
    Calibrate using the method above which asks to calibrate all tips and updates the .prb file
    After calibration add back programatically the tips which hadn't just been calibrated








    It's been a while but I finally started messing with this again haha. So I tried to get the "probe.Qualify()" method to work and I cant get the machine to set the probe in motion. I am just trying the bare bones way right now to prove concept. I got PCDMIS to open the Probe Utilities dialog box, and "SelectAllTips", but it just bombs out from there. Any recommendations? See code below. Hope to hear from you!

    probes = part.Probes
    probe = probes._Item("1MM_WITH_EXTENSION_ADAPTER")
    probe.Dialog()
    probe.SelectAllTips()
    probe.Qualify()
Children
No Data