hexagon logo

Do away with manual alignments - use Readpoint

Hi Everyone
I am fairly new to PCDMIS being a Mitutoyo programmer for the last 10 years (Booo). The training I had on PCDMIS was reliant on a MANUAL setup before going into DCC mode. By going straight into DCC mode position your probe over its start point. Then you can insert a READ POINT. Then put the XYZ origin on the READ POINT and hey presto your probe has a X0, Y0 and Z0 starting point. You can now do a rough setup by getting the CMM mode to search for your part elements.
This can still then be skipped if not required for further parts. Why go to the lengths of manual probing when the CMM will do it for you?

I am enjoying the new challenge of PCDMIS and can see that it is deep and dark. By using code instead of set routines like the Mitutoyo I realise it can be a lot more flexible. Now if I only knew all the codeing tricks?
Please look out for my questions appearing.

Butch
  • 3mm sounds like it may be tip radius compensation.

    Whenever possible I try to use Auto Circles to seed a readpoint. I create the hole first then insert a ReadPoint just before it. Copy/paste the hole values to the readpoint, datum to it then offset by the coordinate values if needed. The below is for the demo block hole pattern (4x). A prior document comment outlines the approximate orientation of the demo block in the Cmm volume to help with a DCC move from the 1st readpoint to the 2nd. First hole has a sample point to initially establish Z origin which happens to be the surface the holes lie in (no translation needed). Both holes have AutoMove values. Sometimes I'll do a quick DCC 3-2-1 alignment after the readpoint alignment prior to measuring the datum features. It just depends on how repeatable I want the datum features to be. I always used to take 4 hits in the holes. A limitation with setting MANRETRACT on our FDC controller prompted me to try using the readpoint. Now that I've been using it I can't see a reason to go back to the old way. I've also used it on some small machined features that are eyeballed by the machinist to the casting per customer's instructions. A limited production that didn't warrant the time to do a DCC exploration of the area. I've found it to be a quick way to corner the part so that automated measurement can begin sooner.

    COMMENT/OPER,NO,FULL SCREEN=NO,AUTO-CONTINUE=NO,
                
                Position stylus at top center of front left hole (level with surface)
                
    PNT1       =FEAT/POINT,CARTESIAN
                THEO/<3.6811,0.7677,0>,<0,0,1>
                ACTL/<26.6234,19.2428,-78.9025>,<0,0,1>
                READPOINT/
    ALIGN1       =ALIGNMENT/START,RECALL:USE_PART_SETUP,LIST=YES
                    ALIGNMENT/TRANS,XAXIS,PNT1
                    ALIGNMENT/TRANS,YAXIS,PNT1
                    ALIGNMENT/TRANS,ZAXIS,PNT1
                    ALIGNMENT/TRANS_OFFSET,XAXIS,-3.6811
                    ALIGNMENT/TRANS_OFFSET,YAXIS,-0.7677
                  ALIGNMENT/END
                  MODE/DCC
    CIR1         =FEAT/CONTACT/CIRCLE/DEFAULT,CARTESIAN,IN,LEAST_SQR
                  THEO/<3.6811,0.7677,0>,<0,0,1>,0.5906
                  ACTL/<3.6745,0.7667,0.0301>,<0,0,1>,0.5955
                  TARG/<3.6811,0.7677,0>,<0,0,1>
                  START ANG=0,END ANG=360
                  ANGLE VEC=<0.7071068,-0.7071068,0>
                  DIRECTION=CCW
                  USE_PIN=NO
                  REPORT VEC=<0.6532815,0.2705981,0.7071068>
                  SHOW FEATURE PARAMETERS=NO
                  SHOW CONTACT PARAMETERS=NO
                  MOVE/POINT,NORMAL,<6.0827,0.7677,0.5000>
                  MODE/MANUAL
                  COMMENT/OPER,NO,FULL SCREEN=NO,AUTO-CONTINUE=NO,
                  
                  Position stylus at top center of front right hole (level with surface)
                  
    PNT2         =FEAT/POINT,CARTESIAN
                  THEO/<6.0827,0.7677,0>,<0,0,1>
                  ACTL/<6.0827,0.7581,0.0513>,<0,0,1>
                  READPOINT/
    ALIGN2         =ALIGNMENT/START,RECALL:ALIGN1,LIST=YES
                      ALIGNMENT/TRANS,XAXIS,PNT2
                      ALIGNMENT/TRANS,YAXIS,PNT2
                      ALIGNMENT/TRANS_OFFSET,XAXIS,-6.0827
                      ALIGNMENT/TRANS_OFFSET,YAXIS,-0.7677
                    ALIGNMENT/END
                    MODE/DCC
    CIR2           =FEAT/CONTACT/CIRCLE/DEFAULT,CARTESIAN,IN,LEAST_SQR
                    THEO/<6.0827,0.7677,0>,<0,0,1>,0.5906
                    ACTL/<6.0705,0.7569,0>,<0,0,1>,0.5953
                    TARG/<6.0827,0.7677,0>,<0,0,1>
                    START ANG=0,END ANG=360
                    ANGLE VEC=<1,0,0>
                    DIRECTION=CCW
                    USE_PIN=NO
                    REPORT VEC=<0.6532815,0.2705981,0.7071068>
                    SHOW FEATURE PARAMETERS=NO
                    SHOW CONTACT PARAMETERS=NO
    ALIGN3         =ALIGNMENT/START,RECALL:ALIGN2,LIST=YES
                      ALIGNMENT/BF2D,ZPLUS,LEAST_SQR,CREATE WEIGHTS=NO,ROTANDTRANS,USE SCALING=NO,0,0,0,359.9784
                      ITERATEANDREPIERCECAD=NO
                      Deviation Threshold=0.0003937
                      SHOWALLINPUTS=NO,SHOWALLPARAMS=NO
                    ALIGNMENT/END


    Lots of ways to go about it depending on what you have to work with.
  • the only problem I am having so far, is once I place the probe in the center of my diameter,(or as best placed as the eye can put it), I make that my read point. But when I go to place the actual alignment on the datum targets, they are not showing where they should.

    any suggestions??


    They are still off after a quick 321 alignment or are you trying to avoid the 321 alignment?
  • 3mm sounds like it may be tip radius compensation.

    Whenever possible I try to use Auto Circles to seed a readpoint. I create the hole first then insert a ReadPoint just before it. Copy/paste the hole values to the readpoint, datum to it then offset by the coordinate values if needed. The below is for the demo block hole pattern (4x). A prior document comment outlines the approximate orientation of the demo block in the Cmm volume to help with a DCC move from the 1st readpoint to the 2nd. First hole has a sample point to initially establish Z origin which happens to be the surface the holes lie in (no translation needed). Both holes have AutoMove values. Sometimes I'll do a quick DCC 3-2-1 alignment after the readpoint alignment prior to measuring the datum features. It just depends on how repeatable I want the datum features to be. I always used to take 4 hits in the holes. A limitation with setting MANRETRACT on our FDC controller prompted me to try using the readpoint. Now that I've been using it I can't see a reason to go back to the old way. I've also used it on some small machined features that are eyeballed by the machinist to the casting per customer's instructions. A limited production that didn't warrant the time to do a DCC exploration of the area. I've found it to be a quick way to corner the part so that automated measurement can begin sooner.

    COMMENT/OPER,NO,FULL SCREEN=NO,AUTO-CONTINUE=NO,
                
                Position stylus at top center of front left hole (level with surface)
                
    PNT1       =FEAT/POINT,CARTESIAN
                THEO/<3.6811,0.7677,0>,<0,0,1>
                ACTL/<26.6234,19.2428,-78.9025>,<0,0,1>
                READPOINT/
    ALIGN1       =ALIGNMENT/START,RECALL:USE_PART_SETUP,LIST=YES
                    ALIGNMENT/TRANS,XAXIS,PNT1
                    ALIGNMENT/TRANS,YAXIS,PNT1
                    ALIGNMENT/TRANS,ZAXIS,PNT1
                    ALIGNMENT/TRANS_OFFSET,XAXIS,-3.6811
                    ALIGNMENT/TRANS_OFFSET,YAXIS,-0.7677
                  ALIGNMENT/END
                  MODE/DCC
    CIR1         =FEAT/CONTACT/CIRCLE/DEFAULT,CARTESIAN,IN,LEAST_SQR
                  THEO/<3.6811,0.7677,0>,<0,0,1>,0.5906
                  ACTL/<3.6745,0.7667,0.0301>,<0,0,1>,0.5955
                  TARG/<3.6811,0.7677,0>,<0,0,1>
                  START ANG=0,END ANG=360
                  ANGLE VEC=<0.7071068,-0.7071068,0>
                  DIRECTION=CCW
                  USE_PIN=NO
                  REPORT VEC=<0.6532815,0.2705981,0.7071068>
                  SHOW FEATURE PARAMETERS=NO
                  SHOW CONTACT PARAMETERS=NO
                  MOVE/POINT,NORMAL,<6.0827,0.7677,0.5000>
                  MODE/MANUAL
                  COMMENT/OPER,NO,FULL SCREEN=NO,AUTO-CONTINUE=NO,
                  
                  Position stylus at top center of front right hole (level with surface)
                  
    PNT2         =FEAT/POINT,CARTESIAN
                  THEO/<6.0827,0.7677,0>,<0,0,1>
                  ACTL/<6.0827,0.7581,0.0513>,<0,0,1>
                  READPOINT/
    ALIGN2         =ALIGNMENT/START,RECALL:ALIGN1,LIST=YES
                      ALIGNMENT/TRANS,XAXIS,PNT2
                      ALIGNMENT/TRANS,YAXIS,PNT2
                      ALIGNMENT/TRANS_OFFSET,XAXIS,-6.0827
                      ALIGNMENT/TRANS_OFFSET,YAXIS,-0.7677
                    ALIGNMENT/END
                    MODE/DCC
    CIR2           =FEAT/CONTACT/CIRCLE/DEFAULT,CARTESIAN,IN,LEAST_SQR
                    THEO/<6.0827,0.7677,0>,<0,0,1>,0.5906
                    ACTL/<6.0705,0.7569,0>,<0,0,1>,0.5953
                    TARG/<6.0827,0.7677,0>,<0,0,1>
                    START ANG=0,END ANG=360
                    ANGLE VEC=<1,0,0>
                    DIRECTION=CCW
                    USE_PIN=NO
                    REPORT VEC=<0.6532815,0.2705981,0.7071068>
                    SHOW FEATURE PARAMETERS=NO
                    SHOW CONTACT PARAMETERS=NO
    ALIGN3         =ALIGNMENT/START,RECALL:ALIGN2,LIST=YES
                      ALIGNMENT/BF2D,ZPLUS,LEAST_SQR,CREATE WEIGHTS=NO,ROTANDTRANS,USE SCALING=NO,0,0,0,359.9784
                      ITERATEANDREPIERCECAD=NO
                      Deviation Threshold=0.0003937
                      SHOWALLINPUTS=NO,SHOWALLPARAMS=NO
                    ALIGNMENT/END


    Lots of ways to go about it depending on what you have to work with.


    So with this, did you put it in DCC Mode right away, insert an auto circle (CIR1), then put in the readpoint PNT1 above the circle, to the location of that circle?? Then PNT2 and CIR2, but what is the ALIGN3 at the end, is that an iterative alignment??
  • They are still off after a quick 321 alignment or are you trying to avoid the 321 alignment?


    No it's before the 321 alignment. When I click on the model to place the first datum, X1, it's coordinates are not where they should be.
  • Gomo does this technique also work with a model??
  • No it's before the 321 alignment. When I click on the model to place the first datum, X1, it's coordinates are not where they should be.


    I guess without seeing what your doing and how far it is off I'm thinking it may be due to the inaccuracy of eyeballing the probe into position. My thought was that a quick DCC 321 right after the read point should properly refine the part location accurately and eliminate any readpoint location error.
  • I guess without seeing what your doing and how far it is off I'm thinking it may be due to the inaccuracy of eyeballing the probe into position. My thought was that a quick DCC 321 right after the read point should properly refine the part location accurately and eliminate any readpoint location error.


    Good point....will try.
  • Also when I do a readpoint, the actual point no longer shows up where the ruby is, it shows up a long way away, ??? WTH.
  • So with this, did you put it in DCC Mode right away, insert an auto circle (CIR1), then put in the readpoint PNT1 above the circle, to the location of that circle?? Then PNT2 and CIR2, but what is the ALIGN3 at the end, is that an iterative alignment??


    Start in manual and let it pause at the operator comment while you position the probe. As soon as you dismiss the comment dialog execution continues, reads the current center of stylus position and keeps executing line by line. ALIGN3 is just a 2D bestfit alignment to split whatever deviations the 2 holes bring into the mix. Also, (the code doesn't include it) I would start with a large prehit value (0.3" or so) until the part is under control. Then lower the prehit to whatever you're comfortable with.
  • Gomo does this technique also work with a model??


    I use it exclusively with models although it will work just as well without them. Just keep in mind that the readpoint is most likely not at 0,0,0. If not I translate to accommodate the coordinates.