hexagon logo

Need help to generate Generic Feature to get TP for the slot

I need some help generating Generic Feature, it is my first time building features from generic feature,
i have a slot which require TP with MMC. I am checking lines then creating mid line through them,
then creating a generic plane and piercing points through lines and the plane.
checking the distance between lines and size which is .800mm checking good,
but when i am creating my generic circle F7 making my NOM as PNT58_MID and
my MEAS also as same as NOM, giving diameter .800, its checking 178.656 .
please advice where am i making the mistake. BTW i am working offline.


LIN20 =FEAT/CONTACT/LINE/DEFAULT,CARTESIAN,BOUNDED
THEO/<71.89,-200,11.5>,<71.89,-203,11.5>,<0,-1,0>,<-1,0,0>,<0,0,1>,3
ACTL/<71.89,-200,11.5>,<71.89,-203,11.5>,<0,-1,0>,<-1,0,0>,<0,0,1>,3
TARG/<71.89,-200,11.5>,<71.89,-203,11.5>,<0,-1,0>,<-1,0,0>,<0,0,1>
SHOW FEATURE PARAMETERS=YES
VOID DETECTION=NO
SURFACE1=THEO_THICKNESS,0
SURFACE2=ACTL_THICKNESS,0
MEASURE MODE=NOMINALS
RMEAS=NONE,NONE,NONE
AUTO WRIST=NO
GRAPHICAL ANALYSIS=NO
FEATURE LOCATOR=NO,NO,""
SHOW CONTACT PARAMETERS=YES
NUMHITS=2,DEPTH=0.5
SAMPLE METHOD=SAMPLE_FEATURE
SAMPLE FEATURE=NONE
AVOIDANCE MOVE=BOTH,DISTANCE=0
SHOW HITS=YES
HIT/BASIC,<71.89,-200,11>,<-1,0,0>,<71.89,-200,11>
HIT/BASIC,<71.89,-203,11>,<-1,0,0>,<71.89,-203,11>
ENDMEAS/
LIN21 =FEAT/CONTACT/LINE/DEFAULT,CARTESIAN,BOUNDED
THEO/<71.11,-200,11.5>,<71.11,-203,11.5>,<0,-1,0>,<1,0,0>,<0,0,1>,3
ACTL/<71.11,-200,11.5>,<71.11,-203,11.5>,<0,-1,0>,<1,0,0>,<0,0,1>,3
TARG/<71.11,-200,11.5>,<71.11,-203,11.5>,<0,-1,0>,<1,0,0>,<0,0,1>
SHOW FEATURE PARAMETERS=YES
VOID DETECTION=NO
SURFACE1=THEO_THICKNESS,0
SURFACE2=ACTL_THICKNESS,0
MEASURE MODE=NOMINALS
RMEAS=NONE,NONE,NONE
AUTO WRIST=NO
GRAPHICAL ANALYSIS=NO
FEATURE LOCATOR=NO,NO,""
SHOW CONTACT PARAMETERS=YES
NUMHITS=2,DEPTH=0.5
SAMPLE METHOD=SAMPLE_FEATURE
SAMPLE FEATURE=NONE
AVOIDANCE MOVE=BOTH,DISTANCE=0
SHOW HITS=YES
HIT/BASIC,<71.11,-200,11>,<1,0,0>,<71.11,-200,11>
HIT/BASIC,<71.11,-203,11>,<1,0,0>,<71.11,-203,11>
ENDMEAS/
LIN22 =FEAT/LINE,CARTESIAN,BOUNDED,NO
THEO/<71.5,-200,11.5>,<71.5,-203,11.5>,3
ACTL/<71.5,-200,11.5>,<71.5,-203,11.5>,3
CONSTR/LINE,MID,LIN21,LIN20
F6 =GENERIC/PLANE,DEPENDENT,CARTESIAN,$
NOM/XYZ,<31.867,-609.12,0>,$
MEAS/XYZ,<71.5,-200,11.5>,$
NOM/IJK,<0,0.0558215,0.9984408>,$
MEAS/IJK,<0,1,0>
PNT58_MID =FEAT/POINT,CARTESIAN,NO
THEO/<71.5,-814.813,11.5>,<0,-1,0>
ACTL/<71.5,-200,11.5>,<0,-1,0>
CONSTR/POINT,PIERCE,LIN22,F6
PNT59 =FEAT/POINT,CARTESIAN,NO
THEO/<71.11,-814.813,11.5>,<0,-1,0>
ACTL/<71.11,-200,11.5>,<0,-1,0>
CONSTR/POINT,PIERCE,F6,LIN21
PNT60 =FEAT/POINT,CARTESIAN,NO
THEO/<71.89,-814.813,11.5>,<0,-1,0>
ACTL/<71.89,-200,11.5>,<0,-1,0>
CONSTR/POINT,PIERCE,F6,LIN20
DIM DIST6= 2D DISTANCE FROM LINE LIN20 TO LINE LIN21 PAR TO XAXIS,NO_RADIUS UNITS=MM,$
GRAPH=OFF TEXT=OFF MULT=1.00 OUTPUT=BOTH
AX NOMINAL +TOL -TOL MEAS DEV OUTTOL
M 0.800 0.100 0.100 0.780 -0.020 0.000 -#--
F7 =GENERIC/CIRCLE,DEPENDENT,CARTESIAN,IN,$
NOM/XYZ,<PNT58_MID.X,PNT58_MID.Y,PNT58_MID.Z>,$
MEAS/XYZ,<PNT58_MID.X,PNT58_MID.Y,PNT58_MID.Z>,$
NOM/IJK,<0,0,1>,$
MEAS/IJK,<0,0,1>,$
DIAMETER/0.8,DIST1.M.MIN
DIM LOC32= POSITION OF CIRCLE F7 UNITS=MM ,$
GRAPH=OFF TEXT=OFF MULT=1.00 OUTPUT=BOTH FIT TO DATUMS=OFF DEV PERPEN CENTERLINE=OFF DISPLAY=DIAMETER
AX NOMINAL +TOL -TOL BONUS MEAS DEV OUTTOL
X 71.500 71.500 0.000
DF 0.800 0.100 0.100 0.200 178.656 177.856 177.756 --->
TP MMC 0.130 0.200 0.000 0.000 0.000 #---
END OF DIMENSION LOC32​[HTML]
[/HTML]
  • Your F7 diameter should have the diameter variable of DIST1.M.MEAS instead of .MIN
  • Sora5: I changed the Min to MEAS but still Ø checking 178.837

    F7 =GENERIC/CIRCLE,DEPENDENT,CARTESIAN,IN,$
    NOM/XYZ,<PNT58_MID.X,PNT58_MID.Y,PNT58_MID.Z>,$
    MEAS/XYZ,<PNT58_MID.X,PNT58_MID.Y,PNT58_MID.Z>,$
    NOM/IJK,<0,0,1>,$
    MEAS/IJK,<0,0,1>,$
    DIAMETER/0.8,DIST1.M.MEAS
    DIM LOC32= POSITION OF CIRCLE F7 UNITS=MM ,$
    GRAPH=OFF TEXT=OFF MULT=1.00 OUTPUT=BOTH FIT TO DATUMS=OFF DEV PERPEN CENTERLINE=OFF DISPLAY=DIAMETER
    AX NOMINAL +TOL -TOL BONUS MEAS DEV OUTTOL
    X 71.500 71.500 0.000
    DF 0.800 0.100 0.100 0.200 178.837 178.037 177.937 --->
    TP MMC 0.130 0.200 0.000 0.000 0.000 #---
    END OF DIMENSION LOC32
  • Check your workplane when you constructed the circle. The circle is created with nom vectors 0,0,1 so you need to be in a non Z workplane. Try XPLUS or YPLUS before your construction.
  • Sora5, i figured out the problem now it is working. But I still don't know how to generate the Generic Feature? i actually copied the code from one of the thread and used it and it worked but when i am trying to figure out how to put the formulas into generating the generic features. Thank you.
  • Create the generic feature with whatever the default numbers are and adjust them in the code after creation. The what is what can be found in the help file, while having the mouse cursor on the code you are interested about, hit f1. That should do the trick
  • Check your generic planes !!!!!
    CONSTR/LINE,MID,LIN21,LIN20
    F6 =GENERIC/PLANE,DEPENDENT,CARTESIAN,$
    NOM/XYZ,<31.867,-609.12,0>,$
    MEAS/XYZ,<71.5,-200,11.5>,$
    NOM/IJK,<0,0.0558215,0.9984408>,$
    MEAS/IJK,<0,1,0>​

    Theo and meas value doesn't match at all, so the construction is wrong !!!!!
  • In addition, your generic feature's NOMINALS should NOT be the same as your measurement. With this, your feature will always have a ZERO true position. You should be using .TX, .TY, and .TZ extensions (where applicable).
  • tip for generic features: USE 'MATH FORMULAS' for all the THEO values, then there is no way that Pcdmis can change them on you.

    SOME generic features (at least in older versions of Pcdmis) will calculate correctly, but will never show correctly on the graphics screen when executed, they look correct when created, but not when the program is executed, no matter what you do. (generic slots)

    (just a quick circle, made from a plane, didn't matter, just wanted the code)
    H001 =GENERIC/CIRCLE,DEPENDENT,RECT,IN,$
    NOM/XYZ,4111.883+0,497.909+0,539.656+0,$
    MEAS/XYZ,PLN5.X,PLN5.Y,PLN5.Z,$
    NOM/IJK,0+0,1+0,0+0,$
    MEAS/IJK,PLN5.I,PLN5.J,PLN5.K,$
    RADIUS/5+0,5​
    


    I've never used any of the menus for generic feature creation, I simply put my cursor in the edit window where I want the generic feature, hit ENTER, then type in GEN (TAB key) and the generic feature pops into the edit window, I then type in what I want/need for the feature.

    same deal, with a round slot
    H002 =GENERIC/ROUND_SLOT,DEPENDENT,RECT,IN,$
    NOM/XYZ,4111.883+0,497.909+0,539.656+0,$
    MEAS/XYZ,PLN5.X,PLN5.Y,PLN5.Z,$
    NOM/IJK,0+0,1+0,0+0,$
    MEAS/IJK,PLN5.I,PLN5.J,PLN5.K,$
    NOM/IJK2,1+0,0+0,0+0,$
    MEAS/IJK2,1+0,0+0,0+0,$
    RADIUS/5+0,5,$
    DISTANCE/20+0,20​
    


    Notice that all theo values are formulas, not just values.
  • when creating the 'source' features for the generic feature, IF it is done correctly, then the THEO values for that 'source' feature will the the correct THEO values, and those should be typed into the THEO values for the generic feature. I never use feature ID's for THEOs in a generic feature.