Skip to main content
Erschienen in:

Open Access 2025 | OriginalPaper | Buchkapitel

5. Visual Tour

verfasst von : Gernot Herbst, Rafal Madonski

Erschienen in: Active Disturbance Rejection Control

Verlag: Springer Nature Switzerland

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

A picture is worth a thousand words. This chapter aims at analyzing and showcasing ADRC in a predominantly visual manner, in both time and frequency domains, going from modeling to tuning and its closed-loop behavior. What can one expect from ADRC regarding tracking performance and disturbance rejection? What is the influence of its modeling and tuning parameters? And what if we set them too low or too high?

5.1 Plant Modeling

5.1.1 Obtaining b0 in Time Domain

We started introducing the core concepts of ADRC in Sect. 3.​1 with its simple plant model (3.​2) that—apart from the plant order N—only has one parameter b0, the critical gain parameter. In this section, we want to demonstrate how b0 can experimentally be obtained given a step response of a plant following a stepwise change in its input signal u(t) = u⋅ σ(t), where σ(t) is the Heaviside step function and u the steady-state value of the input—if applicable, relative to its initial value. This will be shown using three simple examples:
  • Plant with pure integrator behavior. If the plant can be described as an integrator with a gain value KI,
    $$\displaystyle \begin{aligned} P(s) = \frac{K_{\mathrm{I}}}{s} = \frac{b_0}{s} , \end{aligned}$$
    its reaction to an input signal u(t) = u⋅ σ(t) will be
    $$\displaystyle \begin{aligned} y(t) = K_{\mathrm{I}} \cdot t \cdot u_\infty \cdot \sigma(t) = b_0 \cdot t \cdot u_\infty \cdot \sigma(t) . \end{aligned}$$
    As shown in case (a) of Fig. 5.1, b0 can be computed from the normalized slope:
    $$\displaystyle \begin{aligned} b_0 = \frac{\varDelta y}{\varDelta t \cdot u_\infty} . \end{aligned} $$
    (5.1)
  • Plant with integrator plus first-order lag behavior. If a plant has integrator behavior with a first-order lag (time constant T)
    $$\displaystyle \begin{aligned} P(s) = \frac{K_{\mathrm{I}}}{s} \cdot \frac{1}{T s + 1} = \frac{\frac{K_{\mathrm{I}}}{T}}{s^2 + \frac{1}{T} s} = \frac{b_0}{s^2 + a_1 s} , \end{aligned}$$
    the reaction to an input signal u(t) = u⋅ σ(t) will be
    $$\displaystyle \begin{aligned} y(t) = K_{\mathrm{I}} \cdot \left( t - T \cdot \left( 1 - \mathrm{e}^{-\frac{t}{T}} \right) \right) \cdot u_\infty \cdot \sigma(t) , \end{aligned}$$
    which, for t ≫ T, approaches a ramp:
    $$\displaystyle \begin{aligned} y(t \gg T) \approx K_{\mathrm{I}} \cdot (t - T) \cdot u_\infty . \end{aligned}$$
    As shown in case (b) of Fig. 5.1, b0 can then be computed from the normalized slope and the value of T read off the intersection of the ramp with the time axis:
    $$\displaystyle \begin{aligned} b_0 = \frac{K_{\mathrm{I}}}{T} = \frac{\varDelta y}{\varDelta t \cdot u_\infty \cdot T} . \end{aligned} $$
    (5.2)
  • Plant with first-order low-pass behavior. For a self-regulating plant with first-order lag behavior (gain K and time constant T)
    $$\displaystyle \begin{aligned} P(s) = \frac{K}{T s + 1} = \frac{\frac{K}{T}}{s + \frac{1}{T}} = \frac{b_0}{s + a_0} , \end{aligned}$$
    the reaction to an input signal u(t) = u⋅ σ(t) will be
    $$\displaystyle \begin{aligned} y(t) = K \cdot \left( 1 - \mathrm{e}^{-\frac{t}{T}} \right) \cdot u_\infty \cdot \sigma(t) . \end{aligned}$$
    There are two options to compute b0. The first one uses K obtained from the steady-state value, \(K = \frac {y_\infty }{u_\infty }\), and T from a tangent to y(t) as depicted in Fig. 5.1, case (c). The value of b0 then simply results from
    $$\displaystyle \begin{aligned} b_0 = \frac{K}{T} . \end{aligned} $$
    (5.3)
    The second option is to evaluate the step response at its onset, i.e., for t ≪ T. At its beginning, y(t) can be approximated by a linear response,
    $$\displaystyle \begin{aligned} y(t) \approx \frac{K}{T} \cdot t \cdot u_\infty = b_0 \cdot t \cdot u_\infty ,\quad 0 \le t \ll T ; \end{aligned}$$
    hence b0 can be computed from the normalized slope:
    $$\displaystyle \begin{aligned} b_0 = \frac{\varDelta y}{\varDelta t \cdot u_\infty} . \end{aligned} $$
    (5.4)
This can be extended to more complex plant dynamics, notably with second-order low-pass behavior, for which numerous identification methods exist to experimentally obtain their parameters. For ADRC, these can then be evaluated to compute b0.

5.1.2 Understanding b0 in Frequency Domain

Let us now turn to the frequency domain for a different interpretation of b0 and another option to extract it from experimentally obtained data. The plant model (3.​1) can, without the disturbance input, be given as a frequency-domain transfer function:
$$\displaystyle \begin{aligned} P(\mathrm{j}\omega) = \frac{y(\mathrm{j}\omega)}{u(\mathrm{j}\omega)} = \frac{ b_0 }{ (\mathrm{j}\omega)^N + a_{N - 1} \cdot (\mathrm{j}\omega)^{N - 1} + \ldots + a_1 \cdot \mathrm{j}\omega + a_0 } . {} \end{aligned} $$
(5.5)
For higher frequencies, the denominator polynomial becomes dominated by its highest order term, and one can approximate
$$\displaystyle \begin{aligned} \lim_{\omega \to \infty} \left| P(\mathrm{j}\omega) \right| \approx \left| \frac{ b_0 }{ (\mathrm{j}\omega)^N } \right| = \frac{ b_0 }{ \omega^N } . \end{aligned}$$
Solving this high-frequency approximation for its crossover frequency ωX leads us to a relation between ωX and b0:
$$\displaystyle \begin{aligned} \left| P(\mathrm{j}\omega_{\mathrm{X}}) \right| = 0\,\mathrm{dB} = 1 \quad \text{yields}\quad b_0 = \omega_{\mathrm{X}}^N \quad \text{or}\quad \omega_{\mathrm{X}} = \sqrt[N]{b_0} . {} \end{aligned} $$
(5.6)
If an Nth-order plant can be modeled by (5.5), b0 can therefore be found from a Bode magnitude plot of \(\left |P(\mathrm {j}\omega )\right |\) by approximating the upper-frequency range with an Nth-order integrator, i.e., a straight line. The 0 dB crossover frequency ωX of this approximation then gives b0 via (5.6). Various examples of first- and second-order plants with the same approximation to obtain b0 are shown in Fig. 5.2.

5.2 Closing the Loop: A Nominal Example

In a simple simulation example, which will serve as the nominal case of further examples studied in this chapter, a normalized, critically damped second-order plant with a transfer function \(P(s) = \frac {1}{s^2 + 2s + 1}\) shall be controlled. To do so, let us make use of the knowledge gained so far in the book and follow the “cooking recipe” for ADRC given on page 42:
1.
Plant modeling: From P(s) we obtain the plant order N = 2, which means we need a second-order ADRC. Recalling the examples in Table 3.​1, we also determine the critical gain parameter as b0 = 1.
 
2.
Controller tuning: Since we are not given certain design goals or restrictions, we arbitrarily select a bandwidth of 0.2 Hz, i.e., ωCL = 2π ⋅ 0.2 rad∕s for this example. According to (3.​21), this should result in a closed-loop settling time Tsettle,98% ≈ 5 s. The controller gains k1∕2 are then computed using the general design equation for bandwidth parameterization given by (3.​19) or through consulting Table A.​1.​1.
 
3.
Observer tuning: As a reasonable starting point, we select a relative observer bandwidth factor kESO = 5. To compute the observer gains l1∕2∕3, we put ωCL and kESO into the general design equation (3.​24) or once more refer to Table A.​1.​1.
 
4.
Implementation: In our model-based implementation, we use the state-space form of linear ADRC depicted in Fig. 3.​5. We refer to this form as “standard” ADRC, whenever contrasting it with other or modified forms. It is the origin of all variants and implementations covered in this book.
 
Let us conduct a first test run. Note that the control loop for our simulation example, shown in Fig. 5.3, now includes additional inputs to model the effect of disturbances at the plant input (usually “load disturbance,” d) and plant output (measurement noise, n). At time t = 0, a stepwise change of the reference signal r(t) from r = 0 to r = 1 occurs, followed by a stepwise change of the input disturbance d(t) from d = 0 to d = 0.5 at t = 10 s. 1
From the results shown in Fig. 5.4, one can nicely observe the closed-loop tracking behavior of y(t) exhibiting the desired settling time. After t = 10 s, the controller output includes the efforts required to compensate for the persisting input disturbance. Remember that the control law (3.​15) is \(u(t) = \frac {1}{b_0} \cdot \left ( k_1 \cdot r(t) - \begin {pmatrix} \boldsymbol {k}^{\mathrm {T}} & 1 \end {pmatrix} \cdot \hat {\boldsymbol {x}}(t) \right )\). It is therefore very interesting to monitor the observer state variables \(\hat {\boldsymbol {x}}^{\mathrm {T}}(t) = \begin {pmatrix} \hat {x}_1(t) & \hat {x}_2(t) & \hat {x}_3(t) \end {pmatrix}\), with \(\hat {x}_3(t)\) being the estimated total disturbance \(\hat {f}(t)\):
  • First phase, \(0\,\mathrm {s} \le t \lessapprox 5\,\mathrm {s}\): During the transient following the reference step, all estimated states contribute to the controller output u(t).
  • Second phase, \(5\,\mathrm {s} \lessapprox t < 10\,\mathrm {s}\): In the settled state, only the estimated total disturbance contributes to u(t), as \(r = y = \hat {x}_1\) and \(\hat {x}_2 = 0\). The state variable \(\hat {x}_3\) acts as the integrator state of this controller.
  • Third phase, 10 s ≤ t: When the input disturbance d = 0.5 becomes active at t = 10 s, \(\hat {x}_3(t)\) changes to include the estimated input disturbance, such that u(t) can compensate d(t).
We have now successfully applied a “cooking recipe” to implement and tune ADRC and gained insights into the role of the observer state variables during reference tracking and disturbance rejection. In the remainder of this chapter, we will build on this example several times to demonstrate the influence of ADRC’s tuning parameters and uncertainties to be expected in a not-so-well-known plant.
Please note that, in this nominal example, the closed loop is (approximately) only as slow or fast as the open-loop plant. This is a conscious decision on our side, as we will need some headroom to compare this design to faster ones and with other varying parameters.

5.3 The Role of ADRC’s Tuning Parameters

5.3.1 Preliminaries: The Gang of Six

Our focus in this chapter is to provide visual answers to “What happens (to the controller/control loop) if …” questions, in order to create some intuition for the tuning parameters, the abilities, and the limitations of ADRC.
A block diagram of the control loop from Fig. 5.3, now in its realizable transfer function representation introduced in Sect. 4.​2.​2, is provided in Fig. 5.5. When answering the “What happens if …” questions, the influence of the three possible input signals (reference r, load disturbance d, and measurement noise n) in Fig. 5.5 on both the controlled variable y and the controller output u will be of interest. We can give a compact representation of all possible transfer functions as follows, which are known as the gang of six:
$$\displaystyle \begin{aligned} \begin{pmatrix} y(s) \\ u(s) \end{pmatrix} = \begin{pmatrix} G_{\mathrm{yr}}(s) & G_{\mathrm{yd}}(s) & G_{\mathrm{yn}}(s) \\ G_{\mathrm{ur}}(s) & G_{\mathrm{ud}}(s) & G_{\mathrm{un}}(s) \end{pmatrix} \cdot \begin{pmatrix} r(s) \\ d(s) \\ n(s) \end{pmatrix}. {} \end{aligned} $$
(5.7)
The gang of six transfer functions can be computed from any transfer function representation of ADRC. Table 5.1 gives the gang of six in general form if the realizable representation from Sect. 4.​2.​2 is to be used. The particular transfer functions CFB(s), CPF(s), and CFF(s) have then to be inserted. In the remainder of this chapter, we will make use of the gang of six, showing some or all of these transfer functions in frequency domain (mostly as Bode magnitude plots) or time domain in the form of step responses.
Table 5.1
General form of the gang of six transfer functions for a control loop with a plant P(s) and continuous-time ADRC using the realizable transfer function implementation consisting of feedback controller CFB(s), reference signal prefilter CPF(s), and feedforward CFF(s). Note that we omitted “(s)” from these transfer functions in the table only for lack of space
 
From: r (reference signal)
From: d (disturbance)
From: n (noise)
To: y
\(\displaystyle G_{\mathrm {yr}}(s) = \frac {P \cdot \left ( C_{\mathrm {FF}} + C_{\mathrm {FB}} C_{\mathrm {PF}} \right )}{1 + P C_{\mathrm {FB}}}\)
\(\displaystyle G_{\mathrm {yd}}(s) = \frac {P}{1 + P C_{\mathrm {FB}}}\)
\(\displaystyle G_{\mathrm {yn}}(s) = \frac {1}{1 + P C_{\mathrm {FB}}}\)
To: u
\(\displaystyle G_{\mathrm {ur}}(s) = \frac {C_{\mathrm {FF}} + C_{\mathrm {FB}} C_{\mathrm {PF}}}{1 + P C_{\mathrm {FB}}}\)
\(\displaystyle G_{\mathrm {ud}}(s) = \frac {-P C_{\mathrm {FB}}}{1 + P C_{\mathrm {FB}}}\)
\(\displaystyle G_{\mathrm {un}}(s) = \frac {-C_{\mathrm {FB}}}{1 + P C_{\mathrm {FB}}}\)

5.3.2 On Bandwidth: Reference Tracking Versus Disturbance Rejection

As described in Sects. 3.​2.​1 and 3.​2.​2, the process of tuning ADRC involves parameterization of an outer state-feedback controller and of an observer at its core, the latter providing estimated states for both the state-feedback controller and disturbance rejection. Using the bandwidth parameterization approach, this task is reduced to choosing a closed-loop bandwidth ωCL and a relative bandwidth factor kESO for the observer.
In this section, we want to shed some light on the interplay of these two parameters and their impact on the tracking performance and disturbance rejection. We will do so with parameter sweeps of ωCL and kESO in second-order simulation examples for the normalized plant \(P(s) = \frac {1}{s^2 + 2s + 1}\) already introduced in Sect. 5.2. The default tuning and modeling parameters for ADRC with N = 2 in these examples remain the same with ωCL = 2π ⋅ 0.2 rad∕s and kESO = 5, as well as b0 = 1.
A first set of simulation results is shown in Fig. 5.6: reactions to reference signal and input disturbance steps, i.e., step responses of Gyr(s) and Gyd(s) from the gang of six. Clearly, increasing the bandwidth ωCL results in both improved tracking performance and better disturbance rejection at the same time. 2
A second set of examples presented in Fig. 5.7 fixes ωCL and varies kESO, i.e., only the observer speed. As visible from the step responses of Gyr(s), the tracking performance suffers and does not meet the desired design goals (settling time) if kESO is chosen significantly below kESO = 5. On the other hand, increasing kESO beyond the single-digit range does not endlessly improve the tracking performance, as the controller can obviously not do more than perfectly achieving the design goal. However, the impact of the input disturbance d(t) on the controlled variable y(t) is obviously reduced increasingly better with larger values of kESO.
What can we learn from these examples?
  • Tracking and rejection are both influenced by ωCL and kESO. This means that ADRC, as introduced in Chap. 3, does not allow for a true two-degrees-of-freedom (2DOF) design with separate goals for tracking and disturbance rejection. This impression could, however, have arisen earlier when we introduced the transfer function representation in Sect. 4.​2. Structurally, ADRC is a 2DOF controller, but the two design goals are intertwined in the tuning parameters. Note that this does not depend on a particular tuning approach, such as bandwidth parameterization. As can be seen in the coefficients of the transfer function representation in Appendix A.​2, all transfer functions depend on both controller and observer gains. Modifying these gains therefore affects the performance of reference tracking and disturbance rejection at the same time.
  • Is it possible yet to conclude on a best choice for ωCL and kESO? Harder, better, faster, stronger? The obvious benefits of increased bandwidth must be paid for with increased feedback gains, making the controller and observer more susceptible to measurement noise and stability problems. In Sect. 5.3.3 we will make this compromise much more apparent when analyzing the influence of the observer bandwidth in greater detail.

5.3.3 Influence of the Observer Bandwidth

Gang-of-Six Analysis

In Sect. 3.​1, we explicated the central role of the observer within ADRC. To somewhat decouple its tuning procedure from that of the controller, the tuning factor kESO was introduced within the bandwidth parameterization approach outlined in Sect. 3.​2.​2, determining the relative bandwidth of the observer compared to the closed control loop. Its influence on ADRC’s performance will be examined in the following. This will also help answering the question raised in Sect. 5.3.2: What are the downsides of using a large relative observer bandwidth kESO, when the benefits of doing so appear so obvious?
To provide a full picture of kESO’s influence on the closed loop dynamics, a frequency-domain analysis of the gang of six transfer functions will be performed, with a parameter sweep of kESO for each of the transfer functions. This will be once more exemplified based on the nominal example described in Sect. 5.2, i.e., for a normalized plant \(P(s) = \frac {1}{s^2 + 2s + 1}\) and second-order ADRC tuned with ωCL = 2π ⋅ 0.2 rad∕s, kESO = 5, and b0 = 1.
The results (Bode magnitude plots) are presented in Fig. 5.8. Note that the step responses previously shown in Fig. 5.7 are the time-domain counterparts of \(\left | G_{\mathrm {yr}}(\mathrm {j}\omega ) \right |\) and \(\left | G_{\mathrm {yd}}(\mathrm {j}\omega ) \right |\) in Fig. 5.8, which confirm the positive impact of increasing kESO values on achieving the desired closed-loop bandwidth and on rejecting low-frequency disturbances. The biggest price to be paid for these benefits can be seen from \(\left | G_{\mathrm {un}}(\mathrm {j}\omega ) \right |\): With increasing kESO, the controller output u will be increasingly susceptible to high-frequency disturbances.
We have not yet elaborated on the influence and treatment of measurement noise—this topic will be covered in Sect. 9.​3—but nonetheless hope all readers agree on our view by now that measurement noise will be inevitable in any practical setting. In the particular example of Fig. 5.8, increasing kESO from 5 to 25 (i.e., by a factor of 5) results in almost a 40 dB gain increase in \(\left | G_{\mathrm {un}}(\mathrm {j}\omega ) \right |\) for high frequencies. With kESO = 25, the noise level in the controller output would be larger by almost two orders of magnitude. In practical settings, this can be a hard restriction on the range of possible values for kESO, and this problem becomes worse with increasing ADRC order N.
The compromise one has to find between good tracking performance and low-frequency disturbance rejection on the one hand, and susceptibility to high-frequency disturbances on the other, is, of course, nothing new: “Sensitivity reduction at low frequency unavoidably leads to sensitivity increase at higher frequencies.” 3

Frequency-Domain Analysis of the Feedback Controller

As visible from Fig. 5.5, the feedback controller CFB(s) in the transfer function representation of ADRC plays a central role in stability, disturbance rejection, and susceptibility to measurement noise. The “what if” question in this section therefore is: What happens to the feedback controller CFB(s) if one increases or decreases the tuning parameter kESO? The visual answer is given in the form of Bode plots in Fig. 5.9 for the first- and second-order cases.
To interpret these Bode plots, recall the transfer functions for the first- and second-order ADRCs from (4.​22) in Sect. 4.​2:
$$\displaystyle \begin{aligned} C_{{\mathrm{FB,1}}}(s) = \frac{K_{\mathrm{I}}}{s} \cdot \frac{ 1 + \beta_1 s }{ 1 + \alpha_1 s } \quad \text{and}\quad C_{{\mathrm{FB,2}}}(s) = \frac{K_{\mathrm{I}}}{s} \cdot \frac{ 1 + \beta_1 s + \beta_2 s^2 }{ 1 + \alpha_1 s + \alpha_2 s^2 } . \end{aligned}$$
Obviously the CFB(s) transfer functions consists of an integrator \(\frac {K_{\mathrm {I}}}{s}\) in series with Nth-order lead-lag filters. From Fig. 5.9, one can recognize that the latter only act as lead filters, increasingly providing phase boost (not exactly) around ωCL for larger values of kESO. These feedback controllers are the “Type 2” and “Type 3” controllers, already mentioned in Sect. 4.​2.​1, which are, in turn, only special cases of PI and PID controllers with an additional first- or second-order low-pass filter, respectively. Note that the existence of this low-pass component can be attributed to the choice of using a full-order observer in the variants of ADRC considered in this book: The outer controller feeds back the estimated value \(\hat {y}\) of the plant output y, even though the latter is measured and could be used directly, leading to a reduced-order observer. Estimating \(\hat {y}\), on the other hand, comes with low-pass filter characteristics, which are beneficial for reducing the impact of measurement noise.
Let us now go into some more detail for first-order ADRC by putting the coefficients for bandwidth parameterization from Table A.​2.​2 in CFB,1(s):
https://static-content.springer.com/image/chp%3A10.1007%2F978-3-031-72687-3_5/MediaObjects/617308_1_En_5_Equ8_HTML.png
upper C Subscript upper F upper B comma 1 Baseline left parenthesis s right parenthesis equals ModifyingBelow StartFraction 1 Over b 0 EndFraction dot StartFraction k Subscript upper E upper S upper O Superscript 2 Baseline omega Subscript upper C upper L Superscript 2 Baseline Over 1 plus 2 k Subscript upper E upper S upper O Baseline EndFraction With bottom brace Underscript upper K Subscript normal upper I Baseline Endscripts dot StartFraction 1 Over s EndFraction dot StartFraction 1 plus ModifyingAbove StartFraction 2 plus k Subscript upper E upper S upper O Baseline Over k Subscript upper E upper S upper O Baseline omega Subscript upper C upper L Baseline EndFraction With top brace Overscript beta 1 equals 1 divided by omega Subscript normal upper Z Baseline Endscripts dot s Over 1 plus ModifyingBelow StartFraction 1 Over omega Subscript upper C upper L Baseline dot left parenthesis 1 plus 2 k Subscript upper E upper S upper O Baseline right parenthesis EndFraction With bottom brace Underscript alpha 1 equals 1 divided by omega Subscript normal upper P Baseline Endscripts dot s EndFraction period
(5.8)
It may become increasingly clear why we focus on analyzing the influence of kESO on CFB(s). Changing b0, as part of KI, merely moves the magnitude plots up or down, while changing ωCL moves the pole and zero frequencies ωP and ωZ to the left or the right. Both visually from Fig. 5.9 and analytically from (5.8), one can make the following observations regarding kESO:
  • As part of KI, increasing/decreasing kESO moves the magnitude plot up/down. For larger values of kESO, this approximately becomes a proportional influence:
    $$\displaystyle \begin{aligned} \lim_{k_{\mathrm{ESO}} \to \infty} K_{\mathrm{I}} = \lim_{k_{\mathrm{ESO}} \to \infty} \frac{1}{b_0} \cdot \frac{ k_{\mathrm{ESO}}^2 \omega_{\mathrm{CL}}^2 }{ 1 + 2 k_{\mathrm{ESO}} } = \frac{1}{b_0} \cdot \frac{ k_{\mathrm{ESO}} \omega_{\mathrm{CL}}^2 }{ 2 } . \end{aligned}$$
  • With increasing values of kESO, the angular frequency ωZ of the zero in CFB,1(s) converges to the closed-loop bandwidth ωCL:
    $$\displaystyle \begin{aligned} \lim_{k_{\mathrm{ESO}} \to \infty} \omega_{\mathrm{Z}} = \lim_{k_{\mathrm{ESO}} \to \infty} \frac{ k_{\mathrm{ESO}} \omega_{\mathrm{CL}} }{ 2 + k_{\mathrm{ESO}} } = \omega_{\mathrm{CL}} . \end{aligned}$$
  • With increasing values of kESO, the angular frequency ωP of the pole in CFB,1(s), i.e., the cutoff frequency of its low-pass filter component, goes to infinity:
    $$\displaystyle \begin{aligned} \lim_{k_{\mathrm{ESO}} \to \infty} \omega_{\mathrm{P}} = \lim_{k_{\mathrm{ESO}} \to \infty} \omega_{\mathrm{CL}} \cdot (1 + 2 k_{\mathrm{ESO}}) \to \infty . \end{aligned}$$
    Since the passband of the low-pass filter grows with kESO, the influence of high-frequency measurement noise on the controller output will increase—a behavior we could already spot in \(\left | G_{\mathrm {un}} \right |\) of Fig. 5.8.
We can summarize these observations by stating that, for kESO →, the feedback controller CFB,1(s) of LADRC would converge to a standard PI controller only consisting of an integrator and a zero at − ωCL. A similar analysis can be performed for the feedback controller component of second-order ADRC:
https://static-content.springer.com/image/chp%3A10.1007%2F978-3-031-72687-3_5/MediaObjects/617308_1_En_5_Equn_HTML.png
StartLayout 1st Row 1st Column upper C Subscript upper F upper B comma 2 Baseline left parenthesis s right parenthesis equals 2nd Column ModifyingBelow StartFraction 1 Over b 0 EndFraction dot StartFraction k Subscript upper E upper S upper O Superscript 3 Baseline omega Subscript upper C upper L Superscript 3 Baseline Over 1 plus 6 k Subscript upper E upper S upper O Baseline plus 3 k Subscript upper E upper S upper O Superscript 2 Baseline EndFraction With bottom brace Underscript upper K Subscript normal upper I Endscripts dot StartFraction 1 Over s EndFraction 2nd Row 1st Column Blank 2nd Column dot StartFraction 1 plus ModifyingAbove StartFraction 1 Over omega Subscript upper C upper L Baseline EndFraction dot left parenthesis StartFraction 3 Over k Subscript upper E upper S upper O Baseline EndFraction plus 2 right parenthesis With top brace Overscript beta 1 Endscripts dot s plus ModifyingAbove StartFraction 1 Over omega Subscript upper C upper L Superscript 2 Baseline EndFraction dot left parenthesis StartFraction 3 Over k Subscript upper E upper S upper O Superscript 2 Baseline EndFraction plus StartFraction 6 Over k Subscript upper E upper S upper O Baseline EndFraction plus 1 right parenthesis With top brace Overscript beta 2 Endscripts dot s squared Over 1 plus ModifyingBelow StartFraction 2 plus 3 k Subscript upper E upper S upper O Baseline Over omega Subscript upper C upper L Baseline dot left parenthesis 1 plus 6 k Subscript upper E upper S upper O Baseline plus 3 k Subscript upper E upper S upper O Superscript 2 Baseline right parenthesis EndFraction With bottom brace Underscript alpha 1 Endscripts dot s plus ModifyingBelow StartFraction 1 Over omega Subscript upper C upper L Superscript 2 Baseline dot left parenthesis 1 plus 6 k Subscript upper E upper S upper O Baseline plus 3 k Subscript upper E upper S upper O Superscript 2 Baseline right parenthesis EndFraction With bottom brace Underscript alpha 2 Endscripts dot s squared EndFraction period EndLayout
Similar to CFB,1(s), CFB,2(s) consists of an integrator and a lead-lag filter, this time of order 2. Solving the roots of the numerator and denominator polynomials of the latter gives a pair of conjugate complex poles sZ1∕2 (for the zeros) and sP1∕2 (for the poles):
$$\displaystyle \begin{aligned} s_{\mathrm{Z1/2}} = \frac{ k_{\mathrm{ESO}} \omega_{\mathrm{CL}} }{ 3 + 6 k_{\mathrm{ESO}} + k_{\mathrm{ESO}}^2 } \cdot \left[ -\left( \frac{3}{2} + k_{\mathrm{ESO}} \right) \pm \mathrm{j} \sqrt{ \frac{3}{4} + 3 k_{\mathrm{ESO}} } \right] ,\quad \text{and} \end{aligned}$$
$$\displaystyle \begin{aligned} s_{\mathrm{P1/2}} = \omega_{\mathrm{CL}} \cdot \left[ -\left( 1 + \frac{3}{2} k_{\mathrm{ESO}} \right) \pm \mathrm{j} \sqrt{ 3 k_{\mathrm{ESO}} + \frac{3}{4} k_{\mathrm{ESO}}^2 } \right] . \end{aligned}$$
As for the first-order case, the influence of kESO on the integrator gain and the position of zeros and poles of CFB,2(s) can now be analyzed:
  • Increasing or decreasing kESO moves the magnitude plot up or down. This influence converges to a linear one for large values of kESO:
    $$\displaystyle \begin{aligned} \lim_{k_{\mathrm{ESO}} \to \infty} K_{\mathrm{I}} = \lim_{k_{\mathrm{ESO}} \to \infty} \frac{1}{b_0} \cdot \frac{ k_{\mathrm{ESO}}^3 \omega_{\mathrm{CL}}^3 }{ 1 + 6 k_{\mathrm{ESO}} + 3 k_{\mathrm{ESO}}^2 } = \frac{1}{b_0} \cdot \frac{ k_{\mathrm{ESO}} \omega_{\mathrm{CL}}^3 }{ 2 } . \end{aligned}$$
  • With increasing values of kESO, the two zeros converge to a pair of real-valued zeros with a common angular frequency at the closed-loop bandwidth ωCL:
    $$\displaystyle \begin{aligned} \lim_{k_{\mathrm{ESO}} \to \infty} s_{\mathrm{Z1/2}} = -\omega_{\mathrm{CL}} . \end{aligned}$$
  • The poles sP1∕2 remain conjugate complex for increasing values of kESO, with an approximately constant damping ratio that starts at D ≈ 0.791 for kESO = 1 and relatively quickly converges to \(D = \sqrt {3/4} \approx 0.866\). 4 However, at the same time, the real part of sP1∕2 moves toward minus infinity. This means that high-frequency measurement noise will increasingly affect the controller output.
Summarizing these findings we can therefore conclude that the feedback controller CFB,2(s) of LADRC converges to a standard PID controller with kESO →.

5.3.4 Influence of the Critical Gain Parameter

In Sect. 3.​1, we have introduced b0 as the critical gain parameter—which is, besides the plant order N, the only modeling information required for ADRC. We have presented several ways to obtain b0 apart from a mathematical model in Sect. 5.1. But even if modeling efforts are largely reduced that way, what happens if one over- or underestimates b0?
As in Sect. 5.3.3, we want to give a visual answer to this question by applying a parameter sweep of b0 to the gang of six transfer functions. This will, again, be based on the nominal example from Sect. 5.2, i.e., for a normalized plant \(P(s) = \frac {1}{s^2 + 2s + 1}\) and second-order ADRC tuned with ωCL = 2π ⋅ 0.2 rad∕s and kESO = 5. The exact value of b0 is therefore b0 = 1.
Figure 5.10 contains the Bode magnitude plots of the gang of six and Fig. 5.11 selected time-domain step responses to complement their interpretation. We can summarize these results in two major takeaways:
  • Overestimating b0 will result in undermatching the desired bandwidth. This means that the tracking performance will suffer, and disturbances will be compensated more slowly.
  • Underestimating b0, on the other hand, will result in a more aggressively tuned controller. This could already be expected from the \(\frac {1}{b_0}\) gain factor in the feedback controller transfer function CFB(s). In the gang of six magnitude plots, one can recognize the effects of this: increased sensitivity of the controller output u to measurement noise n, and an increasingly pronounced resonance peak emerging in all closed-loop transfer functions. One can particularly well observe this in the time-domain step responses of the controller output u(t), where oscillations (in these examples roughly around 2 Hz) are increasingly dominating the response for significantly underestimated values of b0. Ultimately, severe underestimation of b0 will therefore result in instability.

5.4 Coping with Parametric and Structural Plant Uncertainties

In Sect. 5.3.4 we have already seen what happens if the estimated value of b0 does not match the actual value of the plant. However, plant dynamics are not only dependent on this single, lumped parameter—others were just discarded in the process of ADRC’s simplified plant modeling approach. Besides unexpected parameter changes, there may also be unmodeled dynamics in a plant—such as additional poles or zeros. To develop an intuition of how ADRC will handle such cases, we will perform a deeper analysis based on time-domain examples in two parts in the following.

5.4.1 Variation of Plant Parameters

One can view b0 as a lumped estimation of some of a plant’s parameters, cf. Table 3.​1. What happens if individual plant parameters diverge from this estimation, regardless of if they are part of b0?
Let us once more consider our normalized example from Sect. 5.2, a second-order plant \(P(s) = \frac {1}{s^2 + 2s + 1}\). As per Table 3.​1, this plant has a gain K = 1, damping D = 1, and time constant T = 1 s. We will now perform parameter sweeps, changing each of the plant’s parameters, and provide closed-loop step responses of Gyr(s) and Gur(s)—i.e., the controlled variable and the controller output. All simulations are performed with second-order ADRC tuned with fixed settings ωCL = 2π ⋅ 0.2 rad∕s, kESO = 5, and b0 = 1.
  • Varying plant gain K: As visible from Fig. 5.12, an increasing value of K has the same effect on the closed-loop step response of y(t), as the underestimation of b0 in Fig. 5.11. The effect on the controller output u(t) is different, of course, as its steady-state value now must cater to the varying plant gain. When the plant gain K exceeds the value assumed in b0, the control loop may ultimately become unstable. A reduced plant gain, on the other hand, will result in a closed-loop bandwidth that does not match the intended design.
  • Varying plant damping D: It is quite interesting to see in Fig. 5.13 that the control loop is relatively insensitive to changes of the plant damping D, even though this value was varied by a factor of five in both directions in these examples. The slowed-down, increasingly overshooting response for large values of D results from the large time constant emerging in the denominator of the plant transfer function: 1 + 2DTs + T2s2 = (1 + T1s) ⋅ (1 + T2s) for D > 1, with \(T_{\mathrm {1/2}} = \frac {T}{D \pm \sqrt {D^2 - 1}}\). For such heavily overdamped cases, it might be favorable to resort to first-order ADRC, focusing only on the larger time constant.
  • Varying plant time constant T: As visible from Fig. 5.14, the effect of a varying plant time constant ranges from oscillations for reduced values of T (ultimately, instability) to slowed-down, overshooting responses for larger values of T. Note that the range of examples chosen for T variations was reduced to a factor of 3 in both directions, since \(b_0 = \frac {K}{T^2}\), i.e., the time constant has a quadratic influence on the plant’s critical gain parameter.
In Sect. 3.​1 we started motivating the ingredients of ADRC by stating that unmodeled plant dynamics or parameter variations will be compensated by the estimated total disturbance—if the observer is fast enough. In the examples above we have clearly seen there are (even though reasonable) limits to this ability, at least when using a moderate observer bandwidth factor kESO = 5. Let us therefore briefly consider an obvious fix to this problem: speeding up the observer.
In Fig. 5.15 the largest deviations of D and T from Figs. 5.13 and 5.14 are picked up again, this time with increasing values of kESO. Going beyond the range considered in Sect. 5.3.3, kESO is increased up to a value of kESO = 50 in these examples. As can be seen, the resulting closed-loop step responses are brought back to the desired nominal response. Is increasing kESO the silver bullet? While looking like a great solution in theory, we already know the answer from Sect. 5.3.3: Increasing kESO beyond reasonable values will make the controller very susceptible to measurement noise and even more so for higher orders N. The maximum allowable observer bandwidth must therefore be individually found for each application.

5.4.2 Additional Plant Pole or Zero

Beyond unknown or varying parameters of a plant to be controlled, there will often also be unmodeled dynamics—i.e., there are more poles or zeros in the actual plant than considered when setting up the (coarse) model for ADRC. As an example, a process may exhibit a predominant second-order behavior, yet there are higher-order dynamics, such as a minor time constant introduced by a limited-bandwidth sensor.
What can one expect from the closed-loop behavior of ADRC when encountering such situations? We want to consider two scenarios, using—for the last time in this chapter— the nominal example introduced in Sect. 5.2.
  • Additional pole: In the first scenario, an additional (unknown) pole with a time constant TP is being added to the normalized plant from Sect. 5.2, i.e., plant P(s) now reads
    $$\displaystyle \begin{aligned} P(s) = \frac{1}{s^2 + 2 s + 1} \cdot \frac{1}{T_{\mathrm{P}} s + 1} . \end{aligned}$$
    As TP is assumed to be unknown when designing the controller, the plant is only modeled with N = 2 and b0 = 1. Figure 5.16 shows several examples with values of TP ranging up to TP = 1 s—quite a large range of values considered, as the plant will have three identical poles at in the latter case, yet is treated as a second-order plant. One can attest that this control loop is pretty insensitive to additional minor dynamics, supporting the initial claim of ADRC that a coarse model for the dominant dynamics indeed is a reasonable starting point in the process of designing the controller.
  • Additional zero: Secondly, the presence of an additional zero in the plant dynamics shall be examined. P(s) now reads
    $$\displaystyle \begin{aligned} P(s) = \frac{1}{s^2 + 2 s + 1} \cdot \frac{T_{\mathrm{Z}} s + 1}{1} = \frac{T_{\mathrm{Z}} s + 1}{s^2 + 2 s + 1} . \end{aligned}$$
    Again, the zero assumed to be unknown, the plant continues to be modeled with N = 2 and b0 = 1. In Fig. 5.17, the value of TZ is being varied between − 0.2 s and 0.2 s, i.e., in a range of ± 20 % of the plant time constant T. This covers zeros in both the left and the right half of the s-plane (LHP and RHP). The latter case, found in practice in non-minimum phase systems such as certain DC-DC converter topologies, can be recognized from the characteristic undershoot in the step response of the controlled variable. RHP zeros severely restrict the achievable bandwidth of a control system, and the effects seen in Fig. 5.17 are no exception to that. The control loop with a fixed controller design is much more tolerant to LHP than RHP zeros.
Open Access This chapter is licensed under the terms of the Creative Commons Attribution 4.0 International License (http://​creativecommons.​org/​licenses/​by/​4.​0/​), which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license and indicate if changes were made.
The images or other third party material in this chapter are included in the chapter's Creative Commons license, unless indicated otherwise in a credit line to the material. If material is not included in the chapter's Creative Commons license and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder.
Fußnoten
1
In this example, we will leave the second disturbance input n(t) = 0, as dealing with measurement noise is covered in a dedicated section later in this book—to be specific in Sect. 9.​3, after discrete-time ADRC implementations have been introduced.
 
2
Note that, since kESO = 5 is fixed in the examples of Fig. 5.7, the bandwidth of both controller and observer is increasing at the same relative pace.
 
3
Cf. Gunter Stein’s famous Bode Lecture “Respect the Unstable” at the 1989 IEEE Conference on Decision and Control.
 
4
This is a slightly underdamped design falling into a range very typical for the damping D of a second-order noise filter (\(D \in [1/\sqrt {2}, 1]\)).
 
Metadaten
Titel
Visual Tour
verfasst von
Gernot Herbst
Rafal Madonski
Copyright-Jahr
2025
DOI
https://doi.org/10.1007/978-3-031-72687-3_5