English
Language : 

TMC428_06 Datasheet, PDF (19/58 Pages) List of Unclassifed Manufacturers – Intelligent Triple Stepper Motor Controller with Serial Peripheral Interfaces
TMC428 DATASHEET (v. 2.02 / April 26th, 2006)
19
Important Notes: The maximum current scaling factor 1 is selected by i_scale = %000. This is the
power-on default. The minimum current scaling factor 1/8 = 0.125 is selected by i_scale = %001. The
current scaling factor Is proportionally reduces the effective number of micro steps per full step. For
example, with i_scale = %100 (= 4/8 = 50%) the number of effective micro steps per full step is
halved.
One of the three scale factors is_agtat, is_aleat, and is_v0 is selected according to Table 8-2. If the
velocity is zero, the parameter is_v0 is used for scaling. If the velocity is not zero, either is_aleat or
is_agtat is used for scaling, depending on the absolute value of the acceleration and the acceleration
threshold a_threshold.
v=0
v≠0
| a | ≤ athreshold
| a | > athreshold
Is := is_v0
Is := is_aleat
Is := is_agtat
Table 8-2: Current scale selection scheme
The automatic motion dependent current scale feature of the TMC428 is provided primarily for micro
step operation. It may also be applied for full step or half step drivers, if those provide current control
bits. For those drivers, one could initialize the micro step table with a constant function, square function
or sine wave using the two most significant DAC bits.
The configuration bit continuous_update of the stepper motor global parameter register (Table
9-1, page 30) must be set to ‘1’ to make sure that the coil current is scaled for v=0 if all motors are at
rest.
8.10 pmul & pdiv (IDX=%1001)
The stepper motors are driven with a trapezoidal velocity profile, which may become triangular if the
maximum velocity is not reached (see Figure 8-1, page 16). Depending on the difference between the
target position x_target and the actual position x_actual, the ramp generator continuously calculates
target velocities v_target for the pulse generator (see Figure 8-2, page 20). The pulse generator then
generates (micro) step pulses taking into account the motion parameter limits (v_min, v_max,
a_max). With a target velocity proportional to the difference of target position x_target and current
position x_actual, the stepper motor approaches the target position. This also works, if the target
position is changed during motion. The stepper motor moves to a target position until the difference
between the target position x_target and the current position x_actual vanishes.
With the right proportionality factor p, target positions are quickly reached and without overshooting
them. The proportionality factor primarily depends on the acceleration limit a_max and on the two clock
divider parameters pulse_div and ramp_div. These two separate clock divider parameters– set to the
same value for most applications –give an extremely wide dynamic range for acceleration and velocity.
These two separate parameters allow reaching very high velocities with very low acceleration.
If the proportionality factor p is set too small, this results in a slow approach to the target position. If set
too large, it causes overshooting and even oscillations around the target position. The calculation of
the proportionality factor is simple:
The representation of the proportionality factor p by the two parameters p_mul and p_div is some kind
of a fixed point representation. It is
p = p_mul / p_div
with
p_mul = {128, 128+1, 128+2, 128+3, ..., 128+127}
and
Copyright © 2004-2006, TRINAMIC Motion Control GmbH & Co. KG