Reference Manual

Turbo PMAC/PMAC2 Software Reference
Firmware Update Listing 753
6. Added foreground in-position check in servo interrupt, enabled by I13=1. Added foreground in-
position motor status bit (bit 13 of Y:$0000C0, etc.).
7. Permitted disabling of automatic command parsing on Option 9T auxiliary serial port by setting I43
to 1, permitting custom parsing algorithms to be written for serial input of data that is not in PMAC
command format.
8. Permitted loading of binary rotary motion program commands from DPRAM to internal buffer as a
foreground real-time interrupt task instead of a background task with I45=1.
9. Permitted disabling of A/D de-multiplexing with I5080=0.
10. Implemented alternate rotary-axis rollover mode in which the sign of the specified destination value
also specifies the direction to turn to that point. Setting Ixx27 to a negative value enables this mode.
11. Implemented |I|T integrated current limiting function as alternate to existing I
2
T integrated current
limiting. In |I|T, the magnitude of the current itself, not the square of the current, is integrated and
compared to the Ixx58 limit. Setting the Ixx57 continuous current magnitude value to a negative
number enables this alternate mode. This more accurately tracks the thermal behavior of a constant
voltage-drop device such as an IGBT, whereas I
2
T is better for constant-resistance devices such as
MOSFETs and motor windings.
12. Implemented automatic clearing of direct current-loop registers to improve direct-PWM control of
permanent-magnet brush motors. This mode is enabled by setting Ixx96 to 1 when Ixx01 bit 0 = 1
(enabling commutation) and Ixx82 > 0 (enabling current loop).
13. Implemented ABR command, permitting fastest possible abort of currently executing program, and
start or restart of a motion program.
14. Implemented time remaining in move register and MOVETIME query command, to support functions
initiated at a fixed time before the end of a commanded move.
15. Implemented SETPHASE command (on-line and buffered) to copy Ixx75 phase value into phase
position register. Useful for correcting the phase position at a known point (e.g. the index pulse) after
an initial rough phasing (e.g. from Hall commutation sensors).
16. Implemented LOCK and UNLOCK commands (on-line and buffered) to control up to eight process
locking bits that can prevent possible conflict of foreground and background tasks attempting to
manipulate the same register.
17. Implemented on-line I{constant}=@I{constant} command, permitting the value of one I-
variable to be set to the address of another I-variable. The main purpose of this command is to be
able to set an address I-variable (e.g. Ixx03, Ixx04, Ixx05, Isx93) to the address of a conversion-table
entry without having to look up the address of that entry.
18. Added capability for UMAC Turbo CPUs to generate their own servo and phase clock signals when
expected clock source is not found. Keeps watchdog timer from tripping so that new clock source
can be established. Bit 3 of X:$000006 set if CPU is generating its own clocks.
19. Resolution of (previously undocumented) real-time clock register L:$000017 changed from 1/256
second to 1/1024 second.
20. Turbo PMACs with extended user data memory options (5x1 or 5x3) have default user buffer of
65,536 words.
21. I52 CPU clock speed multiplier parameter range extended to 14 to support CPU speeds of up to 150
MHz.
22. Resolution of (previously undocumented) real-time interrupt cycle time registers X:$00000B (latest
time) and Y:$00000B (maximum time) changed to 2 CPU clock cycles.
23. Added background cycle time registers X:$000022 (latest time) and Y:$000022 (maximum time)
with resolution of two CPU clock cycles.