Reference Manual
  PMAC 2 Software Reference 
322  PMAC Program Command Specification 
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. 
Remarks 
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. 
Example 
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 a Motion Program) 
On-line command I{constant} 
Program Commands {axis}{data}{vector}{data}, ABS, INC, NORMAL, J, K, 
I{constant}={expression} 
I{constant}={expression} 
Function 
Set I-Variable Value 
Type 
Motion program (PROG and ROT), PLC Program 
Syntax 
I{constant}={expression} 
where: 
•  {constant} is an integer value from 0 to 1023 representing the I-variable number. 
•  {expression) represents the value to be assigned to the specified I-variable. 
Remarks 
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: 
If the assignment of the I-variable value should 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{constant}=={expression}). 
Example 
I130=30000 
I902=1 
I131=P131+1000 










