Your Products have been synced, click here to refresh
Here is a link to a thread about this. The title doesn't do the job describing the topic. http://www.pcdmisforum.com/showthread.php?23055-How-To-Force-PCDMIS-to-Save-Results-Via-Automation
The problem was having was a bit different, but maybe you can pick up some ideas from reading his solution.
Just wait til you see what he or she did... Good Luck![]()
I agree with you on the deficiencies of parameter sets. Our automatic calibration consists of a basic script (make a list of probes) and 2 pc-dmis subroutines to locate the tool(s) and calibrate the tips. The subroutines use the calibrate single tip command to do their work. Works great.
so i've started looking into this method, just wondering how you prevent collision with the shank of the qualification tool. I imagine that you have some fancy way of determining if it will crash?
[SIZE=2][FONT=courier new][COLOR=#000000] ASSIGN/VVEC=MPOINT(0,0,1)[/COLOR] [COLOR=#000000] IF/TIPVECTOR == VVEC[/COLOR] [COLOR=#000000] ASSIGN/AVEC=MPOINT(1,0,0)[/COLOR] [COLOR=#000000] END_IF/[/COLOR] [COLOR=#000000] ELSE/[/COLOR] [COLOR=#000000] ASSIGN/AVEC=MPOINT(TIPVECTOR.I,TIPVECTOR.J,-1)[/COLOR] [COLOR=#000000] END_ELSE/[/COLOR][/FONT] [/SIZE]
[SIZE=2][FONT=courier new][COLOR=#000000]LOC_TIP =FEAT/CONTACT/SPHERE,CARTESIAN,OUT,LEAST_SQR[/COLOR] [COLOR=#000000] THEO/<0,0,0>,<0,0,1>,QUAL_DIA[/COLOR] [COLOR=#000000] ACTL/<3.9929,-8.1411,-1.2326>,<0,0,1>,0[/COLOR] [COLOR=#000000] TARG/<0,0,0>,<TIPVECTOR.I,TIPVECTOR.J,TIPVECTOR.K>[/COLOR] [COLOR=#000000] START ANGLE 1=STRTANG,END ANG 1=ENDANG[/COLOR] [COLOR=#000000] START ANGLE 2=60,END ANG 2=90[/COLOR] [COLOR=#000000] ANGLE VEC=<AVEC.I,AVEC.J,AVEC.K>[/COLOR] [COLOR=#000000] SHOW FEATURE PARAMETERS=YES[/COLOR] [COLOR=#000000] MEASURE MODE=NOMINALS[/COLOR] [COLOR=#000000] RMEAS=NONE,NONE,NONE[/COLOR] [COLOR=#000000] AUTO WRIST=NO[/COLOR] [COLOR=#000000] CIRCULAR MOVES=YES[/COLOR] [COLOR=#000000] CLEARPLANE=NO[/COLOR] [COLOR=#000000] GRAPHICAL ANALYSIS=NO[/COLOR] [COLOR=#000000] FEATURE LOCATOR=NO,NO,""[/COLOR] [COLOR=#000000] SHOW CONTACT PARAMETERS=YES[/COLOR] [COLOR=#000000] NUMHITS=4,NUMROWS=2[/COLOR] [COLOR=#000000] SAMPLE HITS=0[/COLOR] [COLOR=#000000] AVOIDANCE MOVE=NO,DISTANCE=0.625[/COLOR] [COLOR=#000000] SHOW HITS=NO[/COLOR] [COLOR=#000000]$$ NO,[/COLOR] [COLOR=#000000] COMMENT/REPT,[/COLOR] [COLOR=#000000] "Station = " + CPN + " TIP NAME = " + TIPNAME + "[/COLOR] [COLOR=#000000] MOVE/CIRCULAR[/COLOR] [COLOR=#000000]QUAL_SPH =FEAT/CONTACT/SPHERE,CARTESIAN,OUT,LEAST_SQR[/COLOR] [COLOR=#000000] THEO/<LOC_TIP.X,LOC_TIP.Y,LOC_TIP.Z>,<0,0,1>,QUAL_DIA[/COLOR] [COLOR=#000000] ACTL/<3.9929,-8.1411,-1.2326>,<0,0,1>,0[/COLOR] [COLOR=#000000] TARG/<LOC_TIP.X,LOC_TIP.Y,LOC_TIP.Z>,<TIPVECTOR.I,TIPVECTOR.J,TIPVECTOR.K>[/COLOR] [COLOR=#000000] START ANGLE 1=STRTANG,END ANG 1=ENDANG[/COLOR] [COLOR=#000000] START ANGLE 2=STANG2,END ANG 2=ENANG2[/COLOR] [COLOR=#000000] ANGLE VEC=<AVEC.I,AVEC.J,AVEC.K>[/COLOR] [COLOR=#000000] SHOW FEATURE PARAMETERS=YES[/COLOR] [COLOR=#000000] MEASURE MODE=NOMINALS[/COLOR] [COLOR=#000000] RMEAS=NONE,NONE,NONE[/COLOR] [COLOR=#000000] AUTO WRIST=NO[/COLOR] [COLOR=#000000] CIRCULAR MOVES=YES[/COLOR] [COLOR=#000000] CLEARPLANE=NO[/COLOR] [COLOR=#000000] GRAPHICAL ANALYSIS=NO[/COLOR] [COLOR=#000000] FEATURE LOCATOR=NO,NO,""[/COLOR] [COLOR=#000000] SHOW CONTACT PARAMETERS=YES[/COLOR] [COLOR=#000000] NUMHITS=8,NUMROWS=3[/COLOR] [COLOR=#000000] SAMPLE HITS=0[/COLOR] [COLOR=#000000] AVOIDANCE MOVE=NO,DISTANCE=0.625[/COLOR] [COLOR=#000000] SHOW HITS=NO[/COLOR] [COLOR=#000000]CALIBRATE ACTIVE TIP WITH FEAT_ID=QUAL_SPH, QUALTOOL_ID=QUAL, MOVED=NO[/COLOR] [COLOR=#000000]AXIS THEO MEAS DEV STD DEV[/COLOR] [COLOR=#000000]X < 0.0000 26.5577 26.5577[/COLOR] [COLOR=#000000]Y 0.0000 18.1317 18.1317[/COLOR] [COLOR=#000000]Z 0.0000> -26.0811 26.0811[/COLOR] [COLOR=#000000]DIAM 0.7500 0.0000 0.7500 0.0000[/COLOR][/FONT][/SIZE]
It's actually pretty simple. We programmed the autosphere with feature vector of 0,0,1 and angle vector of 1,0,0, start angle1 45, end angle1 315. Then we substituted variables for the feature vector and angle vector. The feature vector becomes the vector of the active tip and for the angle vector we use this - it isn't unitized, but pc-dmis handles it correctly:
[SIZE=2][FONT=courier new][COLOR=#000000] ASSIGN/VVEC=MPOINT(0,0,1)[/COLOR] [COLOR=#000000] IF/TIPVECTOR == VVEC[/COLOR] [COLOR=#000000] ASSIGN/AVEC=MPOINT(1,0,0)[/COLOR] [COLOR=#000000] END_IF/[/COLOR] [COLOR=#000000] ELSE/[/COLOR] [COLOR=#000000] ASSIGN/AVEC=MPOINT(TIPVECTOR.I,TIPVECTOR.J,-1)[/COLOR] [COLOR=#000000] END_ELSE/[/COLOR][/FONT] [/SIZE]
Tip vector.IJK can be obtained using the PROBEDATA function. Over time, we ended up using variables for both autosphere start/end angle combinations to handle things like large diameter ceramic spherical styli and styli that won't reach the equator.
The autosphere commands end up looking like this (the first sphere is to do initial rough location - like the first hits in pc-dmis calibration):
[SIZE=2][FONT=courier new][COLOR=#000000]LOC_TIP =FEAT/CONTACT/SPHERE,CARTESIAN,OUT,LEAST_SQR[/COLOR] [COLOR=#000000] THEO/<0,0,0>,<0,0,1>,QUAL_DIA[/COLOR] [COLOR=#000000] ACTL/<3.9929,-8.1411,-1.2326>,<0,0,1>,0[/COLOR] [COLOR=#000000] TARG/<0,0,0>,<TIPVECTOR.I,TIPVECTOR.J,TIPVECTOR.K>[/COLOR] [COLOR=#000000] START ANGLE 1=STRTANG,END ANG 1=ENDANG[/COLOR] [COLOR=#000000] START ANGLE 2=60,END ANG 2=90[/COLOR] [COLOR=#000000] ANGLE VEC=<AVEC.I,AVEC.J,AVEC.K>[/COLOR] [COLOR=#000000] SHOW FEATURE PARAMETERS=YES[/COLOR] [COLOR=#000000] MEASURE MODE=NOMINALS[/COLOR] [COLOR=#000000] RMEAS=NONE,NONE,NONE[/COLOR] [COLOR=#000000] AUTO WRIST=NO[/COLOR] [COLOR=#000000] CIRCULAR MOVES=YES[/COLOR] [COLOR=#000000] CLEARPLANE=NO[/COLOR] [COLOR=#000000] GRAPHICAL ANALYSIS=NO[/COLOR] [COLOR=#000000] FEATURE LOCATOR=NO,NO,""[/COLOR] [COLOR=#000000] SHOW CONTACT PARAMETERS=YES[/COLOR] [COLOR=#000000] NUMHITS=4,NUMROWS=2[/COLOR] [COLOR=#000000] SAMPLE HITS=0[/COLOR] [COLOR=#000000] AVOIDANCE MOVE=NO,DISTANCE=0.625[/COLOR] [COLOR=#000000] SHOW HITS=NO[/COLOR] [COLOR=#000000]$$ NO,[/COLOR] [COLOR=#000000] COMMENT/REPT,[/COLOR] [COLOR=#000000] "Station = " + CPN + " TIP NAME = " + TIPNAME + "[/COLOR] [COLOR=#000000] MOVE/CIRCULAR[/COLOR] [COLOR=#000000]QUAL_SPH =FEAT/CONTACT/SPHERE,CARTESIAN,OUT,LEAST_SQR[/COLOR] [COLOR=#000000] THEO/<LOC_TIP.X,LOC_TIP.Y,LOC_TIP.Z>,<0,0,1>,QUAL_DIA[/COLOR] [COLOR=#000000] ACTL/<3.9929,-8.1411,-1.2326>,<0,0,1>,0[/COLOR] [COLOR=#000000] TARG/<LOC_TIP.X,LOC_TIP.Y,LOC_TIP.Z>,<TIPVECTOR.I,TIPVECTOR.J,TIPVECTOR.K>[/COLOR] [COLOR=#000000] START ANGLE 1=STRTANG,END ANG 1=ENDANG[/COLOR] [COLOR=#000000] START ANGLE 2=STANG2,END ANG 2=ENANG2[/COLOR] [COLOR=#000000] ANGLE VEC=<AVEC.I,AVEC.J,AVEC.K>[/COLOR] [COLOR=#000000] SHOW FEATURE PARAMETERS=YES[/COLOR] [COLOR=#000000] MEASURE MODE=NOMINALS[/COLOR] [COLOR=#000000] RMEAS=NONE,NONE,NONE[/COLOR] [COLOR=#000000] AUTO WRIST=NO[/COLOR] [COLOR=#000000] CIRCULAR MOVES=YES[/COLOR] [COLOR=#000000] CLEARPLANE=NO[/COLOR] [COLOR=#000000] GRAPHICAL ANALYSIS=NO[/COLOR] [COLOR=#000000] FEATURE LOCATOR=NO,NO,""[/COLOR] [COLOR=#000000] SHOW CONTACT PARAMETERS=YES[/COLOR] [COLOR=#000000] NUMHITS=8,NUMROWS=3[/COLOR] [COLOR=#000000] SAMPLE HITS=0[/COLOR] [COLOR=#000000] AVOIDANCE MOVE=NO,DISTANCE=0.625[/COLOR] [COLOR=#000000] SHOW HITS=NO[/COLOR] [COLOR=#000000]CALIBRATE ACTIVE TIP WITH FEAT_ID=QUAL_SPH, QUALTOOL_ID=QUAL, MOVED=NO[/COLOR] [COLOR=#000000]AXIS THEO MEAS DEV STD DEV[/COLOR] [COLOR=#000000]X < 0.0000 26.5577 26.5577[/COLOR] [COLOR=#000000]Y 0.0000 18.1317 18.1317[/COLOR] [COLOR=#000000]Z 0.0000> -26.0811 26.0811[/COLOR] [COLOR=#000000]DIAM 0.7500 0.0000 0.7500 0.0000[/COLOR][/FONT][/SIZE]
So manipulating the ANGLE VEC is the key to missing the sphere stem.
Hope this is helpful.
© 2024 Hexagon AB and/or its subsidiaries. | Privacy Policy | Cloud Services Agreement |