Transcript
Page 1: An expert system for multivariable controller design

Autnntatica. Vol. 29. No. 4. pp. 953-968. 1993 0005-1098193 $6.00 + 0.00 Printed in Great Britain. ~ 1993 Pergamon Press Ltd

An Expert System for Multivariable Controller Design*

J. LIESLEHTO,t J. T. TANTI'U~t and H. N. KOIVO§

A software package for the design of centralized and decentralized multivariable controllers has been developed. The software package consists of numerical calculation software and a help system implemented using expert system and hypertext techniques.

Key Words--Expert systems; multivariable control systems; PID control; hypertext; computer-aided design.

AIwt r~ l - - ln this paper a software package for the design of decentralized and centralized multivariable controllers is described. The software package includes several numerical methods for multivariable controller design as well as an expert system to assist the user. The user interface of the expert system employs hypertext techniques. A continuous- time transfer function matrix is used as a process model. When the process model is known this software package can be used to select a control structure and to tune controllers. The paper first describes the different subtasks of multivariable controller design. Next a short description of the design and analysis methods included in the software package is given. A description of the expert system and a design example finish the paper.

INTRODUCTION

THE TREND IN computer aided control system design has been towards integrated design packages using a command language as a user interface (Rimvall, 1988). One of the first such packages was Matlab (Moler, 1980). Matlab was originally a general purpose linear algebra package, but different Matlab-derived control packages or toolboxes were soon developed. Other control design environments with a command interface include CTRL-C, Matrixx

° Received 9 January 1991; revised 6 November 1992; received in final form 25 November 1992. The original version of this paper was presented at the IFAC Symposium on Intelligent Tuning and Adaptive Control (IFAC'91) which was held in Singapore, during January 1991. The Published Proceedings of this IFAC Meeting may be ordered from: Pergamon Press Ltd, Headington Hill Hall, Oxford OX3 0BW, U.K. This paper was recommended for publication in revised form by Associate Editor K.-E. Arzen under the direction of Editor A. P. Sage. Corresponding author Lieslehto's Telephone 358-31-162657; Fax 358-31-162340.

t Tampere University of Technology, Control Engineering Laboratory, Tampere, Finland.

~t Tampere University of Technology, Information Tech- nology, Tampere, Finland.

§ Tampere University of Technology, Control Engineering Laboratory, Tampere, Finland.

953

and PC-Matlab. A survey on the use of packages for computer-aided design in control systems in the U.S.A. (Herget, 1988) shows that the aforementioned programs are the most widely used environments for control design. The power of these packages lies not only in their computational capabilities but also in their extendability. For example, half-a-dozen control design packages have been built on top of Matlab, each containing dozens of new com- mands. Because of the extendability, control design packages have developed into integrated tools supporting all subtasks of control design. The increased functionality has caused also increased complexity. Therefore, it is obvious that a considerable amount of knowledge is required from the user before he is able to take full benefit of all the features offered by these complex control design packages.

A control design package can be used efficiently only if the required design knowledge is easily available. One way to achieve this is of course on-line documentation. An on-line documentation system can be made flexible to use by applying modern windowing and hyper- text techniques. However, such a system can only show the design knowledge to a user. The user himself has to apply this knowledge to the problem he is solving. Expert systems have been used to take the integration of numerical calculation software and design knowledge a step further. An expert system is able to apply its knowledge to solve problems. It can help a user to interpret numerical results and to decide how to proceed with a design session.

The use of expert systems in computer-aided control system design has been an active area of research during the 1980s. The Computer-Aided

Page 2: An expert system for multivariable controller design

954 J. LIESLErtTO et al.

Control Engineering (CACE-III) program (James et al. 1985) performs lead-lag precom- pensator design for single-input-single-output systems. When using this program the user does not access numerical analysis programs directly but through an expert system interface. The Intelligent Help System (IHS) expert system (Larsson and Persson, 1987) provides assistance in the system identification problem and supports access to a subset of the IDPAC numerical analysis routines. The expert system compares the actions taken by the user with scripts that represent typical command se- quences and events associated with them. Based on this information it gives advice on how to continue towards the assumed goal. Pang (1991) has developed an expert system for muitivariable controller design. This expert system is designed to be a part of an adaptive controller. It is able to redesign a multivariable controller automatically.

In this paper a software package for the design of centralized and decentralized multivariable controllers is represented. The task of designing controllers for muitivariable systems involves two major design steps. First a designer has to select the control structure and then design and tune the controllers. The software package consists of numerical calculation software and an expert system. The user interface of the expert system employs hypertext techniques. The numerical methods offer several functions for the interaction analysis and control structure selec- tion as well as for the tuning and analysis of multi-input-multi-output (MIMO) PID control- lers. A continuous-time transfer function matrix model of the process is needed as initial data. The expert system monitors the actions taken by the user. Based on the information gathered during the design process it is able to assist the user in problem situations. The software package has been developed on a Macintosh IIfx computer. The numerical methods are coded using Matlab (MathWorks, 1991). The know- ledge base of the expert system is built using Nexpert Object (Neuron Data, 1989) and the user interface is implemented as a HyperCard stack (Apple Computer, 1989). The expert system is historically related to the expert system for interaction analysis (Lieslehto and Koivo, 1987, 1991) and the expert system for tuning PID controllers (Lieslehto et al . , 1988).

CONTROLLER DESIGN The design process is divided into four

different subtasks as depicted in Fig. 1. The calculation of interaction matrices and interac-

INTERACTION MATRICES

INTERACTION MEASURES

CONTROLLER TUNING

CONTROLLER ANALYSIS

L.

FIG. 1. Subtasks of controller design.

tion measures are the two subtasks of the control structure selection. After the control structure selection controllers are tuned and analysed. These two steps are often repeated in an iterative manner.

Interaction matrices help the designer to find possible candidates for the control structure of a decentralized controller. These matrices contain information about the interactions between inputs and outputs.

Based on the information from the interaction matrices the designer selects one or more candidates for the control structure. Interaction measures are then used to estimate the performance deterioration of decentralized con- trollers compared to a full centralized controller. If the interaction measures indicate possible problems then the designer has to look at the interaction matrices again and try to find another control structure. Otherwise he is ready to start controller tuning.

There are several methods for the tuning of multivariable PID controllers. These methods usually give some rough tuning matrices and the user can find the final tuning matrices by multiplying the rough tuning matrices with fine tuning parameters. The tuning is typically an iterative process. Based on the results from different analysis methods the values of fine tuning parameters are changed and the control- lers are retuned.

The last step is to analyse the performance and robustness of the designed controller. This is usually done using both simulations and frequency domain methods. If the analysis indicates any problems the designer has to

Page 3: An expert system for multivariable controller design

ES for mutivariable controller design 955

change the fine tuning parameters or try some other tuning methods. Of course, he can also change the control structure.

INTERACTION MATRICES

The control structure should be selected in such way that the inputs and outputs that strongly interact with each other are connected with a feedback. The number of possible control structures rapidly increases as the number of inputs and outputs increases. Several methods proposed in the literature aim to produce an interaction matrix which describes interactions between the inputs and outputs of a MIMO process. These methods help a designer to find possible control structures. The software package includes the classical relative gain array method proposed by Bristol (1966), the dynamic relative gain array method proposed by Tung and Edgar (1981) and the singular value analysis method by Lau et al. (1985). Bristol's relative gain array is probably the most well-known interaction matrix. Each element in a relative gain array is the ratio of two gains representing first the process gain in an isolated loop and, second, the apparent process gain in the same loop when all other control loops are closed. The ratio of these gains defines the relative gain array with elements

#ii = tPijyj, (1)

where ~Po is an element in the steady-state gain matrix G(0) and Yii is an element in the inverse of the steady-state gain matrix G-*(0). Bristol suggested that the proper input-output pair for single loop control is the one having the largest positive #o value.

The relative gain analysis is a steady-state analysis and does not explicitly include dynamic effects. Several extensions including also the dynamic effects have been proposed. Out of them the toolbox includes the dynamic RGA proposed by Tung and Edgar. The elements of the dynamic RGA are calculated as follows:

ec, j = g,i( s ) ]/ ji (2)

where g,j(s) is an element in the process transfer function matrix G(s ) and '/i~ is an element in the inverse of the steady-state gain matrix G-~(0). Both the RGA and the dynamic RGA can be calculated only if the number of inputs is equal to the number of outputs.

The third method in the toolbox is proposed by Lau, Alvarez and Jensen. This method is based on singular value analysis and it is applicable also for process models with unequal numbers of inputs and outputs. Interactions are analysed using the singular value spectral

representation of a m x n open loop matrix transfer function G(s ) whose rank is q. This representation is

q

G(s ) = ~ o,(s)W~(s), (3) i = 1

where o~ are the singular values of G and W~ are the dyadic expansion matrices defined in terms of singular vectors as follows:

Wi(s) = z i (s )v~(s) . (4)

Through this expansion the system transfer function is expressed as a linear combination of the q nodal contributions. Each of the nodal terms consists of a scaling factor oi and a rotational transformation W~. Lau, AIvarez and Jensen suggested that the maximum entries in the rotational matrices define the input-output pairings for single loop control.

A new interaction matrix is also introduced. This method is based on the scaling of input and output variables. Although large gain between an input and an output indicates strong interaction, the process gain matrix cannot be directly used for interaction analysis, because it depends on the scaling of input and output variables. Anyway, by rescaling the input and output variables we can find a scaled gain matrix the elements of which are directly comparable with each other. In the scaled gain matrix the average absolute value of the elements of each row and column is one. So, values larger than one indicate strong interaction and values smaller than one indicate weak interaction.

INTERACTION MEASURES

Using interaction matrices we are able to find possible candidates for the control structure. Interaction measures are used to find out whether these control structures can be used or not. Interaction measures give the user informa- tion about the stability of the decentralized control and the loss in performance caused by these control structures. The interaction meas- ures included in the software package are the spectral radius of the Jacobi iteration matrix (Mijares et al., 1986) and the structured singular value interaction measure (Grosdidier and Morari, 1986).

The interaction measure proposed by Mijares and others is based on the idea of diagonal dominance. They suggest that a matrix is diagonally dominant when the off-diagonal terms make only a small contribution to the inverse of the matrix. The inverse of a matrix G can be calculated using the Jacobi method of iteration. The full matrix G and the iteration matrix A are

Page 4: An expert system for multivariable controller design

956 J. LIESLEHTO et al.

FIG. 2. Interaction as additive uncertainty.

related as follows:

G = (~(1 - A), (5)

where G is the block diagonal matrix which has as its elements the block diagonal elements of G. The inverse of G is now

G -1 = (1 - A)-I(~ -t , (6)

G - ' = ( I + A + A2 + A3 + . . . ) G - ' . (7)

The matrix series converges if the spectral radius of A is less than one. In such a case the matrix G is block diagonally dominant. Mijares and others suggest that the control structure should be selected in such way that the corresponding Jacobi iteration matrix has the smallest spectral radius of all possible control structures.

Grosdidier and Morari (1986) have studied a system depicted in Fig. 2 where interactions are represented as additive uncertainty. A controller

C = diag {Ct, C2 . . . . . C,}, (8)

is to be designed for the system

G = diag {GI,, G22 . . . . , G , , } , (9)

such that the block diagonal closed-loop system with the transfer matrix

!:I = 0 C ( 1 + G C ) -I, (10)

is stable. The interaction measure expresses the constraints imposed on the choice of the closed-loop transfer matrix

/ t = diag {H,,/q2 . . . . . /q,}

for the block diagonal system, which guarantee that the full closed-loop system

H = G C ( I + G C ) -~ (11)

is stable. The SSV interaction measure gives the following constraint for the stability of the closed-loop system H:

#(/~,(jco)) </ t - t (L, , ( jco)) ,

i = 1 , 2 . . . . . n, co->O, (12)

where /~ denotes the structural singular value and LH is the relative error matrix

L,, = (G - G ) O - ' . (13)

It is assumed that G ( s ) and t~(s) have the same RHP poles and t h a t / t ( s ) is stable.

The software also includes functions to test whether a system is decentralized integral controllable or not. A plant G is decentralized integral controllable (DIC) if there exists a diagonal controller CKs -I (where K is a diagonal gain matrix with positive entries) with integral action such that the closed-loop system is stable and the gain of any subset of loops can be reduced to K~ = diag {k~e~}, 0 <-- e, -< 1 with- out affecting closed-loop stability. This means that any subset of loops can be detuned or taken out of service while maintaining the stability of the rest of the system.

The software package includes functions that calculate the following conditions that are used to test whether an n x n system is DIC.

det (G+(0)) >0 , (14)

Re {A~(G+(0))} ->0, i = l, 2 . . . . . n, (15)

Re {Z, (Ln(0))}->- l , i = 1, 2 . . . . . n, (16)

R G A : A , ( G ( 0 ) ) > 0 , i = l , 2 . . . . . n. (17)

G+(0) is derived from the steady-state gain matrix G(0) by multiplying each column with + 1 or - 1 such that all diagonal elements are positive, L n is the relative error matrix and ~.~ is an eigenvalue. The last condition tests the diagonal elements of the relative gain array. All conditions are necessary but not sufficient.

CONTROLLER TUNING The software package includes four algorithms

for tuning of MIMO PID controllers (Koivo and Tanttu, 1991). The first one was proposed by Davison (1976). This method was later modified by Penttinen and Koivo (1980). Another modification to this method was proposed by Maciejowski (1989). The fourth method is based on the ideas of internal model control presented by Rivera et al. (1986). A version of the IMC method has been developed that enables the user to use the method for tuning of muitivariable PID controllers. All four tuning methods allow the design engineer to retune the controller using fine tuning parameters.

Davison proposed the following tuning mat- rices for a PI-controller:

KR = 6 G - ' ( O ) , (18)

K, = eG- ' (O) . (19)

The inverse of the steady-state gain matrix G-I(0) is the rough tuning matrix and 6 and • are the fine tuning parameters.

If there exists a state space representation of the transfer function matrix G ( s )

Yc = A x + Bu, (20)

y = Cx, (21)

Page 5: An expert system for multivariable controller design

ES for mutivariable controller design 957

then the transfer function matrix has the series expansion

CB C A B CA2B G(s) = --s + - 7 + - 7 - + . . . (22)

Penttinen and Koivo used the first term of the series expansion as the rough tuning matrix of the P-part of the controller

Kp --- 6 ( C B ) - L (23)

The selection aims to decouple the system at high frequencies. The I-part of the controller is selected as in Davison's method.

In the Penttinen-Koivo method Kp is designed in order to decouple the system at high frequencies. The problem is that Kp is likely to decouple the system at frequencies much above the desired bandwidth of the system. Maciejow- ski suggests that Kp should be designed to decouple the system at a frequency around the desired bandwidth tab of the system. The method gives the following tuning matrices for a multivariable PI controller:

Kp ~- 6G-t(jtOb), (24)

K, = EG-i(0). (25)

Because G-l(j tob) is usually complex, a real approximation of it is needed for the compen- sator design. This real approximation can be calculated using the ALIGN algorithm (Ed- rounds and Kouvaritakis, 1979).

The same rough tuning matrix is usually used for the D-part of the controller as for the P-part of the controller when a PID controller is tuned by these three methods. It has to be remembered that these methods were originally developed for tuning of PI controllers.

Rivera et al. (1986) have proposed a single-input-single-output (SISO) PID controller tuning method based on the Internal Model Control (IMC) principle. The structure of an IMC controller is depicted in Fig. 3. The IMC design process is divided into two steps. First the process model Gm is factored:

(3,, = G+ G_, (26)

d

? FiG. 3. Internal modeleontrol.

so that G+ contains all the time delays and unstable zeros of the model; consequently G -I is stable and causal. However it may be improper. So the IMC controller Go is defined as

Go = GT-IF, (27)

where F is such a low-pass filter so that Go is proper or if derivative action is allowed has a zero excess at most one. Rivera, Morari and Skogestad suggest that a good choice for the filter is

1 F = (1 + Es) ------'-'-'-~ " (28)

The time constant E of the filter is the fine tuning parameter of the IMC method. The classic feedback controller Gc is related to the IMC controller via the transformation

60 Gc = 1 - GmGo " (29)

For several low order transfer functions this IMC design procedure leads to PI and PID controllers.

The following heuristic method has been used in the software package to calculate the tuning matrices of a MIMO PID controller. First a SISO PID controller is designed for each element gl/(s) of the transfer function matrix G(s) using the IMC method as described above. As a result we get the tuning parameters kp,,, ki,,, kd,, of a PID controller separately for each element g~/(s) of the process model. Then the tuning matrix for the P-part of the MIMO controller is calculated as follows:

F1/kp" 1/kp, 2 . . . 1/ kp2~.

. (30) / KP =/l/kp" 1/k., -]-'

Ll/kp., l/~:p.~ 1/~:,, l The I-part and D-part of the controller are calculated in a similar way. Each SISO controller can have a different fine tuning parameter, although usually good results are achieved when all fine tuning parameters have the same value.

Some insight into the above heuristic method can be gained by considering an m × m process model G the elements of which are all minimum phase transfer functions. One possible IMC controller for the process is

Q = G - t F , (31)

where F = 1/(;ts + 1)L The IMC controller Q and the classic controller C are related through

C = Q(I - G Q ) - L (32)

When Q from equation (31) is substituted into

Page 6: An expert system for multivariable controller design

958 J. LIESLEHTO et al.

equation (32) we obtain

C = G - ' F ( I - G G - ' F ) -1

= G - ' - - 1 I ( I 1 l ) -1 AS+I A s + I

1 = --" G-I. (33)

As

Let us now consider a controller designed using the equation (30) and the corresponding equations for the I-part and D-part. When all transfer matrix elements gi/are minimum phase and the same fine tuning parameter ~. is used for all controllers then the scalar controllers are

1 1 (34) c,/ - As g,j "

Now the multivariable controller of equation (33) can be calculated as follows:

r l /Cl l 1/clz "'" 1/c1,,-1 -l

C = / 1/..c2' 1 / C 2 2 " ' ' 1 / C 2 n ~ . . . . . (35)

Ll/c.~ 11c,2 . . . l lc , , , . j

When our process models are simple then the scalar controllers are of the PID type:

c,j = kp,, + k~,, ~ + ka,y. (36)

If this is substituted into the equation (35) we usually get a multivariable controller the structure of which is more complex than PID. Equation (30) and the corresponding equations for the I-part and D-part give a controller that approximates the multivariable controller of equation (35). This approximation is based on the assumption that at all frequencies one of the terms in equation (36) is dominating. For example, at low frequencies equation (36) is approximated by ci/~- ki,,(1/s). Substituting this into equation (35) gives us the l-part of the multivariable PID controller.

CONTROLLER ANALYSIS

The software package includes several func- tions for the analysis of the performance and robustness of the designed control system. Both frequency domain measures and time domain simulations can be used. A more detailed description of the frequency domain methods used in the software package is given in the textbook by Morari and Zafiriou (1989).

Nominal performance is measured by compar- ing the maximum singular value of the sensitivity function with a user-defined performance

FtG. 4. Four uncertainty descriptions.

weight. The performance specification is

O(E(jto))wp(jto) < 1, t o - 0 , (37)

where the sensitivity function E = (I + GC)- I . The different uncertainty descriptions avail-

able in the software package for robustness analysis are depicted in Fig. 4. An uncertainty can be described either as a multiplicative input uncertainty, multiplicative output uncertainty, additive uncertainty or inverse multiplicative output uncertainty. In the case of an unstruc- tured uncertainty the matrices Lt, Lo, LA and Le are full matrices. These perturbations are measured in terms of bound on their maximum singular values. The conditions for robust stability are different depending on which uncertainty model is chosen. These conditions are

O(Ht)lt < 1, to >- O, (O(Lt) <- it), (38)

O(H)io < 1, to >- O, (O(Lo) <- io), (39)

O(CE)iA < 1, to >- O, (O(LA) ~ iA), (40)

O ( E ) I E < I , to>-O, (O(LL)<--IL.), (41)

where E = (1 + GC)-~ is the sensitivity function, H = G C ( I + GC)-1 is the complementary sen- sitivity function and Ht = (1+ C G ) - t C G is the nominal closed-loop transfer function as seen from the input of the process.

Uncertainties are described with an unstruc- tured model when the user does not know the sources and locations in the system. However, the stability bounds derived using unstructured uncertainty models can be very conservative. When the exact sources of uncertainty are known, less conservative stability bounds can be found using structured uncertainty models. These bounds involve/~(M) where # denotes the structured singular value and M is the intercon- nection matrix that is a function of the controller

Page 7: An expert system for multivariable controller design

ES for mutivariable controller design 959

Pro. 5. Weighted multiplicative input and output un- certainties.

C, the process model G and the uncertainty model.

The software package includes functions that calculate stability bounds for weighted multi- plicative input and output uncertainties depicted in Fig. 5. The uncertainty matrices are

L , = W2,AtW,,, O(A,)-< 1, t o - 0 , (42)

L o = W2oAoW, o, O(Ao)-< 1, to---0. (43)

If the source of uncertainty is in the manipulated variables, then A~ is diagonal, W,l = diag {w,i} and Wz~ = I. If the source of uncertainty is in the measured variables, then A o is diagonal, W,o = diag {woi} and Wzo = 1.

Robust stability is guaranteed for all A such that O(A) < 1 if and only if #(M) < 1, '¢to. # is computed with respect to the structure A. The interconnection matrix is in the case of multiplicative input uncertainty

M = - W , tCG(I + CG)-'W2,, (44)

and in the case of multiplicative output uncertainty

M = - W I o G C ( I + GC)-~W2o. (45)

In the case of simultaneous multiplicative input and output uncertainty, A = diag {A t, Ao} and the interconnection matrix is

[ - WuG-'HGW2~ - WltG-IHW2o] M = L WIoEGW21 - W m H W 2 o J'

(46)

and where E and H are the sensitivity complementary sensitivity functions.

Robust performance can also be analysed using the structured singular value. The software package includes functions to calculate robust performance measures for multiplicative input and output uncertainties. The multiplicative input and output uncertainties shown in Fig. 4 are assumed to be bounded by

O(L,) <- it, (47)

O(Lo) <- io, (48)

and the scalar performance weight w places a bound on the sensitivity function

O(Ew) < 1, to ~- O. (49)

Bounds for robust performance involve /~(G)

where G is the interconnection matrix that is a function, of the controller C, the process model G, the performance weight w and the uncer- tainty model. In the case of a multiplicative input uncertainty the interconnection matrix is

G = [-G-'H_Gi, -G-'l-lwl, (50) EGII Ew J

and in the case of multiplicative output uncertainty

I

~ n l 0 G = |

~ n w ] (51) L t~l-o Ew J"

Robust performance is guaranteed if and only if /~(F) < 1 where # is evaluated with respect to the block diagonal matrix A = diag {Au, Ap} and A~ and Ap are full matrices of the size of the process model.

The user can also simulate the behaviour of the closed-loop system. The software package has an easy-to-use function for the simulation of multivariable delayed processes. The simulation program allows the user to choose different reference signals, controller noises and measure- ment noises.

EXPERT SYSTEM

The task of the expert system is to monitor the actions taken by the user and to help him in possible problem situations. The user interface of the software package has three windows: a Matlab command window, a Matlab graphics window and a HyperCard window which serves as a user interface to the expert system. During a design session the user does numerical calcula- tions in the Matlab command window and plotting in the Matlab graphics window. After each numerical calculation he is able to load the results into the knowledge base of the expert system by clicking a button in the HyperCard window. This way the expert system gathers information about the design process. In a problem situation the user can start the inference engine of the expert system by clicking a button in the HyperCard window. The expert system will process the information gathered so far and draw conclusions. As a result of this analysis the user will be shown cards containing helpful information.

Figure 6 describes the way different parts of the software package communicate with each other. The results from Matlab functions are written into a file. If the user wants, he can load these results into the knowledge base of the expert system. A HyperCard program reads the results from the file and makes the necessary changes to the knowledge base. Data can be

Page 8: An expert system for multivariable controller design

960 J. LIESLEHTO et al.

I Cal#UA1LtAi ns 1 I

FILE I ( User interface 1

HyperCard I

HyperBridge I I Expert sY stem ]

Nexpert Object

FIG. 6. Structure of the software package.

transferred between Hypercard and Nexpert Object using a program called HyperBridge. From the HyperCard user interface the user can start the inference engine of the expert system. The expert system analyses the design session so far and draws conclusions. Using the HyperBridge interface program Nexpert Object tells HyperCard what cards should be shown.

The Matlab toolbox consists of approximately 80 functions. Out of them around 30 are upper-level functions called by the user and the rest are auxiliary functions. A new object is created in the knowledge base of the expert system each time that numerical results from Matlab are loaded into the knowledge base. These objects are placed into a class hierarchy consisting of some 50 classes and subclasses. The conclusions drawn by the expert system are based on the comparison of the contents of these objects with the rules of a rule base. The rule base includes almost 200 rules. One of the rules is Rule 3

I f SessionControi.LatestCommandis"dictest 1" A n d Dictestl.Result is less than or equal to 0.0

Then dictestlal is confirmed.

This rule is fired when the result from the test of decentralized integral controllability of equation (14) is less than or equal to zero. The value of the Boolean variable d i e t ~ l a l is set to be true. The next rule to be fired is Rule 137

if there is evidence of dictestlal

Then SessionControI.Dummy is confirmed. An d Show "Dictest la 1".

As a result of the firing of this rule a HyperCard named "Dictestlal" will be shown to the user. The card contains the interpretation of the calculated numerical result. In this case the card "Dictestlal" tells the user that a negative value returned by the Matlab function dictestl means that the system under study is not decentralized integral controllable. After each expert system consultation the user will be shown one or two cards containing useful information. There are 140 different cards altogether.

Several cards are shown in the figures of this article. At the bottom of the cards there are seven buttons that are used for controlling the expert system and the user interface. Clicking the button "Matlab" makes the Matlab window active. "Restart" empties the knowledge base and starts a new session. "Load data" runs the program that reads data written by a Matlab function from a file and makes appropriate changes into the knowledge base. The button "Expert" is used to start the inference engine of the expert system. The three arrow buttons are used to find the previous and next cards in the stack and to return to the previously shown cards. The text in the cards is mouse-sensitive. The user can get further information about any subject by clicking the mouse over the word he is interested in.

DESIGN EXAMPLE

The process considered in this example is a high-purity distillation column. The process model is based on the distillation column model given by Morari and Zafiriou (1989). The manipulated variables distillate (D) and boilup (L) are used to control the top (Yo) and bottom (xB) compositions. The process transfer function matrix is

I -87.8 1.4 1 t~(s)= 194s+1 1 5 s + l (52)

-108.2 -1.4 "

194s+1 15s+ l

The uncertainty in the process model is described by a multiplicative input perturbation where

Lt(s) = wt(s)A(s), a(A(ito))-< 1, to_> 1, (53)

and the magnitude bound of the uncertainty is

5s+ 1 wl(s) = 0.2 0.5s + 1 " (54)

Page 9: An expert system for multivariable controller design

ES for mutivariable controller design 961

This allows for an input error of up to 20% at low frequencies. The uncertainty bound in- creases with frequency and reaches a value of 1 at to ~ 1 rain - t . This allows, for example , for a t ime delay of about 1 rain in the response between the inputs and outputs.

The performance specification is

f ~ ( E ) < l w e l - ' V P e H , to>-O, (55)

where I I is the set of possible plants defined by (53) and (54) and the per formance weight is

3 0 s + 1 we = 0.5 3-----~- (56)

This implies that we require integral action (we(0)=o0). It allows an amplification of disturbances at high frequencies by a factor of two at most (lim~_,=lwp(ito)[-l=2). The de-

sired closed-loop bandwidth is approximately 0.03 m i n - ' .

The expert system can be used for the tuning of both centralized and decentralized controllers. In this case we decide to design a centralized multivariable controller. The user will be shown a card introducing the available tuning methods (Fig. 7). He can get more information about a specific tuning method by clicking the mouse over the name of the tuning method. For example, the card in Fig. 8 is shown when the mouse is clicked over the word mimc.

The design procedure is an iterative process where controller tuning and controller analysis follow each other. In this case the user calculates the initial tuning using the function mimc with a fine tuning paramete r value ). = 1. The function mime uses an IMC-based method presented by Lieslehto et al. (1991). The tuning matrices of a

Control ler tunin9

After the control structure selection you are re~ly to tune the controllers.

Multivanable PID-controllers are tuned ~ MATLAB commznd today, mrr=~, rapid and mime

The tumng metlx~ used by these functions are: the Dawson method by mdav, the Maeiejovski method by mm~, the Penttimn-Koivo method by rapid and the IMC-based r n e ~ by mimc.

Matlab ]1 .ester, ] ~ [ ~ 1 to.ddata][ [.pert

FIG. 7. Controller tuning methods.

[kp, kt, kd] = mimc (nm, dn, dl, ft , da, ro, ds)

Mimc calculates the tumr~ matrices of a MIMO PID-controller using an IMC-based method

In nm... nun~rators dn... denominators dl .... delays ft ~ . fine tuning parameters da .... delay apprommations (optional) ro .... offset for a ramp set-point chanse (optional) cs .... controller structure (optional)

Out kp .. P-controller ki .... l-controller kd~. D-controller

114

FIG. 8. Matlab command mimc.

Page 10: An expert system for multivariable controller design

962 J. LwsH-Hro e/ al.

C o n t r o l l e r a n a l y s i s

Decode has several functions for the analysis of MIMO controllers Dsim and dsimu are funchons for stmulation Nsnyqff is the function for the analysis of normnal stability Npcsftf, Npcsitf and npseftf are functions for the analysis of normnal performance Robust stabihty can be analysed using the functions rsuatf, rsuimotf, rsumatf, rsumoff, rssrmtf, rssmoff and rssrmoff and finally robust performar~e is analysed by rprmff and rpmoff Select the features you are gotng to analyse

SlmulaUon Nomanal stability ® Notarial performance ® Robust stability ® Robust performance ® (~

Fl(;. 9. Controller analysis methods.

multivariable PI controller C(s) = Kp + Kis-~ are

f - 0 . 9 8 9 8 -0 .9898] (57) Kp = L 5.9147 - 4 . 7 9 9 6 J '

[-0.0051 -0.00511 (58) Ki = 0.3943 -0 .3200J"

After the calculation of the initial tuning parameters the expert system introduces the available analysis methods by showing the card in Fig. 9. The user can select the analysis methods he wants to use. In this case the user has decided to use all available methods. The first thing to analyse is nominal stability using the function nsnyqtf. The analysis of nominal stability is based on the following theorem.

"Let the map of the Nyquist D contour under det F(s) = det (I + G(s)C(s)) encircle the origin nr times in the clockwise direction. Let the number of open-loop unstable poles of GC be nc,,c. Then the closed-loop system is stable if and only if n~ = n<;c".

The numerical results returned by nsnyqtf and their interpretation are shown in Fig. 10. If the user consults the expert system now, he will be shown two cards. The first one gives him the interpretation of the numerical results (Fig. 10) and the second one describes the current phase of the design process (Fig. 11). In this case the closed-loop system is stable, because the map of the Nyquist D contour does not encircle the origin. The card in Fig. 11 shows that the current phase of the design procedure is controller analysis. It also shows that the user has already used the function nsnyqtf and the results from

this calculation are stored in the global Matlab variables Xnsnyqtff and Xnsnyqtfy. He has not yet used the functions npseftf, rsumitf and rpmitf which is indicated by the text "Not calculated" next to the function names. He has also decided not to use any of the other controller analysis functions which is indicated by the text " U N K N O W N " .

The next steps are to analyse nominal performance as well as robust stability and robust performance. The nominal performance requirement is

O(E)we < 1, ~o->0, (59)

where /~ is the nominal sensitivity function and We is given in equation (56). The closed-loop system is stable for all perturbations described by the equations (53) and (54) if and only if

O(Hi)w~ < 1, co _> 0 (60)

where t71~ = (1 + CG)-~CG is the nominal closed- loop transfer function as seen from the input of the process. The controller satisfies both the nominal performance and robust stability re- quirements as can be seen from Figs 12 and 13.

The system under study has the following interconnection matrix M:

[ -c ,a w, 1 M = L /~(~w, /~w,, J ' (61)

where /~ and /-) are the nominal sensitivity and complementary sensitivity functions and w~ and we are given in equations (54) and (56). Robust performance is guaranteed if and only if /~(M) < 1 where /~(M) is the structured singular value of the interconnection matrix. It is calculated with respect to the block diagonal

Page 11: An expert system for multivariable controller design

ES for mutivariable controller design

Nomina, I ~kbility 2o ~ i

15 . . . . . . . . . . . . . . . . . . . . . . . : ~ ....... : . . . . . . . . . . . . . . . .

10 . . . . . . . . . . . . . . . . . . . . . . . . . . . ~

5 . . . . . . . . . . . . . . . . . . . . . . . . . . . .

0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

-5 . . . . i . . . . . . . . . . . . . .

i1250 ~ ' 1 0 . . . . . . . . . . . . . . . . . . . . . . ! . . . . . . ~ . . . . . . . . . .

-I00 -80 -60 -40 -20 0 20

963

y = nsnyqtf (pn, pd, dl, cn, cd)

The closed-loop system is probably stable.

This is indicated by the fact that the map of the Nyquist D contour under det(F) - det(I+PC) does not encircle tlm origin.

This ~arantees stability it" the open-loop system PC has no unstable poles.

-.,,-]I ,.-,, FIG. 10. Result from a nominal stability test when A = 1, and its interpretation.

/glT0 ~ : 4 - g

Controller analysis

The table belov contains the ~ of MATLAB variables containing the results from the latest controller analysis calculatiom. The variable name UNKNOWN indicates the methods not to he used. You can skip calculations by chcking the text "Not calculated'. dsim th~OWN dsimu t.NK~ rsuaff 0M<I~WN nsnyqtf ~tff ~sr~tf 9 rsuunotf 0M<~WN npcsi~f UNKNOWN rsumitf Not calculated npcsiff UNKNOWN rsumotf npseftf Not calculated rssmRf rpmiff Not calculated rssmoff UNKNO~ rprt~ff I.INKNOWN rssrr~off I.II~NOWN Q

- ' " " II ...,°r, I

FIG. 1 l . Current phase of the design session.

Page 12: An expert system for multivariable controller design

1.8

1.6

1.4

1.2

0.8

0.6

0.4

0.2

0 10-3

1.8

10-2

J. LIESLEHTO et al.

Nominal performance [ ] ] T r I I i I I I 1 [ ] I I i i ¢ I i I l l ]

-1

J t i t , [ J l i | J i , l l l l i i i J i t J t l

10-] 10o 101

F{G. 12. Result from a nominal performance test when ~. = 1.

I

102

Robust stability i | ! i i I l l l r I I I I I I I I

1.6

1.4

1.2

0.°o~

0.6

0.4

0.2

10-s i i i l l | t

10-2 t 1 I I I | | 11

10-I I00 10t 102

964

2

F[(;. 13. Resul t f rom a robust stability test w h e n 2 = I.

Page 13: An expert system for multivariable controller design

ES for mutivariable controller design 965

1.$

1.6

1.4

1.2

1

0.g

0.6

0.4

0.2

0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i , , , , ,

11~3 | ff l IO-I 100 10! 102

7 I IT his is indic~ad by ths fact that I | _ sores high fi'sq~my valu~ r~urr~ by rpmitf ar, gr,a~r than ore. l

i it ~ ~ ~ ~ con~'oUer um~ tl~ IMC n~thod I I _~u sh°uld incrm~ tha wfi~ °f tl~ fil~ tuning Pm'a~" r" I

.I-.,,.. II II ' " " - I j I~o. 14. Result from a robust performance test when ~. = 1, and its interpretation.

matrix A = diag {A,, Ap} where A, and Ap are full 2 x 2 matrices. Robust performance is analysed using the function rpmitf. The results calcu|ated by it and their interpretation are shown in Fig. 14. The expert system suggests that the controller tuning is too tight and the user should increase the value of the fine tuning parameter.

The new value of the fine tuning parameter is selected to be ;t = 5. The tuning matrices are

[ -0 .1980 -0.1980] (62) Kp = 1.1829 -0 .9599J '

[ -0 .0010 -0.0010] (63) r , = L 0.0789 -0.0640J"

The numerical results given by rpmitf and their interpretation are shown in Fig. 15. The tuning is now too loose and the value of the fine tuning parameter should be decreased.

This iterative tuning procedure is continued until a controller satisfying the performance and robustness requirements is found. When the fine tuning parameter is ) , = 4 then the tuning matrices are

[ -0.2474 -0.24741 Kp = L 1.4787 -1.1999.1' (64)

[ -0 .0013 -0.00131 (65) K,- -- 0.0986 -0.0800J"

The numerical results given by rpmitf and their interpretation are shown in Fig. 16. The control system now satisfies the robust performance requirements.

CONCLUSIONS In this paper a software package for the design

of centralized and decentralized multivariable

Page 14: An expert system for multivariable controller design

966

2 , - - . - - r . . I :

14 , -

,,

12 -

0 6

() 4 l I

J. LIESLEHTO et al.

Robust per(or rramce

i

J

lff:' 10-2 10q I ~ lot I0-"

[y, f ] = r p m i t f ( p n , p d , d l , c n , c d , f r l , f r 2 , w i n , w i d , w p n , w p d )

Tim controller tuning is probably too loom.

This is indicated by its fact that soma low fraquency values raturred by rprmff are gr~tar ~ ore.

You should try a tighter controller design.

If you are tumng the controller using the IMC method you should decrease tha value of the fire tumng p~ra~-~ter.

If you are tumng the controller tmng the Davison, Macaejowskt or PenRimn- Koivo method y~u should ir~ra~a the value of tim fire tuning pa~mmar

II I I I I

FIG. 15. Resu l t f rom a robus t p e r f o r m a n c e test w h e n A = 5, and its i n t e rp re t a t ion .

controllers is represented. The software package consists of numerical calculation software and an expert system. The numerical methods offer several functions for the interaction analysis and control structure selection as well as for the tuning and analysis of MIMO PID controllers. During the design process the expert system is continuously observing the actions taken by the user. Based on the gathered information the expert system is able to assist the user in possible problem situations.

A combination of control, knowledge and software engineering tools is needed in order to implement a software package like the one described in this paper. It is important that persons involved in such a project are familiar

with all tools and techniques applied, at least to some extent. It is also important that the used software tools are able to communicate with each other. When several tools are used, like in this project, it always takes some extra work to build linkages between them. Time and effort could be saved by the use of an integrated development environment.

A considerable amount of knowledge is required from the user of a complex control design package. Expert systems have proved to be useful tools for making this knowledge available for less-than-expert users. Expert systems can be made more flexible to use by applying hypertext techniques. This way control design packages can be made easier to use.

Page 15: An expert system for multivariable controller design

ES for mutivariable controller design 967

Robust pcrfornmac¢ 2 . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.8 I

1.6

1 4

1.2

°6 E 0 . 4

0 . 2

0 . . . . . . . . . . . . . . . . , L i , , , , . . . . , . . . . . .

10-3 l f f2 10"1 100 101 102

[y, f] = rpmi t f (pn,pd,dl ,cn,cd, f r l , f r2 ,win,wid,wpn,wpd)

The controller satifies the robust p e r f o ~ retutrecmnts.

This is indicatad by the fact that the values returned by rpmitf are all less than ore.

Hovever you might be able to achieve even better perforamme by using a tightar controller tuning.

This is indicated by the fact that the lov frequamy values returned by rpmiff seem to larger than the high frequency values.

FIG. 16. Result from a robust performance test when A = 4, and its interpretation.

REFERENCES

Apple Computer (1989). HyperCard User's Guide. Apple Computer Inc., Cupertino, CA.

Bristol, E. H. (1966). On a new measure of interaction for multivariable process control. IEEE Trans. Aut. Control, 11, 133-134.

Davison, E. J. (1976). Multivariable tuning regulators: the fecdforward and robust control of general servo- mechanism problem. IEEE Trans. Aut. Control, 21, 35-47.

Edmunds, J. and B. Kouvaritakis (1979). Extensions of the frame alignment technique and their use in the characteristics locus design method. Int. J. of Control, 29, 787-796.

Grosdidier, P. and M. Morari (1986). Interaction measures for systems under decentralized control. Automatica, 22, 309-319.

Herget, C. J. (1988). Survey of existing computer-aided design in control systems packages in the United States of America. Preprints of the 4th IFAC Symposium on Computer Aided Design in Control Systems, Beijing, PRC, pp. 46-50.

James, J. R., J. H. Taylor and D. K. Frederick (1985). An expert systems architecture for coping with complexity in computer-aided control engineering. Proc. of the 3rd IFAC

Symposium on CAD in Control and Engineering Systems, Lyngby, Denmark, pp. 47-52.

Koivo, H. N. and J. T. Tanttu (1991). Tuning of PID controllers- survey of SISO and MIMO techniques. Preprints of the IFAC Symposium on Intelligent Tuning and Adaptive Control, Singapore.

Larsson, J. E. and P. Persson (1987). An expert system interface for Idpac. Dept. of Automatic Control, Lurid Institute of Technology, Lurid, Sweden.

Lau, H., J. AIvarez and K. F. Jensen (1985). Synthesis of control structures by singular value analysis- dynamic measures of sensitivity and interaction. AIChE Journal, :$1, 427-439.

Lieslehto, J. and H. N. Koivo (1987). An expert system for interaction analysis of multivariable systems. Proc. of the 1987 American Control Conference, Minneapolis, MN, U.S.A. 961-962.

Lieslehto, J. and H. N. Koivo (1991). An expert system for interaction analysis of multivariable systems. Int. J. of Adaptive Control and Signal Processing, 5, 41-62.

Lieslehto, J., J. T. Tanttu and H. N. Koivo (1988). An expert system for tuning PID controllers. Preprints of the 4th IFAC Symposium on Computer Aided Design in Control Systems, Beijing, PRC, pp. 524--529.

Maciejowski (1989). Multivariable Feedback Design. Addison-Wesley, Wokingham, U.K.

Page 16: An expert system for multivariable controller design

968 J. LIESLEHTO et al.

MathWorks (1991). Matlab for Macintosh Computers: User's guide. Natick, MA, U.S.A.

Mijares, G., J. D. Cole, N. W. Naugle, H. A. Preisig and C. D. Holland (1986). A new criterion for the pairing of control and manipulated variables. AIChE Journal, 32, 1439-1449.

Moler, C. (1980). Matlab, User's Guide. Department of Computer Science, University of New Mexico, Albu- querque, U.S.A.

Morari, M. and E. Zafiriou (1989). Robust Process Control. Prentice-Hall, Englewood Cliffs, NJ.

Neuron Data (1989). Nexpert Object. Neuron Data Inc., Palo Alto, CA.

Pang, G. K. H. (1991). Multivariable controller design in an

adaptive control scheme. Int. J. of Adaptive Control and Signal Processing, 5, 63-86.

Penttinen, J. and H. N. Koivo (1980). Muitivariable tuning regulators for unknown systems. Automatica, 16, 393-398.

Rimvall, M. (1988). Interactive Environments for CACSD Software. Preprints of the 4th IFAC Symposium on Computer Aided Destgn in Control Systems, Beijing, PRC, pp. 17-26.

Rivera, D. E., M. Morari and S. Skogestad (1986). Internal model control. 4. PID controller design. Ind. Eng. Chem. Process Des. Dev., 25, 252-265.

Tung, L. S. and T. F. Edgar (1981). Analysis of control-output interactions in dynamic systems. AIChE Journal, 27, 690-693.


Recommended