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
  • There's an error in the previous post, it' an ASIN and not an ATAN !!!!! Disappointed
    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


    Then the radius of the contact point are :
    ASSIGN/R1=V1*SIN(DEG2RAD(V3)
    ASSIGN/R2=V2*SIN(RAG2DEG(V3)

    The height of contact point are :
    ASSIGN/H1=PT1.Z-V1*COS(DEG2RAD(V3)
    ASSIGN/H1=PT2.Z-V2*COS(DEG2RAD(V3)


    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)


    Hope this helps...
  • This is absolutely beautiful, thank you so much for your help, i was actually able to follow your steps to match my needs, I will need help now assigning those variables to a generic feature to dimension it , I would assume I need to create a generic cone to then intersected to the top surface? Is that correct? Could you please review my code to make sure I'm doing it right? How do i used the results from the variables to do that? Thanks in advance.

    ASSIGN/V10=PROBEDATA("diam","T1_3X20")/2+PROBEDATA("prbrdv","T1_3X20")
                  ASSIGN/V11=PROBEDATA("diam","T6_5X20")/2+PROBEDATA("prbrdv","T6_5X20")
                  ASSIGN/V12=RAD2DEG(ASIN(PT2.Z-PT1.Z)/(V11-V10))
                  ASSIGN/R1=V10*SIN(DEG2RAD(V12))
                  ASSIGN/R2=V11*SIN(RAD2DEG(V12))
                  ASSIGN/H1=PT1.Z-V10*COS(DEG2RAD(V12))
                  ASSIGN/H2=PT2.Z-V11*COS(DEG2RAD(V12))
                  ASSIGN/A=(H2-H1)/(R2-R1)
                  ASSIGN/B=(H2-A*R2)
                  ASSIGN/DIAM=2*(-B/A)
    CS_X34.5     =GENERIC/CIRCLE,DEPENDENT,CARTESIAN,OUT,$
                  NOM/XYZ,<0,0,-0.29311>,$
                  MEAS/XYZ,<0,0,-0.29311>,$
                  NOM/IJK,<0,0,1>,$
                  MEAS/IJK,<0,0,1>,$
                  RADIUS/0,0
Reply
  • This is absolutely beautiful, thank you so much for your help, i was actually able to follow your steps to match my needs, I will need help now assigning those variables to a generic feature to dimension it , I would assume I need to create a generic cone to then intersected to the top surface? Is that correct? Could you please review my code to make sure I'm doing it right? How do i used the results from the variables to do that? Thanks in advance.

    ASSIGN/V10=PROBEDATA("diam","T1_3X20")/2+PROBEDATA("prbrdv","T1_3X20")
                  ASSIGN/V11=PROBEDATA("diam","T6_5X20")/2+PROBEDATA("prbrdv","T6_5X20")
                  ASSIGN/V12=RAD2DEG(ASIN(PT2.Z-PT1.Z)/(V11-V10))
                  ASSIGN/R1=V10*SIN(DEG2RAD(V12))
                  ASSIGN/R2=V11*SIN(RAD2DEG(V12))
                  ASSIGN/H1=PT1.Z-V10*COS(DEG2RAD(V12))
                  ASSIGN/H2=PT2.Z-V11*COS(DEG2RAD(V12))
                  ASSIGN/A=(H2-H1)/(R2-R1)
                  ASSIGN/B=(H2-A*R2)
                  ASSIGN/DIAM=2*(-B/A)
    CS_X34.5     =GENERIC/CIRCLE,DEPENDENT,CARTESIAN,OUT,$
                  NOM/XYZ,<0,0,-0.29311>,$
                  MEAS/XYZ,<0,0,-0.29311>,$
                  NOM/IJK,<0,0,1>,$
                  MEAS/IJK,<0,0,1>,$
                  RADIUS/0,0
Children
No Data