The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations...

68
The Use of Mathematica in Control Engineering • Linear Model Descriptions • Linear Model Transformations • Linear System Analysis Tools • Design/Synthesis Techniques •Pole Assignment •Model-Reference Optimal Control •PID Controller • Concluding Remarks Neil Munro Control Systems Centre UMIST Manchester, England.

Transcript of The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations...

Page 1: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

The Use of Mathematica in

Control Engineering

• Linear Model Descriptions

• Linear Model Transformations

• Linear System Analysis Tools

• Design/Synthesis Techniques

• Pole Assignment• Model-Reference Optimal Control• PID Controller

• Concluding Remarks

Neil MunroControl Systems Centre

UMISTManchester, England.

Page 2: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Linear Model Descriptions

The Control System Professional currently provides

several ways of describing linear system models; e.g.

1 For systems described by the state-space equations

DuCxy

BuAxx

where y is a vector of the system outputs

u is a vector of the system inputs

and x is a vector of the system state-variables

2 For systems described by transfer-function relationships

)s(u)s(G)s(y

where s is the complex variable

Page 3: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Examples: -

ss = StateSpace[{{0, 0, 1, 0},{0, 0, 0, 1},

{-(a b), 0, a+b, 0},{0, -(a b), 0, a+b}},

{{0, 0},{0, 0},{1, 0},{0, 1}},{{-b, -a, 1, 1}}]

x11aby

u

10

01

00

00

x

ba0)ba(0

0ba0)ba(

1000

0100

x

Page 4: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

tf = TransferFunction[s,{{1/(s-a),1/(s-b)}}]

sb

1

sa

1)s(G

}}]sb

1sa

1{{nction[s,TransferFu

11abC

10

01

00

00

B

ba0)ba(0

0ba0)ba(

1000

0100

A

viewFormRe//

Page 5: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

New Data Formats have been implemented, for these objects, which are fully editable, as follows: -

ss = StateSpace[{{0, 0, 1, 0},{0, 0, 0, 1},

{-(a b), 0, a+b, 0},{0, -(a b), 0, a+b}},

{{0, 0},{0, 0},{1, 0},{0, 1}},{{-b, -a, 1, 1}}]

now results in the composite data matrix

S

s

0011ab

10ba0)ba(0

010ba0)ba(

001000

000100

DC

BAss

Page 6: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

tfsys = TransferFunction[s,

{{((s+2)(s+3))/(s+1)^2,1/(s+1)^2},

{(s+2)/(s+1)^2,(s+1)/((s+1)^2(s+3))},

{1/(s+2),1/(s+1)}}]

which now yieldsikHs+2LHs+3LHs+1L2 1Hs+1L2

s+2Hs+1L2 1Hs+1LHs+3L1

s+2

1

s+1

y{T

Page 7: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

New Data Objects

Four new data objects have been introduced; namely,

1. Rosenbrock’s system matrix in polynomial form

2. Rosenbrock’s system matrix in state-space form

3. The right matrix-fraction description of a system

4. The left matrix-fraction description of a system.

Page 8: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

u)s(W)s(Vy

u)s(U)s(T

The system matrix in polynomial form provides a compact description of a linear dynamical system described by arbitrary ordered differential equations and algebraic relationships, after the application of the Laplace transform with zero initial conditions; namely

where , u and y are vectors of the Laplace transformed system variables. This set of equations can equally be written as

y

0

u)s(W)s(V

)s(U)s(T

Page 9: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

If the system description is known in state-space form then a special form of the system matrix can be constructed, known as the system matrix in state-space form, as shown below

DC

BAsI)s(P

The system matrix in polynomial form is then defined as

)s(W)s(V

)s(U)s(T)s(P

When a system matrix in polynomial form is being created, it is important to note that the dimension of the square matrix T(s) must be adjusted to be r, where r is the degree of Det[T(s)].

Page 10: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Matrix Fraction Forms

Given a system description in transfer function matrix form G(s), for certain analysis and design purposes; e.g. the H- approach to robust control system design; it is often convenient to express this model in the form of a left or right matrix-fraction description; e.g.

1. A left matrix-fraction form of a given transfer function matrix G(s) might be

2 A right matrix fraction form of a given transfer function matrix G(s) might be

)s(D)s(N)s(G 1RR

)s(N)s(D)s(G L1

L

Page 11: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Linear Model Transformations

G(s) [A, B, C, D]

G(s)

System Matrix P(s) in polynomial form

[A, B, C, D]System Matrix P(s) in state-space form

[T(s),U(s),V(s),W(s)]System Matrix P(s) in polynomial form

)s(1RD)s(RNor)s(LN)s(1

LD

P1(s) P2(s)

G(s)

Least Order

Page 12: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

New Data Transformations

All data formats are fully editable

tfsys = TransferFunction[s,

{{((s+2)(s+3))/(s+1)^2,1/(s+1)^2},

{(s+2)/(s+1)^2,(s+1)/((s+1)^2(s+3))},

{1/(s+2),1/(s+1)}}]

ikHs+2LHs+3LHs+1L2 1Hs+1L2

s+2Hs+1L2 1Hs+1LHs+3L1

s+2

1

s+1

y{T

rff = RightMatrixFraction[tfsys]

ikHs+ 2L2Hs + 3Ls +3Hs+ 2L2 s +1Hs+ 1L2 Hs +1LHs + 3L

y{ikHs+ 1L2Hs + 2L 0

0 Hs +1L2Hs +3Ly{- 1¤F

ss = StateSpace[tfsys]i

k

0 1 0 0 0 0 0 00 0 1 0 0 0 0 0

- 2 - 5 - 4 0 0 0 1 00 0 0 0 1 0 0 00 0 0 0 0 1 0 00 0 0 - 3 - 7 - 5 0 1

10 11 3 3 1 0 1 04 4 1 1 1 0 0 01 2 1 3 4 1 0 0

y

{•

S

rff = RightMatrixFraction[ss,s]

ikHs + 2LHs2 + 5s+ 6Ls +3Hs+ 2L2 s +1Hs+ 1L2 Hs +1LHs + 3L

y{ikHs+ 1L2Hs + 2L 0

0 Hs +1L2Hs +3Ly{- 1¤F

Page 13: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

tfsys = TransferFunction[s, {{(s+1)/(s^2+2s+1)},{(s+2)/(s+1)}}]

ps = SystemMatrix[tfsys,TargetFormRightFraction]

rff = RightMatrixFraction[ps]

TransferFunction[%]

ps = SystemMatrix[tfsys,TargetForm LeftFraction]

lf = LeftFractionForm[ s,s10

0ss21,

s2

s1 2

]

iks+1

s2+2 s+1s+2

s+1

y{T

J1s+ 2NHs +1L- 1¤F

ik1

s+1s+2

s+1

y{T

ik

1 0 0 0

0 s2 + 2s +1 0 s + 10 0 s+ 1 s + 20 - 1 0 00 0 - 1 0

y{M

iks2 +2s + 1 00 s +1

y{- 1Js +1s +2N¤F

ik

1 0 0

0 Hs +1L2 1

0 - s - 1 0

0 -Hs +1LHs +2L0

y{M

New Data Transformations

Page 14: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

New Data Transformations

tfsys =TransferFunction[s, {{(s+1)/(s^2+2s+1)},{(s+2)/(s+1)}]iks+1

s2+2 s+1s+2

s+1

y{T

rff = RightMatrixFraction[tfsys]

J s+1Hs+1LHs+2LNHHs+1L2L- 1ĤÄF

dt = ToDiscreteTime[tfsys,Sampled->20]//Simplifyik

- 1+ã20

ã20 z- 1

ã20 z+ã20- 2

ã20 z- 1

y{20

T

Page 15: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

ik- 1 +ã20

ã20 z+ã20 - 2

y{Hã20 z - 1L- 1ĤÄ20

F

SystemMatrix[dt,TargetForm->RightFraction]ik

ã20 z - 1 1

1 - ã20 0

- ã20 z - ã20 +2 0

y{20

M

SystemMatrix[dt]

ikã20 z - 1 0 - 1+ã20

0 ã20 z - 1 ã20 z +ã20 - 2

- 1 0 00 - 1 0

y{20

M

RightMatrixFraction[%]

New Data Transformations

Page 16: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

A Least-Order form of a System-Matrix in polynomial form is one in which there are no input-decoupling zeros and no output-decoupling zeros, and would yield a minimal state-space realization, when directly converted to state-space form.

For example, the polynomial system matrix

SM,

.

2

2

2232

01000

01000

10)2s(s11s3s)2s(s

10)2s(s2s3s)2s(s

00)1s(s11ss)1s(s

)s(P

is not least order, since T(s) and U(s) have 3

input-decoupling zeros at s = {0, 0, -1}; i.e.

[T(s) U(s)] has rank 4 at these values of s.

Page 17: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

2s

1

)s(W)s(U)s(T)s(V

)s(W)s(U)s(T)s(V)s(G

21

22

11

11

Hence

Page 18: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

System Analysis

Controllable[ss]Observable[ss] ss =[A, B, C, D]

SmithForm[T(s) U(s)]McMillanForm[G(s)]

Controllable[ps]Observable[ps]

DC

BAsI)s(P

)s(W)s(V

)s(U)s(T)s(P

Decoupling Zeros

Controllable[ps]Observable[ps]

DC

BAsI)s(P

Decoupling Zeros

)s(W)s(V

)s(U)s(T)s(P

MatrixLeftGCD[T(s) U(s)]MatrixRightGCD[T(s) V(s)]

Page 19: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Controllability and Observability

In the same way that the controllability and observability of a system described by a set of state space equations can be determined in the Control System Professional by entering the commands

Controllable[ss] and Observable[ss]

where ss is a StateSpace object.

These tests can now also be directly applied to a system matrix object by entering the commands

Controllable[sm] and Observable[sm]

where sm is a SystemMatrix object in either polynomial form or state space form.

Page 20: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Preliminary Analysis

• Reduction of State-Space Equations

• Given a system matrix in state-space form

• then an input-decoupling zeros algorithm,

• implemented in Mathematica, reduces P(s) to

• The completely controllable part is then given by

DCBAsI

)s(P n

DCCBAsIA

00AsI)s(P

21

222n21

m,n,11

1

222n B,AsI

Page 21: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

PSINK

TGASPGAS

CVGAS

WCHR

MASSWAIRWSTMWCOLWLS

Gasifier

DuCxy

BuAxx

Model Format

A is 25 x 25 B is 25 x 6C is 4 x 25 D is 4 x 6

Inputs:- 1 char 2 air 3 coal 4 steam 5 limestone 6 upstream disturbance

Outputs:- 1 gas cv 2 bed mass 3 gas pressure 4 gas temperature

Page 22: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Preliminary AnalysisPreliminary Analysis

The original 25th order system is numerically very ill conditioned. The eigenvalues cover a significant range in the complex plane, ranging from -0.00033 to -33.1252.The condition number is 5.24 x 1019.At = 0 the maximum and minimum singular values are 147500 and 50, respectively.The Kalman controllability and observability tests yield a rank of 1, and the controllability and observability gramians are :-

5

4

3

3

3

2

2

2

0

4

14

o

1011.9

1002.7

1022.1

1078.1

1015.6

1029.2

1029.3

1029.5

1049.4

1084.2

1047.4

W

SM,

SM,

.

2

2232

2

.

2

2

2232

1

01000

01000

00111

10)2s(s2s3s)2s(s

00)1s(s11ss)1s(s

)s(P~

01000

01000

10)2s(s11s3s)2s(s

10)2s(s2s3s)2s(s

00)1s(s11ss)1s(s

)s(P

Page 23: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Preliminary Analysis

05677.0000000

005677.000000

0005677.00000

0000002426.0000

000005677.000

0000005677.00

00000005677.0

A z

Application of the decoupling zeros algorithm to [sI-A, B] yielded

indicating that the system had 7 input-decoupling zeros,which was confirmed by transforming A and B to spectral form.

Dimensions of )31,29(DC

BA

)24,22(DC

BA

rr

rr

)7,7(A z

Dimensions of

Dimensions of

Page 24: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Coprime Factorizationsps = SystemMatrix@t, u, v, w, sDtest = MatrixLeftGCD@s, t, uD;Print@"L = ", MatrixForm@test@@1DDDD;Print@"T now = ", MatrixForm@test@@2DDDD;Print@"U now = ", MatrixForm@test@@3DDDD;Expand@test@@1DD.test@@2DDD=== Expand@tDSimplify@test@@1DD.test@@3DDD=== u

Det@test@@2DDDik

s2Hs+ 1Ls3 + s2 - 1 1- s2Hs+ 1L0 0

sHs +2Ls2 + 3s +2 - sHs + 2L0 1

sHs +2Ls2 + 3s +1 1 - sHs +2L0 10 0 0 1 00 0 0 1 0

y{•M , s

L =

ik1 0 0 00 1 0 01 1 s2H1+sL00 0 0 1

y{

T now =

iks2H1+sL- 1+s2+s3 1 - s2 - s3 0

sH2+sL2+3s+s2 - sH2+sL0- 1 - 1 1 00 0 0 1

y{

U now =

ik0100

y{

True

True

2+s

Page 25: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Smith and McMillan Forms

The Smith form of a polynomial matrix and the McMillan form of a rational polynomial matrix are both important in control systems analysis.

Consider an x m polynomial matrix N(s), then the Smith form of N(s) is defined as

S(s) = L(s)N(s)R(s)

m,0

)}s({diag)s(S

m,)}s({diag)s(S

m,0)}s({diag)s(Swhere

m,m

i

i

m,i

and L(s) and R(s) are unimodular matrices.

Page 26: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Smith and McMillan Forms

Consider now an x m rational polynomial matrix G(s), and let

G(s) = N(s)/d(s)

where d(s) is the monic least common denominator of G(s), then the McMillan form of G(s) is defined as

m,0

)}s(/)s({diag)s(S

m,)}s(/)s({diag)s(S

m,0)}s(/)s({diag)s(M

m,m

ii

ii

m,ii

where M(s) is the result of dividing the Smith form of N(s) by d(s), and cancelling out all common factors

Page 27: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Pole Assignment

PID Controller

Nonlinear Systems

Model-Order Reduction

Robust NA

Nyquist Array

Optimal Control

Model Ref.Opt. Control

Design MethodsSynthesis Methods

Page 28: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Design/Synthesis Methods

Methods implemented are:-

1 Pole Assignment - Some Observations

2 Model-Reference Optimal Control

3 The Systematic Design of PID Controllers

4 Uncertain Nonlinear Systems

5 Robust Direct Nyquist Array Design Method

6 Model-Order Reduction

Page 29: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Pole Assignment

Control Systems Centre - UMIST

We consider four main types of approaches

• ACKERMANN’S FORMULA

• SPECTRAL APPROACH

• MAPPING APPROACH

• EIGENVECTOR METHODS

Page 30: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Control Systems Centre - UMIST

Ackermann’s Formula

)(100 1 Apc k

Here is the controllability matrix of [A,b], and pc(s) is the desired closed-loop system characteristic polynomial.

ivk

q

ii

1

where

b.v, iiq

ij

1j jii

q

1j ji

i

Spectral Approach

Here, i and i are the open-loop system and desired closed-loop system poles, respectively, and the vi´ are the associated reciprocal eigenvectors.

Page 31: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Mapping Approach

Control Systems Centre - UMIST

The state-feedback matrix is given as

11 Xk

where is the controllability matrix of [A, b]

002n2n1n1n

321

1n2n

1n

1n

aaa

1aaa

01aa

001a

0001

X

bAbAb

Here, the ai and i are the coefficients of the open-loop and closed-loop system characteristic polynomials, respectively.

Page 32: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Control Systems Centre - UMIST

Eigenvector Methods

buic

1 nii IAm

It is also possible to determine the state-feedback pole assignment compensator as

where the mi are randomly chosen scalars and the uci

are the closed-loop system

eigenvectors calculated from

121 2

nnmmm ccc uuuk

1

Selecting mi =1, for example, the state-feedback compensator can be found as

1

2111

nccc uuuk1

Page 33: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Control Systems Centre - UMIST

-16

-14

-12

-10

-8

-6

-4

-2

0

2

2 4 6 8 10 12 14 16 18 20

Order

Err

or

Spectral

Mapping

Ackermann's

EVAssign

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

2 4 6 8 10 12 14 16 18 20

Order

Tim

e [s

]

Comparison of Dyadic Methods Comparison of Dyadic Methods under Numeric Considerationsunder Numeric Considerations

Page 34: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Control Systems Centre - UMIST

Comparison of Dyadic Methods Comparison of Dyadic Methods under Symbolic Considerationsunder Symbolic Considerations

-5

15

35

55

75

95

115

135

2 4 6 8 10 12 14

Order

Tim

e [s

]

Mapping

Ackermann's

EV Assign

Page 35: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Model Reference LQR System

yM

y u

-

+

e

System Model

Reference Model

x~]CC[

CxxC

yye

M

MM

M

o

tt dt]RuuQee[J

Model-Reference Optimal Control

The resulting optimal feedback controller Ko can be partitioned as

2221

1211

oKK

KKK

where K11 and K21 operate on the reference-model state vector xM

and K12 and K22 operate on the system state vector x.

Page 36: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Model Reference LQR feedback paths.

e

-

-

+ +

+

-

+

+

+ - -

+

r

y B dtI

A

B M

C

K 2 1

K 2 2

K 1 2

y C M

A M

K 11

dtI

-

+

-

+ y r System x

K22

xM K21 Model

Model Reference LQR System Closed-Loop.

Page 37: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

)s41(

1

)s51(

7.0

)s51(

3.0

)s51(

2.0

)s51(

6.0

)s41(

1

)s51(

4.0

)s51(

35.0

)s51(

35.0

)s51(

4.0

)s41(

1

)s51(

6.0

)s51(

2.0

)s51(

3.0

)s51(

7.0

)s41(

1

)s(G

)s1(

1000

0)s5.01(

100

00)s5.01(

10

000)s1(

1

)s(M

10000000000

01000000000

00100000000

00010000000

000001.0000

0000001.000

00000001.00

000000001.0

Q

01.00000000

001.0000000

0001.000000

00001.00000

00001000000

00000100000

00000010000

00000001000

R

Page 38: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

 Unit-step on reference input 1 Unit-step on reference input 2

1 2 3 4 5

0.2

0.4

0.6

0.8

1 2 3 4 5

0.2

0.4

0.6

0.8

1

 Unit-step on reference input 3 Unit-step on reference input 4

1 2 3 4 5

0.2

0.4

0.6

0.8

1

1 2 3 4 5

0.2

0.4

0.6

0.8

Page 39: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

• In recent years, several researchers have been re-examining the PID controller to determine the limiting Kp, Ki, and Kd parameter values to guarantee a stable closed-loop system; namely,

• Keel and Bhattacharyya

• Ho, Datta, and Bhattacharyya

• Shafei and Shenton

• Astrom and Hagglund

• Munro and Soylemez

The PID Controller

Page 40: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

The PID Controller

+-

uer yPID Plant

+

+

+e u

pK

dt

dKd

dtKi

Page 41: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

- + +

-

u e r y Plant

2-D Test Compensator k

Kx

 

Test compensator arrangement

 

 

 

60s3s15s29s3s

1s2s6s)s(g

2345

23

Ki

Kp

+1.0

+1.0 -1.0

Test compensator space 

Page 42: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

 

 

The Nyquist plot for Kp = 0.5 and Ki = 0.5

The admissible PI compensator space

Page 43: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

0

5

10Kd

0

25

50

75

100Ki

0

2.5

5

7.5

10

Kp

0

5

10Kd

0

25

50

75

100Ki

27s54s36s10s

27

)3s)(1s(

27)s(g

234

3

Page 44: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Design Requirements

• Stability

• Performance

• Robustness

• Simplicity

• Transparency

increasing

difficulty

Page 45: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Acknowledgements

My thanks to Dr Igor Bakshee of Wolfram Research for his interest and help in carrying out this work.

Page 46: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

D-Stability

Im

Re

d

D

= Sin()

Control Systems Centre

UMIST

Control Systems Centre

UMIST

Page 47: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

The Nyquist Plot Approach

• Here, we detect 5 axis crossings, (-2,+2,+2,-1,-1), where the last is due to the infinite arc, on the right, due to the pole at the origin.

Control Systems Centre

UMIST

Control Systems Centre

UMIST

Page 48: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

The resulting stability boundary is

The Nyquist Plot Approach

Note that the origin is not included in the region because the basic system is unstable.

0 5 10 15 20

0

5

10

15

20

25

30

Kp

Ki

Page 49: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

The Nyquist Plot Approach

• Here, with Kp = 5 and Ki = 18 the system is stable, even with an additional gain of k =1.3134

• yielding closed-loop poles =

• -0.2519 ± 5.4879i

• -1.2320 ± 1.5258i

• -0.0161 ± 0.4510i

Control Systems Centre

UMIST

Control Systems Centre

UMIST

Page 50: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Diagonal Dominance Concepts

Various definitions of Diagonal Dominance exist, namely :-

Rosenbrock’s row/column form ~ R Limebeer’s Generalised Diagonal Dominance ~ L Bryant & Yeung’s Fundamental Dominance ~ Y

where the conservatism of the resulting dominance criterion reduces as

Y < L < RMathematica Code Code

tfsys = TransferFunction@s,883 �Hs+2L, 1 �Hs+2L, 1 �Hs+2L<,81 �Hs+1L, 8 �Hs+4L, 1 �Hs+2L<,81 �Hs+2L, 3 �Hs+2L, 10 �Hs+5L<<Dfreqs = [email protected], 30, 50D;NyquistArray@tfsys, freqs,DominanceCriterion - > Column,

CircleCriterion - > Ostrowski,

DominanceSteps - > 1,

FeedbackGains - >81, 0.5, 2<D

Page 51: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Nyquist Array Example

ik

3s+2

1s+2

1s+2

1s+1

8s+4

1s+2

1s+2

3s+2

10s+5

y{T

Ostrowski circles are shown in red for gains =81, 0.5, 2<Nyquist Array with Ostrowskicircles

0.1 0.2 0.3 0.4 0.5

-0.25-0.2-0.15-0.1-0.05 0.20.40.60.8 1 1.21.4

-0.7-0.6-0.5-0.4-0.3-0.2-0.1

-0.5 0.5 1 1.5 2 2.5 3

-1

-0.5

0.5

1

0.2 0.4 0.6 0.8 1

-0.5-0.4-0.3-0.2-0.1

-2 -1 1 2 3 4

-2

-1

1

2

0.1 0.2 0.3 0.4 0.5

-0.25-0.2-0.15-0.1-0.05

-1 1 2 3

-1.5

-1

-0.5

0.5

1

1.5

0.1 0.2 0.3 0.4 0.5

-0.25-0.2-0.15-0.1-0.05 0.1 0.2 0.3 0.4 0.5

-0.25-0.2-0.15-0.1-0.05

Page 52: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

PSINK

TGASPGAS

CVGAS

WCHR

MASSWAIRWSTMWCOLWLS

Gasifier

DuCxy

BuAxx

Model Format

A is 25 x 25 B is 25 x 6C is 4 x 25 D is 4 x 6

Inputs:- 1 char 2 air 3 coal 4 steam 5 limestone 6 upstream disturbance

Outputs:- 1 gas cv 2 bed mass 3 gas pressure 4 gas temperature

Page 53: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Combined Sequential Loop Closing and Diagonal Dominance Method

Combined Sequential Loop Closing and Diagonal Dominance Method

• This approach is a new combination of Bryant’s

Sequential Loop Closing Approach with MacFarlane

and Kouvaritakis’ ALIGN Algorithm, Edmunds’

Scaling and Normalization Technique, and

Rosenbrock’s Diagonal Dominance.

• It is particularly appropriate in cases where a simple

controller structure is desired.

• Advantages:

– It can be implemented by closing one loop at a

time.

– Usually, the resulting control scheme is quite

simple and can be easily realized in practice.

Page 54: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Achieving Diagonal DominanceAchieving Diagonal Dominance

• Normalization :

– Generates the input-output scaling to be applied to the

system in order to minimize interaction.

– Determines the best input-output pairing for control

purposes.

– Produces good diagonal dominance properties at low and

intermediate frequencies.

– Results are obtained by using simple, wholly real

permutation matrices.

• High frequency decoupling :

– Aims at improving the transient response of the system.

– Emphasis is on frequencies close to the bandwidth,

around which interaction is most severe.

– Results are obtained by making use of wholly real

matrices.

Page 55: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Preliminary AnalysisPreliminary Analysis

The original 25th order system is numerically very ill conditioned. The eigenvalues cover a significant range in the complex plane, ranging from -0.00033 to -33.1252.The condition number is 5.24 x 1019.At = 0 the maximum and minimum singular values are 147500 and 50, respectively.The Kalman controllability and observability tests yield a rank of 1, and the controllability and observability gramians are :-

Wc

107 10

7 64 10

7 29 10

4 63 10

8 08 10

317 10

159 10

3 09 10

9 35 10

0

0

16

5

7

15

22

31

33

43

69

.

.

.

.

.

.

.

.

.

Wo

4 47 10

2 84 10

4 49 10

5 29 10

3 29 10

2 29 10

615 10

178 10

122 10

7 02 10

9 11 10

14

4

0

2

2

2

3

3

3

4

5

.

.

.

.

.

.

.

.

.

.

.

Page 56: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Preliminary Analysis

05677.0000000

005677.000000

0005677.00000

0000002426.0000

000005677.000

0000005677.00

00000005677.0

A z

Application of the decoupling zeros algorithm to [sI-A, B] yielded

indicating that the system had 7 input-decoupling zeros,which was confirmed by transforming A and B to spectral form.

Dimensions of )31,29(DC

BA

)24,22(DC

BA

rr

rr

)7,7(A z

Dimensions of

Dimensions of

Page 57: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

H* GEC PI Controller *Lkp = - 0.003; ki = - 0.00001;

pPlusi = Together@kp+ki � sDki � kpipcol = TakeColumns@b4,81, 1<D;oprow = TakeRows@c,82, 2<D;ss21 = StateSpace@a, ipcol, oprowD;clss = GenericConnect@TransferFunction@1D, TransferFunction@s, pPlusiD,ss21,882, 1,83, Negative<<,83, 2<<,81<,83<D;

tfrl = TransferFunction@s, pPlusighigh@@2, 1DDD;RootLocusPlot@tfrl,8k, 0, 0.25<, PlotPoints - >1000,

PlotRange - >88- 0.001, 0.0001<,8- 0.0005, 0.0005<<,PoleStyle - > [email protected],Epilog - > Line@880, 0<,8- zeta wn, wnSqrt@1 - zeta^2D<� .8wn - > 0.002, zeta - > .690107<<DD

Page 58: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

-0.001 -0.0008 -0.0006 -0.0004 -0.0002Re

-0.0004

-0.0002

0.0002

0.0004

Im

H* GEC PI Controller *LSimulationPlot@clss, UnitStep@tD,8t, 4500<,Sampled - > Period@5D, PlotRange - > All,

GridLines® AutomaticD� � Timing

1000 2000 3000 4000

0.2

0.4

0.6

0.8

1

1.2

87.481Second, … Graphics …<

Page 59: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

H* Moving the PI zero closer to the origin more gain *Lkp = - 0.003; ki = - 0.00001;

kp = - 0.01; ki = - 0.000002;

pPlusi = Together@kp+ki � sDki � kpipcol = TakeColumns@b4,81, 1<D;oprow = TakeRows@c,82, 2<D;ss21 = StateSpace@a, ipcol, oprowD;clss = GenericConnect@TransferFunction@1D, TransferFunction@s, pPlusiD,ss21,882, 1,83, Negative<<,83, 2<<,81<,83<D;

tfrl = TransferFunction@s, pPlusighigh@@2, 1DDD;RootLocusPlot@tfrl,8k, 0, 1<, PlotPoints - >200,

PlotRange - >88- 0.003, 0.0001<,8- 0.0015, 0.0015<<,PoleStyle - > [email protected], Epilog - > Line@880, 0<,8- zeta wn, wnSqrt@1 - zeta^2D<� .8wn - > 0.002, zeta - > .690107<<DD

Page 60: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

H* Moving the PI zero closer to the origin *LSimulationPlot@clss, UnitStep@tD,8t, 4500<,Sampled - > Period@5D, PlotRange - > All,

GridLines® AutomaticD� � Timing

1000 2000 3000 4000

0.2

0.4

0.6

0.8

1

87.871Second, … Graphics …<

-0.003 -0.0025 -0.002 -0.0015 -0.001 -0.0005Re

-0.0015

-0.001

-0.0005

0.0005

0.001

0.0015

Im

Page 61: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Design Procedure - 1Design Procedure - 1

• The Nyquist Array after an initial output scaling of diag{0.00001 , 0.001 , 0.001 , 0.1} looks like :

Page 62: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Design Procedure - 2Design Procedure - 2

• The Nyquist Array after swapping the first two outputs (calorific value of fuel gas and bedmass) and closing the bedmass/char off-take loop is :

Page 63: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Design Procedure - 3Design Procedure - 3

• The Nyquist Array of the 3 x 3 subsystem after normalisation and high frequency decoupling at = 0.001 rad/sec is (where the outputs are pressure, temperature and calorific value of fuel

gas) :

Page 64: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Design SummaryDesign Summary

• Implement PI controller on bedmass/char-extraction loop.• Scale inputs and outputs, to normalize them.• Use ALIGN Algorithm for the remaining 3-input 3-output

subsystem.• Design a PI controller for the fast Calorific Value Loop.• Design a PI controller for the fast Pressure Loop.

• Design a Lag-Lead controller for the remaining slow

Temperature Loop.

Output Scaling

GasifierInput

Scalingconstant

decoupling

bedmass PI

temperaturecontrol

pressure PI

cv PI

The control scheme resulting from this approach is as follows :

Page 65: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Controller

29.178.006.0

22.319.175.0

66.054.065.0

1

Constant Pre-compensator Constant Post-compensator

Dynamic Controller

)001.0s(s

)0005.0s(0015.0s

02.01

s

01.01

s

0001.0100

05.0

00001.0

0001.0

001.0

Page 66: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Model Simplification

20 40 60 80 100

50

100

150

200

250

2500 5000 7500 10000 12500 15000

-4000

-3000

-2000

-1000

1000

2000

Green = high - order

80.991Second, Null<II3499.26s7 +238.081s6 +0.885487s5 +

0.00135158s4 +1.05604´ 10- 6 s3 + 4.42642´ 10- 10 s2 + 9.42066´ 10- 14 s+ 7.95078´ 10- 18M‘Is8 +0.455558s7 +0.0239052s6 + 0.0000735781s5 +

1.00076´ 10- 7 s4 + 7.42698´ 10- 11 s3 +3.1183´ 10- 14 s2 + 7.0044´ 10- 18 s + 6.55111´ 10- 22MM̂T80, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1<80, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1<

264 � Abs@ghigh@@3, 2DD� . s - > 0.1707ID0.0330784

Page 67: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

-0.001 -0.0005 0.0005Re

-0.0004

-0.0002

0.0002

0.0004

Im

Root-locus diagram of g1,1(s)

Model Simplification

Page 68: The Use of Mathematica in Control Engineering Linear Model Descriptions Linear Model Transformations Linear System Analysis Tools Design/Synthesis Techniques.

Theorem: By using just the first input of a givenMIMO system, it is almost always possible toarbitrarily assign 1 self conjugate poles of thesystem, and make these poles uncontrollable from the other inputs, provided that the system[A, b1,C] has 1 controllable and observablepoles, where b1 is the first column of the input matrix (B), where

m1

This result can be compared with a previous resultdeveloped by Munro and Novin-Hirbod (1979) for the case of dynamic output feedback, where the degree r of the necessary compensator is given by

),mmax(

)1m(nr