hexagon logo

measuring a countersink

Good evening Pcdmis masters, I`m fairly new to Pcdmis, and i would love to get some help , I am trying to measure a Countersink Dia at the intersection of the top surface on this part, the available area is very limited and the thread leads are not clocked to the model to get an auto cone reading accurately, is there any method i can use to first identify the rotation of the the double lead thread and then construct a cone avoiding the thread lead`s in order to get an accurate reading? any tips will be appreciated ,thanks in advance
Parents
  • To summarize and correct :

    ASSIGN/V1=PROBEDATA("diam","tip4")/2+PROBEDATA("prbrdv","tip4")
    ASSIGN/V2=PROBEDATA("diam","tip5")/2+PROBEDATA("prbrdv","tip5")
    ASSIGN/V3=RAD2DEG(ASIN((PT2.Z-PT1.Z)/(V2-V1))) is the angle of the chamfer in degrees
    ASSIGN/V3R=ASIN((PT2.Z-PT1.Z)/(V2-V1)) is the angle of the chamfer in radians

    Then the radius of the contact point are :

    ASSIGN/R1=V1*SIN(V3R)
    ASSIGN/R2=V2*SIN(V3R)

    The height of contact point are :

    ASSIGN/H1=PT1.Z-V1*COS(V3R)
    ASSIGN/H1=PT2.Z-V2*COS(V3R)

    The a 2D line (H=a R + b) should give :

    ASSIGN/A=​(H2-H1)/(R2-R1)
    So
    ASSIGN/B=H2-A*R2


    The upper diameter of the countersick is done when H=0, so when R=-B/A


    ASSIGN/DIAM=2*(-B/A)


    ASSIGN/DIST1=DOT(PT1.XYZ-PL1.XYZ,PL1.IJK)....................distance between the centerball of PT1 and the top plane
    ASSIGN/ANGLE_AXIS=ACOS(DOT(UNIT(PT2.XYZ-PT1.XYZ),PL1.IJK))......................angle between cone axis and top plane vector
    ASSIGN/CENTER=PT1.XYZ+(DIST1/COS(ANGLE_AXIS))*UNIT(PT2.XYZ-PT1.XYZ)......................if CENTER.Z is not zero, there's a problem !!!!!
    ASSIGN/VECT=UNIT(PT2.XYZ-PT1.XYZ)
    CS_X34.5 =GENERIC/CIRCLE,DEPENDENT,CARTESIAN,OUT,$
    NOM/XYZ,<CENTER.X,CENTER.Y,CENTER.Z>,$
    MEAS/XYZ,<CENTER.X,CENTER.Y,CENTER.Z>,$
    NOM/IJK,<0,0,1>,$
    MEAS/IJK,<VECT.I,VECT.J,VECT.K>,$
    RADIUS/(-B/A),(-B/A)
    
    ASSIGN/DIST2=B-DIST1
    ASSIGN/VERTEX=PT1.XYZ+(DIST2/COS(ANGLE_AXIS))*UNIT(PT2.XYZ-PT1.XYZ)......with DIST2 should be negative...
  • another thing i just noticed is that starting on this line ASSIGN/V3=RAD2DEG(ASIN((PT2.Z-PT1.Z)/(V2-V1))) the results are returning a nan ind value, but if i switch to atan instead of asin it returns a value of 90 but my chamfer angle i think is 65° nominal i think i should`ve mention that in the beginning
Reply
  • another thing i just noticed is that starting on this line ASSIGN/V3=RAD2DEG(ASIN((PT2.Z-PT1.Z)/(V2-V1))) the results are returning a nan ind value, but if i switch to atan instead of asin it returns a value of 90 but my chamfer angle i think is 65° nominal i think i should`ve mention that in the beginning
Children
No Data