26.12.2012 Views

ICAM Virtual Machine V19 - Kxcad.net

ICAM Virtual Machine V19 - Kxcad.net

ICAM Virtual Machine V19 - Kxcad.net

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>ICAM</strong> <strong>Virtual</strong> <strong>Machine</strong> ® <strong>Virtual</strong> <strong>Machine</strong> Reference, Model Customization<br />

Model Event Macros, The Tape Event Macro (Gener only)<br />

4.4.3 Model Event Macros<br />

The following model event macros are available:<br />

Tape Event Called each time a block of tape is processed<br />

Motion Event Called at each motion<br />

Rapid Event Called when transitioning from feed to rapid<br />

Feed Event Called at each change of feed<br />

Load Tool Event Called at a tool change<br />

Each event macro by default contains a single OUTPUT command. This command indicates the<br />

point in the event macro where VM should process the event. If the event macro does not process<br />

the OUTPUT command, then the event will not be processed by VM.<br />

4.4.3.1 The Tape Event Macro (GENER only)<br />

This macro is called each time a block of NC code is output by the post-processor. Use a tape<br />

event macro to catch and process (for model purposes) NC instructions that cannot be easily<br />

caught using other methods. The tape macro has a single $P variable.<br />

$P1 Tape block string.<br />

The OUTPUT command in a tape macro is ignored.<br />

4.4.3.2 The Motion Event Macro<br />

This macro is called as each motion is processed by CERUN or GENER, before the Tape event<br />

macro. Use a motion event macro to handle any special requirements that are related to axis<br />

motion. The motion event macro has 8 $P variables.<br />

$P1 Motion type. Set this variable to 0 on exit to inhibit simulation of the motion. On input,<br />

the value is set as follows: 1=circle, 3=FROM, 5=GOTO, 9=spline.<br />

$P2 End position. This is a sequence variable with 6 positions representing up to 6 active<br />

axes. Use the $AXES system variable to determine which axes are active.<br />

$P3 Circle center. This is a sequence variable containing the circle center XYZ location.<br />

$P4 Circle plane vector. This is a sequence variable containing the circle axis IJK vector.<br />

$P5 3D circle midpoint. This is a sequence variable containing a mid-point location along<br />

the interpolated arc of the circle. Set for 3D circle only.<br />

$P6 Circle interpolation direction: 1=clw, 2=cclw.<br />

$P7 Circle plane: 0=3D, 1=XY, 2=ZX, 3=YZ.<br />

146 <strong>ICAM</strong> Technologies Corporation – Proprietary

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!