TMC4330A Datasheet | Document Revision 1.01 • 2017-JAN-12
61/166
Due to definition of the limitation range, one revolution only consists of an even
number of microsteps. TMC4330A provides an option to overcome this limitation.
Uneven or
Noninteger
Microsteps per
Revolution
Some applications demand different requirements because a revolution consists
of an uneven or noninteger number of microsteps.
TMC4330A allows a high adjustment range of microsteps by using:
CIRCULAR_DEC register 0x7C.
This value represents one digit and 31 decimal places as extension for the
number of microsteps per one revolution.
A revolution is completed at overflow position. With every completed revolution
the CIRCULAR_DEC value is added to an internal accumulation register. In case
this register has an overflow, XACTUAL remains at its overflow position for one
step.
On average, this leads to the following microsteps per revolution:
Microsteps/rev = (2 · X_RANGE) + CIRCULAR_DEC / 231.
Example 1:
One revolution consists of 601 microsteps.
A definition of X_RANGE = 300 will only provide:
Uneven Number
of Microsteps
per Revolution
600 microsteps per revolution (−300 ≤ XACTUAL ≤ 299).
Whereas X_RANGE = 301 will result in:
602 microsteps per revolution (−301 ≤ XACTUAL ≤ 300).
By setting:
CIRCULAR_DEC = 0x80000000 (= 231 / 231 = 1).
An overflow is generated at the decimals accumulation register with every revolution.
Therefore, XACTUAL prolongs the step at the overflow position for one step every
time position overflow is overstepped. This results in a microstep count of 601 per
revolution.
Example 2:
Noninteger
Number of
Microsteps per
Revolution
One revolution consists of 600.5 microsteps.
By setting:
CIRCULAR_DEC = 0x40000000 (= 230 / 231 = 0.5).
Every second revolution an overflow is produced at the decimals’ accumulation
register. This leads to a microstep count of 600 every second revolution and 601 for
the other half of the revolutions. On average, this leads to 600.5 microsteps per
revolution.
Example 3:
One revolution consists of 601.25 microsteps.
Noninteger and
uneven Number
of Microsteps
per Revolution
By setting:
CIRCULAR_DEC = 0xA0000000 (= (231 + 229) / 231 = 1.25).
With every revolution an overflow is produced at the decimals’ accumulation register.
Furthermore, at every fourth revolution an additional overflow occurs, which leads to
another prolonged step. This leads to a microstep count of 601 for three of four
revolutions and 602 for every fourth revolution. On average, this results in 601.25
microsteps per revolution.
© 2015 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany — Terms of delivery and rights
to technical change reserved. Download newest version at: www.trinamic.com .
Read entire documentation; especially the “Supplemental Directives” on page 160.
MAIN MANUAL