scidecatoki

Publication

F. R. López-Estrada, D. Theilliol, C. Astorga-Zaragoza, J-C Ponsart, 2012. Developments of a scilab/matlab toolbox dedicated to lti/lpv descriptor systems for fault diagnosis. In: 10th European Workshop on Advanced Control and Diagnosis, ACD 2012. Copenhagen, Denmark.

Download Toolbox

http://atoms.scilab.org/toolboxes/DeCaToKi

Or install direct from ATOMS, for MATLAB version request by email in the comments section

1 Introduction

Many systems can be modeled with nonlinear differential equations, however the design of monitoring and control systems are a difficult task for this kind of representation. For this reason, it is very common that nonlinear systems are linearized to obtain Linear Time Invariant (LTI) systems, but this representation is valid around one equilibrium or operation point.

One way to improve the model representation is to include some restrictions. If the restrictions are part of the model, then the system becomes into a descriptor-LTI (DLTI) representation. The main advantage of DLTI systems is the integration of static relationships (e.g. physical restraints) and dynamical relationships. These considerations allow to model a wide range of processes, e.g. electrical, mechanical and hydraulics applications were studied in [1, 2].

Sufficient conditions for the existence of a Luenberger observer were given in [3, 4]. The authors in [5] presented a reduced order unknown input observed similar to the observers for LTI systems that were studied in [6]. A proportional-integral unknown input observer (PIUIO) was proposed in [7], and it was extended to fault detection application in [8], applied to a three machine infinite bus system.

This paper presents a compilation of some methodologies for stability analysis, observer design and, fault detection on systems in descriptor form, from LTI extended to linear parameter varying (LPV). The main contribution is to propose a tool that can be used in the analysis of DLTI. Design full and reduced order observers with known and unknown inputs, e.g Luenberger, proportional with unknown inputs (P-UIO) and proportional-integral with unknown inputs (PI-UIO). Some of these observers were extended to the LPV case. For this case, some functions based on the gain scheduling approach are presented. The main difference of this toolbox as compared to others, for instance, the one in [9], is the presence of functions for observer desing and fault detection (FD).

This paper is organized as follows. Some definitions about descriptor systems are presented in Section II. The description of the toolbox and its main functions are presented in Section III. Some examples using the toolbox are given in Section IV for DLTI and Section V for DLPV. Finally some conclusions are discussed in section VI.

2 Descriptor Linear Time-Invariant Systems

Let us consider in a first step a descriptor linear time-invariant (DLTI) system defined as

Importants Links

Eẋ(t)

y(t)

= Ax(t) + Bu(t)

= Cx(t)

(1)

where A, E ∈ ℝn × n, B ∈ ℝn × m, and C ∈ ℝp × n are known matrices with appropriate dimension. x ∈ ℝn, u ∈ ℝm, y ∈ ℝp are the state vector, the control input and, the measured output respectively.

When unknown inputs are considered the system becomes

Eẋ(t)

y(t)

= Ax(t) + Bu(t) + Rd(t)

= Cx(t)

(2)

where R ∈ ℝn × r is a known matrix of appropriate dimension and d(t) ∈ ℝr the unknown input vector.

The main difference among LTI and descriptor LTI (DLTI) systems, is that matrix E of (2↑) is singular and therefore non-invertible. Two of the most important properties are the solvability and the regularity. If these properties hold, a singular system can be converted to Kronecker-Weistrauss restricted system equivalence form (r.s.e). In this form some properties like controllability, observability and stability are easier to determine.

The regularity is related to the invertibility of the pair pencil (E, A). In [10] the regularity is defined as The system (2↑) is called regular if there exists a scalar γ such thatdet(γEA) ≠ 0 or equivalently, the polynomial det(sEA) is not identically zero. In this case the matrix pair (E, A), or the matrix pencil sEA is regular. \enddefn Solvability is defined as the existence of a unique solution for any given sufficiently differentiable u(t) and any given admissible initial conditions corresponding to the given u(t). [11] The matricial relationship (E, A) is solvable if and only if |sEA| ≠ 0, or equivalently if there exists an scalar λ ∈ ℂ such that |λEA| ≠ 0.

If the system is regular, then the following hold: \enddefn [12] Two systems (E, A, B, C) and ( , , ) are defined as equivalent, or restricted systems equivalent (r.s.e.), if their order, number of inputs and outputs are equal and there exist two non singular matrices P and Q such that = PEQ, = PAQ, = PB, = CQ. Where

(3)

PEQ

PAQ

= ⎡

= ⎡

In

0

0

N

(4)

A1

0

0

Ir

\enddefnwhen A1 ∈ ℝn1 × n1, In ∈ ℝn × n is the identity matrix and N is a nilpotent matrix of index r such that Nr = 0 but Nr − 1 ≠ 0. The equivalent system is:

(5)

x1̇ = A1x1(t) + B1u(t)

y1(t) = C1x1(t)

Slow subsystem

Nx2̇ = x2(t) + B2u(t)

(6)

(7)

y2(t) = C2x2(t)

Fast subsystem

or equivalently

I

0

0

N

x1̇(t)

2(t)

= A1

0

0

I

x1(t)

x2(t)

+ B1

B2

u1(t)

u2(t)

(8)

y(t) = [

]⎡

x1(t)

x2(t)

C1

C2

with

B1

B2

= PB, [C1 C2] = CQ

Subsystem (5↑) represents the slow response and subsystem (5↑) represents the fast response. The system (8↑) also is called the Kronecker-Weistrauss canonical form.

However, if the system is not regular but

rankE

0

0

A

E

C

(9)

= n + rank E

Then a equivalent form based on QR transformation [13] can be obtained as

(10)

where E

0

is found applying QR decomposition.

3 Descriptor System Package

Due to the lack of special tools for the analysis and observer design for descriptor LTI and LPV systems, It was necessary program some scripts, in order to solve the problem. This functions were developed for SCILAB and MATLAB platforms. The SCILAB version can be downloaded from ATOMS web page [14]. The MATLAB version is under revisions.

It should be noted that currently there are few works about it. For example, in [15] a toolbox for MATLAB is presented which is focused principality on the solution of numerical problems. The functions programmed in the toolbox can be used for i) analysis, ii) observer design and iii) Fault detection for DLTI and LPV systems. These functions are summarized in Table 1↓.

Table 1 Descriptor systems toolbox

Some restrictions are listed below

    • As seen in Table 1↑, the descriptor package can be used like an auxiliary tool in the analysis and observer design for DLTI and DLPV. Some of the observers were used to built bank of observers using a generalized observers schemes (GOS) or dedicated observers schemes (DOS) for DLTI and DLPV[16]. However, the algorithms are limited only to compute the gains of each one of the observers.
    • Some functions are only available for SCILAB, due that some requirements are not achievable in MATLAB.
    • The YALMIP toolbox [17] is necessary to solve some linear matrix inequalities (LMI) in the MATLAB package. By default the solver lmilab is selected, however this can be changed by sedumi or other.

4 Numerical example

This section shows some examples of how to work with the descriptor systems toolbox. Consider the following descriptor system

In MATLAB the descriptor system is defined as

A=[-0.75 1 0 0 ; -1 -0.85 0 0; 0 -1 -0.75 0; 0 0 0 -1];

B=[1 10; 1 0.5 ; 0 0; 1 0];

R=[1 0. 0 0]’; C=[1 0 1 0; 0 1 0 1; 1 0 1 1];

dsys=dsystem (E,A,B,C,R)

4.1 Equivalent systems

The Kronecker-Weistrauss canonical form (8↑) is computed as

[A1, N, h, B1, B2, C1, C2]=kwrse (E,A,B,C)

C2 =

- 1.1547005 0.

0. 1.

- 1.1547005 1.

C1 =

1.0327956 - 1.

- 0.7745967 0.

1.0327956 - 1.

B2 =

0. 0.

- 1. 0.

B1 =

- 1.2909944 - 0.6454972

- 1. - 10.

h =

1.

N =

0. 0.

0. 0.

A1 =

- 0.85 - 1.2909944

0.7745967 - 0.75

A restricted system equivalent system based on QR transformation (10↑) is determined as

[Ee, Ae, Ae1, Be, Be1, Ce]=qrrse(E,A,B,C)

Ee =

1 0 0 0

0 1 0 0

Ae =

-0.75 1.00 0 0

-1.00 -0.850 0 0

Ae1 =

0 -1.00 -0.75 0

0 0 0 -1.00

Be =

1.00 10.00

1.00 0.50

Be1 =

0 0

1 0

Ce =

0 -1.00 -0.75 0

0 0 0 -1.00

1.00 0 1.00 0

0 1.00 0 1.00

1.00 0 1.00 1.00

4.2 Observability and controllability

In descriptor systems there exists principally three types of controllability/observability: Complete, Reachable and Impulsive. For the case of C-controllability, it is related with the fact that the system can be controlled with any initial conditions [18]. R-controllability means that the system only can be controlled by a reduced set of initial conditions and I-Controllability means that impulsive signals can be controlled.

The controllability in descriptor systems can be found in different ways, e.g. using Laurent expansion, equivalent systems or from direct approaches. In the Laurent expansion approach, the controllability is related with the dimension of (E, A) and the rank of the Laurent expansion matrices. In the restricted system approach the controllability can be found by the analysis of controllability of slow (5↑) and fast (5↑) subsystems [19]. While in the direct form approach the controllability is found by analyzing matrices (E, A, B) (see [20]). Similar definitions are considered for the case of observability.

The observability condition can be tested by the following command

[nC,Co_mat,nR,Ro_mat,nI,Io_mat]=dobsv(E,A,C)

nI =

Iobsv: 'T'

nC =

4

Co_mat =

SlowS: [7x4 double]

FastS: [7x4 double]

nR =

Obsv: 'T'

Rank: 4

Ro_mat =

1.7500 -1.0000 0 0

1.0000 1.8500 0 0

0 1.0000 0.7500 0

0 0 0 1.0000

1.0000 0 1.0000 0

0 1.0000 0 1.0000

1.0000 0 1.0000 1.0000

nI =

Iobsv: 'T'

rank: 6

4.3 Observer design

The observation of the system behavior, in continuous-time, allows us to gain indirect information on the appearance of the unknown signals [21]. These signals can be estimated by an unknown input observer. An observer is defined as an unknown input observer (UIO), if its state estimated error vector e(t) tends to zero asymptotically, regardless of the presence of the unknown input in the system. A popular observer that has been widely studied is the observer proposed in [22]. This observer has been extended to fault diagnosis in LTI and LPV systems in [23, 24]. The observer is based in a Luenberger form as

(t) =

(t) =

Nz(t) + L1u(t) + L2y(t) + Gu(t)

z(t) + by(t) + Kd y(t)

(11)

where N, L1, L2 and K are matrices of appropriate dimension. b and d are vectors obtained from

aE + bC =

cE + dC =

In

0

(12)

The observer gains can be computed as

poles=[-4,-3,-2 -1]

[N,K,L1,L2,G,test]=darobsv95(dsys,poles)

nI =

Iobsv: 'T'

K =

0.45 -2.84 1.01

0.63 -0.29 0.57

-0.27 0.88 -0.42

-0.05 -0.04 -0.03

L1 =

-3.36 3.27 0.37 6.17 -2.89

-0.75 -0.68 -0.62 -0.75 0.06

1.54 -0.56 -0.70 -0.42 -0.13

-0.12 0.46 0.18 -0.25 -0.27

L2 =

1.78 0.53 0.93 0.12 0.40

-1.14 0.22 -0.30 0.81 -0.55

-0.93 0.08 0.69 -0.51 0.60

0.27 -0.39 -0.09 0.30 0.30

G =

2.75 4.87

0.81 -1.37

-1.40 -4.71

-0.22 -0.98

4.4 Fault detection and isolation based observers

The fault detection can be done with banks of observers by using a generalized observer scheme (GOS) or dedicated observer scheme (DOS) [25].

Figure: DoS and GOS schemes

Considering the proportional unknown input observer (PUIO) proposed in [26]

(t) =

(t) =

Nz(t) + G1u(t) + Lyo(t)

z(t) + H2yo(t)

(13)

For the numerical example, if the observer is stabilized in a LMI region “α = − 2,” (see [27]) then the gains for each one of the observers in the GOS bank (for sensor) are computed as

>> lmizone=-10

%'s'= sensors

[N,G1,L,H2,Bo1]=gosbank1(dsys,lmizone,'s')

C =

0 1 0 1

1 0 0 0

C =

1 0 1 0

1 0 0 0

C =

1 0 1 0

0 1 0 1

N(:,:,1) =

-0.0001 0.0000 0.0000 0.0000

-0.6667 -0.5668 -0.0001 -0.0001

0.8889 0.7555 -0.0000 0.0000

0.3333 0.2833 0.0000 -0.0001

N(:,:,2) =

-0.2401 -0.2040 -0.0000 0

-0.6800 -0.5780 -0.0000 0

0.4800 0.4080 -0.0000 0

0 0 0 -0.0000

N(:,:,3) =

-0.8889 -0.7556 -0.0000 0.0000

-0.6667 -0.5667 -0.0000 -0.0001

0.8888 0.7555 -0.0001 0.0000

0.3333 0.2833 0.0000 -0.0001

G1(:,:,1) =

0 0

0.6667 0

-0.8889 0

-0.3333 0

G1(:,:,2) =

0.2400 0

0.6800 0

-0.4800 0

0 0

G1(:,:,3) =

0.8889 0

0.6667 0

-0.8889 0

-0.3333 0

L(:,:,1) =

0 -0.0000 -0.0000 0.0000

0.0000 -0.1889 -0.1889 -0.6667

-0.0000 0.2519 0.2519 0.8889

-0.0000 0.0944 0.0944 0.3333

L(:,:,2) =

0.0077 0 0.0058 -0.2458

0.0218 0 0.0163 -0.6963

-0.0154 0 -0.0115 0.4915

0 0 0 0

L(:,:,3) =

-1.1852 -0.6469 -0.8889 -0.6469

-0.8889 -0.4852 -0.6667 -0.4852

1.1852 0.6469 0.8889 0.6469

0.4444 0.2426 0.3333 0.2426

H2(:,:,1) =

0 0 0 1.0000

-0.0000 0.3333 0.3333 0

-1.3333 -0.4444 -0.4444 0

0.0000 -0.6667 0.3333 0

H2(:,:,2) =

0.2400 0 0.1800 0.8200

-0.3200 0 -0.2400 0.2400

-0.4800 0 0.6400 -0.6400

0 -1.0000 0 0

H2(:,:,3) =

1.3333 0.4444 1.0000 0.4444

-0.0000 0.3333 -0.0000 0.3333

-1.3333 -0.4444 0.0000 -0.4444

0.0000 -0.6667 0.0000 0.3333

Bo1(:,:,1) =

0 0

1 0

Bo1(:,:,2) =

0 0

1 0

Bo1(:,:,3) =

0 0

1 0

where (:, :, j), with j = 1, 2, 3, indicates the number of the observer. The function selects automatically the output matrices.

5 Descriptor LPV systems

Continuous descriptor LPV systems (DLPV), in polytopic form, under unknown inputs (noise, disturbances, etc) are usually defined as

ρi(θ(t)){Aix(t) + Biu(t) + Rid(t)}y(t)

Eẋ(t)

= h

i = 1

(14)

= Cx(t)

where Ai, E ∈ ℝn × n, Bi ∈ ℝn × m, C ∈ ℝp × n and Ri ∈ ℝr are known matrices with appropriate dimension. x(t), u(t), y(t) and d(t) are the state vector, the control input, the measured output and the unknown input vector respectively. The parameter θ(t) is assumed to be bounded and lies into a hypercube such that

(15)

θ(t) ∈ Γ = {θ|\underbarθi(t) ≤ θ(t) ≤ θi(t)}, ∀t > 0

The functions ρiθ(t) are the weighting function that permits the commutation among the models. The polytopic DLPV system is scheduled through the following convex set

i ∈ {1, 2..., h}, ρi(θ(t)) ≥ 0, h

i = 1

(16)

ρi(θ(t)) = 1

5.1 Numerical example

Consider the numerical example presented in [28], the gains of the PIUIO can be computed as

%% descriptor-LPV system

dsys=dsystem(E,Ai,Bi,C,Ri)

alpha=3; %LMI zone

% observer gains

[N,G,L,Ti,H2,Phi]=lpvpiuiobsv(dsys,alpha)

where (A, B, R ) are in polytopic form ∀i ∈ {1, 2, ..h} and, alpha (α) is to define a zone in the left part of the complex plan bounded with a line of abscissa ( − α) where α ∈ ℝ + .

The resulting matrices are not presented here because the sizes are very large. However, others observers can be achieved similar to the examples in Sections 4.3↑ and 4.4↑ (see the Table 1↑).

6 CONCLUSIONS

This paper presents a set of functions that have been written in order to develop a descriptor systems toolbox for SCILAB and MATLAB. The toolbox contains a set of tools dedicated to analyze descriptor systems, from LTI extended to LPV. These tools include the implementation of algorithms for the analysis of controllability, observability, stability and to find the fundamental matrices of the Laurent expansion. Some functions to design state-observers are proposed. Some of these observers are considered for fault detection schemes, for the construction of manual or automatic banks of observers. The toolbox can also be used for discretization of continuous systems by the method proposed in [29] (see Table 1↑).

It is very important to note that this paper is not a survey and therefore, the examples presented here are only to demonstrate the usefulness of the toolbox. Therefore, we recommend a detailed review of the references.

The SCILAB version of the toolbox is available to the community in the SCILAB files exchange web page [30]. The toolbox was created on the basis of free software, so anyone can improve it and modify it freely. The MATLAB package is under revisions and can be requested by email to the authors.

6 REFERENCES

Chen and Patton 1999Chen, J. and Patton, R. J., Robust Model-Fault Diagnosis for Dynamic Systems (Springer, 1999).

Dai 1989Dai, L., Singular control systems. Lecture Notes in Control and Information Sciences. (Springer, 1989).

Darouach and Boutayeb 1995Darouach, M. and Boutayeb, M., "Design observers for descriptor system", IEEE Transactions on Automatic Control 40, 7 (1995), pp. 1323-1327.

Darouach et al. 1996Darouach, M. and Zasadzinski, M. and Hayar, M., "Reduced-Order Observer Design for Descriptor Systems with Unknown Inputs", IEEE Transactions on Automatic Control 41, 7 (1996), pp. 1068-1072.

Duan 2010Guang-Ren Duan, Analysis and Desing of Descriptor Linear Systems (Springer, 2010).

Frank 1990Frank, P., "Fault Diagnosis in Dynamic Systems Using Analytical and Knownledge-based Redundancy: A surver and some New Results", Automatica 26, 3 (1990), pp. 459-474.

Gantmacher 1959Gantmacher, F. R., The Theory of Matrices vol. 2, (Chelsea Publising Company, 1959).

Hamdi et al. 2009Hamdi, H. and Rodrigues, M. and Mechmeche, C. and Theilliol, D., "State Estimation for Polytopic LPV Descriptor Systems : Application to Fault Diagnosis" (2009), 438--443.

Hamdi et al. 2012Hamdi, H. and Rodrigues, M. and Mechmeche, C. and Theilliol, D., "Fault Detection and Isolation for Linear Parameter Varying Descriptor Systems via Proportional Integral Observer", International Journal of Adaptive Control and Signal Processing 26, 3 (2012), pp. 224-240.

Hou and Muller 1999Hou, M. and Muller, P.C., "Observer design for descriptor systems", IEEE Transactions on Automatic Control 44, 1 (1999), pp. 164-169.

Karampetakis 2003Karampetakis, N. P., "On the discretization of singular systems", IMA Journal of Mathematical Control and Information 21 (2003), pp. 223-242.

Koenig 2005Koenig, D., "Technical Notes and Correspondence: Input, Unknown and Observer, Proportional Multiple-integral and Fault Estimation", IEEE Transactions on Automatic Control 50, 2 (2005), pp. 212--217.

Koenig and Mammar 2002Koenig, D. and Mammar, S., "Design of proportional-integral observer for unknown input descriptor systems", IEEE Transactions on Automatic Control 47, 12 (2002), pp. 2057-2062.

Lofberg 2004Lofberg, J., "A Toolbox for Modeling and Optimization in MATLAB", IEEE (2004).

López-Estrada et al. 2011López-Estrada, F. R. and Theilliol, D. and Astorga-Zaragoza, C. M. and Ponsart, J. C., "Descriptor System Calculation Toolkit (DeCaToKi)", CENIDET and CRAN (2011).

Sokolov 2006Sokolov, Viatcheslav I., "Contributions to the Minimal Realization Problem for Descriptor Systems" (2006).

Trumpf 2007Trumpf, J., "Observers for linear time-varying systems", Linear Algebra and its Application 425, 2-3 (2007), pp. 303-312.

Varga 2000Varga, A., "A Descriptor Systems Toolbox for MATLAB" (2000).

Yip and Sincovec 1981Yip, E. and Sincovec, R. F., "Solvability, Controllability and Obsevability of Continuos Descriptor Systems", IEEE Transactions on Automatic Control 6, 3 (1981), pp. 702-707.