hexagon logo

Constructing a circle from a cone and dimensionning the circularity

I need to dimension the circularity of a circle constructed from a cone, at a given height.
I think that measuring the circle cannot give an accurate result, because of the drift.
So I measured 2 circles around the given height,with the same number of hits and the same direction, and extract the center ball hits in a loop :

ASSIGN/TIP_RAD=PROBEDATA("Diam")/2+PROBEDATA("prbrdv")
PL1 =GENERIC/PLANE,DEPENDENT,CARTESIAN,
$ NOM/XYZ,<0,0,15>,
$ MEAS/XYZ,<0,0,15>,
$NOM/IJK,<0,0,1>,
$ MEAS/IJK,<0,0,15>
ASSIGN/V1=PL1.IJK 
ASSIGN/V2=PL1.XYZ
V10=LOOP/START,ID=YES,NUMBER=CIRC1.NUMHITS,START=1,SKIP=,
ASSIGN/V12=CIRC1.RAWHIT[V10].XYZ
ASSIGN/V13=CIRC2.RAWHIT[V10].XYZ
ASSIGN/V14=CROSS((V12-V13),CROSS((V12-V13),ALIGN_1.ZAXIS))
ASSIGN/V15=V12+V14*TIP_RAD
ASSIGN/V16=V13+V14*TIP_RAD
ASSIGN/V17=UNIT(V15-V16)
ASSIGN/V5=V15-V2
ASSIGN/V6=DOT(V5,V1)
ASSIGN/V7=CROSS(V1,CROSS(V17,V1))
ASSIGN/V8=SIN(DEG2RAD(90-ANGLEBETWEEN(V1,V17)))
ASSIGN/V9=V2+V5-V6*V1-DOT((V6/V8)*V17,V7)*V7
PT1 =GENERIC/POINT,DEPENDENT,CARTESIAN,
$ NOM/XYZ,<V9.X,V9.Y,V9.Z>,
$ MEAS/XYZ,<V9.X,V9.Y,V9.Z>,
$NOM/IJK,<V17.I,V17.J,V17.K>,
$ MEAS/IJK,<V17.I,V17.J,V17.K>
LOOP/END

Then I construct a circle from PT1[1..CIRC1.NUMHITS] and I get a diamter, a center and a circularity. I noticed that the diameter is close to the diameter constructed from a cone (classical method), but the center moves of some µm (same order than the circularity...)

Note :
V12 and V13 are the center ball of each circle hit
V14 is a vector perp to the line between both center ball (V12-V13) and the Z axis so it gives the ball compensation
V15 and V16 are compensated points

I used a little this code :
http://www.pcdmisforum.com/forum/pc-dmis-enterprise-metrology-software/pc-dmis-for-cmms/411816-pierce-point-using-variables
Parents
  • My first reaction would have been:

    - measure the cone as a cone
    - align primary, origin to the cone (does "height" come from the cone or something else?)
    - measure vector points at the correct height, normal to the cone surface
    - construct circle BF from the vector points

    Am I understanding the problem correctly?


    Yes, the only problem of this method is what I called the cmm drift (not sure of the word) accuracy of positionning of the hits. On a cone, a little defect along cone axis give a defect on the radius, so on the roundness. (you can check it by constructing a plane with vector points, and look at its flatness...)
    That's what I want avoiding Slight smile !
Reply
  • My first reaction would have been:

    - measure the cone as a cone
    - align primary, origin to the cone (does "height" come from the cone or something else?)
    - measure vector points at the correct height, normal to the cone surface
    - construct circle BF from the vector points

    Am I understanding the problem correctly?


    Yes, the only problem of this method is what I called the cmm drift (not sure of the word) accuracy of positionning of the hits. On a cone, a little defect along cone axis give a defect on the radius, so on the roundness. (you can check it by constructing a plane with vector points, and look at its flatness...)
    That's what I want avoiding Slight smile !
Children
No Data