Legacy TP - NoOK, Xact TP - OK

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Legacy TP - NoOK, Xact TP - OK

    Recently we had a dispute, for many years we measured a part according to the program sent to us by our collegues from another country, I am forbidden to doubt their qualifications. They used an legacy method for measuring TP, everything was in order until we started having problems with the cnc producing this part, some holes went out of tolerance, for the sake of interest I tried to apply xact and for these measurements it is not ideal but in the tolerance zone, now we do not know what to do, because our parts do not pass through the old dimensions, but the repair service says that it cannot find the problem, I am still a beginner and do not want to go against great minds, but I just wonder how it would be more correct. Here measurements of the same part, and we use iterative alignment.
    Have a great sunny weekend everyone
    https://i.postimg.cc/XGWzj1FK/1-legacy1.jpg https://i.postimg.cc/1fVK8hSG/2-legacy.jpg​​​​​​​ https://i.postimg.cc/F1LY5PpC/xact.jpg https://i.postimg.cc/Btk22LYk/IMG-20200731-215910.jpg
    Last edited by Vladimir; 07-31-2020, 03:36 PM.

  • #2
    Since there isn't a tertiary datum, XactMeasure is doing a best fit rotation. What kind of rotational alignment are you doing for your legacy position?
    PC-DMIS 2016.0 SP8

    Jeff

    Comment


    • #3
      In both cases A level, B origin, C one of the six holes to Y- according to drawing
      Last edited by Vladimir; 07-31-2020, 03:17 PM.

      Comment


      • #4
        In Legacy Datum 1 shows a diameter size Datum 2 doesn't show anything, meaning Datum 2 is a plane. They are calling out

        Capture.JPG

        Good news if your callout is correct then they screwed up.

        Sorry your new, let me be clearer. D1 stands for first Datum in the FCF, its a diameter, so it is leveling to a cylinder, D2 datum means it's rotating to a line or surface if you switch the 2. D1 would not show a plus or minus value or nominal, because it's leveling on a plane, your examples show the opposite.
        Last edited by KIRBSTER269; 07-31-2020, 03:56 PM.
        (In Memory of my Loving wife, "Ronda" who I lost March 7, 2016. I love you baby.)
        They say "Nobody's Perfect." I must be Nobody.

        Comment


        • Vladimir
          Vladimir commented
          Editing a comment
          I understand what you mean, but in that program it is not even aligned in a cylinder, but in a circle

        • KIRBSTER269
          KIRBSTER269 commented
          Editing a comment
          That's even worse, because a circle represents a common center POINT, can't level to a POINT, at least with a cylinder it would be a common center LINE, at least you could level to a line, not the best, but you can.

        • Vladimir
          Vladimir commented
          Editing a comment
          yes, I understand that, but no one else is interested in it except me

      • #5
        I don't even know if this is good or bad, because I was strictly forbidden to argue with this, I was told that people there have been programming for 10 years, and you are still small and stupid, in principle they are right, but I hope they will listen to me
        https://i.postimg.cc/nCVG1jq1/334.png

        Comment


        • KIRBSTER269
          KIRBSTER269 commented
          Editing a comment
          Well if this is the true callout, and that legacy results are theirs, you can tell them, you aren't arguing with the guys 10 years of experience, but for some reason "the guys" on the forum with over 20 years of experience said he or she is wrong, how about that?
          Last edited by KIRBSTER269; 08-02-2020, 10:07 AM.

        • Vladimir
          Vladimir commented
          Editing a comment
          I think this is a weighty enough argument to give to my boss

      • #6
        Simple Give them this picture and simply ask them. How does a plane have a Plus .25 tolerance and minus 0.000 tolerance when leveling.
        Also how does Datum 2 (D2) identify as a Cylinder with NO nominal and NO Tolerance? Give this info to your boss also.

        Capture.JPG
        (In Memory of my Loving wife, "Ronda" who I lost March 7, 2016. I love you baby.)
        They say "Nobody's Perfect." I must be Nobody.

        Comment


        • Vladimir
          Vladimir commented
          Editing a comment
          I will bring up this moment for discussion today

      • #7
        Originally posted by Vladimir View Post
        I don't even know if this is good or bad, because I was strictly forbidden to argue with this, I was told that people there have been programming for 10 years, and you are still small and stupid, in principle they are right, but I hope they will listen to me
        https://i.postimg.cc/nCVG1jq1/334.png
        Well listen here "small and stupid" time does not automatically mean you're a giant! (I did sense a bit of sarcasm but just in case you're not). Just go to any 'big name' aerospace company's machine shop and meet some of the cats who have been there for 25yrs plus... I've seen young whipper snapperz in it for a few years walk circles around them, it's sad.
        PcDmis 2015.1 SP10 CAD++
        Global 7-10-7 DC800S

        Comment


        • Vladimir
          Vladimir commented
          Editing a comment
          Our city is very far from the space industry, but I understand you

      • #8
        Just another option, If you can't argue with the company that is checking this incorrectly, Then you will have to change your way of producing the part. You will have to drill the main hole and use a Pin to Level the part before drilling the outer holes, Because of the way they are calling it out, The outer holes now become more important to being parallel to datum B, then perpendicular To Datum A, that's what happens when you simply switch the 2 Datums.

        Datum_B, MUST be a CYLINDER, NOT a circle!!!!!!!
        Last edited by KIRBSTER269; 08-02-2020, 10:33 AM.
        (In Memory of my Loving wife, "Ronda" who I lost March 7, 2016. I love you baby.)
        They say "Nobody's Perfect." I must be Nobody.

        Comment


        • KIRBSTER269
          KIRBSTER269 commented
          Editing a comment
          manual alignment is just to locate the part on the machine, you don't use those features for anything else. In DCC mode you can create a auto plane (A), auto cylinder(B), another auto cylinder for clocking, You don't have to make manual hits. cleaner program also

        • Vladimir
          Vladimir commented
          Editing a comment
          Two iterative alignments, one in manual and then the second in dcc is this normal?

        • KIRBSTER269
          KIRBSTER269 commented
          Editing a comment
          The machine has no idea where the part is on the machine, thats the purpose of the manual alignment, nothing more nothing less, the DCC alignment is used for a more accurate result of the condition of the part, never ever use the manual alignment features to report the condition of the part.

      • #9
        Originally posted by Vladimir View Post
        In both cases A level, B origin, C one of the six holes to Y- according to drawing
        Are you sure about this? One of the holes PA should then be at zero deviation (in legacy evaluation). Could it be that a 2D-bestfit is done after the level/rotate alignment (as it should be done)?
        Xact does this for you, according to the datum structure.

        Possible to post the alignment code?
        PC-DMIS CAD++ 2o19 R1 SP9

        Comment


        • #10
          vpt.se yes, here is the code from the program provided for us
          Part 1
          Code:
          PNT1 =FEAT/CONTACT/VECTOR POINT/DEFAULT,CARTESIAN
          THEO/<-13.239,32.138,10.2>,<0,0,1>
          ACTL/<121.514,277.054,-720.653>,<0.0000705,-0.0006548,0.9999998>
          TARG/<-13.239,32.138,10.2>,<0,0,1>
          SHOW FEATURE PARAMETERS=YES
          SURFACE=THEO_THICKNESS,0
          MEASURE MODE=NOMINALS
          RMEAS=NONE,NONE,NONE
          AUTO WRIST=NO
          GRAPHICAL ANALYSIS=NO
          FEATURE LOCATOR=NO,NO,""
          SHOW CONTACT PARAMETERS=YES
          AVOIDANCE MOVE=BOTH,DISTANCE=20
          SHOW HITS=NO
          PNT2 =FEAT/CONTACT/VECTOR POINT/DEFAULT,CARTESIAN
          THEO/<-21.993,-25.32,10.2>,<0,0,1>
          ACTL/<121.121,218.934,-720.688>,<0.0000705,-0.0006548,0.9999998>
          TARG/<-21.993,-25.32,10.2>,<0,0,1>
          SHOW FEATURE PARAMETERS=YES
          SURFACE=THEO_THICKNESS,0
          MEASURE MODE=NOMINALS
          RMEAS=NONE,NONE,NONE
          AUTO WRIST=NO
          GRAPHICAL ANALYSIS=NO
          FEATURE LOCATOR=NO,NO,""
          SHOW CONTACT PARAMETERS=YES
          AVOIDANCE MOVE=BOTH,DISTANCE=20
          SHOW HITS=NO
          PNT3 =FEAT/CONTACT/VECTOR POINT/DEFAULT,CARTESIAN
          THEO/<32.524,-3.431,10.2>,<0,0,1>
          ACTL/<171.92,248.445,-720.676>,<0.0000705,-0.0006548,0.9999998>
          TARG/<32.524,-3.431,10.2>,<0,0,1>
          SHOW FEATURE PARAMETERS=YES
          SURFACE=THEO_THICKNESS,0
          MEASURE MODE=NOMINALS
          RMEAS=NONE,NONE,NONE
          AUTO WRIST=NO
          GRAPHICAL ANALYSIS=NO
          FEATURE LOCATOR=NO,NO,""
          SHOW CONTACT PARAMETERS=YES
          AVOIDANCE MOVE=BOTH,DISTANCE=20
          SHOW HITS=NO
          PNT4 =FEAT/CONTACT/VECTOR POINT/DEFAULT,CARTESIAN
          THEO/<18.15,27.13,10.2>,<0,0,1>
          ACTL/<153.297,276.618,-720.65>,<0.0000705,-0.0006548,0.9999998>
          TARG/<18.15,27.13,10.2>,<0,0,1>
          SHOW FEATURE PARAMETERS=YES
          SURFACE=THEO_THICKNESS,0
          MEASURE MODE=NOMINALS
          RMEAS=NONE,NONE,NONE
          AUTO WRIST=NO
          GRAPHICAL ANALYSIS=NO
          FEATURE LOCATOR=NO,NO,""
          SHOW CONTACT PARAMETERS=YES
          AVOIDANCE MOVE=BOTH,DISTANCE=20
          SHOW HITS=NO
          B CIR =FEAT/CONTACT/CIRCLE/DEFAULT,CARTESIAN,IN,LEAST_SQR
          THEO/<0,0,10.2>,<0,0,1>,45
          ACTL/<139.235,247.162,-720.657>,<0.0002473,-0.0008993,0.9999996>,45.032
          TARG/<0,0,10.2>,<0,0,1>
          START ANG=0,END ANG=0
          ANGLE VEC=<1,0,0>
          DIRECTION=CCW
          SHOW FEATURE PARAMETERS=YES
          REMEASURE=NO
          SURFACE=THEO_THICKNESS,0
          MEASURE MODE=NOMINALS
          RMEAS=NONE,NONE,NONE
          AUTO WRIST=NO
          GRAPHICAL ANALYSIS=NO
          FEATURE LOCATOR=NO,NO,""
          SHOW CONTACT PARAMETERS=YES
          NUMHITS=4,DEPTH=3,PITCH=0
          SAMPLE HITS=3,SPACER=3
          AVOIDANCE MOVE=BOTH,DISTANCE=20
          FIND HOLE=DISABLED,ONERROR=NO,READ POS=NO
          SHOW HITS=NO
          C CIR =FEAT/CONTACT/CIRCLE/DEFAULT,CARTESIAN,IN,LEAST_SQR
          THEO/<-4.307,-32.724,10.2>,<0,0,1>,11.5
          ACTL/<139.704,214.105,-720.693>,<0.000345,-0.0023923,0.9999971>,11.548
          TARG/<-4.307,-32.718,10.2>,<0,0,1>
          START ANG=0,END ANG=360
          ANGLE VEC=<1,0,0>
          DIRECTION=CCW
          SHOW FEATURE PARAMETERS=YES
          REMEASURE=NO
          SURFACE=THEO_THICKNESS,0
          MEASURE MODE=NOMINALS
          RMEAS=NONE,NONE,NONE
          AUTO WRIST=NO
          GRAPHICAL ANALYSIS=NO
          FEATURE LOCATOR=NO,NO,""
          SHOW CONTACT PARAMETERS=YES
          NUMHITS=4,DEPTH=3,PITCH=0
          SAMPLE HITS=3,SPACER=3
          AVOIDANCE MOVE=BOTH,DISTANCE=20
          FIND HOLE=DISABLED,ONERROR=NO,READ POS=NO
          SHOW HITS=NO
          A1 =ALIGNMENT/START,RECALL:STARTUP,LIST=YES
          ALIGNMENT/ITERATE
          PNT TARGET RAD=0.1,START LABEL=,FIXTURE TOL=0.05,ERROR LABEL=
          MEAS ALL FEAT=ALWAYS,MAX ITERATIONS=1,LEVEL AXIS=ZAXIS,ROTATE AXIS=XAXIS,ORIGIN AXIS=YAXIS
          LEVEL=PNT1,PNT2,PNT3,PNT4,,
          ROTATE=B CIR,C CIR,,
          ORIGIN=B CIR,,
          ALIGNMENT/END
          MODE/DCC
          CLEARP/ZPLUS,35,ZPLUS,35,ON
          PNT5 =FEAT/POINT,CARTESIAN
          THEO/<5.216,32.796,0.118>,<0,0,1>
          ACTL/<5.217,32.796,-0.659>,<0,0,1>
          MEAS/POINT,1,WORKPLANE
          MOVE/CLEARPLANE
          HIT/BASIC,NORMAL,<5.216,32.796,0.118>,<0,0,1>,<5.217,3 2.796,-0.659>,USE THEO=YES
          ENDMEAS/
          PNT6 =FEAT/POINT,CARTESIAN
          THEO/<-27.029,20.012,0.111>,<0,0,1>
          ACTL/<-27.029,20.012,-0.652>,<0,0,1>
          MEAS/POINT,1,WORKPLANE
          MOVE/CLEARPLANE
          HIT/BASIC,NORMAL,<-27.029,20.012,0.111>,<0,0,1>,<-27.029,20.012,-0.652>,USE THEO=YES
          ENDMEAS/
          PNT7 =FEAT/POINT,CARTESIAN
          THEO/<-5.7,-34.325,0.074>,<0,0,1>
          ACTL/<-5.7,-34.328,-0.609>,<0,0,1>
          MEAS/POINT,1,WORKPLANE
          MOVE/CLEARPLANE
          HIT/BASIC,NORMAL,<-5.7,-34.325,0.074>,<0,0,1>,<-5.7,-34.328,-0.609>,USE THEO=YES
          ENDMEAS/
          PNT8 =FEAT/POINT,CARTESIAN
          THEO/<29.959,11.994,0.102>,<0,0,1>
          ACTL/<29.96,11.995,-0.627>,<0,0,1>
          MEAS/POINT,1,WORKPLANE
          MOVE/CLEARPLANE
          HIT/BASIC,NORMAL,<29.959,11.994,0.102>,<0,0,1>,<29.96, 11.995,-0.627>,USE THEO=YES
          ENDMEAS/
          A PLN =FEAT/PLANE,CARTESIAN,TRIANGLE,NO
          THEO/<0.611,7.62,0.101>,<0.0000598,-0.0006592,0.9999998>
          ACTL/<0.612,7.618,-0.637>,<-0.0003234,0.0007474,0.9999997>
          CONSTR/PLANE,BFRE,PNT5,PNT6,PNT7,PNT8,,
          OUTLIER_REMOVAL/OFF,3
          FILTER/OFF,WAVELENGTH=0
          MOVE/CLEARPLANE
          A2 =ALIGNMENT/START,RECALL:A1,LIST=YES
          ALIGNMENT/LEVEL,ZPLUS,A PLN
          ALIGNMENT/TRANS,ZAXIS,A PLN
          ALIGNMENT/END

          Comment


          • Vladimir
            Vladimir commented
            Editing a comment
            Part 2
            Code:
            dim loc3= position of circle c cir units=mm ,$
            graph=off text=off mult=10.00 output=both fit to datums=off dev perpen centerline=off display=diameter
            ax meas nominal +tol -tol bonus dev outtol
            pr 33.053 33.000 0.053
            pa 262.512 262.500 0.012
            df 11.548 11.500 0.100 0.100 0.048 0.000 ------#--
            d1 45.032 45.000 0.025 0.000 circle b cir at rfs
            d2 plane a pln at rfs
            tp 0.107 rfs 0.300 0.000 0.107 0.000 ---#-----
            end of dimension loc3
            cir3 =feat/contact/circle/default,cartesian,in,least_sqr
            theo/<26.181,-20.089,10.125>,<-0.0006008,0.0002778,0.9999998>,11.5
            actl/<26.191,-20.164,10.805>,<0.0020137,-0.0017493,0.9999964>,11.542
            targ/<26.175,-20.086,10.125>,<-0.0006008,0.0002778,0.9999998>
            start ang=0,end ang=360
            angle vec=<0.5000004,0.8660252,0.0000598>
            direction=ccw
            show feature parameters=yes
            remeasure=no
            surface=theo_thickness,0
            measure mode=nominals
            rmeas=none,none,none
            auto wrist=no
            circular moves=no
            clearplane=no
            graphical analysis=no
            feature locator=no,no,""
            show contact parameters=yes
            numhits=4,depth=3,pitch=0
            sample hits=3,spacer=3
            avoidance move=both,distance=20
            find hole=disabled,onerror=no,read pos=no
            show hits=no
            dim loc3= position of circle cir3 units=mm ,$
            graph=off text=off mult=10.00 output=both fit to datums=off dev perpen centerline=off display=diameter
            ax meas nominal +tol -tol bonus dev outtol
            pr 33.042 33.000 0.042
            pa 322.424 322.500 -0.076
            df 11.542 11.500 0.100 0.100 0.042 0.000 ------#--
            d1 45.032 45.000 0.025 0.000 circle b cir at rfs
            d2 plane a pln at rfs
            tp 0.121 rfs 0.300 0.000 0.121 0.000 ---#-----
            end of dimension loc3
            cir4 =feat/contact/circle/default,cartesian,in,least_sqr
            theo/<30.488,12.629,10.125>,<-0.000541,-0.0003814,0.9999998>,11.5
            actl/<30.491,12.576,10.833>,<0.0018994,0.0004675,0.9999 981>,11.549
            targ/<30.483,12.625,10.125>,<-0.000541,-0.0003814,0.9999998>
            start ang=0,end ang=360
            angle vec=<-0.4999996,0.8660256,0.0000598>
            direction=ccw
            show feature parameters=yes
            remeasure=no
            surface=theo_thickness,0
            measure mode=nominals
            rmeas=none,none,none
            auto wrist=no
            circular moves=no
            clearplane=no
            graphical analysis=no
            feature locator=no,no,""
            show contact parameters=yes
            numhits=4,depth=3,pitch=0
            sample hits=3,spacer=3
            avoidance move=both,distance=20
            find hole=disabled,onerror=no,read pos=no
            show hits=no
            dim loc3= position of circle cir4 units=mm ,$
            graph=off text=off mult=10.00 output=both fit to datums=off dev perpen centerline=off display=diameter
            ax meas nominal +tol -tol bonus dev outtol
            pr 32.984 33.000 -0.016
            pa 22.440 22.500 -0.060
            df 11.549 11.500 0.100 0.100 0.049 0.000 ------#--
            d1 45.032 45.000 0.025 0.000 circle b cir at rfs
            d2 plane a pln at rfs
            tp 0.076 rfs 0.300 0.000 0.076 0.000 --#------
            end of dimension loc3
            cir5 =feat/contact/circle/default,cartesian,in,least_sqr
            theo/<4.307,32.718,10.125>,<0.0000598,-0.0006592,0.9999998>,11.5
            actl/<4.305,32.665,10.859>,<-0.0000744,0.0006359,0.9999998>,11.55
            targ/<4.308,32.711,10.125>,<0.0000598,-0.0006592,0.9999998>
            start ang=0,end ang=360
            angle vec=<-1,0.0000005,0.0000598>
            direction=ccw
            show feature parameters=yes
            remeasure=no
            surface=theo_thickness,0
            measure mode=nominals
            rmeas=none,none,none
            auto wrist=no
            circular moves=no
            clearplane=no
            graphical analysis=no
            feature locator=no,no,""
            show contact parameters=yes
            numhits=4,depth=3,pitch=0
            sample hits=3,spacer=3
            avoidance move=both,distance=20
            find hole=disabled,onerror=no,read pos=no
            show hits=no
            dim loc3= position of circle cir5 units=mm ,$
            graph=off text=off mult=10.00 output=both fit to datums=off dev perpen centerline=off display=diameter
            ax meas nominal +tol -tol bonus dev outtol
            pr 32.961 33.000 -0.039
            pa 82.502 82.500 0.002
            df 11.550 11.500 0.100 0.100 0.050 0.000 ------#--
            d1 45.032 45.000 0.025 0.000 circle b cir at rfs
            d2 plane a pln at rfs
            tp 0.078 rfs 0.300 0.000 0.078 0.000 --#------
            end of dimension loc3
            cir6 =feat/contact/circle/default,cartesian,in,least_sqr
            theo/<-26.181,20.089,10.125>,<0.0006008,-0.0002778,0.9999998>,11.5
            actl/<-26.185,20.019,10.86>,<-0.0007274,-0.0007158,0.9999995>,11.546
            targ/<-26.175,20.086,10.125>,<0.0006008,-0.0002778,0.9999998>
            start ang=0,end ang=360
            angle vec=<-0.5000004,-0.8660252,0.0000598>
            direction=ccw
            show feature parameters=yes
            remeasure=no
            surface=theo_thickness,0
            measure mode=nominals
            rmeas=none,none,none
            auto wrist=no
            circular moves=no
            clearplane=no
            graphical analysis=no
            feature locator=no,no,""
            show contact parameters=yes
            numhits=4,depth=3,pitch=0
            sample hits=3,spacer=3
            avoidance move=both,distance=20
            find hole=disabled,onerror=no,read pos=no
            show hits=no
            dim loc3= position of circle cir6 units=mm ,$
            graph=off text=off mult=10.00 output=both fit to datums=off dev perpen centerline=off display=diameter
            ax meas nominal +tol -tol bonus dev outtol
            pr 32.972 33.000 -0.028
            pa 142.585 142.500 0.085
            df 11.546 11.500 0.100 0.100 0.046 0.000 ------#--
            d1 45.032 45.000 0.025 0.000 circle b cir at rfs
            d2 plane a pln at rfs
            tp 0.112 rfs 0.300 0.000 0.112 0.000 ---#-----
            end of dimension loc3
            cir7 =feat/contact/circle/default,cartesian,in,least_sqr
            theo/<-30.488,-12.629,10.125>,<0.000541,0.0003814,0.9999998>,11.5
            actl/<-30.486,-12.701,10.835>,<-0.000272,-0.0015425,0.9999988>,11.559
            targ/<-30.483,-12.625,10.125>,<0.000541,0.0003814,0.9999998>
            start ang=0,end ang=360
            angle vec=<0.4999996,-0.8660256,0.0000598>
            direction=ccw
            show feature parameters=yes
            remeasure=no
            surface=theo_thickness,0
            measure mode=nominals
            rmeas=none,none,none
            auto wrist=no
            circular moves=no
            clearplane=no
            graphical analysis=no
            feature locator=no,no,""
            show contact parameters=yes
            numhits=4,depth=3,pitch=0
            sample hits=3,spacer=3
            avoidance move=both,distance=20
            find hole=disabled,onerror=no,read pos=no
            show hits=no
            dim loc3= position of circle cir7 units=mm ,$
            graph=off text=off mult=10.00 output=both fit to datums=off dev perpen centerline=off display=diameter
            ax meas nominal +tol -tol bonus dev outtol
            pr 33.024 33.000 0.024
            pa 202.591 202.500 0.091
            df 11.559 11.500 0.100 0.100 0.059 0.000 -------#-
            d1 45.032 45.000 0.025 0.000 circle b cir at rfs
            d2 plane a pln at rfs
            tp 0.115 rfs 0.300 0.000 0.115 0.000 ---#-----
            end of dimension loc3

        • #11
          This one looks like it has been in discussion for a while and it is quite a common cause of confusion so I thought I'd help out. As many people have said, the original program is wrong. Based on your sketch of the part and the position call out you are trying to measure, the correct approach should be as follows....

          1) Measure the top face (datum A) as a plane, taking enough points to capture the form error (flatness).
          2) Measure the centre bore (datum B) as a cylinder.
          3) Measure the 6 x holes as cylinders.
          4) Dimension the holes.

          To dimension using XactMeasure (feature control frame reporting), add a DATDEF command defining the top plane as datum A. Add another DATDEF command defining the centre cylinder as datum B. INSERT>DIMENSION>POSITION. Select all 6 holes and build the feature control frame - position, Ø0.3 to A (primary), B (secondary).

          To dimension using Legacy dimensions you need to create the A,B alignment. Level ZPLUS to the top plane and origin Z. Origin X & Y to the centre cylinder. Click the BESTFIT button. Select all 6 holes, 2D no translation, 2D plane = ZPLUS then click COMPUTE and OK. INSERT>DIMENSION>POSITION, select all 6 holes, enter the 0.3 tolerance and hit create - you do not need to select datums as it reports relative to your current alignment which simulates the datum reference frame.

          Both methods should yield the same results but it is very important that the nominal (THEO) X,Y,Z,I,J & K values are correct for all features, especially if you have had to manually type them in.


          My justification for saying the original program is wrong is this...

          There is no tertiary datum for the position call out - it is simply |Ø0.3|A|B|. A is the primary and B is the secondary so we must level to A and origin to B but since there is no rotational constraint, the 6 holes are free to rotate around B until they are optimized. The original program ignores this and constrains rotation using one of the holes rather than best fitting all 6 as a set. The original program also measures datum B and the 6 holes as circles and as such is not satisfying the position requirement. Position relates to the entire axis of the feature. By measuring the holes as circles it is only evaluating a point at whatever depth the hole was measured. It is ignoring any orientation error that may be present and could result in passing parts that are actually bad and would not assemble. In addition to this, in the legacy position dimensions, it references the two datums in the wrong order - D1 references datum B when it should be A and D2 references A when it should be B.

          In terms of my credentials to back up this evaluation. I have been a CMM programmer for over 20 years having worked as an inspector, (5 years) quality engineer (5 years), hexagon applications engineer (8 years) and software technical specialist (2 years). I have taught both first principles measurement and GD&T classes for Hexagon and on behalf of the National Physical Laboratory (UK) and I have been heavily involved in the development of the new geometric tolerance command for PC-Dmis 2020 R2.

          Comment


          • KIRBSTER269
            KIRBSTER269 commented
            Editing a comment
            a little to wordy for my liking but a good post none the less

          • Vladimir
            Vladimir commented
            Editing a comment
            Thanks, this is detailed enough to try

        • #12
          I'm looking at the points that create Datum A, is A not a Flat surface??????? And look at the difference between your THEO and your actuals (RED). Either the ACTUALS are wrong or Your VECTORS. Your customer is full of bull.
          Code:
          MODE/DCC
          CLEARP/ZPLUS,35,ZPLUS,35,ON
          PNT5 =FEAT/POINT,CARTESIAN
          THEO/<5.216,32.796,0.118>,<0,0,1>
          ACTL/<5.217,32.796,-0.659>,<0,0,1>
          MEAS/POINT,1,WORKPLANE
          MOVE/CLEARPLANE
          HIT/BASIC,NORMAL,<5.216,32.796,0.118>,<0,0,1>,<5.217,3 2.796,-0.659>,USE THEO=YES
          ENDMEAS/
          PNT6 =FEAT/POINT,CARTESIAN
          THEO/<-27.029,20.012,0.111>,<0,0,1>
          ACTL/<-27.029,20.012,-0.652>,<0,0,1>
          MEAS/POINT,1,WORKPLANE
          MOVE/CLEARPLANE
          HIT/BASIC,NORMAL,<-27.029,20.012,0.111>,<0,0,1>,<-27.029,20.012,-0.652>,USE THEO=YES
          ENDMEAS/
          PNT7 =FEAT/POINT,CARTESIAN
          THEO/<-5.7,-34.325,0.074>,<0,0,1>
          ACTL/<-5.7,-34.328,-0.609>,<0,0,1>
          MEAS/POINT,1,WORKPLANE
          MOVE/CLEARPLANE
          HIT/BASIC,NORMAL,<-5.7,-34.325,0.074>,<0,0,1>,<-5.7,-34.328,-0.609>,USE THEO=YES
          ENDMEAS/
          PNT8 =FEAT/POINT,CARTESIAN
          THEO/<29.959,11.994,0.102>,<0,0,1>
          ACTL/<29.96,11.995,-0.627>,<0,0,1>
          MEAS/POINT,1,WORKPLANE
          MOVE/CLEARPLANE
          HIT/BASIC,NORMAL,<29.959,11.994,0.102>,<0,0,1>,<29.96, 11.995,-0.627>,USE THEO=YES
          ENDMEAS/
          A PLN =FEAT/PLANE,CARTESIAN,TRIANGLE,NO
          THEO/<0.611,7.62,0.101>,<0.0000598,-0.0006592,0.9999998>
          ACTL/<0.612,7.618,-0.637>,<-0.0003234,0.0007474,0.9999997>
          CONSTR/PLANE,BFRE,PNT5,PNT6,PNT7,PNT8,,
          OUTLIER_REMOVAL/OFF,3
          FILTER/OFF,WAVELENGTH=0
          MOVE/CLEARPLANE
          A2 =ALIGNMENT/START,RECALL:A1,LIST=YES
          ALIGNMENT/LEVEL,ZPLUS,A PLN
          ALIGNMENT/TRANS,ZAXIS,A PLN
          ALIGNMENT/END
          Last edited by KIRBSTER269; 08-03-2020, 09:41 AM. Reason: Had actual and results <<<<<same thing
          (In Memory of my Loving wife, "Ronda" who I lost March 7, 2016. I love you baby.)
          They say "Nobody's Perfect." I must be Nobody.

          Comment


          • KIRBSTER269
            KIRBSTER269 commented
            Editing a comment
            neil.challinor The one detail that I have learn in my experience. The "10 YEARS OF EXPERIENCE" 9 times out of 10, This is a person rounding up their 1 or less year of experience to make them look better, and no I'm not talking about you, I'm talking about this particular case. This program is made from a beginner, after I went through this line by line. Just ticks me off when a person like this just flat out lies.

          • Vladimir
            Vladimir commented
            Editing a comment
            So it is, the plane datum A is on the other side of the rest of the dimensions and the points are taken on the adjacent plate, its flatness is 0.013
            Last edited by Vladimir; 08-03-2020, 09:37 AM.

          • Kp61dude!
            Kp61dude! commented
            Editing a comment
            @KIRBSTERS269 but it isn't a lie.... to them. They don't know any better. They feel that working at the same position for a long period of time automatically makes them an expert. There are a few out there that just show up for ~15yrs clock in and clock out. They truly believe they're top notch LOL!

        Related Topics

        Collapse

        Working...
        X