Model Reference Control

Published

November 25, 2022

Modified

February 17, 2023

Abstract
This note derives the feedback control law for a nonlinear control-affine system that tracks the output of a linear reference system. This is the basis of linearizing loudspeaker drivers.

\[ \newcommand{\tuple}[1]{ #1 } \newcommand{\d}{\mathrm d} \newcommand{\tp}[1]{{#1}^{\mathrm T}} \]

Problem statement: We are given a control-affine, single-input-single-output, nonlinear system \[ \begin{align} \dot{x} &=f(x)+g(x)u\\ y &=h(x), \end{align} \tag{1}\] with state \(x\in\Omega\subset\mathbb R^n\), input \(u\in \mathbb R\), measurement \(y\in\mathbb R\), state dynamics \(f, g:\mathbb R^n\rightarrow\mathbb R^n\), and measurement function \(h:\mathbb R^n\rightarrow \mathbb R\), which are sufficiently smooth. Which input \(u\) makes the output \(y\) equal to the output \(y_m\) of a linear reference system \[ \begin{align} \dot{z} &=Az + br\\ y_m &= \tp{c} z, \end{align} \tag{2}\] with \(z,b\in \mathbb R^{n'}\), \(A\in\mathbb R^{n'\times n'}\), \(y_m, r\in\mathbb R\) and \(c\in \mathbb R^{n'}\)?

We can get an differential relationship between output \(y\) and input \(u\) by differentiating the output w.r.t. time \[ \begin{aligned} \dot y &= \frac{\d}{\d t}h(x) = \frac{\partial h(x)}{\partial x} \dot x\\ & = \frac{\partial h(x)}{\partial x}\left[f(x) + g(x)u\right]\\ & = L_fh(x) + L_gh(x)u. \end{aligned} \] Here, \(L_fh\) is the Lie or directional derivative of \(h\) along \(f\). If \(\forall x \in \Omega: L_gh(x) \neq 0\), we can express the input as a function of the derivative of the output as \[ u = \frac{1}{L_gh(x)}\left[\dot y - L_fh(x)\right]. \]

The desired output is \(y=y_m\), so \[ \dot y = \dot y_m = \tp{c}\dot z =\tp{c} Az + \tp{c} br, \tag{3}\] which allows us to compute the required input from the reference input and the states of both systems as \[ u(x, z, r) = \frac{1}{L_gh(x)}\left[- L_fh(x) + \tp c Az + \tp c br\right]. \]

In case that \(\forall x \in \Omega: L_gh(x) = 0\), we have that \(\dot y = L_fh(x)\). We can differentiate the output another time. In general, we have \[ y^{(n)} = L_f^nh(x) + L_gL_f^{n-1}h(x)u. \]

The number of times the output \(y\) has to be differentiated before the input \(u\) appears explicitly is an useful characteristic of the system.

Definition: The \(n\geq1\) for which \(\forall x\in\Omega\):

is called the relative degree of the system.

Remarks:

Example: For the linear system in Equation 2, we have \(f(x) = Ax\), \(g(x) = b\), \(h(x) = Cx\). If the system has relative degree \(\gamma'\), we get \[ \forall n < \gamma' - 1: L_g L_f^{n} h = \tp{c} A^{n} b = 0. \tag{4}\] Additionally, \(\forall n: L_f^{n} h = \tp{c} A^{n} x\). \(\square\)

Let’s assume that the relative degree \(\gamma\) of Equation 1 is well defined on \(\Omega\). Equation 3 for higher orders of differentiation is \[ y_m^{(n)} = \tp c A^nz + \tp c A^{n-1}br + \tp c A^{n-2}b\dot r + \dots + \tp cbr^{(n-1)}. \] If \(\gamma\) is smaller or equal than the relative degree \(\gamma'\) of Equation 2, then the derivative terms of \(r\) vanish due to Equation 4, so \[ y_m^{(\gamma)} = \tp c A^\gamma z + \tp c A^{\gamma-1}br. \] We thus find that the model-reference-tracking law is \[ u(x, z, r) = \frac{1}{L_gL_f^{\gamma-1}h(x)}\left[- L_f^{\gamma}h(x) + \tp c A^\gamma z + \tp c A^{\gamma-1}br\right], \tag{5}\] which is equivalent to equation 9.102 in Sastry (1999).

Sastry, Shankar. 1999. Nonlinear Systems. Interdisciplinary Applied Mathematics. New York, NY: Springer New York. https://doi.org/10.1007/978-1-4757-3108-8.

Remarks:

Franz’ open questions: