*Article* **Generalized Functional Observer for Descriptor Nonlinear Systems—A Takagi-Sugeno Approach**

**C. Ríos-Ruiz 1,2, G.-L. Osorio-Gordillo 1,\*, C.-M. Astorga-Zaragoza 1, M. Darouach 2, H. Souley-Ali <sup>2</sup> and J. Reyes-Reyes <sup>1</sup>**


**Abstract:** This paper concerns the design of a generalized functional observer for Takagi–Sugeno descriptor systems. Furthermore, a generalized structure is herein introduced for purposes of estimating linear functions of the states of descriptor nonlinear systems represented into a Takagi– Sugeno descriptor form. The originality of the functional generalized observer structure is that it provides additional degrees of freedom in the observer design, which allows for improvements in the estimation against parametric uncertainties. The effectiveness of the developed design is illustrated by a nonlinear model of a single link robotic arm with a flexible link. A comparison between the functional generalized observer and the functional proportional observer is given to demonstrate the observer performances.

**Keywords:** functional observers; Takagi–Sugeno systems; descriptor systems

**1. Introduction**

A functional observer is a dynamical system that is designed to estimate one or more functions of the system states. They can be viewed as a generalization of classical state observers. For instance, suppose that there exist *n* functions *z*1(*x*), ... , *zn*(*x*) to be estimated for an *n*-order system by using a functional observer, and each function is a different state *xi*, *i* = 1, ... , *n*, of an *n*-order system, i.e., *z*1(*x*) = *x*1, ... , *zn*(*x*) = *xn*, then a functional observer coincides with a full-order state observer. However, the main advantage of a functional observer is that when a specific function needs to be estimated, it may be easier than the standard approach. It may even be the case that the system does not need to be observable but only be functional observable [1,2]. A complete study about the existence and design of functional observers can be further explored in [3–5].

Numerous works in the literature can be found about applications of functional observers. For instance, in [6] a functional observer for fault-detection of linear timeinvariant systems which is designed to converge in a finite-time is proposed. In [7], a real-time implementation of a functional observer-based feedback controller is performed to control the position of a ball on a balancing table. The authors demonstrate that this task can be accomplished with only a minimum order functional observer. Their work clearly reflects the advantages to implementing functional observers compared to classical full-order state observers. Another interesting work where functional observers are used as a method to cope with unknown inputs (which can represent process uncertainties, sensor faults, communication problems or cyber-attacks) is presented in [8], where a functional observer is used to perform load frequency control for a complex power system.

The case of functional observers for descriptor systems has been discussed by several authors. For instance, in [9], the authors propose a functional observer for switched de-

**Citation:** Ríos-Ruiz, C.; Osorio-Gordillo, G.-L.; Astorga-Zaragoza, C.-M.; Darouach, M.; Souley-Ali, H.; Reyes-Reyes, J. Generalized Functional Observer for Descriptor Nonlinear Systems—A Takagi-Sugeno Approach. *Processes* **2023**, *11*, 1707. https://doi.org/ 10.3390/pr11061707

Academic Editor: Wen-Jer Chang

Received: 25 April 2023 Revised: 27 May 2023 Accepted: 27 May 2023 Published: 2 June 2023

**Copyright:** © 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https:// creativecommons.org/licenses/by/ 4.0/).

scriptor systems with Lipschitz nonlinearities. The observer is used for fault estimation purposes. Functional observers of various orders for continuous-time and discrete-time systems are treated in [10]. In [11], a finite-time functional observer for descriptor systems is presented and used for fault-tolerant control purposes. Recently, the authors in [12] presented a functional unknown input observer for linear descriptor systems with arbitrarily prescribed convergence time. The case of functional interval observers for switched descriptor systems is treated in [13].

Functional observers for Takagi–Sugeno systems are presented in [14], where the authors designed a functional observer for time-delayed systems. The effectiveness of the observer is evaluated for fault estimation in a truck-trailer system and fault detection of a permanent magnet DC motor. The case of stabilizing time-delay Takagi–Sugeno systems is presented by the same authors in a precedent paper [15]. Researchers in [16,17] present a parallel distributed compensation (PDC) feedback controller for Takagi–Sugeno systems. The approach is based on the capability of functional observers to estimate the unmeasured premise variables and/or the control law. A braking control of a suspended floater, the regulation of a power electronics converter and stabilization of a synchronous generator are used as case studies. Observer-based control for Wind Energy Centers (WEC) have been studied in [18,19].

The design of functional observers for Takagi–Sugeno descriptor systems represents the subject of this work. There exist some recent works about observer synthesis for Takagi– Sugeno descriptor systems. For instance, the authors in [20] present the design of a robust observer for Takagi–Sugeno descriptor systems with unmeasurable premise variables. The observer is used for sensor fault detection and isolation. Recently in [21], a Takagi–Sugeno observer for discrete nonlinear descriptor systems is designed. An extended Luenbergerlike structure is used for the observer synthesis. Unmeasured premise variables of the Takagi–Sugeno representation and unknown inputs are considered. In the work presented in [22], the authors reveal the design of a reduced-order observer for state estimation for Takagi–Sugeno descriptor systems with time delay. The observer is then used in an observer-based sliding control scheme in order to stabilize the system.

In this paper, a functional observer for Takagi–Sugeno descriptor systems is presented. This class of functional observers is interesting because, on one hand, systems represented in a Takagi–Sugeno descriptor form take advantage of the features of descriptor systems which cover a wide range of systems represented by dynamic and static equations such as hydraulic systems [23], mechanical systems [24], biomechanical systems [25], hydrogen generation [26] and electronic circuits [27]. On the other hand, the Takagi–Sugeno approach can be used to represent a wide class of nonlinear systems such as alcoholic fermentation reactors [28], steam generators of thermal power plants [29], nonlinear vehicle dynamics [30], glucose–insulin system [31] and so on. The ability to merge both classes of systems offers enormous potential for applications across a wide variety of fields.

The main contribution of this work is the presentation of a generalized functional observer for Takagi–Sugeno descriptor systems. All the sufficient and necessary conditions for its design are given. The main feature of this observer is to exploit the generalized observer structure to estimate linear functions of the states of descriptor nonlinear systems represented into a Takagi–Sugeno descriptor form. Another significant advantage of the proposed functional observer is its capability to directly estimate a linear stabilizing control law, instead of two subsystems that are used in a classical observer-based stabilization control: (1) the observer and (2) the controller. This can be particularly advantageous in systems where a stabilizing control law is required but where an estimation of the state is not. In these cases, a functional observer can be designed to directly estimate the control law. Another case is a system with a large number of states and a small number of inputs. Here, a functional minimum order observer can stabilize the system.

A non-linear model of a single link robotic arm with a flexible link [32] is used to illustrate the design procedure of the proposed observer. The performance capabilities of the generalized functional observer (GFO) are compared with a simple proportional observer (PO).

#### **2. Preliminaries**

In this section, the notations used in this paper are introduced. *A*<sup>+</sup> denotes the generalized inverse of *A* and verifies *AA*+*A* = *A*. The notation *E*<sup>⊥</sup> denotes a maximal row rank matrix such that *E*⊥*E* = 0. When *E* is a full row rank matrix, *E*⊥ = 0 by convention.

The number of local models *Ai*, and *Bi* depends on the scheduling variables, *κ* = 2*<sup>s</sup>* , where *s* is the number of scheduling variables. For systems with a high number of scheduling variables, the value of *κ* will rapidly increase, this can be a disadvantage for the calculus of the observers. Thus, this approach is suitable for nonlinear systems with a convenient-fordesign number of nonlinearities. There exist different T-S models that can be obtained from a nonlinear system, the way to select the appropriate T-S model is to take into account the variable states of the final transformed system, and those that are needed to be estimated by the observer.

Consider a Takagi–Sugeno descriptor system of the form:

$$E\dot{x}(t) = \sum\_{i=1}^{n} w\_i(t) \left( A\_i x(t) + B\_i u(t) \right) \tag{1}$$

$$y(t) = \mathbb{C}x(t)\tag{2}$$

$$z(t) = Lx(t) \tag{3}$$

where *<sup>x</sup>*(*t*) <sup>∈</sup> <sup>R</sup>*<sup>n</sup>* is the semi-state of the system, *<sup>u</sup>*(*t*) <sup>∈</sup> <sup>R</sup>*<sup>m</sup>* is the input vector and *<sup>y</sup>*(*t*) <sup>∈</sup> <sup>R</sup>*<sup>p</sup>* is the measured output of the system. *<sup>z</sup>*(*t*) <sup>∈</sup> <sup>R</sup>*<sup>q</sup>* is a linear function of the state to be estimated.

*wi*(*t*) are membership functions formed with *<sup>ρ</sup>* <sup>∈</sup> <sup>R</sup>*<sup>s</sup>* scheduled variables, which can depend on states, inputs, measured variables or other exogenous variables of the system. The membership functions have the following properties:

$$\sum\_{i=1}^{k} w\_i(t) = 1, \quad w\_i(t) \ge 0 \tag{4}$$

for *i* = 1, ... , *κ* = 2*<sup>s</sup>* . Matrices *<sup>E</sup>* <sup>∈</sup> <sup>R</sup>*n*×*n*, *Ai* <sup>∈</sup> <sup>R</sup>*n*×*n*, *Bi* <sup>∈</sup> <sup>R</sup>*n*×*m*, *<sup>C</sup>* <sup>∈</sup> <sup>R</sup>*p*×*<sup>n</sup>* and *<sup>L</sup>* <sup>∈</sup> <sup>R</sup>*q*×*<sup>n</sup>* are assumed known.

**Assumption 1** ([4])**.** *The triplet* (*C*, *E*, *Ai*) *is partially impulse observable with respect to matrix L if the following equivalent statements hold*

$$\begin{aligned} \textit{i.} \qquad \mathtt{rank}\begin{bmatrix} E & A\_i \\ 0 & \mathbb{C} \\ 0 & E \\ 0 & L \end{bmatrix} &= \mathtt{rank}\begin{bmatrix} E & A\_i \\ 0 & \mathbb{C} \\ 0 & E \end{bmatrix} \\ \textit{ii.} \qquad \mathtt{rank}\begin{bmatrix} L \\ E \\ E^\perp A\_i \\ \mathbb{C} \end{bmatrix} &= \mathtt{rank}\begin{bmatrix} E \\ E^\perp A\_i \\ \mathbb{C} \end{bmatrix}, \quad \forall i = 1, \ldots, \infty \end{aligned}$$

Partial impulse observability allows us to estimate the function *z*(*t*) by using only the available output. It is important to note that the observer must correctly estimate the function of the state, even in the presence of impulsive behavior of the descriptor system, thus the importance of this lemma.

The following Lemma will be used later in this paper.

**Lemma 1** ([33])**.** *Let matrices* B *and* Q *be given. The following statements are equivalent: 1. There exists a matrix* X *satisfying*

$$\mathcal{B}\mathcal{X} + (\mathcal{B}\mathcal{X})^T + \mathcal{Q} < 0$$

*2. The following condition holds*

$$\mathcal{B}^{\perp} \mathcal{Q} \mathcal{B}^{\perp \top} < 0$$

*Suppose the above statements hold and assume that* B⊥B > 0*. Then matrix* X *in statement 1 is given by*

$$\mathcal{X} = -\gamma \mathcal{B}^{\top} + \sqrt{\gamma} \mathcal{L} \Gamma^{1/2}$$

*where* L *is any matrix such that* ||L|| < 1 *and γ* > 0 *is any scalar such that*

$$
\Gamma = \gamma \mathcal{B} \mathcal{B}^T - \mathcal{Q} > 0
$$

#### **3. Problem Statement**

Consider the following generalized functional observer (GFO) of the form

$$\dot{\zeta}(t) = \sum\_{i=1}^{n} w\_i(t) \left( N\_i \zeta(t) + f\_i v(t) + F\_i y(t) + H\_i u(t) \right) \tag{5}$$

$$\dot{\upsilon}(t) = \sum\_{i=1}^{k} w\_i(t) \left( S\_i \tilde{\upsilon}(t) + G\_i \upsilon(t) + M\_i y(t) \right) \tag{6}$$

$$\dot{z}(t) = \sum\_{i=1}^{k} w\_i(t) \left( P\_i \zeta(t) + Q\_i y(t) \right) \tag{7}$$

where *<sup>ζ</sup>*(*t*) <sup>∈</sup> <sup>R</sup>*q*<sup>0</sup> is the state of the observer, *<sup>v</sup>*(*t*) <sup>∈</sup> <sup>R</sup>*q*<sup>1</sup> is an auxiliary vector and *<sup>z</sup>*ˆ(*t*) <sup>∈</sup> <sup>R</sup>*<sup>q</sup>* is the estimate of *<sup>z</sup>*(*t*). *Ni* <sup>∈</sup> <sup>R</sup>*q*0×*q*<sup>0</sup> , *Ji* <sup>∈</sup> <sup>R</sup>*q*0×*q*<sup>1</sup> , *Fi* <sup>∈</sup> <sup>R</sup>*q*0×*p*, *Hi* <sup>∈</sup> <sup>R</sup>*q*0×*m*, *Si* <sup>∈</sup> <sup>R</sup>*q*1×*q*<sup>0</sup> , *Gi* <sup>∈</sup> <sup>R</sup>*q*1×*q*<sup>1</sup> , *Mi* <sup>∈</sup> <sup>R</sup>*q*1×*p*, *Pi* <sup>∈</sup> <sup>R</sup>*q*×*q*<sup>0</sup> and *Qi* <sup>∈</sup> <sup>R</sup>*q*×*<sup>p</sup>* are constant matrices of appropriate dimensions to be determined such that lim *<sup>t</sup>*→∞(*z*ˆ(*t*) <sup>−</sup> *<sup>z</sup>*(*t*)) <sup>=</sup> 0. Equation (5) is the generalized form of the observer, Equation (6) is an auxiliary vector that is used to give more degrees of liberty, finally, Equation (7) makes it possible to design an observer with *q*<sup>0</sup> = *q*.

Consider a parameter matrix *<sup>T</sup>* <sup>∈</sup> <sup>R</sup>*q*0×*<sup>n</sup>* and define the transformed error vector

$$
\varepsilon(t) = \zeta(t) - TE\mathfrak{x}(t) \tag{8}
$$

whose derivative is given by

$$\dot{\varepsilon}(t) = \sum\_{i=1}^{k} w\_i(t) \left( N\_i \zeta(t) + f\_i v(t) + (F\_i \mathbb{C} - T A\_i) x(t) + (H\_i - T B\_i) u(t) \right) \tag{9}$$

replacing *ζ*(*t*) from Equation (8) in Equation (9).

$$\dot{\varepsilon}(t) = \sum\_{i=1}^{n} w\_i(t) \left( N\_i \varepsilon(t) + f\_i v(t) + (N\_i TE + F\_i \mathbb{C} - TA\_i) x(t) + (H\_i - TB\_i) u(t) \right) \tag{10}$$

By using the definition of *ζ*(*t*), Equations (6) and (7) can be rewritten as

$$\dot{\boldsymbol{w}}(t) = \sum\_{i=1}^{k} \boldsymbol{w}\_{i}(t) \left( \mathbf{S}\_{i}\boldsymbol{\varepsilon}(t) + \mathbf{G}\_{i}\boldsymbol{v}(t) + (\mathbf{S}\_{i}TE + M\_{i}\mathbf{C})\mathbf{x}(t) \right) \tag{11}$$

and also

$$\dot{z}(t) = \sum\_{i=1}^{\kappa} w\_i(t) \left( P\_i \varepsilon(t) + (P\_i TE + Q\_i \mathbb{C}) x(t) \right) \tag{12}$$

By considering that the following conditions

$$N\_i T E + F\_i \mathbb{C} - T A\_i = 0 \tag{13}$$

$$H\_{\bar{l}} = TB\_{\bar{l}} \tag{14}$$

$$S\_i T E + M\_i \mathcal{C} = 0 \tag{15}$$

$$P\_i TE + Q\_i \mathbb{C} = L \tag{16}$$

∀*i* = 1, . . . , *κ* are verified, then Equations (10) and (11) become

$$\dot{\varepsilon}(t) = \sum\_{i=1}^{k} w\_i(t) \left( N\_i \varepsilon(t) + f\_i v(t) \right) \tag{17}$$

$$\psi(t) = \sum\_{i=1}^{k} w\_i(t) \left( S\_i \varepsilon(t) + G\_i v(t) \right) \tag{18}$$

and, from Equation (12) we obtain

$$z(t) - z(t) = e\_z(t) = \sum\_{i=1}^{k} w\_i(t) \left( P\_i \varepsilon(t) \right) \tag{19}$$

By defining an augmented state vector *<sup>σ</sup>*(*t*) = *ε*(*t*) *v*(*t*) <sup>∈</sup> <sup>R</sup>*q*0+*q*<sup>1</sup> , Equations (17) and (18) can be rewritten as:

$$\sigma(t) = \sum\_{i=1}^{k} w\_i(t) \left( \mathbb{A}\_i \sigma(t) \right) \tag{20}$$

where A*<sup>i</sup>* = *Ni Ji Si Gi* <sup>∈</sup> <sup>R</sup>(*q*0+*q*1)×(*q*0+*q*1). It can be seen that, if matrix <sup>A</sup>*<sup>i</sup>* is Hurwitz, then lim *<sup>t</sup>*→<sup>∞</sup> *<sup>ε</sup>*(*t*) = 0 and lim*t*→<sup>∞</sup> *ez*(*t*) = 0.

#### **4. Observer Parameterization**

In this section, a specific structure for the observer matrices is determined.

Define matrices Γ = *E C* <sup>∈</sup> <sup>R</sup>(*n*+*p*)×*<sup>n</sup>* and *<sup>R</sup>* <sup>∈</sup> <sup>R</sup>*q*0×*n*, which is a full row rank matrix, such that rank *R* Γ <sup>=</sup> rank(Γ). In this case there always exists two matrices *<sup>T</sup>* <sup>∈</sup> <sup>R</sup>*q*0×*<sup>n</sup>* and *<sup>K</sup>* <sup>∈</sup> <sup>R</sup>*q*0×*<sup>p</sup>* such that,

$$TE + K\mathbb{C} = R\tag{21}$$

which can be rewritten as

$$\begin{bmatrix} T & K \end{bmatrix} \Gamma = \mathcal{R} \tag{22}$$

the general solution for Equation (22) is

$$\begin{bmatrix} T & K \end{bmatrix} = R\Gamma^{+} - Z\left(I\_{n+p} - \Gamma\Gamma^{+}\right) \tag{23}$$

which can be decomposed as

$$T = T\_1 - Z\_1 T\_2 \tag{24}$$

$$K = K\_1 - Z\_1 K\_2 \tag{25}$$

where *<sup>Z</sup>*<sup>1</sup> <sup>∈</sup> <sup>R</sup>*q*0×(*n*+*p*) is a matrix with arbitrary elements, and *<sup>T</sup>*<sup>1</sup> <sup>=</sup> *<sup>R</sup>*Γ<sup>+</sup> *In* 0 , *T*<sup>2</sup> = *In*+*<sup>p</sup>* <sup>−</sup> ΓΓ+ *In* 0 , *K*<sup>1</sup> = *R*Γ<sup>+</sup> 0 *Ip* , and *K*<sup>2</sup> = *In*+*<sup>p</sup>* <sup>−</sup> ΓΓ+ 0 *Ip* . *R* 

Now, we define matrix Σ = *C* <sup>∈</sup> <sup>R</sup>(*q*0+*p*)×*n*. Replacing *TE* from Equation (21), in condition (13) we obtain

$$N\_i(R - KC) + F\_i C = TA\_i \tag{26}$$

which can be written as

$$\begin{bmatrix} \mathbb{N}\_{i} & \mathbb{K}\_{i} \end{bmatrix} \Sigma = T \mathbb{A}\_{i} \tag{27}$$

where *<sup>K</sup>*˜*<sup>i</sup>* <sup>=</sup> *Fi* <sup>−</sup> *NiK* <sup>∈</sup> <sup>R</sup>*q*0×*p*. The necessary and sufficient condition for the existence of a solution to Equation (27) is

$$\mathsf{rank}\begin{bmatrix}\Sigma\\TA\_{i}\end{bmatrix} = \mathsf{rank}(\Sigma)$$

the general solution to Equation (27) is

$$\begin{bmatrix} N\_i & \mathcal{K}\_i \end{bmatrix} = T A\_i \Sigma^+ - Y\_{i1} (I\_{q\_0 + p} - \Sigma \Sigma^+) \tag{28}$$

if we replace Equation (24) in Equation (28), we obtain

$$N\_{\rm i} = N\_{\rm i1} - Z\_1 N\_{\rm i2} - Y\_{\rm i1} N\_{\rm i3} \tag{29}$$

$$\mathcal{R}\_{i} = \mathcal{R}\_{i1} - Z\_1 \mathcal{R}\_{i2} - \mathcal{Y}\_{i1} \mathcal{R}\_3 \tag{30}$$

where *Yi*<sup>1</sup> <sup>∈</sup> <sup>R</sup>*q*0×(*q*0+*p*) is a matrix with arbitrary elements, and *Ni*<sup>1</sup> <sup>=</sup> *<sup>T</sup>*1*Ai*Σ<sup>+</sup> *Iq*0 0 , *Ni*<sup>2</sup> = *T*2*Ai*Σ *Iq*0 0 , *<sup>N</sup>*<sup>3</sup> = (*Iq*0+*<sup>p</sup>* <sup>−</sup> ΣΣ+) *Iq*0 0 , *K*˜*i*<sup>1</sup> = *T*1*Ai*Σ<sup>+</sup> 0 *Ip* , *K*˜*i*<sup>2</sup> = *T*2*Ai*Σ<sup>+</sup> 0 *Ip* , *<sup>K</sup>*˜3 = (*Iq*0+*<sup>p</sup>* <sup>−</sup> ΣΣ+) 0 *Ip* .

From the definition of *K*˜*<sup>i</sup>* we can deduce matrix *Fi* as

$$\begin{split} F\_{i} &= \mathcal{R}\_{i} + N\_{i}K \\ &= \mathcal{R}\_{i1} + N\_{i1}K - Z\_{1}(\mathcal{R}\_{i2} - N\_{i2}K) - Y\_{i1}(\mathcal{R}\_{3} - N\_{3}K) \\ &= F\_{i1} - Z\_{1}F\_{i2} - Y\_{i1}F\_{3} \end{split} \tag{31}$$

where *Fi*<sup>1</sup> = *T*1*Ai*Σ<sup>+</sup> *K Ip* , *Fi*<sup>2</sup> = *T*2*Ai*Σ<sup>+</sup> *K Ip* , *<sup>F</sup>*<sup>3</sup> = (*Iq*0+*<sup>p</sup>* <sup>−</sup> ΣΣ+) *K Ip* . From Equation (22), we have

$$
\begin{bmatrix} TE \\ C \end{bmatrix} = \begin{bmatrix} I\_{\mathbb{q}\_0} & -K \\ 0 & I\_p \end{bmatrix} \Sigma \tag{32}
$$

Conditions (15) and (16) can be written as

$$
\begin{bmatrix} S\_i & M\_i \\ P\_i & Q\_i \end{bmatrix} \begin{bmatrix} TE \\ \mathbb{C} \end{bmatrix} = \begin{bmatrix} 0 \\ L \end{bmatrix} \tag{33}
$$

replacing Equation (32) into (33), we obtain

$$
\begin{bmatrix} S\_i & M\_i \\ P\_i & Q\_i \end{bmatrix} \begin{bmatrix} I\_{q\_0} & -K \\ 0 & I\_p \end{bmatrix} \Sigma = \begin{bmatrix} 0 \\ L \end{bmatrix} \tag{34}
$$

since *Iq*<sup>0</sup> −*K* 0 *Ip* <sup>−</sup><sup>1</sup> = *Iq*<sup>0</sup> *K* 0 *Ip* the general solution of Equation (34) is given by

$$
\begin{bmatrix} S\_i & M\_i \\ P\_i & Q\_i \end{bmatrix} = \left( \begin{bmatrix} 0 \\ L \end{bmatrix} \Sigma^+ - Y\_i (I\_{q\_0 + p} - \Sigma \Sigma^+) \right) \begin{bmatrix} I\_{q\_0} & K \\ 0 & I\_p \end{bmatrix} \tag{35}
$$

where *Yi* = *Yi*<sup>2</sup> *Yi*<sup>3</sup> <sup>∈</sup> <sup>R</sup>(*q*1+*q*)×(*q*0+*p*) is a matrix with arbitrary elements. The solutions for *Si*, *Mi*, *Pi* and *Qi* are given by

$$S\_i = -Y\_{i2}N\_3\tag{36}$$

$$M\_{\rm i} = -Y\_{\rm i2} F\_3 \tag{37}$$

$$P\_{\overline{1}} = P\_1 - \mathcal{Y}\_{\overline{1}\overline{3}}N\_{\overline{3}} \tag{38}$$

$$Q\_i = Q\_1 - \chi\_{i3} F\_3 \tag{39}$$

where *Yi*<sup>2</sup> <sup>∈</sup> <sup>R</sup>*q*1×(*q*0+*p*), *Yi*<sup>3</sup> <sup>∈</sup> <sup>R</sup>*q*×(*q*0+*p*), *<sup>P</sup>*<sup>1</sup> <sup>=</sup> *<sup>L</sup>*Σ<sup>+</sup> *Iq*0 0 , *Q*<sup>1</sup> = *L*Σ<sup>+</sup> *K Ip* .

The estimation error (19) shows that *ez*(*t*) → 0 while *ε*(*t*) → 0, so then, the function estimation error *ez*(*t*) does not depend on the choice of matrix *P*. Then, for simplicity we can assume that *Yi*<sup>3</sup> = 0, so *Pi* = *P*<sup>1</sup> and *Qi* = *Q*1, being now, constant matrices *P* and *Q*.

Now, by using Equations (29) and (36), the error dynamics (20) can be rewritten as

$$
\sigma(t) = \sum\_{i=1}^{k} w\_i(t) \left( \mathbb{A}\_{i1} - \mathbb{Y}\_i \mathbb{A}\_2 \right) \sigma(t) \tag{40}
$$

where A1*i*<sup>=</sup> *Ni*<sup>1</sup> − *Z*1*Ni*<sup>2</sup> 0 0 0 <sup>∈</sup> <sup>R</sup>(*q*0+*q*1)×(*q*0+*q*1), <sup>Y</sup>*<sup>i</sup>* <sup>=</sup> *Yi*<sup>1</sup> *Ji Yi*<sup>2</sup> *Gi* <sup>∈</sup> <sup>R</sup>(*q*0+*q*1)×(*q*0+*q*1+*p*) and A<sup>2</sup> = *N*<sup>3</sup> 0 0 −*Iq*<sup>1</sup> <sup>∈</sup> <sup>R</sup>(*q*0+*q*1+*p*)×(*q*0+*q*1).

The problem of the design is to find matrices <sup>Y</sup>*<sup>i</sup>* and *<sup>Z</sup>*<sup>1</sup> such that matrix <sup>A</sup>*<sup>i</sup>* <sup>=</sup> <sup>A</sup>*i*<sup>1</sup> <sup>−</sup> Y*i*A<sup>2</sup> is Hurwitz. This can be reached by using the linear matrix inequality (LMI) approach.

#### **5. Functional Observer Design**

**Theorem 1.** *There exist parameter matrices* Y*<sup>i</sup> and <sup>Z</sup>*<sup>1</sup> *such that error dynamic system* (40) *is asymptotically stable if there exists a matrix*

$$X = X^T = \begin{bmatrix} X\_1 & X\_1 \\ X\_1 & X\_2 \end{bmatrix} > 0,$$

*such that the following LMI is satisfied:*

$$\left(N\_3^{T\perp}\left(N\_{i1}^T X\_1 + X\_1 N\_{i1} - N\_{i2}^T W^T - W N\_{i2}\right) N\_3^{T\perp T} < 0\tag{41}$$

*where Z*<sup>1</sup> = *X*−<sup>1</sup> <sup>1</sup> *W and matrix* <sup>Y</sup>*<sup>i</sup> can be determined as follows*

$$\mathbb{T}\mathbb{Y}\_{i} = -\mathbb{X}^{-1}(-\gamma \mathcal{B}^{T} + \sqrt{\gamma} \mathcal{L} \Omega\_{i}^{1/2})^{T} \tag{42}$$

*where*

$$
\Omega \Omega\_i = \gamma \mathcal{B} \mathcal{B}^T - \mathcal{Q}\_i > 0 \tag{43}
$$

*with*

$$\begin{aligned} \mathcal{Q}\_i &= \begin{bmatrix} X\_1(N\_{i1} - Z\_1N\_{i2}) + (N\_{i1} - ZN\_{i2})^T X\_1 & (N\_{i1} - Z\_1N\_{i2})^T X\_1 \\ X\_1(N\_{i1} - Z\_1N\_{i2}) & 0 \end{bmatrix}, \\ \mathcal{B} &= \begin{bmatrix} N\_3^T & 0 \\ 0 & -I \end{bmatrix} \end{aligned}$$

*and matrix* L *is any matrix such that* ||L|| < 1 *and γ* > 0 *is any scalar such that* Ω*<sup>i</sup>* > 0*.*

**Proof.** Consider the following Lyapunov function candidate

$$V(\sigma(\mathbf{t})) = \sigma(\mathbf{t})^T \mathbf{X} \sigma(\mathbf{t}) \tag{44}$$

which derivative is given by

$$\dot{V}(\sigma(t)) = \sigma(t)^T \Big[ \left( \mathbb{A}\_{i1} - \mathbb{Y}\_i \mathbb{A}\_2 \right)^T \mathcal{X} + X \left( \mathbb{A}\_{i1} - \mathbb{Y}\_i \mathbb{A}\_2 \right) \Big] \sigma(t) \tag{45}$$

The asymptotic stability of Equation (40) is guaranteed only if *V*˙ (*σ*(*t*)) < 0, this leads to the following LMI

$$\mathbb{A}\_{i1}^T X - \mathbb{A}\_2^T \mathbb{Y}\_i^T X + X \mathbb{A}\_{i1} - X \mathbb{Y}\_i \mathbb{A}\_2 < 0 \tag{46}$$

which can be rewritten as

$$\mathcal{Q}\_i + \mathcal{B}\mathcal{X}\_i + (\mathcal{B}\mathcal{X}\_i)^T < 0 \tag{47}$$

where <sup>X</sup>*<sup>i</sup>* <sup>=</sup> <sup>−</sup>Y*<sup>T</sup> <sup>i</sup> <sup>X</sup>*, <sup>Q</sup>*<sup>i</sup>* <sup>=</sup> *<sup>X</sup>*A*i*<sup>1</sup> <sup>+</sup> <sup>A</sup>*<sup>T</sup> <sup>i</sup>*1*<sup>X</sup>* and <sup>B</sup> <sup>=</sup> <sup>A</sup>*<sup>T</sup>* <sup>2</sup> . According to Lemma 1, there exists a matrix X*<sup>i</sup>* satisfying Equation (47) if and only if the following condition holds.

$$\mathcal{B}^{\perp} \mathcal{Q}\_i \mathcal{B}^{\perp T} < 0 \tag{48}$$

with <sup>B</sup><sup>⊥</sup> <sup>=</sup> *NT*<sup>⊥</sup> <sup>3</sup> 0 ! . By using the definitions of *X*, Q*<sup>i</sup>* and *W* = *X*1*Z*1, we obtain Equation (41). Matrix Y*<sup>i</sup>* is obtained from Equation (42).

The following Algorithm 1 summarizes the observer design to obtain the corresponding matrices.



5. Compute all the matrices gains of the observer (5) by using (29) to determinate *Ni*, (42) to determinate *Ji* and *Gi*, (36)–(39) to find *Si*, *Mi*, *Pi* and *Qi* taking matrix *Yi*<sup>3</sup> = 0. *Fi* is given by (31) and matrix *Hi* could be determined with Equation (14).

#### **6. Proportional Functional Observer Case**

In order to obtain a Proportional Functional Observer (PFO) from the GFO, it corresponds to the parameter matrices *Si* = 0, *Ji* = 0, *Mi* = 0 and *Gi* = 0 which generates the following observer [34]:

$$\begin{aligned} \dot{\zeta}(t) &= \sum\_{i=1}^{\kappa} w\_i(t) \left( N\_i \zeta(t) + F\_i y(t) + H\_i u(t) \right) \\ \mathcal{Z}(t) &= \sum\_{i=1}^{\kappa} w\_i(t) \left( P\_i \zeta(t) + Q\_i y(t) \right) \end{aligned} \tag{49}$$

and the error dynamics (20) becomes

$$\dot{\varepsilon}(t) = \sum\_{i=1}^{k} w\_i(t) \left( \tilde{\mathbb{A}}\_{i1} - \tilde{\mathbb{Y}}\_i \tilde{\mathbb{A}}\_2 \right) \varepsilon(t) \tag{50}$$

where <sup>A</sup>˜ *<sup>i</sup>*<sup>1</sup> <sup>=</sup> *Ni*<sup>1</sup> <sup>−</sup> *<sup>Z</sup>*1*Ni*2, <sup>Y</sup>˜ *<sup>i</sup>* <sup>=</sup> *Yi*<sup>1</sup> and <sup>A</sup>˜ <sup>2</sup> <sup>=</sup> *<sup>N</sup>*3. Matrices <sup>Q</sup>*i*, <sup>B</sup> and <sup>X</sup>*<sup>i</sup>* of Theorem 1 become:

$$\begin{array}{l} \mathcal{Q}\_{i} = X(N\_{i1} - Z\_{1}N\_{i2}) + (N\_{i1} - Z\_{1}N\_{i2})^{T}X, \\ \mathcal{B} = N\_{3'}^{T} \\ \mathcal{X}\_{i} = -Y\_{i1}^{T}X \end{array}$$

The observer matrices can be obtained following Algorithm 1.

#### **7. Mathematical Model**

The mathematical model chosen to show the performance of the generalized observer is a linear-rotational vibration system with an uncertainty in one of the spring rigidity values (see Figure 1).

**Figure 1.** Single link robot arm.

The robot has the following nonlinear model:

$$\begin{aligned} m\_2 p\_1(t) &= -k\_2 p\_1(t) - \beta\_2 p\_1(t) - k\_1 (p\_2(t) - p\_1(t)) \\ l\_m \theta(t) &= -m\_1 g l\_1 \sin(\theta(t)) + l\_3 k\_1 (p\_1(t) - \beta\_1 \theta(t) - p\_2(t)) \cos(\theta(t)) - l\_2 \cos(\theta(t)) u(t) \\ p\_2(t) &= l\_3 \sin(\theta(t)) \end{aligned} \tag{51}$$

The measurable states are

$$\begin{cases} y\_1(t) = p\_1(t) \\ y\_2(t) = \theta(t) \end{cases} \tag{52}$$

The parameters considered are given in Table 1.

**Table 1.** Parameters of model.


Taking as the states the position of *m*<sup>1</sup> *x*1(*t*) = *p*1(*t*), the linear speed of *m*<sup>1</sup> *x*2(*t*) = *p*˙ <sup>1</sup>(*t*), the angle of the lever *x*3(*t*) = *θ*(*t*), the angular speed of the lever *x*4(*t*) = ˙ *θ*(*t*), and the position of the lever *x*5(*t*) = *p*2(*t*), we can represent the nonlinear model (51) as follows:

$$E\dot{x}(t) = A(x(t))x(t) + B(x(t))u(t)\tag{53}$$

$$y(t) = \mathbb{C}x(t)\tag{54}$$

where *x*(*t*) is the semi-state vector *x*(*t*) = *x*1(*t*) *x*2(*t*) *x*3(*t*) *x*4(*t*) *x*5(*t*) ! , *u*(*t*) is the force input, and *A*(*x*(*t*)), *B*(*x*(*t*)) are matrices containing nonlinear terms depending on the state variables. *E* is a singular constant matrix given as:

$$E = \begin{bmatrix} 1 & 0 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 & 0 \\ 0 & 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 & 0 \end{bmatrix} \tag{55}$$

and *C* is a constant matrix

$$\mathbf{C} = \begin{bmatrix} 1 & 0 & 0 & 0 & 0 \\ 0 & 0 & 1 & 0 & 0 \end{bmatrix} \tag{56}$$

The variable terms presented in matrices *A*(*x*(*t*)), *B*(*x*(*t*)) from the nonlinear model (51) are highlighted in boxes in Equations (57) and (58)

$$\begin{array}{c} A\left(x(t)\right) = \\\\ \begin{bmatrix} 0 & 1 & 0 & 0 & 0\\ \frac{k\_2 - k\_1}{m\_2} & -\frac{\hat{\rho}\_2}{m\_2} & 0 & 0 & -\frac{\hat{k}\_2}{m\_2} \\ 0 & 0 & 0 & 1 & 0\\ \frac{l\_3 k\_2}{\mu} \boxed{\cos\left(x\_3(t)\right)} & 0 & -\frac{m\_3 l\_1 \left[\sin\left(x\_3(t)\right)\right]}{\mu\_3 \left(t\right)} & -\frac{\hat{\rho}\_1}{\mu\_n} - \frac{l\_3 k\_2}{\mu\_n} \boxed{\cos\left(x\_3(t)\right)}\\ 0 & 0 & l\_3 \left[\frac{\sin\left(x\_3(t)\right)}{x\_3(t)}\right] & 0 & -1 \end{bmatrix} \tag{57} \\\\ B\left(x(t)\right) = \begin{bmatrix} 0\\ 0\\ -\frac{l\_3}{\mu\_n} \boxed{\cos\left(x\_3(t)\right)}\\ 0 \end{bmatrix} \tag{58} \\\\ \end{array} \tag{58}$$

Considering the *s* = 2 scheduling variables as

$$\rho\_1(t) = \frac{\sin(\mathfrak{x}\_3(t))}{\mathfrak{x}\_3(t)}\tag{59}$$

$$\rho\_2(t) = \cos(\mathfrak{x}\_3(t))\tag{60}$$

each variable has behavior limits depending on the variation of the input and the states.

Since there are two scheduling variables, then four weighting functions are obtained:

$$\eta\_0^1(t) = \frac{\overline{\rho\_1} - \rho\_1(t)}{\overline{\rho\_1} - \underline{\rho\_1}} \tag{61}$$

$$
\eta\_1^1(t) = 1 - \eta\_0^1(t) \tag{62}
$$

$$
\eta\_0^2(t) = \frac{\overline{\rho\_2} - \rho\_2(t)}{\overline{\alpha\_2} - \alpha\_2} \tag{63}
$$

$$\begin{aligned} \rho\_1^2(t) &= \frac{\overline{\rho\_2} - \underline{\rho\_2}}{\overline{\rho\_0}} \\ \eta\_1^2(t) &= 1 - \eta\_0^2(t) \end{aligned} \tag{64}$$

$$
\eta\_1^2(t) = 1 - \eta\_0^2(t) \tag{64}
$$

where *ρ<sup>j</sup>* and *ρ<sup>j</sup>* are the upper and lower limit of variation of *ρj*(*t*), respectively, for all *j* = 1, 2.

In this case *s* = 2, therefore there are *κ* = 22 = 4 membership functions, as:

$$w\_1(t) = \eta\_0^1 \eta\_0^2\tag{65}$$

$$w\_2(t) = \eta\_1^1 \eta\_0^2\tag{66}$$

$$w\_3(t) = \eta\_0^1 \eta\_1^2\tag{67}$$

$$w\_4(t) = \eta\_1^1 \eta\_1^2\tag{68}$$

Once the fuzzy sets are defined, the Takagi–Sugeno model has four rules. For each rule, there is a linear local model of the form:

$$E\dot{x}(t) = A\_i x(t) + B\_i u(t), \quad \forall i = 1, \ldots, \kappa = 2^s \tag{69}$$

For example, the first rule (65) corresponds to *ρ*<sup>1</sup> = *ρ*<sup>1</sup> and *ρ*<sup>2</sup> = *ρ*<sup>2</sup> then, lower limits are directly replaced by the nonlinear terms in matrices *A*(*x*(*t*)) and *B*(*x*(*t*)), resulting in the following local model:

$$E\dot{x}(t) = A\_1 x(t) + B\_1 u(t) \tag{70}$$

$$\text{where } A\_1 = \begin{bmatrix} 0 & 1 & 0 & 0 & 0 \\ \frac{k\_2 - k\_1}{m\_2} - \frac{\beta\_2}{m\_2} & 0 & 0 & -\frac{k\_2}{m\_2} \\ 0 & 0 & 0 & 1 & 0 \\ \frac{l\_3 k\_2}{f\_m} \underline{\rho}\_2 & 0 & -\frac{m\_3 \underline{\rho}\_1}{f\_m} \underline{\rho}\_1 - \frac{\beta\_1}{f\_m} - \frac{l\_3 k\_2}{f\_m} \underline{\rho}\_2 \\ 0 & 0 & l\_3 \underline{\rho}\_1 & 0 & -1 \end{bmatrix}, B\_1 = \begin{bmatrix} 0 \\ 0 \\ 0 \\ -\frac{l\_2}{m} \underline{\rho}\_2 \\ 0 \underline{E} \underline{q} \end{bmatrix} \text{ and matrix } E \text{ is defined by} \\ \text{in defined by} \\ \text{in (55)}$$

in (55).

The Takagi–Sugeno model that reproduces the dynamics of the nonlinear model is given by:

$$\begin{aligned} E\dot{x}(t) &= (w\_1(t)A\_1 + w\_2(t)A\_2 + w\_3(t)A\_3 + w\_4(t)A\_4)x(t) + \\ &\quad (w\_1(t)B\_1 + w\_2(t)B\_2 + w\_3(t)B\_3 + w\_4(t)B\_4)u(t) \end{aligned}$$

where

$$\begin{aligned} A\_1 &= A(\underline{\rho\_{1'}}\underline{\rho\_2}), & B\_1 &= B\_2 = B(\underline{\rho\_2}), \\ A\_2 &= A(\overline{\rho\_{1'}}\underline{\rho\_2}), & B\_3 &= B\_4 = B(\overline{\rho\_2}), \\ A\_3 &= A(\underline{\rho\_{1'}}\overline{\rho\_2}), & A\_4 &= A(\overline{\rho\_{1'}}\overline{\rho\_2}) \end{aligned}$$

The Takagi–Sugeno model of the single link robot arm is

$$E\dot{x}(t) = \sum\_{i=1}^{k} w\_i(t)(A\_i x(t) + B\_i u(t))\tag{71}$$

$$y(t) = \mathbb{C}x(t)\tag{72}$$

Considering a constant input as *u*(1) = 1*N*, we can obtain the variation level of *x*3(*t*) that allows us to determine the maximum and minimum of variation of *ρ*1(*t*) and *ρ*2(*t*), to finally obtain the local matrices for the T-S model as:

$$\begin{aligned} \begin{aligned} \; ^0A\_1 &= \begin{bmatrix} 0 & 1 & 0 & 0 & 0 \\ -3.67 & -0.67 & 0 & 0 & 1.67 \\ 0 & 0 & 0 & 1 & 0 \\ 0 & 0 & -0.22 & 0 & -1 \end{bmatrix} , \; ^0A\_2 &= \begin{bmatrix} 0 & 1 & 0 & 0 & 0 \\ -3.67 & -0.67 & 0 & 0 & 1.67 \\ 0 & 0 & 0 & 1 & 0 \\ 0 & 0 & -54.22 & -12.35 & 0 \\ 0 & 0 & 0.1 & 0 & -1 \end{bmatrix} \\\ ^0A\_3 &= \begin{bmatrix} 0 & 1 & 0 & 0 & 0 \\ -3.67 & -0.67 & 0 & 0 & 1.67 \\ 0 & 0 & 0 & 1 & 0 \\ 0 & 0 & -12.35 & -3.30 & -1 \end{bmatrix} \\\ ^0B\_1 &= \begin{bmatrix} 0 \\ 0 \\ 0 \\ 0 \end{bmatrix}, \; ^0B\_3 = B\_4 = \begin{bmatrix} 0 \\ 0 \\ 0 \\ 0 \end{bmatrix} \end{aligned}$$

and matrix *C* is given in (56).

#### **8. Results**

By following Algorithm 1, a Generalized Functional Observer can be designed. The matrix *L* was chosen in order to estimate the non-measurable state of the system.

> 01000 00010

*L* = 00001 Considering matrix *R* = 01000 01010 <sup>10001</sup> , the matrix gains for the GFO are: *N*<sup>1</sup> = *N*<sup>2</sup> = ⎡ ⎢ ⎢ ⎣ −25.62 7.53 5.7 7.33 −11.11 −51.58 −1.32 −2.54 −7.75 −0.18 −50.92 −0.12 −9.27 0.88 −0.88 −51.08 ⎤ ⎥ ⎥ ⎦, *<sup>N</sup>*<sup>3</sup> <sup>=</sup> *<sup>N</sup>*<sup>4</sup> <sup>=</sup> ⎡ ⎢ ⎢ ⎣ −25.62 7.3 5.61 8.09 −11.11 −51.8 −1.38 −4.57 −9.27 −0.44 −51.02 −0.79 −9.27 2.95 −0.04 −50.81 ⎤ ⎥ ⎥ ⎦, *J*<sup>1</sup> = *J*<sup>2</sup> = ⎡ ⎢ ⎢ ⎣ 8.79 8.79 8.79 1.78 1.78 1.78 1.56 1.56 1.56 1.63 1.63 1.63 ⎤ ⎥ ⎥ ⎦, *<sup>J</sup>*<sup>3</sup> <sup>=</sup> *<sup>J</sup>*<sup>4</sup> <sup>=</sup> ⎡ ⎢ ⎢ ⎣ 8.54 8.54 8.54 1.83 1.83 1.83 1.51 1.51 1.51 1.52 1.52 1.52 ⎤ ⎥ ⎥ ⎦, *<sup>F</sup>*<sup>1</sup> <sup>=</sup> ⎡ ⎢ ⎢ ⎣ 570.55 381.86 −2544.23 −57.2 42.8 −1974.86 159.49 −20.02 ⎤ ⎥ ⎥ ⎦, *<sup>F</sup>*<sup>2</sup> <sup>=</sup> ⎡ ⎢ ⎢ ⎣ 570.55 382.74 −2544.23 −57.71 42.8 −1908.72 159.49 −26.19 ⎤ ⎥ ⎥ ⎦, *F*<sup>3</sup> = ⎡ ⎢ ⎢ ⎣ 539.06 370.16 −2558.75 −62.38 25.45 −1975.59 368.69 58.01 ⎤ ⎥ ⎥ ⎦, *<sup>F</sup>*<sup>4</sup> <sup>=</sup> ⎡ ⎢ ⎢ ⎣ 539.06 371.14 −2558.75 −63.13 25.45 −1909.9 368.69 51.88 ⎤ ⎥ ⎥ ⎦, *<sup>S</sup>*<sup>1</sup> <sup>=</sup> *<sup>S</sup>*<sup>2</sup> <sup>=</sup> *<sup>S</sup>*<sup>3</sup> <sup>=</sup> *<sup>S</sup>*<sup>4</sup> <sup>=</sup> ⎡ ⎣ 9.91 0 0 0 9.91 0 0 0 9.91 0 0 0 ⎤ ⎦, *H*<sup>1</sup> = *H*<sup>2</sup> = ⎡ ⎢ ⎢ ⎣ 0 −18.23 0 0 ⎤ ⎥ ⎥ ⎦, *H*<sup>3</sup> = *H*<sup>4</sup> = ⎡ ⎢ ⎢ ⎣ 0 0 0 0 ⎤ ⎥ ⎥ ⎦, *<sup>G</sup>*<sup>1</sup> <sup>=</sup> *<sup>G</sup>*<sup>2</sup> <sup>=</sup> ⎡ ⎣ −29.2 3.5 3.5 3.5 −29.2 3.5 3.5 3.5 −29.2 ⎤ ⎦, *G*<sup>3</sup> = *G*<sup>4</sup> = ⎡ ⎣ −29.15 3.55 3.55 3.55 −29.15 3.55 3.55 3.55 −29.15 ⎤ ⎦, *M*<sup>1</sup> = *M*<sup>2</sup> = ⎡ ⎣ −74.55 −56.51 −74.55 −56.51 −74.55 −56.51 ⎤ ⎦, *M*<sup>3</sup> = *M*<sup>4</sup> = ⎡ ⎣ −72.34 −55.56 −72.34 −55.56 −72.34 −55.56 ⎤ ⎦, *P* = ⎡ ⎣ 0100 0010 0001 ⎤ ⎦, *Q* = ⎡ ⎣ 51.14 1.38 0.44 38.67 −2.95 0.04 ⎤ ⎦. In order to compare the performance of the GFO, a PFO is also designed as a particular

case. Considering matrix *R* = 01000 01010 <sup>10001</sup> , the matrix gains for the PFO are:

$$\begin{aligned} \begin{bmatrix} N\_1 - N\_2 \\ N\_1 - N\_2 \end{bmatrix} &= \begin{bmatrix} 0 & 0.9 & 0 & 0 \\ -1.83 & -0.5 & 0 & 0.96 \\ 1.92 & 0 & -0.5 & -1.01 \\ 0 & -0.56 & 1.01 & -0.5 \end{bmatrix}, N\_3 - N\_4 - \begin{bmatrix} 0 & 0.5 & 0 & 0 \\ -1.83 & -0.5 & 0 & 0.96 \\ 0 & 0 & -0.5 & 0 \\ 0 & -0.96 & 0 & -0.5 \end{bmatrix}, \\\ F\_1 &= \begin{bmatrix} -0.08 & 0 \\ -2.36 & -0.49 \\ 1.72 & -47.48 \\ -0.19 & -11.48 \end{bmatrix}, F\_2 = \begin{bmatrix} -0.08 & 0 \\ -2.36 & -0.99 \\ 1.72 & 18.95 \\ -0.19 & -11.31 \end{bmatrix}, F\_3 = \begin{bmatrix} -0.08 & 0 \\ -2.36 & 0.11 \\ 0 & -48.3 \\ -0.19 & 0.05 \end{bmatrix}, F\_4 = \begin{bmatrix} -0.08 & 0 \\ -2.36 & -0.02 \\ 0 & 17.49 \\ -0.19 & -0.01 \end{bmatrix}, \\\ H\_1 &= H\_2 - \begin{bmatrix} 0 \\ 0 \\ -18.24 \\ 0 \end{bmatrix}, H\_3 - H\_4 - \begin{bmatrix} 0 \\ 0 \\ 0 \\ 0 \end{bmatrix}, P = \begin{bmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \end{bmatrix}, Q = \begin{bmatrix} -0.17 & 0 \\ 0 & -11.85 \\ 0.56 & -1.01 \end{bmatrix}. \end{aligned}$$

Considering a constant unit step input *u*(*t*) = 1*N* and, just in simulation, an additive parameter variation of the rigidity coefficient of spring 2, given as *k*<sup>2</sup> + *δ*(*t*), where *δ*(*t*) is presented in Figure 2. It is important to note that the generalized approach to the functional observer allows it to have different matrices as degrees of freedom as well as some robustness to parametric uncertainties. These uncertainties may come as a variation in the parameter values due to different physical processes, and may or may not be timevariant. In this example, we choose a time-varying uncertainty with a sinusoidal form. The generalized observer is capable of estimating the function *z*(*t*) with minor impact on performance.

**Figure 2.** Parametric uncertainty.

This parameter variation allows us to observe the robustness characteristics of the GFO compared with a simplest observer structure as the PFO.

The simulation is realized taking the input and output of the nonlinear system (53) and (54) in face to parametric uncertainty of Figure 2, the T-S system of (71) and (72) is just used for the observer design. Considering the initial conditions for the nonlinear system as *x*(0) = *<sup>π</sup>* <sup>12</sup> <sup>0</sup> *<sup>π</sup>* <sup>6</sup> 0 0.09! and the initial condition for both observers as *ζ*(0) = 0 and *v*(0) = 0, the results of the simulation are shown in Figures 3–5.

**Figure 3.** *x*2(*t*) and its estimates.

**Figure 4.** *x*4(*t*) and its estimates.

**Figure 5.** *x*5(*t*) and its estimates.

As can be seen in Figures 3–5, the generalized observer is capable of estimating the state of the system even in the presence of parametric uncertainties. This presents an advantage compared to the classical proportional observers. The comparison between the performance of the genrealized observer and the Proportional observer is conducted through the error indexes which provide important information about the estimation error. For the case of a parametric uncertainty, the generalized approach outperforms the classical proportional observer. The error indexes of the Integral of the Absolute Error (IAE) and the Integral of the Time weighted Absolute Error (ITAE) are shown in Table 2.

From Table 2, it can be seen that the proposed GFO exhibits better performance in comparison to the proportional observer. The generalized approach allows a better estimation of the function when parametric uncertainties are present in the system.


**Table 2.** Error indexes.

#### **9. Conclusions**

In this paper, a method for function estimation based on generalized observer for descriptor Takagi–Sugeno systems is presented. A function estimation can be used for two main objectives: The first, and used in the simulation example presented herein, is the estimation of the non-measurable states that could be considered as a reducer order observer, although an even smaller number of states could be estimated, given that the impulse functional observability presented in Assumption 1, is satisfied. The second objective for the function estimation is to estimate a control law based on the states without the need to estimate the states independently, but rather the function directly. The design and conditions of existence of the proposed observer were provided through a stability analysis based on Lyapunov. An example of a physical system was used to provide a comparison of the GFO with a PFO, both in the presence of parametric uncertainties. This paper can be extended in future works to include fault estimation, time delays, or to estimate a fault-tolerant control law. The descriptor approach of this paper can be used in future work since it is a powerful tool for representing a large number of mathematical systems.

**Author Contributions:** Conceptualization, C.R.-R., G.-L.O.-G. and M.D.; methodology, C.R.-R., G.-L.O.-G. and C.-M.A.-Z.; software, C.R.-R. and H.S.-A.; validation, C.R.-R., H.S.-A. and J.R.-R.; formal analysis, C.R.-R., G.-L.O.-G. and M.D.; investigation, C.R.-R., M.D. and C.-M.A.-Z.; writing—original draft preparation, C.R.-R., G.-L.O.-G. and H.S.-A.; writing—review and editing, C.R.-R., G.-L.O.-G., C.-M.A.-Z., M.D., H.S.-A. and J.R.-R.; supervision, G.-L.O.-G., C.-M.A.-Z. and M.D. All authors have read and agreed to the published version of the manuscript.

**Funding:** This research received no external funding.

**Institutional Review Board Statement:** Not applicable.

**Informed Consent Statement:** Not applicable.

**Data Availability Statement:** Not applicable.

**Acknowledgments:** The development of this project is the product of the support provided by the National Council of Science and Technology (CONACYT), the National Technological Institute of Mexico (TecNM)/CENIDET.

**Conflicts of Interest:** The authors declare no conflict of interest.

#### **References**


**Disclaimer/Publisher's Note:** The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

#### MDPI

St. Alban-Anlage 66 4052 Basel Switzerland Tel. +41 61 683 77 34 Fax +41 61 302 89 18 www.mdpi.com

*Processes* Editorial Office E-mail: processes@mdpi.com www.mdpi.com/journal/processes

Academic Open Access Publishing

www.mdpi.com ISBN 978-3-0365-8045-6