User's Manual

PMAC User Manual
Talking to PMAC 29
On-Line (Immediate) Commands
Many of the commands given to PMAC are on-line commands; that is, they are executed immediately by
PMAC to cause some action, change some variable, or report some information back to the host. The
command itself is thrown away after executing (so cannot be listed back), although its effects may stay in
PMAC.
Some commands, such as P1=1, are executed immediately if there is no open program buffer, but are
stored in the buffer if one is open. Other commands, such as X1000 Y1000, cannot be on-line
commands; there must be an open buffer, even if it is a special buffer for immediate execution. These
commands will be rejected by PMAC (reporting an ERR005 if I6 is set to 1 or 3) if there is no buffer
open. Still other commands, such as J+, are on-line commands only, and cannot be entered into a
program buffer (unless in the form of CMD"J+", for instance).
Types of On-Line Commands
There are three basic classes of on-line commands:
Motor-specific commands, which affect only the motor that is currently addressed by the host.
Coordinate-system-specific commands, which affect only the coordinate system that is currently
addressed by the host
Global commands, which affect the card regardless of any addressing modes.
In the reference chapter, each command is classified into one of these types under the Scope descriptor.
Motor-Specific Commands
Motor Addressing
A motor is addressed by a #n command, where n is the number of the motor, with a range of 1 to 8,
inclusive. This motor stays the one addressed until another #n is received by the card. For instance, the
command line #1J+#2J- tells Motor 1 to jog in the positive direction, and Motor 2 to jog in the
negative direction (like most commands, the jog command does not take effect until the carriage return
character is received, so both axes start acting on the command at roughly the same time in this case).
Note:
Each program that can use the COMMAND statement to issue on-line commands
from within the card has its own motor and coordinate system addressing,
independent of which motor and coordinate system the host is addressing.
Changing the host’s addressing modes does not affect the program’s, or vice versa.
Also independent of the host addressing, the control panel selects a motor and
coordinate system for its hardwired inputs to affect with its BCD-coded (low-true)
FDPn/ lines (determined by a rotary switch on Delta Tau’s Acc-16 Control Panel).
Motor Commands
There are only a few types of motor-specific commands. These include the jogging commands, a homing
command, an open loop command, and requests for motor position, velocity, following error, and status.
Coordinate-System-Specific Commands
Coordinate System Addressing
A coordinate system is addressed by a &n command, where n is the number of the coordinate system,
with a range of 1 to 8, inclusive. This coordinate system remains the one addressed until another &n
command is received by the card. For instance, the command line &1B6R&2B8R tells Coordinate
System 1 to run Motion Program 6 and Coordinate System 2 to run Motion Program 8.