Block: BEGINNING OF IPM (In Process Measurement)

The motions between BEGINNING OF IPM and END OF IPM will be output to the machine simulator as multiple motions within one block. The simulator will enable step-by-step view on these motions. The text that will be shown in the motion list would be the G-code text that was output from BEGINNING OF IPM until END OF IPM.

Between the two blocks BEGINNING OF IPM and END OF IPM there will be zero or more reference blocks. The reference blocks point to procedures that should be called if a CALL or JUMP action is used in IPM_AFTER_ACTION.

The reference blocks will appear before the linear motion blocks. See the qualifier PROC REF: ipmref information in GPP2 Blocks and Block: PROC REF.

Variable

Default format

Use and Comments

IPM_CYCLE

6

The cycle type:
1 – IPM_CYCLE_POINT
2 – IPM_CYCLE_HOLE
3 – IPM_CYCLE_BOSS
4 – IPM_CYCLE_SLOT_WIDTH
5 – IPM_CYCLE_RIDGE_WIDTH
6 – IPM_CYCLE_RECT_IN
7 – IPM_CYCLE_RECT_OUT
8 – IPM_CYCLE_CORNER
9 – IPM_CYCLE_TWO_HOLES
10- IPM_CYCLE_FOUR_HOLES
11 – IPM_CYCLE_ANGLE
12 – IPM_CYCLE_PLANE
13 - IPM_CYCLE_TWO_LINES

CYCLE_NAME

0

Text with the cycle name.

IPM_2_LINES_INTER_TYPE

6

At the intersection of 2 lines, determine whether measuring an internal or external corner.

0 - IPM_UNDEFINED

1 - IPM_EXTERNAL

2 - IPM_INTERNAL

IPM_APPROACH

1

Approach distance.

IPM_OVERSHOOT

1

Overshoot travel.

IPM_RAPID_DZ

1

How high above the start point to change from rapid to feed.

IPM_CONN_HEIGHT

1

Connection height (absolute Z value).

X_IPM1
Y_IPM1
Z_IPM1

1

First point of measurement.

X_IPM2
Y_IPM2
Z_IPM2

1

Second point of measurement.

X_IPM3
Y_IPM3
Z_IPM3

1

Third point of measurement (4-holes only).

X_IPM4
Y_IPM4
Z_IPM4

1

Fourth point of measurement (4-holes only).

XTCH_IPM1
YTCH_IPM1
ZTCH_IPM1

1

First touch point coordinates.

XTCH_IPM2
YTCH_IPM2
ZTCH_IPM2

1

Second touch point coordinates.

XTCH_IPM3
YTCH_IPM3
ZTCH_IPM3

1

Third touch point coordinates.

XTCH_IPM4
YTCH_IPM4
ZTCH_IPM4

1

Fourth touch point coordinates.

IPM_ALONG_AXIS

6

If set, then "Along Axis" is checked. Otherwise, the direction is by I_IPM_AXIS.

1 – Along X

2 – Along –X

3 – Along Y

4 – Along –Y

5 – Along Z

IPM_ALONG_AXIS2

6

Use in Cycle 13 (TWO_LINES) and gets similar values as IPM_ALONG_AXIS.

I_IPM_AXIS
J_IPM_AXIS
K_IPM_AXIS

18

Measurement direction vector (filled also when "Along Axis" is used).

IPM_NUM_POINTS

6

Number of points to measure.

IPM_ANG_START

2

Start angle (in holes, bosses).

IPM_ANG_INC

2

Angle increment.

IPM_DIAM1

1

Hole/Boss diameter.

IPM_DIAM2

1

For 2 holes.

IPM_DIAM3

1

For 4 holes.

IPM_DIAM4

1

For 4 holes.

IPM_INTERNAL_HEIGHT

1

Connection height between holes.

IPM_WIDTH

1

Slot/Ridge width, rect. width.

IPM_HEIGHT

1

Rect. height.

IPM_WALL_ANG

2

Wall angle (slot/ridge).

IPM_CORNER

6

External +x +y = 0,

External +x -y= 1,

External -x +y = 2,

External -x -y = 3,

Internal +x +y = 4,

Internal +x -y  = 5,

Internal -x +y = 6,

Internal -x -y = 7.

Note: The above XY directions refer to the approach direction for measuring (usually opposite to the direction of the arrows as seen while picking).

IPM_CORNER_TYPE

6

0 - 2D corner on XY plane.

1 - 2D corner on ZX plane.

2 - 2D corner on ZY plane.

3 - 3D corner (X, Y & Z).

IPM_CORNER_DX

IPM_CORNER_DY

IPM_CORNER_DZ

1

Measurement distance from corner point.

IPM_CORNER_X
IPM-CORNER_Y
IPM_CORNER_Z

1

The variables contain the XYZ coordinates of the actual corner.

They are relevant if the IPM cycle is of type CORNER.

They are also relevant if the IPM cycle is a 2-line intersection. In this case the IPM_CORNER_X/Y/Z holds the coordinates of the intersection point.

IPM_HOME_NUM

6

Home number.

IPM_MOVE_HOME_X

6

1 if "move Home X", 0 otherwise.

IPM_MOVE_HOME_Y

6

1 if "move Home Y", 0 otherwise.

IPM_MOVE_HOME_Z

6

1 if "move Home Z", 0 otherwise.

IPM_ROT_HOME

6

1 if "Rotate Home around Z", 0 otherwise.

IPM_HOME_DX
IPM_HOME_DY
IPM_HOME_DZ

1

Add these values to the home position (from "Move Origin", if the relevant “Move Home” flag is set to 1.

IPM_HOME_DROT

2

Add this value to the rotation angle (rotate origin around Z), if the "Rotate Home" flag is set to 1.

IPM_ROT_TO_PLANE

6

1 if "Rotate Machine to Plane", 0 otherwise.

IPM_TOOL_LEN

6

1 if "update tool length", 0 otherwise.

IPM_TOOL_RAD

6

1 if "update tool radius", 0 otherwise.

IPM_COMP_TOOL_NUM

7

Magazine number of compensated tool.

IPM_COMP_TOOL_NAME

0

Name of compensated tool.

IPM_SETVAR_X

6

If set, set this var to X.

IPM_SETVAR_Y

6

If set, set this var to Y.

IPM_SETVAR_Z

6

If set, set this var to Z.

IPM_SETVAR_ANG

6

If set, set this var to angle.

IPM_SETVAR_DIAM

6

If set, set this var to diameter.

IPM_SETVAR_X2

6

If set, set this var to 2nd X, in cycles that measure two points.

IPM_SETVAR_Y2

6

If set, set this var to 2nd Y.

IPM_SETVAR_Z2

6

If set, set this var to 2nd Z.

IPM_SETVAR_ANG2

6

If set, set this var to 2nd angle in "two holes".

IPM_SETVAR_DIAM2

6

If set, set this var to 2nd diameter in "two holes".

IPM_SETVAR_X3

6

If set, set this var to 3rd X, in cycles that measure three points.

IPM_SETVAR_Y3

6

If set, set this var to 3rd Y.

IPM_SETVAR_Z3

6

If set, set this var to 3rd Z.

IPM_SETVAR_X4

6

If set, set this var to 4th X, in cycles that measure four points.

IPM_SETVAR_Y4

6

If set, set this var to 4th Y.

IPM_SETVAR_Z4

6

If set, set this var to 4th Z.

IPM_SETVAR_WIDTH

6

If set, set this var to slot/ridge/rectangle width.

IPM_SETVAR_HEIGHT

6

If set, set this var to rectangle height.

IPM_AFTER_ACTION

6

0 – Continue

1 – Pause always

2 – Pause on error

3 – Terminate on error

An error is defined by position/dimension thresholds.

IPM_NUM_CALLS

6

Number of times to call the procedures for "call" action.

IPM_NUM_REF_PROCS

6

Number of reference procedures to call in the "call" action.

IPM_REPORT

6

0 - No (IPM_REPORT_NO)
1 - Always (IPM_REPORT_ALWAYS)
2 - Only on errors (IPM_REPORT_ON_ERROR)

IPM_POS_THRESH

1

If set, this is the position error threshold (plus/minus). If not set – ignore position error.

IPM_DIM_THRESHP

1

If set, this is the dimension error threshold (plus). If not set – ignore positive dimension error.

IPM_DIM_THRESHM

1

If set, this is the dimension error threshold (minus). If not set – ignore negative dimension error.

IPM_REPORT_TYPE

6

The IPM report type:
0 - Printed (IPM_REPORT_PRINTED)
1 - On Screen (IPM_REPORT_ON_SCREEN)
2 - Both (IPM_REPORT_BOTH)

IPM_VERTICAL_ANGLE

2

The vertical angle value.

Some functionality may be dependent on the product package. Contact your Reseller if you require a license.