+++
title = "Dynamic error budgeting, a design approach"
author = ["Thomas Dehaeze"]
draft = false
+++

### Backlinks {#backlinks}

-   [Dynamic Error Budgeting]({{< relref "dynamic_error_budgeting" >}})

Tags
: [Dynamic Error Budgeting]({{< relref "dynamic_error_budgeting" >}})

Reference
: ([Monkhorst 2004](#org7d7f3f5))

Author(s)
: Monkhorst, W.

Year
: 2004


## Introduction {#introduction}

Challenge definition of this thesis:

> Develop a tool which enables the designer to account for stochastic disturbances during the design of a mechatronics system.

Develop tools should enable the designer to:

-   Predict the final performance level of a system which is subject to stochastic disturbances
-   Gain insight in performance limiting factors of the system.
    This insight should enable the designer to point out critical system components/properties and to improve the performance of the system
-   Objectively compare the performance of different system designs


## Dynamic Error Budgeting {#dynamic-error-budgeting}


### Motivations {#motivations}

Main motivations are:

-   Cutting costs in the design phase
-   Speeding up the design process
-   Enhancing design insight


### DEB design process {#deb-design-process}

Step by step, the process is as follows:

-   design a concept system
-   model the concept system, such that the closed loop transfer functions can be determined
-   Identify all significant disturbances.
    Model them with their _Power Spectral Density_
-   Define the performance outputs of the system and simulate the output error.
    Using the theory of _propagation_, the contribution of each disturbance to the output error can be analyzed and the critical disturbance can be pointed out
-   Make changes to the system that are expected to improve the performance level, and simulate the output error again.
    Iterate until the error budget is meet.


### Assumptions {#assumptions}

The assumptions when applying DEB are:

-   the system can be accurately described with a **linear time invariant model**.
    This is usually the case as much effort is put in to make systems have a linear behavior and because feedback loops have a " linearizing" effect on the closed loop behavior.
-   the disturbances action on the system must be **stationary** (their statistical properties are not allowed to change over time).
-   the disturbances are **uncorrelated** with each other.
    This is more difficult to satisfy for MIMO systems and the designer must make sure that the separate disturbances all originate from separate independent sources.
-   the disturbance signals are modeled by their **Power Spectral Density**.
    This implies that only stochastic disturbances are allowed.
    Deterministic components like sinusoidal and DC signals are infinite peaks in their PSD and should not be used.
    For the deterministic part, other techniques can be used to determine their influence to the error.
-   the calculation method makes no assumption on the distribution of the distribution functions of the disturbances.
    In practice, many disturbances will have a normal like distribution.


### \\(\mathcal{H}\_2\\) control, maximizing performance {#mathcal-h-2--control-maximizing-performance}


#### The \\(\mathcal{H}\_2\\) norm and variance of the output {#the--mathcal-h-2--norm-and-variance-of-the-output}

The \\(\mathcal{H}\_2\\) norm is a norm defined on a system:
\\[ \\|H\\|\_2^2 = \int\_{-\infty}^\infty |H(j2\pi f)|^2 df \\]

Stochastic interpretation of the \\(\mathcal{H}\_2\\) norm: the squared \\(\mathcal{H}\_2\\) norm can be interpreted as the output variance of a system with zero mean white noise input.


#### The \\(\mathcal{H}\_2\\) control problem {#the--mathcal-h-2--control-problem}

Find a controller \\(C\_{\mathcal{H}\_2}\\) which minimizes the \\(\mathcal{H}\_2\\) norm of the closed loop system \\(H\\):
\\[ C\_{\mathcal{H}\_2} \in \arg \min\_C \\|H\\|\_2 \\]


#### Using weighting filters to model disturbances {#using-weighting-filters-to-model-disturbances}

In order to synthesize an \\(\mathcal{H}\_2\\) controller that will minimize the output error, the total system including disturbances needs to be modeled as a system with zero mean white noise inputs.

This is done by using weighting filter \\(V\_w\\), of which the output signal has a PSD \\(S\_w(f)\\) when the input is zero mean white noise (Figure [1](#org7321040)).

<a id="org7321040"></a>

{{< figure src="/ox-hugo/monkhorst04_weighting_filter.png" caption="Figure 1: The use of a weighting filter \\(V\_w(f)\,[SI]\\) to give the weighted signal \\(\bar{w}(t)\\) a certain PSD \\(S\_w(f)\\)." >}}

The white noise input \\(w(t)\\) is dimensionless, and when the weighting filter has units [SI], the resulting weighted signal \\(\bar{w}(t)\\) has units [SI].
The PSD \\(S\_w(f)\\) of the weighted signal is:
\\[ |S\_w(f)| = V\_w(j 2 \pi f) V\_w^T(-j 2 \pi f) \\]

Given \\(S\_w(f)\\), \\(V\_w(f)\\) can be obtained using a technique called _spectral factorization_.
However, this can be avoided if the modelling of the disturbances is directly done in terms of weighting filters.

Output weighting filters can also be used to scale different outputs relative to each other (Figure [2](#orgea16f0b)).

<a id="orgea16f0b"></a>

{{< figure src="/ox-hugo/monkhorst04_general_weighted_plant.png" caption="Figure 2: The open loop system \\(\bar{G}\\) in series with the diagonal input weightin filter \\(V\_w\\) and diagonal output scaling iflter \\(W\_z\\) defining the generalized plant \\(G\\)" >}}


#### Output scaling and the Pareto curve {#output-scaling-and-the-pareto-curve}

In this research, the outputs of the closed loop system (Figure [3](#org95f6ca6)) are:

-   the performance (error) signal \\(e\\)
-   the controller output \\(u\\)

In this way, the designer can analyze how much control effort is used to achieve the performance level at the performance output.

<a id="org95f6ca6"></a>

{{< figure src="/ox-hugo/monkhorst04_closed_loop_H2.png" caption="Figure 3: The closed loop system with weighting filters included. The system has \\(n\\) disturbance inputs and two outputs: the error \\(e\\) and the control signal \\(u\\). The \\(\mathcal{H}\_2\\) minimized the \\(\mathcal{H}\_2\\) norm of this system." >}}

The resulting problem is a multi-objective control problem: while constraining the variance of the controller output \\(u\\), the variance of the performance channel should be minimized.
This problem can be solved by scaling the controller output \\(u\\) with a factor \\(\alpha\\) during the \\(\mathcal{H}\_2\\) synthesis.
When varying \\(\alpha\\), one can plot the amount of control effort at one axis and the achieve performance on the other axis.
The resulting points lie on the so-called **Pareto curve**.


## Conclusions {#conclusions}

\\(\mathcal{H}\_2\\) control strategy is an extension of the DEB approach.
It offers the designer the opportunity to optimize over the degree of freedom given by the controller, enabling the designer to predict the maximum achievable performance level of a system concept.
Using this technique, the designer is able to objectively compare the performance potential of different system concepts.

The accuracy of the predicted performance by DEB with respect to the measured results can be improved by using higher order models of the disturbances.
Increasing of order of the disturbance model might even allow modelling of harmonic disturbances by using inverse notches.
To achieve the highest degree of prediction accuracy, it is recommended to use to actual measured disturbance spectra in the simulations.

When an \\(\mathcal{H}\_2\\) controller is synthesized for a particular system, it can give the control designer useful hints about how to control the system best for optimal performance.
Drawbacks however are, that no robustness guarantees can be given and that the order of the \\(\mathcal{H}\_2\\) controller will generally be too high for implementation.


## Bibliography {#bibliography}

<a id="org7d7f3f5"></a>Monkhorst, Wouter. 2004. “Dynamic Error Budgeting, a Design Approach.” Delft University.
