Microstep Waveform Generation
Juno Step Motor Control IC User Guide
49
8
8.4
Encoder Feedback
The Juno MC74113 and MC74113N step motor control ICs support quadrature position encoder input. To provide
encoder tracking Juno continually monitors the
QuadA
and
QuadB
feedback signals and accumulates a 32-bit position
value called the actual position. At power-up, the default actual position is zero. The full range of trackable positions
is -2,147,483,647 to +2,147,483,647.
In the event that a spinning axis exceeds either of these position limits the actual position wraps around, with the
largest positive position wrapping around to become the smallest negative position, and the smallest negative position
wrapping around to become the largest positive number. When such a wraparound occurs a corresponding bit in the
Event Status register is set.
Position wraparound, should it occur during operation, is generally not a consequential event. A position wraparound
will have no impact on the behavior of the axis, nor is there a limit to the number of such wraparound events that may
occur.
For more information on the Event Status register see
12.1.1, “Event Status Register.”
8.4.1
Position Capture
Juno ICs support a high-speed position capture function that allows the current axis location (as determined by the
attached encoder) to be captured when triggered by the
Index
signal. When a capture is triggered, the content of the
actual position register is transferred to a position capture register, and the capture-received indicator of the Event
Status register is set.
The capture register can be read using serial host commands. Reading the position capture register causes the trigger
to be re-armed, allowing for more captures to occur.
8.4.2
Stall Detection
Juno step motor control ICs can actively monitor the encoder position and automatically detect when the step motor
has stalled or otherwise lost steps during motion.
Automatic stall detection operates continuously once it is initiated. The current desired position (commanded
position) is continuously compared with the actual position (from the encoder), and if the difference between these
two values exceeds a specified limit, a stall condition, called a motion error, is recognized resulting in the
corresponding flag within the Event Status register being set. For more information see
Juno can be programmed to take various actions when a motion error occurs such as disabling motor output. The
mechanism to program and process these functions is called event handling and is described in detail in
With the MC74113 and MC74113N Juno ICs the actual position units are in microsteps by default. However, if desired
the actual position units can be changed to encoder counts.
Example
A 1.8 degree step motor has an encoder with 2,000 encoder counts per motor rotation and a microstep resolution set
to 64
μ
Steps per full step, which is 12,800 microsteps per motor rotation. A position error limit of 128 will result in
stall detection occurring if the actual step motor lags the commanded position by more than 128
μ
Steps or two full
steps.