Datasheet

TMC4361A Datasheet | Document Revision 1.22 2017-JAN-12
161/230
© 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 Directiveson page 224.
MAIN MANUAL
Closed-Loop Operation
The closed-loop unit of TMC4361A directly modifies output currents and Step/Dir outputs of
the internal step generator; which is dependent on the feedback data. The 2-phase closed-loop
control of TMC4361 follows a different approach than Field-Oriented Control (FOC); which is
similar to PID control cascades. The ramp generator, which assigns target and velocity, is
independent of position control (commutation angle control); which is also independent of
current control. Closed-loop operation can only be used in combination with 256 microsteps per
fullstep.
Closed-loop does not control current values via the internal step generator. The
currents values at the SPI output and the Step/Dir outputs are verified using the
evaluated difference between internal position
XACTUAL
and external position
ENC_POS
; considering the calibrated offset parameter
CL_OFFSET
.
In order to set parameters and clipping values for closed-loop regulation correctly,
consider the following details:
This register contains the basic offset value between internal and external position
during calibration process, which is necessary for closed-loop operation, and offers
read-write access. The write access can be used if a defined fixed offset value is
preferred, which is verified beforehand.
The continuously updated parameter
ENC
_
POS
_
DEV
displays the deviation between
XACTUAL
and
ENC_POS
; considering
CL
_
OFFSET
.
CL_BETA
is the maximum commutation angle that is used to compensate an evaluated
deviation
ENC_POS_DEV
. In case the deviation reaches
CL_BETA
value, the
commutation angle remains stable at this value to follow the overload. Also,
CL_MAX
event is triggered at this point.
This parameter is set to select the tolerance range for position deviation. In case
|
ENC_POS_DEV
|
CL_TOLERANCE
,
CL_FIT_F
lag becomes set.
In case a mismatch between internal and external position occurs,
CL_FIT
event is
triggered to signify when the mismatch is removed.
CL_DELTA_P
is a proportional controller that compensates a detected position
deviation between internal and external position. See also Figure 66, page 162.
In case |
ENC_POS_DEV
|
CL_TOLERANCE
,
CL_DELTA_P
is automatically set to 1.0.
In case |
ENC_POS_DEV
| >
CL_TOLERANCE
, the closed-loop unit of TMC4361A
multiplies
ENC_POS_DEV
with
CL_DELTA_P
and adds the resulting value to the
current
ENC_POS
. Thus, a current commutation angle for higher stiffness position
maintenance, which is clipped at
CL_BETA
, is calculated.
i
CL_DELTA_P
consists of 24 bits. The last 16 bits represent decimal places. The
final proportional term is thus calculated by: p
PID
=
CL_DELTA_P
/ 65536.
i Therefore, the higher p
PID
the faster the reaction on position deviations.
NOTE:
A high p
PID
term can lead to oscillations that must be avoided.
In case, one absolute encoder is connected, this value represents the delay time in
numbers of clock cycles between two consecutive regulation cycles. It is
recommended to adjust this value to the regulation cycle; which is either equal or
slower than the encoder request rate. In case incremental ABN encoder is selected,
this value is automatically set to fetch the fastest possible regulation rate; which in
most cases are five clock cycles.
Basic Closed-
Loop Parameters
CL_OFFSET
0x59
ENC_POS_DEV
0x52
CL_BETA
0x1C (8:0)
CL_TOLERANCE
0x5F (7:0)
CL_DELTA_P
0x5C
CL_CYCLE 0x63
(31:16)