Download Presentation
The Use of Mathematica in Control Engineering

Loading in 2 Seconds...

1 / 68

# The Use of Mathematica in Control Engineering - PowerPoint PPT Presentation

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

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

## PowerPoint Slideshow about 'The Use of Mathematica in Control Engineering' - Thomas

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
The Use of Mathematica inControl Engineering

Neil Munro

Control Systems Centre

UMIST

Manchester, England.

• Linear Model Descriptions
• Linear Model Transformations
• Linear System Analysis Tools
• Design/Synthesis Techniques
• Pole Assignment
• Model-Reference Optimal Control
• PID Controller
• Concluding Remarks

Linear Model Descriptions

• The Control System Professional currently provides
• several ways of describing linear system models; e.g.
• For systems described by the state-space equations

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

• For systems described by transfer-function relationships

where s is the complex variable

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}}]

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

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 yields

New Data Objects

• Four new data objects have been introduced; namely,
• Rosenbrock’s system matrix in polynomial form
• Rosenbrock’s system matrix in state-space form
• The right matrix-fraction description of a system
• The left matrix-fraction description of a system.

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

The system matrix in polynomial form is then defined as

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)].

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

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.
• 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
Linear Model Transformations

G(s)

[A, B, C, D]

G(s)

System Matrix P(s)

in polynomial form

G(s)

System Matrix P(s)

in state-space form

[A, B, C, D]

System Matrix P(s)

in polynomial form

[T(s),U(s),V(s),W(s)]

Least Order

P1(s)  P2(s)

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)}}]

ss = StateSpace[tfsys]

rff =RightMatrixFraction[tfsys]

rff = RightMatrixFraction[ss,s]

New Data Transformations

tfsys = TransferFunction[s,

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

ps = SystemMatrix[tfsys,TargetFormRightFraction]

rff = RightMatrixFraction[ps]

TransferFunction[%]

ps = SystemMatrix[tfsys,TargetForm LeftFraction]

lf = LeftFractionForm[

]

New Data Transformations

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

rff = RightMatrixFraction[tfsys]

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

New Data Transformations

RightMatrixFraction[%]

SystemMatrix[dt,TargetForm->RightFraction]

SystemMatrix[dt]

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

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.

System Analysis

Controllable[ss]

Observable[ss]

ss =[A, B, C, D]

Controllable[ps]

Observable[ps]

Controllable[ps]

Observable[ps]

MatrixLeftGCD[T(s) U(s)]

MatrixRightGCD[T(s) V(s)]

SmithForm[T(s) U(s)]

McMillanForm[G(s)]

Decoupling Zeros

Decoupling Zeros

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.

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
Gasifier

Model Format

A is 25 x 25 B is 25 x 6

C 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

Preliminary 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 w = 0 the maximum and minimum singular values are

147500 and 50, respectively.

The Kalman controllability and observability tests yield a rankof 1, and the controllability and observability gramians are :-

Preliminary Analysis

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

Dimensions of

Dimensions of

Dimensions of

indicating that the system had 7 input-decoupling zeros,

which was confirmed by transforming A and B to spectral form.

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)

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

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

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

Design Methods

Synthesis Methods

Pole Assignment

PID Controller

Optimal Control

Nyquist Array

Model Ref.

Opt. Control

Robust NA

Model-Order Reduction

Nonlinear Systems

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

Pole Assignment

• We consider four main types of approaches
• ACKERMANN’S FORMULA
• SPECTRAL APPROACH
• MAPPING APPROACH
• EIGENVECTOR METHODS

Control Systems Centre - UMIST

Ackermann’s Formula

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

Spectral Approach

where

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

Control Systems Centre - UMIST

Mapping Approach

The state-feedback matrix is given as

where  is the controllability matrix of [A, b]

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

Control Systems Centre - UMIST

Eigenvector Methods

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

where the mi are randomly chosen scalars and the uciare the closed-loop system eigenvectors calculated from

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

Control Systems Centre - UMIST

Comparison of Dyadic Methods

under Numeric Considerations

Control Systems Centre - UMIST

Model-Reference Optimal Control

Model Reference LQR System

The resulting optimal feedback controller Ko can be partitioned as

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

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

Model Reference LQR feedback paths.

Model Reference LQR System Closed-Loop.

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

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

The PID Controller
• 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

Test compensator arrangement

Test compensator space

The Nyquist plot for Kp = 0.5 and Ki = 0.5

The admissible PI compensator space

Stability

Performance

Robustness

Simplicity

Transparency

increasing

difficulty

Design Requirements

Acknowledgements

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

Control Systems Centre

UMIST

D-Stability

 = Sin()

Im

D

Re

d

Control Systems Centre

UMIST

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.

The Nyquist Plot Approach

The resulting stability boundary is

Note that the origin is not included in the

region because the basic system is unstable.

Control Systems Centre

UMIST

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
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 criterionreduces as

Y < L < R

Mathematica Code

Gasifier

Model Format

A is 25 x 25 B is 25 x 6

C 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

• 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.
Achieving 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.
Preliminary 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 w = 0 the maximum and minimum singular values are

147500 and 50, respectively.

The Kalman controllability and observability tests yield a rankof 1, and the controllability and observability gramians are :-

Preliminary Analysis

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

Dimensions of

Dimensions of

Dimensions of

indicating that the system had 7 input-decoupling zeros,

which was confirmed by transforming A and B to spectral form.

Design Procedure - 1
• The Nyquist Array after an initial output scaling of diag{0.00001 , 0.001 , 0.001 , 0.1} looks like :
Design 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 :
Design Procedure - 3
• The Nyquist Array of the 3 x 3 subsystem after normalisation and high frequency decoupling at w = 0.001 rad/sec is (where the outputs are pressure, temperature and calorific value of fuel gas) :

bedmass PI

Input Scaling

Gasifier

Output Scaling

cv PI

constant decoupling

pressure PI

temperature

control

Design 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.

The control scheme resulting from this approach is as follows :

Controller

Constant Pre-compensator Constant Post-compensator

Dynamic Controller

Model Simplification

Root-locus diagram of g1,1(s)

Theorem: By using just the first input of a given

MIMO system, it is almost always possible to

arbitrarily assign 1 self conjugate poles of the

system, and make these poles uncontrollable

from the other inputs, provided that the system

[A, b1,C] has 1 controllable and observable

poles, where b1is the first column of the input

matrix (B), where

This result can be compared with a previousresult

developed by Munro and Novin-Hirbod (1979) for the case of dynamic output feedback, where the degree r of the necessary compensator is given by

Control Systems Centre - UMIST