Reference Manual

Turbo PMAC/PMAC2 Software Reference
Turbo PMAC Global I-Variables 89
Ixx09 specifies the multiplication scale factor for the internal actual velocity registers for Motor xx.
Source position registers for the velocity loop are multiplied by Ixx09 before they are compared and used
in the velocity loop. For most purposes, this is transparent to the user and Ixx09 does not need to be
changed from the default.
This parameter should not be changed in the middle of an application, because it scales many internal
values. If the same sensor is used to close both the position and velocity loops (Ixx03=Ixx04), Ixx09
should be set equal to Ixx08.
If different sensors are used, Ixx09 should be set such that the ratio of Ixx09 to Ixx08 is inversely
proportional to the ratio of the velocity sensor resolution (at the load) to the position sensor resolution. If
the value computed this way for Ixx09 does not come to an integer, use the nearest integer value.
Example:
If a 5000 line/inch (20,000 cts/in) linear encoder is used for position feedback, and a 500 line/rev (2000
cts/rev) rotary encoder is used for velocity loop feedback, and there is a 5-pitch screw, the effective
resolution of the velocity encoder is 10,000 cts/in (2000*5), half of the position sensor resolution, so
Ixx09 should be set to twice Ixx08.
Ixx10 Motor xx Power-On Servo Position Address
Range: $000000 - $FFFFFF
Units: Turbo PMAC or Multiplexer Port Addresses
Default: $0
Ixx10 controls whether Turbo PMAC reads an absolute position sensor for Motor xx on power-up/reset
and/or with the $* or $$* commands. If an absolute position read is to be done, Ixx10 specifies what
register is read for that absolute position data. Ixx95 specifies how the data in this register is interpreted.
If Ixx10 is set to 0, no absolute power-on/reset position read is performed. The power-on/reset position is
considered to be zero, even if an absolute sensor reporting a non-zero value is used. Ixx10 should be set
to 0 when an incremental position sensor is used; a homing search move is typically then executed to
establish a position reference.
If Ixx10 is set to a non-zero value, an absolute position read is performed for Motor xx at power-on/reset,
from the register whose location is specified in Ixx10 (unless Bit 2 of Ixx80 is set to 1). This is either the
address of a Turbo PMAC register, the multiplexed data address on the Multiplexer Port, or the number of
the MACRO node on the Turbo PMAC, depending on the setting of Ixx95. The motor’s position is set to
the value read from the sensor location the Ixx26 home offset value.
Ixx10 is used only on power-on/reset, when the $* command is issued for the motor, or when the $$*
command is issued for the coordinate system containing the motor. To get a new value of Ixx10 to take
effect, either the $* or $$* command must be issued, or the value must be stored to non-volatile flash
memory with the SAVE command, and the board must be reset.
Note:
Variable Ixx81 (with Ixx91) performs the same power-on position read function
for the phasing (commutation) algorithm.
R/D Converter Read: If Ixx95 is set to a value from $000000 to $070000, or from $800000 to $870000,
the address specified in Ixx10 is a Multiplexer Port address. Turbo PMAC will read the absolute position
from an Acc-8D Opt 7 Resolver-to-Digital Converter board at that port address, as set by DIP switches on
the board. Ixx95 specifies which R/D converter at that address is read, and whether it is treated as a
signed or unsigned value.
If Ixx99 is greater than 0, the next R/D converter at that port address is also read as a second geared-down
resolver, with Ixx99 setting the gear ratio. If Ixx98 is also greater than 0, the next R/D converter past that
one at the same port address is read as a third geared-down resolver, with Ixx98 setting the gear ratio.