hexagon logo

Z Zero on MAchine Granite

If your CAD part has its z zero on the bottom, which coincides with the granite surface of the CMM, How do you take hits on that surface in DCC mode? In manual mode its simple to probe the granite around the part and call that z zero. Once you switch to DCC mode, I cant figure out a way to instruct the machine to take hits on a plane extended out from the part bottom. I have worked around this in the past by moving the z on the cad model but the part I am measuring now doesn't lend itself to that method. It is basically a large cone with no plane at the top. The part is too large to fixture on its side. Thanks in advance.
  • well, just so you are aware, the table of the CMM isn't a 'flat plate', it isn't calibrated or honed to 'perfection' so I am sure replies will pop-up about this.

    That being said, the table can also have imperfections in it from 'people' dragging things or sliding things on it, and scratching the surface, and you don't want to probe those areas as it will screw up your alignment. Same with 'dropping' things on the table and taking a chip out of it.

    So, here is how I use the table for 'zero' (or any other value you want it to be.

    When you manually probe it, I have to assume that you are careful to NOT probe in a scratch or a chip in the surface. But, it is 'impossible' to place the part in the exact same place every time on the tabel, so your DCC points need to probe where you manually probed the table.

    M1 =FEAT/PLANE,RECT,TRIANGLE
    THEO/24.893,21.517,0,0,0,1
    ACTL/813.942,-100.274,-781.278,0.0000055,-0.000022,1
    MEAS/PLANE,4
    HIT/BASIC,NORMAL,-21.129,-14.415,-0.001,0,0,1,759.763,-122.04,-781.279,USE THEO = YES
    HIT/BASIC,NORMAL,-33.853,29.679,0.001,0,0,1,759.761,-76.147,-781.276,USE THEO = YES
    HIT/BASIC,NORMAL,70.26,59.713,-0.001,0,0,1,868.12,-76.15,-781.278,USE THEO = YES
    HIT/BASIC,NORMAL,84.292,11.09,0.001,0,0,1,868.123,-126.758,-781.278,USE THEO = YES
    ENDMEAS/
    ALIGN00 =ALIGNMENT/START,RECALL:STARTUP, LIST= YES
    ALIGNMENT/LEVEL,ZPLUS,M1
    ALIGNMENT/TRANS,ZAXIS,M1
    ALIGNMENT/END​
    
    ....
    
    MOVE/CLEARPLANE
    TIP/T1A0B0, SHANKIJK=0, 0, 1, ANGLE=16.093
    MOVE/CLEARPLANE
    A1 =AUTO/VECTOR POINT,SHOWALLPARAMS = YES
    THEO/M1.HIT[1].X,M1.HIT[1].Y,0,0,0,1
    ACTL/-21.129,-14.415,0,0,0,1
    TARG/M1.HIT[1].X,M1.HIT[1].Y,0,0,0,1
    THEO_THICKNESS = 0,RECT,SNAP = YES,$
    AUTO MOVE = NO,DISTANCE = 10
    MOVE/CLEARPLANE
    A2 =AUTO/VECTOR POINT,SHOWALLPARAMS = YES
    THEO/M1.HIT[2].X,M1.HIT[2].Y,0,0,0,1
    ACTL/-33.853,29.679,0,0,0,1
    TARG/M1.HIT[2].X,M1.HIT[2].Y,0,0,0,1
    THEO_THICKNESS = 0,RECT,SNAP = YES,$
    AUTO MOVE = NO,DISTANCE = 10
    MOVE/CLEARPLANE
    A3 =AUTO/VECTOR POINT,SHOWALLPARAMS = YES
    THEO/M1.HIT[3].X,M1.HIT[3].Y,0,0,0,1
    ACTL/70.26,59.713,-0.001,0,0,1
    TARG/M1.HIT[3].X,M1.HIT[3].Y,0,0,0,1
    THEO_THICKNESS = 0,RECT,SNAP = YES,$
    AUTO MOVE = NO,DISTANCE = 10
    MOVE/CLEARPLANE
    A4 =AUTO/VECTOR POINT,SHOWALLPARAMS = YES
    THEO/M1.HIT[4].X,M1.HIT[4].Y,0,0,0,1
    ACTL/84.292,11.09,0.003,0,0,1
    TARG/M1.HIT[4].X,M1.HIT[4].Y,0,0,0,1
    THEO_THICKNESS = 0,RECT,SNAP = YES,$
    AUTO MOVE = NO,DISTANCE = 10
    MOVE/CLEARPLANE​


    The DCC touches will be in the exact same place as your manual touches.
  • When I was learning at the tech school we put parts on the steel tapped plate. So I modeled the steel plate and brought it into the assembly. I guess you could simply make a thin rectangle in a CAD program and place that umderneath the part.

    This allowed me to click a surface for DCC vector points to create a plane close to the part extremities. Its a datum simulator that is subject to the quality of the surface you touch.
  • You could...

    Measure the part thickness manually

    Then run PC DMIS program

    Add an INPUT/COMMENT that asks "How thick is the part?"

    Operator's input will be fed into a variable (lets call it V1)

    Create a GENERIC PLANE and force the Z height to be V1
  • ANOTHER option...

    You could use have the CMM probe some 1-2-3 blocks and then put the part on the blocks. You'd use comments to tell the operator what to do.
  • Edited to reflect that you don't have a bottom plane.

    If you have an alignment still relative to the machine, all you need to do is change the XYZ values to match theoretically the coordinate values where the granite is located. make sure your surface vector is positive 1 in Z and you should be set (you can flip surface vector or angle vector (which defines start hit rotationally about part) by clicking those up/down arrow buttons to the right of each set (per below snip). You can also fiddle with x and y values to shift the center of the patterned points
    Your hit pattern and distance are the only other knobs to mess with, to reflect a larger plane than your sample part.

    Voila autofeature on your granite.


    As for using CMM granite as a surface plate:
    Historically when I worked at Honeywell (going back to the early 2000's) our B&S Global Advantage had granite cleaned and calibrated annually, to be within flatness spec of A-Grade surface plate... We often used it for just that. It's definitely possible to use the top surface of a CMM as a reference plane (surface plate). --However, if your granite isn't independently calibrated, you are technically at-risk of adding uncertainty and conformance issues when making lot acceptance decisions. use at your discretion, and maybe assess the plate on your own (at a minimum) for flatness, before using it as such.

    I'm willing to bet Hexagon does provide some type of statement of granite flatness upon delivery of each machine someplace. Call them up and ask. The worst that will happen is they will leave you where you currently are.
  • I like 's suggestion of adding a model to the assembly for your plate.

    Yet another option, if you're not interested in doing that. Start an auto-plane and click to select the bottom surface of the part model. Then click the 'Flip Vector' button so the plane vector matches the table vector (Z+). Then either adjust the hit parameters or click and drag each hit so it is measuring points around your part.
  • I Typed too slow. Looks like louisd suggested the same thing - with pictures!
  • this is what I do most of the time
  • Sometimes I am forced to create a plane on the granite on which the part is located - the granite must be calibrated.
    I create auto vector points and contract them into a plane. These points are taken very close to the part, as if I did not have a CAD model, remembering IJK (0,0,1)​
  • I'm just wondering what 's about the flatness of the underside of the part in front of granite flatness...
    Even if the granite is not calibrated, I think that it's quality is better than a classical machined surface (IMO).