User's Manual

PMAC User Manual
126 Basic Motor Moves
Indefinite Jog Commands
J+ commands an indefinite positive jog for the addressed motor; J- commands an indefinite negative
jog; J/ commands an end to the jog, leaving the motor in position control after the deceleration. It is
possible for the J/ command to leave the commanded position at a fractional count, which can cause
dithering between the adjacent integer count values. If this is a problem, the J! command can be used to
force the commanded position to the nearest integer count value.
Jogging To A Specified Position
Jog commands to a specified position, or of a specified distance, can be given. J= commands a jog to the
last pre-jog position; J={constant} commands a jog to the (unscaled) position specified in the
command; J=={constant} commands a jog to the (unscaled) position specified in the command and
makes that position the pre-jog position; J^{constant} commands a jog of the specified distance from
the actual position at the time of the command (J^0 can be useful to take up remaining following error);
J:{constant} commands a jog of the specified distance from the commanded position at the time of
the command.
Jog Moves Specified By A Variable
Jogging moves to a position or of a distance specified by a variable are possible. Each motor has a
specific register (L:$082B for motor 1, L:$08EB for motor 2, etc.) that holds the position or distance to
move on the next variable jog command. This register contains a floating-point value scaled in encoder
counts. It should be accessed with an L-format M-variable. The J=* command causes PMAC to use this
value as a destination position. The J^* command causes PMAC to use the value as a distance from the
actual position at the time of the command. The J:* command causes PMAC to use the value as a
distance from the commanded position at the time of the command.
Each time one of these commands is given, the acceleration and velocity parameters at that time control
the response to the command. To change speed or acceleration parameters of an active jog move, change
the appropriate parameter(s), then issue another jog command.
Jog-Until-Trigger
The jog-until-trigger function permits a jog move to be interrupted by a trigger and terminated by a move
relative to the position at the time of the trigger. It is similar to a homing search move, except that the
motor zero position is not altered, and there is a specific destination in the absence of a trigger.
The jog-until-trigger function for a motor is specified by adding a ^{constant} specifier to the end of
a regular definite jog command for the motor, where this {constant} is the distance to be traveled
relative to the trigger position before stopping, in encoder counts. It cannot be used with the indefinite
jog commands J+ and J- .
This makes the jog command for a jog-until trigger something like J=10000^100 , J=*^-50 or
J:50000^0. The value before the ^ is the destination position or distance (depending on the type of jog
command) to be traveled in the absence of a trigger. If this first value is represented by a * symbol,
PMAC looks in a pre-defined register for the position or distance. The second value is the distance to be
traveled relative to the position at the time of the trigger. This value is always expressed as a distance,
regardless of the type of jog command. Both values are expressed in encoder counts. The trigger
condition for the motor is set up just as for homing search moves:
Ix03 bit 17 specifies whether input flags are used to create the trigger, or the warning following error
limit status bit is the trigger (torque-limited triggering): 0=flags, 1=error status
If input flags are to create the trigger, Ix25 specifies the flag register.
If input flags are to create the trigger, Encoder/Flag I-variables 2 and 3 for this set of flags specify
which edges of which signals will cause the trigger.