SMAC
LAC-26 Technical Reference Manual
4/29/2013 10
The Axis Fault interrupts indicate that a fault condition (usually an over-temperature condition)
has arisen. Normally, when this condition is detected, the servo is disabled and the "Fault" bit in that axis'
status word is set.
If the interrupt for this condition is enabled, the "Fault"
bit will still be set but the
servo will not be disabled.
The Axis Limit interrupts indicate that either a Limit+
or Limit- condition for an
axis has
been detected. Whether or not a limit input will be recognized
is determined by the Limit
On (LN)
and Limit Off (LF) commands. The action taken is determined by the Limit Mode (LM) command.
Digital Inputs 00 - 03 provide 4 levels of undedicated, user definable interrupts. The interrupt for a
given input will be active when that input is active.
2.4 Interrupt Priority
If more than one interrupt source becomes active at the same time, then the source with the
higher level will be executed first. Level/vector 31 has the highest priority and level/vector 0 has the
lowest priority.
2.5 Interrupt Completion
Once an interrupt macro (or set of macros) has finished executing, a Return from Call (RC)
command or an undefined macro may be used to cause a return from the interrupting macro back to the
interrupted macro where command execution will continue from where it was interrupted (see MS
command). In cases where it is undesirable to return to the interrupted macro, the Unpush Macro (UM)
command can be used to remove the previously pushed macro from the macro stack. This command can
also be used to completely reset the macro stack in order that the user program can be restarted.
2.6 Interrupt Latency
Interrupt sources are sampled before each command in a macro is executed. This means that the
amount of time that an interrupt is held off before execution (also known as interrupt latency) depends on
how long it takes the previous command to complete. For most commands this delay will be
imperceptible.
Commands such as Wait (WA), Wait for Edge (WE), Wait for Stop (WS), Wait for Off (WF), Wait
for On (WN) and Wait for Index (WI) would normally be a source of unacceptable delay in that they can
quite often be indeterminate in length. This problem has been avoided by making these instructions
interruptable. For example, if a WA10000 command (a 10 second delay) is currently in progress and an
interrupt comes along, the remaining delay period will be saved and then returned to after the interrupt
has completed. If the interrupt were to take 3 seconds to execute, then the total wait time of the WA10000
command would be extended to 13 seconds.
The Position Mode (PM), Torque Mode (QM), Velocity Mode (VM), Wait for Position Absolute
(WP) and Wait for Position Relative (WR) commands and any command that uses the serial
communications link are all commands that could cause unacceptable interrupt latency. Therefore, their
usage should be carefully considered where interrupts are possible.