Reference Manual

Turbo PMAC/PMAC2 Software Reference
Turbo PMAC On-line Command Specification 377
NORMAL
Function: Report circle-plane unit normal vector
Scope: Coordinate system specific
Syntax: NORMAL
NRM
This command causes Turbo PMAC to report the unit normal vector for the addressed coordinate system.
This normal vector defines the plane for circular interpolation and cutter radius compensation.
Turbo PMAC reports the vector by displaying its I, J, and K components, parallel to the X, Y, and Z axes,
respectively. If a component is zero, it will not be reported. The vector sum of the components is 1.0
because this is a vector of unit magnitude.
The default normal vector is K-1.0, which specifies the XY plane. This can be modified by the motion
program NORMAL I{data} J{data} K{data} statement. Note that the vector magnitude of the
commanded normal vector does not need to be equal to 1.0 Turbo PMAC will store a scaled version of
it.
Syntax:
NORMAL
K-1
NORMAL
I0.7071 J0.7071
O{constant}
Function: Open loop output
Scope: Motor specific
Syntax: O{constant}
where:
{constant} is a floating-point value representing the magnitude of the output as a percentage of
Ixx69 for the motor, with a range of +/-100
This command causes Turbo PMAC to put the motor in open-loop mode and force an output of the
specified magnitude, expressed as a percentage of the maximum output parameter for the motor (Ixx69).
This command is commonly used for set-up and diagnostic purposes (for instance, a positive O command
must cause position to count in the positive direction, or closed-loop control cannot be established), but it
can also be used in actual applications.
If the motor is not Turbo PMAC-commutated, this command will create a DC output voltage on the
single DAC for the motor. If the motor is commutated by Turbo PMAC, the commutation algorithm is
still active, and the specified magnitude of output is apportioned between the two DAC outputs or the
three PWM outputs for the motor according to the instantaneous commutation phase angle.
If the value specified is outside the range +/-100, the output will saturate at +/-100% of Ixx69.
Closed-loop control for the motor can be re-established with the J/ command. It is a good idea to stop
the motor first with an O0 command if it has been moving in open-loop mode.
To do a variable O-command, define an M-variable to the filter result register (X:$0000AE, etc.,
suggested M-variable Mxx79), command an O0 to the motor to put it in open-loop mode, then assign a
variable value to the M-variable. This technique will even work on Turbo PMAC-commutated motors.
Turbo PMAC will reject this command if the motor is in a coordinate system that is currently running a
motion program (reporting ERR001 if I6 is 1 or 3).