User's Manual

Turbo PMAC User Manual
98 Setting Up Turbo PMAC-Based Commutation and/or Current Loop
Servo ICs 2 – 9 are on Acc-24x2 or Acc-51E boards.
Channels 1 – 4 on odd-numbered Servo ICs are Channels 5 – 8 on dual-Servo-IC boards.
When performing direct PWM control over the MACRO ring, Ixx82 points to the second of a set of two
MACRO input registers for the MACRO IC and the node used. Typically, the values used are the same
whether MACRO Type 0 or Type 1 protocol is employed for the node:
MACRO Node ADC Current-Feedback Addresses (Y-registers)
IC# - Node# 0 - 0 0 - 1 0 - 4 0 - 5 0 - 8 0 - 9 0 - 12 0 - 13
Ixx82
$078422 $078426 $07842A $07842E $078432 $078436 $07843A $07843E
IC# - Node# 1 - 0 1 - 1 1 - 4 1 - 5 1 - 8 1 - 9 1 - 12 1 - 13
Ixx82
$079422 $079426 $07942A $07942E $079432 $079436 $07943A $07943E
IC# - Node# 2 - 0 2 - 1 2 - 4 2 - 5 2 - 8 2 - 9 2 - 12 2 - 13
Ixx82
$07A422 $07A426 $07A42A $07A42E $07A432 $07A436 $07A43A $07A43E
IC# - Node# 3 - 0 3 - 1 3 - 4 3 - 5 3 - 8 3 - 9 3 - 12 3 - 13
Ixx82
$07B422 $07B426 $07B42A $07B42E $07B432 $07B436 $07B43A $07B43E
If using the older Type 0 MACRO protocol, add 1 to the value shown in the above table (e.g. $078422
becomes $078423).
Current Feedback Mask Word: Ixx84
Ixx84 specifies a mask word to tell Turbo PMAC what bits of the registers specified by Ixx82 are to be
used in the current-loop algorithm. This permits the use of ADCs of various resolutions. It also permits
use of the rest of the 18-bit ADC shift register for other information, such as fault codes. Ixx84 is a 24-bit
value that is combined with the feedback word in a bit-by-bit AND operation. The default value of
$FFF000 specifies that the top 12 bits of the feedback words are to be used. Most direct-PWM amplifiers
use 12-bit ADCs, so $FFF000 is the appropriate value for these amplifiers.
PWM Scale Factor: Ixx66
Ixx66, the PWM Scale Factor, scales the output command values so that they use the PWM circuitry
effectively. The result of the current-loop calculations is a fractional value between -1.0 and +1.0. This
value is multiplied by Ixx66 before being written to a PWM command register, where it is digitally
compared to a PWM up/down counter moving between I7m00+1 and -I7m00-2. To utilize the dynamic
range of the PWM circuitry well, Ixx66 should be set slightly greater than I7m00. Typically a value 10%
greater is used, permitting full-on conditions at maximum command values over about 1/6 of the
commutation cycle.
Ixx66 acts as a voltage limit for the motor. If the amplifier is oversized for the motor, exceeding the
maximum permitted voltage for the motor, Ixx66 should be set proportionately less than I7m00 to limit
the maximum possible voltage for the motor. Since Ixx66 is a gain, the current loop must be tuned or
retuned after any change.
Servo Loop Output Limit: Ixx69
Ixx69 is the limit of the output of the position/velocity servo loop, which is the torque (quadrature)
current command input to the digital current loop. As such, it acts as an instantaneous current limit for
the motor. Open-loop O-commands are expressed as a percent of Ixx69.
In most other modes, a value of 32,767 (2
15
-1) for Ixx69 for this parameter is full range. In 3-phase
direct-PWM mode, however, the value of 32,767 corresponds to the full-range readings of the Phase A
and Phase B A/D converters. The mathematics involved in the transformation from the phase currents to
the direct and quadrature currents effectively multiplies the phase values by cos(30
o
), or 0.866. This
means that the Ixx69 value corresponding to the full-range ADC reading is 32,767*0.866 = 28,377.
Therefore, Ixx69 should never be set to a value greater than 28,377 in direct-PWM mode.