hexagon logo

Repeatability issue, suspecting "leveling" on a cylinder

Hello all! Following... a tricky one!

CYL_A =FEAT/CYLINDER,CARTESIAN,IN,LEAST_SQR,NO
THEO/<0,0,-21>,<0,0,-1>,7.75,4
ACTL/<0.0055,0.0007,-20.9971>,<-0.0001267,-0.000003,-1>,7.7542,4.01
CONSTR/CYLINDER,BF,PNTB1,PNTB2,PNTB3,PNTB4,PNTB5,PNTB6,PN TB7,PNTB8,PNTB9,PNTB10,PNTB11,PNTB12,PNTB13,PNTB14 ,PNTB15,PNTB16,PNTB17,PNTB18,,
AL_REF_A =ALIGNMENT/START,RECALL:A_PIECE,LIST=YES
ALIGNMENT/LEVEL,ZMINUS,CYL_A
ALIGNMENT/ROTATE,XPLUS,TO,LIN1,ABOUT,ZMINUS
ALIGNMENT/TRANS,XAXIS,CYL_A
ALIGNMENT/TRANS,YAXIS,CYL_A
ALIGNMENT/TRANS,ZAXIS,PLN2
ALIGNMENT/END


This is my alignment on a cylinde constracted from points on Z axis at -19 / -21 / -23 as Z coordinates. Keep in mind that I have points at around 60 degs on the left and another 60 degs on the right "forming" incomplete inner part circles since there is material missing north and south side of the part. This is my datum and seems to be consistent as a cylinder both at cylindricity and diameter.

In any case. I have 6 "semi" circles on the outside to form 3 circles ( I am probing left and right again of the part) at Z values -5 / -12.5 / -18

CER7 =FEAT/CONTACT/CIRCLE/DEFAULT,CARTESIAN,OUT,LEAST_SQR
THEO/<V0,V0,-5>,<V0,V0,1>,12.86,0
ACTL/<-0.0293,-0.0004,-5>,<0,0,1>,12.8863,0
TARG/<V0,V0,-5>,<V0,V0,1>
START ANG=-50,END ANG=230
ANGLE VEC=<V0,0+1,V0>
DIRECTION=CW
SHOW FEATURE PARAMETERS=NO
SHOW CONTACT PARAMETERS=YES
NUMHITS=5,DEPTH=0,PITCH=0
SAMPLE METHOD=SAMPLE_HITS
SAMPLE HITS=0,SPACER=0
AVOIDANCE MOVE=NO,DISTANCE=10
FIND HOLE=DISABLED,ONERROR=NO,READ POS=NO
SHOW HITS=YES
HIT/BASIC,<5.0669,3.9587,-5>,<0.7880108,0.6156615,0>,<5.0623,3.9473,-4.9989>
HIT/BASIC,<6.0797,2.0934,-5>,<0.9455186,0.3255682,0>,<6.0663,2.092,-4.9997>
HIT/BASIC,<6.43,0,-5>,<1,0,0>,<6.4121,0.001,-5.0028>
HIT/BASIC,<6.0797,-2.0934,-5>,<0.9455186,-0.3255682,0>,<6.0669,-2.0893,-4.9973>
HIT/BASIC,<5.0669,-3.9587,-5>,<0.7880108,-0.6156615,0>,<5.0621,-3.9488,-4.9983>
ENDMEAS/
CER8 =FEAT/CONTACT/CIRCLE/DEFAULT,CARTESIAN,OUT,LEAST_SQR
THEO/<V0,V0,-12.5>,<V0,V0,1>,12.86,0
ACTL/<-0.02,-0.0008,-12.5>,<0,0,1>,12.8713,0
TARG/<V0,V0,-12.5>,<0,0,1>
START ANG=0-35,END ANG=0+35
ANGLE VEC=<V0,V0,1>
DIRECTION=CCW
SHOW FEATURE PARAMETERS=NO
SHOW CONTACT PARAMETERS=YES
NUMHITS=5,DEPTH=0,PITCH=0
SAMPLE METHOD=SAMPLE_HITS
SAMPLE HITS=0,SPACER=0
AVOIDANCE MOVE=NO,DISTANCE=10
FIND HOLE=DISABLED,ONERROR=NO,READ POS=NO
SHOW HITS=YES
HIT/BASIC,<5.3927,-3.502,-12.5>,<0.8386706,-0.544639,0>,<5.3837,-3.4963,-12.5014>
HIT/BASIC,<6.1652,-1.8262,-12.5>,<0.9588197,-0.2840153,0>,<6.1528,-1.8214,-12.502>
HIT/BASIC,<6.43,0,-12.5>,<1,0,0>,<6.4156,-0.0032,-12.4938>
HIT/BASIC,<6.1652,1.8262,-12.5>,<0.9588197,0.2840153,0>,<6.1522,1.8219,-12.5004>
HIT/BASIC,<5.3927,3.502,-12.5>,<0.8386706,0.544639,0>,<5.3844,3.4934,-12.4991>
ENDMEAS/
CER9 =FEAT/CONTACT/CIRCLE/DEFAULT,CARTESIAN,OUT,LEAST_SQR
THEO/<V0,V0,-18>,<V0,V0,1>,12.86,0
ACTL/<-0.0233,-0.0013,-18>,<0,0,1>,12.8753,0
TARG/<V0,V0,-18>,<V0,V0,1>
START ANG=0-50,END ANG=230+0
ANGLE VEC=<V0,0+1,0+0>
DIRECTION=CW
SHOW FEATURE PARAMETERS=NO
SHOW CONTACT PARAMETERS=YES
NUMHITS=5,DEPTH=0,PITCH=0
SAMPLE METHOD=SAMPLE_HITS
SAMPLE HITS=0,SPACER=0
AVOIDANCE MOVE=NO,DISTANCE=10
FIND HOLE=DISABLED,ONERROR=NO,READ POS=NO
SHOW HITS=YES
HIT/BASIC,<5.0669,3.9587,-18>,<0.7880108,0.6156615,0>,<5.0576,3.951,-18.0043>
HIT/BASIC,<6.0797,2.0934,-18>,<0.9455186,0.3255682,0>,<6.0667,2.0903,-18.0007>
HIT/BASIC,<6.43,0,-18>,<1,0,0>,<6.4135,0.0017,-17.9992>
HIT/BASIC,<6.0797,-2.0934,-18>,<0.9455186,-0.3255682,0>,<6.0661,-2.089,-18.0017>
HIT/BASIC,<5.0669,-3.9587,-18>,<0.7880108,-0.6156615,0>,<5.0593,-3.9529,-17.9999>
ENDMEAS/
MOVE/POINT,NORMAL,<10,-7,8>
MOVE/POINT,NORMAL,<-10,-7,8>
CER10 =FEAT/CONTACT/CIRCLE/DEFAULT,CARTESIAN,OUT,LEAST_SQR
THEO/<V0,V0,-5>,<V0,V0,1>,12.86,0
ACTL/<0,0,-5>,<0,0,1>,12.86,0
TARG/<V0,V0,-5>,<0,0,1>
START ANG=0+230,END ANG=0+130
ANGLE VEC=<V0,V0,1>
DIRECTION=CW
SHOW FEATURE PARAMETERS=NO
SHOW CONTACT PARAMETERS=YES
NUMHITS=5,DEPTH=0,PITCH=0
SAMPLE METHOD=SAMPLE_HITS
SAMPLE HITS=0,SPACER=0
AVOIDANCE MOVE=NO,DISTANCE=10
FIND HOLE=DISABLED,ONERROR=NO,READ POS=NO
SHOW HITS=YES
HIT/BASIC,<-4.3025,-4.7784,-5>,<-0.6691306,-0.7431448,0>,<-4.3025,-4.7784,-5>
HIT/BASIC,<-5.8741,-2.6153,-5>,<-0.9135455,-0.4067366,0>,<-5.8741,-2.6153,-5>
HIT/BASIC,<-6.43,0,-5>,<-1,0,0>,<-6.43,0,-5>
HIT/BASIC,<-5.8741,2.6153,-5>,<-0.9135455,0.4067366,0>,<-5.8741,2.6153,-5>
HIT/BASIC,<-4.3025,4.7784,-5>,<-0.6691306,0.7431448,0>,<-4.3025,4.7784,-5>
ENDMEAS/
CER11 =FEAT/CONTACT/CIRCLE/DEFAULT,CARTESIAN,OUT,LEAST_SQR
THEO/<V0,V0,-12.5>,<V0,V0,1>,12.86,0
ACTL/<0,0,-12.5>,<0,0,1>,12.8223,0
TARG/<V0,V0,-12.5>,<0,0,1>
START ANG=0+45,END ANG=0+115
ANGLE VEC=<V0,0+1,0>
DIRECTION=CCW
SHOW FEATURE PARAMETERS=NO
SHOW CONTACT PARAMETERS=YES
NUMHITS=5,DEPTH=0,PITCH=0
SAMPLE METHOD=SAMPLE_HITS
SAMPLE HITS=0,SPACER=0
AVOIDANCE MOVE=NO,DISTANCE=10
FIND HOLE=DISABLED,ONERROR=NO,READ POS=NO
SHOW HITS=YES
HIT/BASIC,<-4.7026,4.3852,-12.5>,<-0.7313537,0.6819984,0>,<-4.8833,4.9793,-12.3707>
HIT/BASIC,<-5.7544,2.8691,-12.5>,<-0.8949344,0.4461978,0>,<-5.9313,3.4675,-12.2888>
HIT/BASIC,<-6.3323,1.1166,-12.5>,<-0.9848078,0.1736482,0>,<-6.5055,1.7185,-12.1912>
HIT/BASIC,<-6.3887,-0.7279,-12.5>,<-0.9935719,-0.1132032,0>,<-6.557,-0.1211,-12.1076>
HIT/BASIC,<-5.9188,-2.5124,-12.5>,<-0.9205049,-0.3907311,0>,<-6.0848,-1.8983,-12.0174>
ENDMEAS/
CER12 =FEAT/CONTACT/CIRCLE/DEFAULT,CARTESIAN,OUT,LEAST_SQR
THEO/<V0,V0,-18>,<V0,V0,1>,12.86,0
ACTL/<-0.1875,0.3366,-17.649>,<0.0018237,0.0512188,0.9986858>,12.8411,0
TARG/<V0,V0,-18>,<0,0,1>
START ANG=0+220,END ANG=0+140
ANGLE VEC=<V0,V0,1>
DIRECTION=CW
SHOW FEATURE PARAMETERS=NO
SHOW CONTACT PARAMETERS=YES
NUMHITS=5,DEPTH=0,PITCH=0
SAMPLE METHOD=SAMPLE_HITS
SAMPLE HITS=0,SPACER=0
AVOIDANCE MOVE=NO,DISTANCE=10
FIND HOLE=DISABLED,ONERROR=NO,READ POS=NO
SHOW HITS=YES
HIT/BASIC,<-5.0669,-3.9587,-18>,<-0.7880108,-0.6156615,0>,<-5.2411,-3.6184,-17.4386>
HIT/BASIC,<-6.0797,-2.0934,-18>,<-0.9455186,-0.3255682,0>,<-6.253,-1.7646,-17.533>
HIT/BASIC,<-6.43,0,-18>,<-1,0,0>,<-6.6082,0.32,-17.6444>
HIT/BASIC,<-6.0797,2.0934,-18>,<-0.9455186,0.3255682,0>,<-6.2634,2.4101,-17.7432>
HIT/BASIC,<-5.0669,3.9587,-18>,<-0.7880108,0.6156615,0>,<-5.2594,4.2687,-17.841>
ENDMEAS/
MOVE/POINT,NORMAL,<-10,7,8>
Ø12_86_5 =FEAT/CIRCLE,CARTESIAN,OUT,LEAST_SQR,YES
THEO/<-0.0298,-0.026,-4.95>,<-0.0004096,-0.0006184,0.9999997>,12.86
ACTL/<-0.0067,-0.0001,-4.9997>,<0,0,1>,12.8529
CONSTR/CIRCLE,BF,2D,CER10.HITS[1..CER10.NUMHITS],CER7.HITS[1..CER7.NUMHITS],,
OUTLIER_REMOVAL/OFF,3
FILTER/OFF,UPR=0
Ø12_86_12_5=FEAT/CIRCLE,CARTESIAN,OUT,LEAST_SQR,YES
THEO/<-0.0298,-0.026,-4.95>,<-0.0004096,-0.0006184,0.9999997>,12.86
ACTL/<-0.1132,0.2985,-12.3472>,<0,0,1>,13.0627
CONSTR/CIRCLE,BF,2D,CER11.HITS[1..CER11.NUMHITS],CER8.HITS[1..CER8.NUMHITS],,
OUTLIER_REMOVAL/OFF,3
FILTER/OFF,UPR=0
Ø12_86_18 =FEAT/CIRCLE,CARTESIAN,OUT,LEAST_SQR,YES
THEO/<-0.0298,-0.026,-4.95>,<-0.0004096,-0.0006184,0.9999997>,12.86
ACTL/<-0.095,0.1678,-17.8206>,<0,0,1>,13.0068
CONSTR/CIRCLE,BF,2D,CER12.HITS[1..CER12.NUMHITS],CER9.HITS[1..CER9.NUMHITS],,
OUTLIER_REMOVAL/OFF,3
FILTER/OFF,UPR=0


No problem with their circularity and diameter either. The issue comes with the repeatability of the circles that are the furthest away from the probings of my datum A, meaning circle -5 and -12.5
The -5 one has terrible repeatability in terms of true position with 0.03mm range of measurements. This is not the case with my circle at -18 which is constructed with the same logic and it is basicly the same tool that is creating it in the CNC machine and same probes and everything in CMM.


What am I missing? Where is the mistake? Could it be the level on a cylinder and how the 2d circle is projected? Does this justify the dispersion? I am not moving the part between the measurements and all other locations / positions / features are consistent.

DIM LOC_0_05_12_86_HAUT_A= POSITION OF CIRCLE Ø12_86_5 UNITS=MM ,$
GRAPH=OFF TEXT=OFF MULT=10.00 OUTPUT=BOTH FIT TO DATUMS=OFF DEV PERPEN CENTERLINE=OFF DISPLAY=DIAMETER
AX NOMINAL +TOL -TOL BONUS MEAS DEV OUTTOL
X V0 -0.0067 -0.0067
Y V0 -0.0001 -0.0001
DF 12.8600 0.0500 0.0500 12.8529 -0.0071 0.0000 #-
TP RFS 0.0500 0.0000 0.0133 0.0133 0.0000 #-
END OF DIMENSION LOC_0_05_12_86_HAUT_A
DIM LOC_0_05_12_86_MILIEU_A= POSITION OF CIRCLE Ø12_86_12_5 UNITS=MM ,$
GRAPH=OFF TEXT=OFF MULT=10.00 OUTPUT=BOTH FIT TO DATUMS=OFF DEV PERPEN CENTERLINE=OFF DISPLAY=DIAMETER
AX NOMINAL +TOL -TOL BONUS MEAS DEV OUTTOL
X V0 -0.1135 -0.1135
Y V0 0.2984 0.2984
DF 12.8600 0.0500 0.0500 13.0627 0.2027 0.1527 ->
TP RFS 0.0500 0.0000 0.6386 0.6386 0.5886 ->
END OF DIMENSION LOC_0_05_12_86_MILIEU_A
DIM LOC_0_05_12_86_BAS_A= POSITION OF CIRCLE Ø12_86_18 UNITS=MM ,$
GRAPH=OFF TEXT=OFF MULT=10.00 OUTPUT=BOTH FIT TO DATUMS=OFF DEV PERPEN CENTERLINE=OFF DISPLAY=DIAMETER
AX NOMINAL +TOL -TOL BONUS MEAS DEV OUTTOL
X V0 -0.0951 -0.0951
Y V0 0.1677 0.1677
DF 12.8600 0.0500 0.0500 13.0068 0.1468 0.0968 ->
TP RFS 0.0500 0.0000 0.3856 0.3856 0.3356 ->
END OF DIMENSION LOC_0_05_12_86_BAS_A


Thanks in advance for your answers and time.
Parents
  • Good advices. This is somewhat good rules to follow for cylinders. The code is not mine just a collogue' s that I am trying to modify to improve. I c/p an earlier version that has these cir7-12 that are terrible constructs. I did replace them all with vector points (polar coordinates) and reconstructed the circles with perfect coordinates but I am still getting (better although) "bad" results.

    Having said that, using a cylinder of 4 mm length 7,75 diameter as a datum maybe is causing this issue as suggested. The thing is that this is the only way to do this following the drawing due to the 3 constructed circles being 3x features. you are calling this a gd&t gaff could you please be more specific so we learn from our mistakes Slight smile ? Also the small arc method gives results for the DIA, I am more interested for the position here!
  • Small arc method is a means of establishing the centroid and diameter with the highest level of repeatability. Once you align locally with the fixed radius circle, then remeasure, your measured circle will be much more reproducible. Why debate with us on how effective it is or it is not? I've been using the demon for over 20 years. Just try it and see for yourself.

    As for GD&T datum gaff: Technically you can make anything that is a feature of size into a datum on a drawing. It doesn't mean it will be a good datum however.
    Functionally speaking, let's just consider your 4mm axis the diameter for a press-fit bearing... Although the center axis of that diameter is the functional center, the real vector control of that axis for that press-fit bearing is the shoulder in which the bearing stops against.
    --If you press-fit that bearing, and you don't get it all the way to the shoulder, it's going to skew that axis and the bearing will self-destruct in no time.
    --The shoulder of that bearing surface is the controlling datum vector of a bearing such as this, not the cylinder's walls.
    Any instance in which you have an interface with a larger surface (7.75mm plane vs 4mm cylinder axis) from which to derive a vector... that larger surface will become the dominant vector-controlling datum surface.
Reply
  • Small arc method is a means of establishing the centroid and diameter with the highest level of repeatability. Once you align locally with the fixed radius circle, then remeasure, your measured circle will be much more reproducible. Why debate with us on how effective it is or it is not? I've been using the demon for over 20 years. Just try it and see for yourself.

    As for GD&T datum gaff: Technically you can make anything that is a feature of size into a datum on a drawing. It doesn't mean it will be a good datum however.
    Functionally speaking, let's just consider your 4mm axis the diameter for a press-fit bearing... Although the center axis of that diameter is the functional center, the real vector control of that axis for that press-fit bearing is the shoulder in which the bearing stops against.
    --If you press-fit that bearing, and you don't get it all the way to the shoulder, it's going to skew that axis and the bearing will self-destruct in no time.
    --The shoulder of that bearing surface is the controlling datum vector of a bearing such as this, not the cylinder's walls.
    Any instance in which you have an interface with a larger surface (7.75mm plane vs 4mm cylinder axis) from which to derive a vector... that larger surface will become the dominant vector-controlling datum surface.
Children
No Data