User's Manual

PMAC User Manual
100 Setting Up PMAC Commutation
Setting the I-Variables
Setting up a motor for microstepping is simply a matter of setting motor I-variables according to the
following list. Since there is no feedback, there is no tuning necessary.
Ix01: Set to 1 to enable PMAC commutation.
Ix02: Set bits 0 to 15 to the lower address of the pair of output DACs you wish to use ($C002
for DAC1 and DAC2, $C00A for DAC3 & DAC4). Set bit 16 to 1 to tell PMAC it is
microstepping this motor. For example: I102=$1C002.
Ix03, Ix04: Set both of these to a register in the encoder conversion table that has processed data from
the phase position register. That entry in the table should be set up as follows:
1st Y-register: $600041($60 is parallel X-word source; $0041 is motor 1 phase position):
Use $60007D for motor 2;
Use $6000B9 for motor 3;
Use $6000F5 for motor 4;
Use $600131 for motor 5;
Use $60016D for motor 6;
Use $6001A9 for motor 7;
Use $6001E5 for motor 8.
Second Y-register: $0000FF(Only use lowest 8 bits)
Remember to point Ix03 and Ix04 to the second line of the entry. For example,
WY$720,$600041,$0000FF sets up the conversion table entry; I103= $721 and I104=$721
point to it ($721=1825 decimal).
Ix08, Ix09: Set these scaling factors to 32.
Ix30: Set this proportional gain term to 8192.
Ix31: Set this derivative gain term to 0.
Ix32: Set this velocity feedforward term to 65,536.
Ix33: Set this integral gain term to 0.
Ix35: Set this acceleration feedforward term to 65,536. If a following error is received during a
jog (likely only on a high- numbered motor), increase this by [65,536 * phase-update-
time / servo-update-time] — usually [65,536*1/4]=16,384, yielding 81,920. If still
getting a following error, increase again by the same increment (usually yielding 98,304).
Ix69: Set this DAC output limit to 524,287 (2
19
-1).
Ix70, Ix71: Set Ix70 to 1 and Ix71 to 256 to provide 256 counts (microsteps) per electrical cycle (64
microsteps/step).
Ix72: Set this phase angle parameter to 64 or 192 for the usual two-phase microstepping motor.
Changing between these two values changes the direction sense of positive rotation. To
try microstepping a 3-phase motor, use 85 or 171.
Ix77: Set this magnetization current parameter to control the amount of current used in the
phases. This holds the maximum number of DAC bits that will be used to command a
DAC output (current command to the amplifier). For instance, a value of 16,384
provides a +/-5V sinusoidal output on each phase.
Ix78: Set this slip gain parameter equal to 4,194,304/N, where N is the number of phasing
cycles per servo cycle, as set by E3-E6. The default setting of these jumpers provides an
N of 4, so Ix78 would be set to 1,048,576 with the default setting.
Ix83: Set the phase address parameter to $42 for motor 1, $7E for motor 2, $BA for motor 3,
$F6 for motor 4, $132 for motor 5, $16E for motor 6, $1AA for motor 7, and $1E6 for
motor 8.