Power Brick Controller User Manual
Special Functions & Troubleshooting
192
Digital Tracking Filter
The encoder conversion table’s (ECT) software tracking filter is a digital low-pass filter with an integrator
which is useful for reducing measurement noise (floor level and occasionally electrical) without introducing
steady-state error at constant velocity or position. It is particularly useful for applications involving:
Analog Input Signals.
Sinusoidal Encoder Signals (with the x16384 interpolator).
Resolver Signals.
Note
Executed in the ECT, the performance of this filter is directly
proportional to the servo frequency. The higher the frequency, the
faster is the sampling and better noise rejection.
Note
This filter should never be used with the Sinusoidal ACI interpolation
option of the Power Brick. The ACI automatically compensates for
disturbances at a much higher rate.
The following PLC depicts the digital tracking filter equations, and produces the three indexes necessary
to apply the filter in the corresponding Encoder Conversion Table:
GLOBAL
TrackFltrCutOff = 1000;
GLOBAL
TrackFltrDamping = 1;
// [Hz]
GLOBAL
TrackFltrIndex1, TrackFltrIndex2, TrackFltrIndex4;
GLOBAL
VerifyWn, VerifyTau;
OPEN
PLC
TrackFltrPLC
LOCAL
TrackFltrTime = Sys.Servoperiod / 1000;
TrackFltrIndex1 = 65
TrackFltrIndex2 =
INT
(256 - 512 * TrackFltrCutOff * TrackFltrDamping * TrackFltrTime)
TrackFltrIndex4 = 1
VerifyWn = (1 / TrackFltrTime) *
SQRT
(TrackFltrIndex1 / (256 *
EXP2
(TrackFltrIndex4)))
VerifyTau = (256 - TrackFltrIndex2) / (2 *
SQRT
(256 * TrackFltrIndex1 /
EXP2
(TrackFltrIndex4)))
WHILE
(VerifyWn > TrackFltrCutOff)
TrackFltr= 1
VerifyWn = (1 / TrackFltrTime) *
SQRT
(TrackFltrIndex1 / (256 *
EXP2
(TrackFltrIndex4)))
WHILE
(VerifyWn < TrackFltrCutOff)
TrackFltr= 1
VerifyWn = (1 / TrackFltrTime) *
SQRT
(TrackFltrIndex1 / (256 *
EXP2
(TrackFltrIndex4)))
VerifyWn = (1 / TrackFltrTime) *
SQRT
(TrackFltrIndex1 / (256 *
EXP2
(TrackFltrIndex4)))
VerifyTau = (256 - TrackFltrIndex2) / (2 *
SQRT
(256 * TrackFltrIndex1 /
EXP2
(TrackFltrIndex4)))
DISABLE PLC
TrackFltrPLC
CLOSE