hexagon logo

Vector Deviations gone awry

I received data from a PC-DMIS cmm and was reviewing it. We receive the data with the XYZ and the Vector deviation information. I was reviewing this data and I noticed that the vector deviation was much larger than the sqrt of the sum of the squares of the coordinate deviations, AKA, the absolute deviation. I reviewed the PC-DMIS program and found that the nominal in the CALL/EXTERN statement did not match the feature declaration statement which defines the nominals that are used in the X, Y, and Z outputs. I'm assuming the CALL/EXTERN statement defines the vector measurement from the nominal point in the call statement. Does this make sense?

F(M1)=FEAT/POINT,CART,590.878, -687.587,662.998,0.0459841,-0.998654,0.0239917
CALL/EXTERN,DMIS,M(PCD_AUTO_VECTOR_POINT_605),(M1),590.878, -690.59,$
662.998,0.0459841,-0.998654,0.0239917,VEC,0.0459841,-0.998654,0.0239917,$
0.0459841,-0.998654,0.0239917,'THEO_THICKNESS',0,'NO','NO',0
  • I have no clue really, but could it be related to probe compensation and that is why you get two different values for the Y-coordinate? What probe dimension were used in your example?
  • Theo <> thickness

    In your example DMIS code, the coordinate value in the CALL/EXTERN statement is the Target for the feature. In PC-DMIS, it can be acceptable to have a difference between the Nominal and Target values. Here is what the command would look like in the PC-DMIS Edit Window in Command Mode:

    M1 =FEAT/CONTACT/VECTOR POINT,CARTESIAN
    THEO/<590.878,-687.587,662.998>,<0.0459841,-0.998654,0.0239917>
    ACTL/<590.878,-687.587,662.998>,<0.0459841,-0.998654,0.0239917>
    TARG/<590.878,-690.59,662.998>,<0.0459841,-0.998654,0.0239917>
    SNAP=NO
    SHOW FEATURE PARAMETERS=NO
    SHOW CONTACT PARAMETERS=NO

    and for the v3.7 fans:

    M1 =AUTO/VECTOR POINT,SHOWALLPARAMS = YES
    THEO/590.878,-687.587,662.998,0.0459841,-0.998654,0.0239917
    ACTL/590.878,-687.587,662.998,0.0459841,-0.998654,0.0239917
    TARG/590.878,-690.59,662.998,0.0459841,-0.998654,0.0239917
    THEO_THICKNESS = 0,RECT,SNAP = NO,$
    AUTO MOVE = NO,DISTANCE = 0

    From your post, I am unable to determine why the Target is different from the Nominal values. I can see that SNAP is disabled, and no thickness offset is applied to the measurement.
  • From your post, I am unable to determine why the Target is different from the Nominal values. I can see that SNAP is disabled, and no thickness offset is applied to the measurement.


    What does PC-DMIS do if your target and nominals are different in terms of the output. Assuming that the nominal was correctly entered and the target was incorrect would this affect only the profp when output is generated with the output statement like below. Would the X, Y, Z coordinates still reflect deviations from the nominal and not the target?

    T(LOC1__X)=TOL/CORTOL,XAXIS,-0.7,0.7
    T(LOC1__Y)=TOL/CORTOL,YAXIS,-0.7,0.7
    T(LOC1__Z)=TOL/CORTOL,ZAXIS,-0.7,0.7
    T(LOC1__T)=TOL/PROFP,-0.7,0.7

    OUTPUT/FA(M1),TA(LOC1__X),TA(LOC1__Y),TA(LOC1__Z),TA(LOC1__T)

    This stems from me receiving data that is showing XYZ coordinate deviations and profile deviations that are not relatively correct. Basically I have results for the Profile that are larger than the calculated deviation from nominal using the X,Y,Z coordinates and the correct nominals.
  • Any deviation reported should be from the Nominal and not the Target coordinates. The Target is only used in PC-DMIS to control probing path and measurement hit locations. Also, the vector deviation results should be calculated along the Nominal vector.

    Unfortunately, this does not explain why the vector deviation you see is LARGER than the absolute deviation.
  • That's very close to dead on 3mm, cold be some probe comp issue
  • It's 3mm out of the part material. My CMM operator may have deliberately put the target point out of material because this is 1370 mm wide plastic injection molded part. We have huge tolerances compared to what most of you see.

    I also found that there was an alignment that may also have caused some of the oddities that I'm seeing, but it still would not explain the vector value being so much larger than the absolute deviation.
  • I believe I finally figured out what went wrong with these outputs. The program is setup to check all of the CMM points using the global alignment. Subdatum alignments are created through out the program, but they are not used when measuring the part. The cmm operater instead put all the output statements at the end of the program and set the alignments prior to the outputs. So the data was collected with the global aligment, but outputs were calculated from other iterative alignments. I do not think I would see such bizzarre data if the iterative alignments were used also when the part was checked.