Datasheet
TMC5130A DATASHEET (Rev. 1.11 / 2015-OCT-08) 54
www.trinamic.com
7.2.1 PWM_AMPL for Using stealthChop and spreadCycle
When combining stealthChop with spreadCycle or constant off time classic PWM, a switching velocity
can be chosen using TPWMTHRS. With this, stealthChop is only active at low velocities. Often, a very
low velocity in the range of 1 to a few 10 RPM fits best. In case a high switching velocity is chosen,
special care should be taken for switching back to stealthChop during deceleration, because the phase
jerk can produce a short time overcurrent. (Refer to chapter 7.4 for more details about combining
stealthChop with other chopper modes.)
To avoid a short time overcurrent and to minimize the jerk, the initial amplitude for switching back to
stealthChop at sinking velocity can be determined using the setting PWM_AMPL. Tune PWM_AMPL to a
value which gives a smooth and safe transition back to stealthChop within the application. As a
thumb rule, ½ to ¾ of the last PWM_SCALE value which was valid after the switching event at rising
velocity can be used. For high resistive steppers as well as for low transfer velocities (as set by
TPWMTHRS), PWM_AMPL can be set to 255 as most universal setting.
Note
The autoscaling function only starts up regulation during motor standstill. After enabling stealthChop
and setting all parameters, be sure to wait until PWM_SCALE has reached a stable state before starting
a motion. Failure to do so will result in zero motor current!
In case the automatic scaling regulation is instable at your desired motion velocity, try modifying the
chopper frequency divider PWM_FREQ. Also adapt the blank time TBL and motor current for best
result.
7.2.2 Acceleration
In automatic current regulation mode (pwm_autoscale = 1), the PWM_GRAD setting should be
optimized for the fastest required acceleration ramp. Use a current probe and check the motor current
during (quick) acceleration. A setting of 1 may result in a too slow regulation, while a setting of 15
responds very quickly to velocity changes, but might produce regulation instabilities in some
constellations. A setting of 4 is a good starting value.
Hint
Operate the motor within your application when exploring stealthChop. Motor performance often is
better with a mechanical load, because it prevents the motor from stalling due mechanical oscillations
which can occur without load.
7.3 Velocity Based Scaling
Velocity based scaling scales the stealthChop amplitude based on the time between each two steps,
i.e. based on TSTEP. The basic idea is to have a linear approximation of the voltage required to drive
the target current into the motor. The stepper motor has a certain coil resistance and thus needs a
certain voltage amplitude to yield a target current based on the basic formula I=U/R. With R being the
coil resistance, U the supply voltage scaled by the PWM value, the current I results. The initial value
for PWM_AMPL can be calculated:
With V
M
the motor supply voltage and I
COIL
the target RMS current
The effective PWM voltage U
PWM
(1/SQRT(2) x peak value) results considering the 8 bit resolution and
248 sine wave peak for the actual PWM amplitude shown as PWM_SCALE: