Reference Manual

Turbo PMAC/PMAC2 Software Reference
Turbo PMAC Program Command Specification 439
See Also:
Homing-Search Moves (Basic Motor Moves)
On-line motor command HOME, HOMEZ
Program command HOME
I{data}
Function: I-Vector Specification for Circular Moves or Normal Vectors
Type: Motion program (PROG or ROT)
Syntax: I{data}
where:
{data} is a floating-point constant or expression representing the magnitude of the I-component of
the vector in scaled user axis units.
In circular moves, this specifies the component of the vector to the arc center that is parallel to the X-axis.
The starting point of the vector is either the move start point (for INC (R) mode default) or the XYZ-
origin (for ABS (R) mode).
In a NORMAL command, this specifies the component of the normal vector to the plane of circular
interpolation and tool radius compensation that is parallel to the X-axis.
Examples:
X10 Y20 I5 J5
X(2*P1) I(P1)
I33.333 ; specifies a full circle whose center is 33.333 units in the
; positive X-direction from the start and end point
NORMAL I-1 ; specifies a vector normal to the YZ plane
See Also:
Circular Interpolation, Tool Radius Compensation (Writing and Executing Motion Programs)
On-line command I{constant}
Program Commands {axis}{data}{vector}{data}, ABS, INC, NORMAL, J, K,
I{constant}={expression}
I{data}={expression}
Function: Set I-Variable Value
Type: Motion program (PROG and ROT), PLC Program
Syntax: I{data}={expression}
where:
{data} is a constant, or an expression in parentheses, for an integer value from 0 to 8191
representing the I-variable number;
{expression) represents the value to be assigned to the specified I-variable.
This command sets the value of the specified I-variable to that of the expression on the right side of the
equals sign. The assignment is done as the line is processed, which in a motion program is usually one or
two moves ahead of the move actually executing at the time (because of the need to calculate ahead in the
program).
Note:
To have the assignment of the I-variable value to be synchronous with the
beginning of the next move in the program, assign an M-variable to the register of
the I-variable and use a synchronous M-variable assignment statement
(M{data}=={expression}).