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. Edited by J. E. Marsden, L. Sirovich, and S. Wiggins. Interdisciplinary Applied Mathematics. Springer New York. https://doi.org/10.1007/978-1-4757-3108-8.

Remarks:

Franz’ open questions: