Control Systems/Eigenvalue Assignment for MIMO Systems

From testwiki
Revision as of 09:26, 10 May 2023 by imported>StephanSp3 (Sylvester Equation: Add online resource)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

The design of control laws for MIMO systems are more extensive in comparison to SISO systems because the additional inputs (q>1) offer more options like defining the Eigenvectors or handling the activity of inputs. This also means that the feedback matrix K for a set of desired Eigenvalues of the closed-loop system is not unique. All presented methods have advantages, disadvantages and certain limitations. This means not all methods can be applied on every possible system and it is important to check which method could be applied on the own considered problem.

Parametric State Feedback

A simple approach to find the feedback matrix K can be derived via parametric state feedback (in German: vollständige modale Synthese). A MIMO system

x˙(t)=Ax(t)+Bu(t)

with input vector

u(t)=(u1(t),u2(t),,uq(t))=Kx(t)

input matrix Bp×q and feedback matrix Kq×p is considered. The Eigenvalue problem of the closed-loop system

x˙(t)=(ABK)x(t)=ACLx(t)

is noted as

ACLv~i=(ABK)v~i=λ~iv~i

where λ~i denote the assigned Eigenvalues and v~ip denote the Eigenvectors of the closed-loop system. Next, new parameter vectors ϕi=Kv~i are introduced and assigned and the Eigenvalue problem is recasted as Template:Eqn

BKv~i=Bϕi=(Aλ~iI)v~i.

Controller synthesis

1. From Equation [1] one defines the Eigenvector with

v~i=(Aλ~iI)1Bϕi

2. The new parameter vectors ϕi are concatenated as

Φ=[ϕ1,ϕ2,,ϕp]=K[v~1,v~2,,v~p],

where the feedback matrix K can be noted as

K=Φ[v~1,v~2,,v~p]1.

3. Finally, the Eigenvector definition is used to hold the full description of the feedback matrix with

K=[ϕ1,ϕ2,,ϕp][(Aλ~1I)1Bϕ1,,(Aλ~pI)1Bϕp]1.

The parameter vectors are defined arbitrarily but have to be linear independent.

Remarks

  • Method works for non-quadratic B
  • Parameter vectors ϕi can be chosen arbitrarily

Example

Template:TextBox

Singular Value Decomposition and Diagonalization

If the state matrix Ap×p of system

x˙(t)=Ax(t)+Bu(t)

is diagonalizable, which means the number of Eigenvalues and Eigenvectors are equal, then the transform

x=MxM

can be used to yield

Mx˙M(t)=AMxM(t)+Bu(t)

and further

x˙M(t)=M1AMxM(t)+M1Bu(t).

Transformation matrix M contains the Eigenvectors vip as

M=[v1,v2,,vp]

which leads to a new diagonal state matrix

AM=M1AM=[λ1λ2λp]

consisting of Eigenvalues λi, and new input

uM(t)=M1Bu(t)=[uM,1uM,2uM,p].

The control law for the new input uM is designed as

uM(t)=KMxM(t)=[KM,1KM,2KM,p][xM,1(t)xM,2(t)xM,p(t)]

and the closed-loop system in new coordinates is noted as

x˙M(t)=AMxM(t)+uM(t)=(AMKM)xM(t)=[λ1KM,1λ2KM,2λpKM,p][xM,1(t)xM,2(t)xM,p(t)]

Feedback matrix KM can be used to influence or shift each Eigenvalue directly.

In the last step, the new input is transformed backwards to original coordinates to yield the original feedback matrix K. The new input is defined by

uM(t)=M1Bu(t)

and

uM(t)=KMxM(t)=KMM1x(t).

From these formulas one gains the identity

M1Bu(t)=KMM1x(t)

and further

u(t)=B1MKMM1x(t)=Kx(t).

Therefore, the feedback matrix is found as

K=B1MKMM1.

Requirements

This controller design is applicable only if the following requirements are guaranteed.

  • State matrix A is diagonalizable.
  • The number of states and inputs are equal p=q.
  • Input matrix Bp×p is invertible.

Example

Template:TextBox

Sylvester Equation

This method is taken from the online resource

Consider the closed-loop system

x˙(t)=Ax(t)+Bu(t)=(ABK)x(t)=ACLx(t)

with input u(t)=Kx(t) and closed-loop state matrix ACL=ABK. The desired closed-loop Eigenvalues λ~i can be chosen real- or complex-valued as λ~i=αi±jβi and the matrix of the desired Eigenvalues is noted as

Λ=[α1β1β1α1λ~i]

The closed-loop state matrix ACL has to be similar to Λ as

ACL=ABKΛ

which means that there exists a transformation matrix Mp×p such that

M1ACLM=M1(ABK)M=Λ

holds and further Template:Eqn

AMMΛ=BKM.

An arbitrary Matrix G=KM is introduced and Equation [2] is separated in a Sylvester equation Template:Eqn

AMMΛ=BG

and a feedback matrix formula

K=GM1.

Algorithm

1. Choose an arbitrary matrix Gq×p.

2. Solve the Sylvester equation for M (numerically).

3. Calculate the feedback matrix K.

Remarks

  • State matrix A and the negative Eigenvalue matrix Λ shall not have common Eigenvalues.
  • For some choices of G the computation could fail. Then another G has to be chosen.

Example

Template:TextBox


Template:Control Systems/Nav Template:BookCat