8.1 State-Space Form
8.1.1 Discretization of the Observer
8.1.2 Tuning the Discrete-Time Observer
8.1.3 Tuning the Discrete-Time Controller
8.1.4 Comparison and Summary
8.2 Transfer Function Form
-
People are more familiar with transfer function forms of controllers and find it difficult to draw comparisons.
-
(Software) Building blocks exist for a transfer function controller implementation and cannot be reused.
-
At least for N ≥ 2, the matrix multiplication in the observer (8.5) comes with a higher computational footprint than a typical discrete-time transfer function implementation of a controller.
-
A superfluous (dependent) coefficient of the denominator polynomial of ΔCFB(z) gets eliminated, saving one parameter to store and one multiplication at runtime.
8.3 Dual-Feedback Transfer Function Form
8.4 Discrete-Time Error-Based ADRC
8.4.1 State-Space Form
8.4.2 Transfer Function Form
8.4.3 Dual-Feedback Transfer Function Form
8.5 Summary and Outlook
Form | Output-based | Error-based | Properties |
---|---|---|---|
State space | Sect. 8.1 | Sect. 8.4.1 | Recognition factor: corresponds to the original structure of continuous-time ADRC. Control signal limitation: flexible, built-in windup protection. Runtime footprint: minimum number of storage variables, but maximum number of coefficients and operations. |
Transfer function | Sect. 8.2 | Sect. 8.4.2 | Recognition factor: equivalence to classical digital control with feedback controller and prefilter. Control signal limitation: only via clamped integrator. Runtime footprint: maximum number of storage variables, reduced number of coefficients and algebraic operations. |
Dual-feedback TF | Sect. 8.3 | Sect. 8.4.3 | Recognition factor: fully replicates the state-space using transfer functions, but with an uncommon structure. Control signal limitation: flexible, built-in windup protection. Runtime footprint: minimum number of storage variables, coefficients, and algebraic operations. |
Order | State space | Transfer functions | Dual-feedback TF |
---|---|---|---|
1st | 11 mul. | 7 mul. | 7 mul. |
10 add. | 6 add. | 6 add. | |
2 var. | 4 var. | 2 var. | |
2nd | 19 mul. | 11 mul. | 10 mul. |
18 add. | 10 add. | 9 add. | |
3 var. | 6 var. | 3 var. | |
Nth | (N2 + 5N + 5) mul. | (4N + 3) mul. | (3N + 4) mul. |
(N2 + 5N + 4) add. | (4N + 2) add. | (3N + 3) add. | |
(N + 1) var. | (2N + 2) var. | (N + 1) var. |
-
Chapter 9 describes various features that can further facilitate a successful deployment of ADRC thus contributing to closing the theory-practice gap.
-
Chapter 10 supports the transition from equations to actual software implementation, both in model-based and handwritten source code implementations.
-
Chapter 11 documents the use of the above discrete-time ADRC in actual application examples, showing how the manufactured “cooking recipes” perform when applied to real control problems, which call for actual hardware implementations.