Reference Manual

Turbo PMAC/PMAC2 Software Reference
Turbo PMAC Global I-Variables 81
I99 = $00: 32-bit addressing, no DPRAM
I99 = $10: 24-bit addressing, no DPRAM
I99 = $30: 16-bit addressing, no DPRAM
I99 = $80: 32-bit addressing, with DPRAM
I99 = $90: 24-bit addressing, with DPRAM
I99 = $B0: 16-bit addressing, with DPRAM
Actually I99 is used at power-on/reset only, so to set or change the VME bus address width, change the
value of I99, store this new value to non-volatile flash memory with the SAVE command, and reset the
card with the $$$ command.
The active register into which the value of I99 is copied at power-on/reset is X:$07000F bits 0 7. It is
permissible to write to this register directly (suggested M-variable M99) to change the active setup
without a SAVE and reset.
Motor Setup I-Variables
Motor Definition I-Variables
Ixx00 Motor xx Activation Control
Range: 0 - 1
Units: none
Default: I100 = 1, I200 .. I3200 = 0
Ixx00 determines whether Motor xx is de-activated (Ixx00 = 0) or activated (Ixx00 = 1). If activated,
position monitoring, servo, and trajectory calculations are performed for the motor. An activated motor
may be enabled either in open or closed loop or disabled (killed), depending on commands or events.
If Ixx00 is 0, no calculations are performed for Motor xx, not even position monitoring, so a position
query command would not reflect position changes. Any Turbo PMAC motor not used in an application
should be de-activated, so Turbo PMAC does not waste time doing calculations for that motor. The fewer
motors that are activated, the faster the servo-update time will be.
Do not try to de-activate an active and enabled motor by setting Ixx00 to 0. The motor outputs would be
left enabled with the last command level on them.
Ixx01 Motor xx Commutation Enable
Range: 0 - 3
Units: none
Default: 0
Ixx01 determines whether Turbo PMAC will perform the commutation calculations for Motor xx and
controls whether X or Y registers are accessed for the motor. If Ixx01 is set to 0 or 2, Turbo PMAC
performs no commutation calculations for this motor, and the single command output from the
position/velocity-loop servo is output to the register specified by Ixx02. If Ixx01 is 0, this register is a Y-
register; if Ixx01 is 2, this register is an X-register.
If Ixx01 is set to 1 or 3, Turbo PMAC performs the commutation calculations for the motor, and the
output from the position/velocity-loop servo is an input to the commutation algorithm. Commutation
position feedback is read from the register specified by Ixx83. If Ixx01 is 1, this register is an X-register;
if Ixx01 is 3, this register is a Y-register. Typically, X-registers are used for commutation feedback
directly on the Turbo PMAC; Typically, Y-registers are used for commutation feedback through the
MACRO ring.
If Ixx01 is set to 1 or 3, Ixx70 through Ixx84 must be set to perform the commutation as desired. If Ixx82
is set to 0, Turbo PMAC will not perform current-loop calculations, and it outputs two phase-current