SIMID: A CAE Tool for Process Identification, Controller Design and

19 downloads 0 Views 9MB Size Report
This paper introduces a CAE tool for engineering education in control engineering. ... Methods of handling discrete- time signals ..... of discrete-time modelling results from taking the pulse-forced ...... 1 Ogata, K., Discrete-time Control Systems.
(c) 1991 AAEE

Australasian J. of Engng. Ed., Vol. 2, No. 2 Printed in Australia

SIMID: A CAE Tool for Process Identification, Controller Design and Simulation of Digital Control Circuits in Engineering Education* Herbert M. Schaedel Department of Communication Engineering, Fachhochschule Köln, Betzdorfer Str. 2, 5000 Köln 21, Federal Republic of Germany

This paper introduces a CAE tool for engineering education in control engineering. Process modelling, Controller design and Simulation can be carried out in an interactive mode with a personal Computer. It is demonstrated in this paper that non-parametric modelling based on the transient response of the process and the design phases for a control circuit, can be made graphically transparent. Accordingly, Controller design and process modelling is emphasised äs an integral part. It is currently possible to teach SIMID process modelling and Controller design in basic courses of digital control engineering.

INTRODUCTION

ing, dealing with process Identification [1][2]. Process identification is the focus of advanced courses and specialities [3][9]. Controller design is carried out for a given plant with known Parameters. Untill recently, the dominant and simple methods utilised in industry have been the Ziegler-Nichols method [5] and similar applications, which are based on the step-forced response with an inflection tangent [6][7]. There is a poor acceptance for higher level methods because of their theoretical demands. This gap has to be closed in the future. Optimised control circuits can help to save energy and recources. Simple methods of process modelling need to be integrated into control engineering education. This will prepare the way for more complex methods [9]. For this primary purpose SIMID has been developed. This paper will demonstrate the capabilities of the program, äs shown below.

Digital control engineering has penetrated many fields of engineering. The application of control engineering to microprocessors and personal Computers opens the ränge of totally new aspects to be considered. Methods of handling discretetime signals are taught in most lectures on control engineering. But in order to optimise a real control circuit and to design a Controller, there is a strong need to acquire sufficient knowledge concerning process modelling. There is a noticeable gap between the scientific theoretical knowledge taught at universities and in engineering education and its applications. It is difficult to find a basic course or book on digital control engineer* An expanded Version of a regulär paper presented at the Congress

237 East--West Cougrens on. Engineering Education, Cracow, Poland, 16-20 September 1991

H.M. Schaedel

238

disturbance

commaiK l variable

xd(2) W+r \

^wy

y— \g *

X(z)

controlled variable

variable

Controller

X(z)

\

-^

T I / - t / _ \y

-^ "«v* ;

process

Figure 1: Digital control circuit.

FEATURES AND CAPABILITIES OF SIMID A brief analysis of SIMID SIMID uses a non-parametric process-identification method, which allows the interactive modelling of a linear time-invariant process represented by its step-or impulse-forced response. In dialogue with a personal Computer (IBM or compatible) fictive input and Output sequences are evaluated, which allow a direct Interpretation äs process parameters. A priori Information such äs system order and dead-time is not needed. The design of PID-controllers and Controllers with minimum settling time are implemented. The identification procedure is directly related to the design procedure for the Controller, and must be regarded äs unity. The type of Controller and special requirements identified can be considered during the identification procedure. The design algorithm for the Controller directly uses the parameters of the process, so that there is no black-box software-optimisation. The dynamic response of the control circuit (Figure 1) for disturbance and reference signals is simulated on the basis of the step-response of the process using convolution. The sampling rate for generating or recording the step response of the process should be higher than that for the control case, so that during Simulation the control signal is depicted also within the sampling intervals. Numerous options within SIMID make it a powerful tool that can be used in engineering education. In the file-box, the step- or the impulseforced response of a plant can be stored. These response functions are found by real measurements, by Simulation or can be numerically generated by the program SIMID. For advanced änvestigations, a noise signal can be superimposed. Before identification, noise may be smoothed by data-filtering. During the identification proce-

dure, modificatSons are considered to meet the special demands of the Controller under design. A change of the dynamic plant parameters can be simulated and the sensitivity and the robustness of the Controller design can be investigated. Extremely helpful in this context, is the calculation of the characteristics of the control circuit like:• The rms-values of the error and the correcting signals. • Settling time for a given steady-state deviation. • The maximum value of the system deviation. • The first value of the correcting signal. In an expanded Version (SIMID-PRO), the program can be used for direct digital control. SIMID is designed to run under MS-DOS on an IBM (or compatible) PC/AT fitted with a Video Graphics Array card (VGA) and a colour monitor displaying 640 by 480 pixels in 16 colours, a 640K Byte memory, and a 20M Byte hard disc (recommended). The whole program has been written in Turbo Pascal 5.0 (Borland International). The user surface of SIMID A seif explainatory user surface with pull-down menus provides a short introductory phase to the simple handling of the program in engineering education. Figure 2 presents the structure of the user surface with the pull-down menus used in SIMID. All surface menus are written in German. Plans are currently underway for the development of an English Version. The first line (menu line) of the main memi designates the pull-down menus, which have to

SIMID: a CAE

Infi

File

Eingibt

Identifikatiw

über SMdLi

Läutert 1 Pfad Karteikastenpfad

lerechnung «Iti > Sprungantoort Inpulsantmrt lerechnungsabfolge: autmatlsch > Hanuell

a-Paraneter nanuell/auto

Tastatur Speicher

Filter > Rechteck llidnM

Toolfor...

Deadbeat letragsottimn Betragsanschnlegung

Streckenparaneter anzelpin Parameter Initialisieren

-1 spinetrlsches DptlMH

239

Simlation

Ausgibt

Hilfe

Regelung für: Führung Störung

> Blldschln Drucker

Ton: Aus

Irrkti abcrncmCn

Zeile auf Drucker Tabellen

fttastzeiten:

iibergangsfunktion Tls: 8,299 Regelkreis

Eraflk:

TBr: 1,899

flardcopygroft

Kartelkasten Streckenbeschriftung

Sraflkpunkte Regelnden

Strecke berechnen Streckenordnung schützen

übergangsfunktion

Rauschfilter Rauschüberlagtrung

PrograM beenden

Eingangssignal ii-Fkt, u, Eingangssignal

Eingabe von K6(z) Eingabe von xü(k)

Initialisierung

Voreinstellung abspeichern

P,Q - Paranettr nnutll

Rechteck nebrfach Paraneter-Datel ext, Funktion laden

Druckgualitüt linker Druckrand

Inforaatiinsfenster — gwühlte Paraneter aktuelle Strecke PT5-Strecke ihne Totzeit

»tas tzeitTlr: 1,99s Totze t Tt : 1,89s

t9s= 8,19s

Rausc «erlag, il.l

KS= 1,19

l«rec inung nitiSprungantmrt

ti= 1,98

gptin eruig

iletragsoptinn

Regel ing

: Führung

Regelgröle StellgrWe Regel- und StellgrSpe b-Pameter

Figure 2: Pull-down menus in SIMID. be operated from the left to the right during a working procedure. Some of the main features of the pulldown menus are outlined below. Under the File Option the file-box (Karteikasten) can be accessed (Figure 3). There are ten sub-boxes, each permitting one hundred step response functions to be stored. Karteikastenpfad sets the path of the file-box used during Operation, with the Option given to utilise several fileboxes. For Simulation purposes, a Gaussian noise may be superimposed (Rauschüberlagerung) to a response function. For the purposes of data smoothing different filters can be selected (Filter). After loading from the file-box the response function can be filtered before further handling (Rauschfilterung). External functions can be loaded provided they are stored in an ASCII file (ext. Funktion laden). In Eingabe (Input), the sampling time of the Controller is selected (Tor eingeben). There are a number of options which can calulate step response functions for the various multi-order lag and integral processes (Strecke berechnen). The Parameters of a known pulse transfer function HG(z), can be manually inserted into the program.

Identifikation (Identification) incorporates the procedures for Interactive Identification and modelling based on the step or puls,e response of a process. Optimierung (Controller Design) operates various Controller designs like the PID-controller for multi-lag and integral processes and Controllers with a deadbeat response. Controller Parameters, also may be inserted manually for Simulation purposes. Simulation operates the Simulation of the step-forced response of the control circuit to the command and disturbance signals. Ausgabe (Output) provides the graphical and numerical output of the completed data calculated during Identification, Controller design and Simulation. The Hilfe (Help) Option provides various Information about the tool and offers various possibilities to set default values. In the lower part of the screen an Information window displays the main parameters used in SIMID during its Operation.

240

EM. Schaedel

iuti teo.Kaoi.eii »

Verzeichnis für DPTl-Strecken 2)PT2-Strecken 3)PT3-Strecken 4)PTn-Strecken 5)ITl-Strecken 6)IT2-Strecken 7)IT3-Strecken 8)ITn-Strecken 9) NM-Strecken 0) x-Strecken Aktuell:

PT4-Strecke PT4-Strecke PT4-Strecke PT5-Strecke PT5-Strecke PT5-Strecke PT5-Strecke PT6-Strecke PT7-Strecke PT8-Strecke PT8-Strecke PT8-Strecke PT8-Strecke PT8-Strecke PT9-Strecke

Uss=0.05 Uss=0.06 Uss=0.12

Tt=6.00s

PT5-Strecke

KS=1.00 KS=1.00 KS=1.00 KS=1.00 KS=1.00 KS=1.00 KS=1.00 KS=1.00 KS=1.00 KS=1.00 KS=1.00 KS=1.00 KS=1.00 KS=1.00 KS=1.00

T0s=0.05 TSl. ..TS4=1.00S TS!.. .ts4=1.00s T0s=0.10 Tsi=TS/i; Ts=5.00 T0s=0.10 TSl TS5=1.00S T0s=0.10 tOs=0.10 TSl. .TS5=1.00 tOs=0.10 Ti=1.00 t=s=0.10 ti=1.00 TSl. . . TS6=1.00S T0s=0.10 T0s=0.10 TSl. ..TS7=1.00S Tsl...Ts8=0.50s T0s=0.20 Tsl...Ts8=1.00s T0s=0.10 TSl. . ,TS8=1.00S T0s=0.20 TSl. . , TS8=1.00S T0s=0.25 TSl. . .TS8=1.00S T0s=0.10 TSl.. .TS9=1.00S T0s=0.10

KS=1.00

TSl. . .TS5=1.00S

Speichern

Löschen

T0s=0.10 Ausgang

Laden

Figure 3: File-box. Controller

1 W(z) +

^; 'i f l 1

j -

% 1"z

I-controller

1 1 iti,z; 1 53 E(-) 1 correcting 1 filter l

~l

•^•& G(z)

X(z)

Process

resulting process Figure 4: Correcting filter and resulting process in a digital control circuit.

PROCESS IDENTIFICATION, CONTROLLER DESIGN AND SIMULATION WITH SIMID Basics of process ideiitiflcation and modelliiig encountered in SIMID — The principle of modelliiig input sequence (MIS) The pulse transfer function H G (z) of a plant, including the zero-order hold relates the z-trans-

form of the Output at the sampling instants to that of the input. HG(z]

=

X(z)lUs(z)

1+

anz~n

B(z)

When referring to the object under-study,

241

SIMID: a CAE Tool /or... the word process is used [9]. The simplest form of discrete-time modelling results from taking the pulse-forced response. Using the non-parametric model (structure-free model) of the weighting sequence g ( k ) , we can create a parametric model applying the z-transform: G(z) = Z[g(k)} = f; g(k)z-* = X(z)/U(z)

(2)

where U(z) = l is the z-transform of the unit pulse. Within the time domain this gives a difference equation, relating the controlled variable of the process x(k) of the System to the correcting signal u(k), using the input-output relation for the process: X ( z ) = G(z)U(z).

(3)

In the z-domain, we obtain the convolution sum for the time domain with: (4) t=0

that leads to the difference equation: x(k)

order of the model. We can implement the input sequence: {u(k)} = {1,0!,o2, •••
(6)

to the process. For a real measurement, the values of the input sequence are referred to the value of the first pulse thus obtaining a sequence a(fc), starting with a pulse of the height 1. The circuit responds to this sequence with an output sequence resulting from a convolution sum: (7) t'=0

The values of the input and Output sequences directly represent an estimation of the coefficients of the polynomials B(z) and A(z), of the pulse transfer function. In order to emphasise the character of model finding, let us call the input sequence for minimum settling time and zero approach of the output signal: modelling or identifying sequence {a(k)} and correspondingly we will denote the Output sequence äs: modelled sequence {&(&)}. Explicitly written the convolution sum gives:

= +g(2)u(k - 2) + • • -g(m)u(k — m) +

bo = 0(0) 61 62 = ,7(3) + a l5 r(2)

(5)

where k = t/To is the time normalised with respect to the sampling time TQ. Accordingly, we obtain a model of infinite order that may be limited to the order m, by setting it at zero. The values of the sequence for a certain tolerance level will be in general defined by the noise amplitude. In most cases process identification and modelling is carried out in order to design an appropriate Controller. In a practical Situation this will be a PI- or PID-controller or perhaps a Controller with so called deadbeat-response. The purpose, therefore, in such a case is to provide a Controller design and a Simulation of the closedloop behaviour of the control circuit. The model needed must not necessarily inhibit detailed information on the structure of the process, which is needed in the state-space design. The average engineer will not be in the position to freely divert their time and knowledge to the application of methods needed for such a highly sophisticated procedure. Because of the usually high order of the weighting sequence model, we can attempt to find an input sequence of the prescibed length, thereby minimising the

a3g(0) (8)

etc. The output sequence may be interpreted äs a superposition of weighting sequences scaled by the values a, of input sequence:

+an{g(k- n)}.

(9)

The input sequence a(k) should accordingly be evaluated for a minimum settling time of the output sequence b(k}. The degree of the output polynomial: B(z) =

(10)

is limited by setting b(m+l) = 0, for a prescribed error band (eg noise level).

242

H. M. Schaedel

Bralik =

9

1.00-

3(0) = 1.000

Bereich

r nanuell

Treppe

a.nanuell

Dehnen

Aul out

Cursor

Cursor

Schuinqungskonp. Zeituichiuno,

F3 l"5

Ausqang

Bereich

Rot ran imn h

Ffi

~|

ad) a(2) a(3) a a(5)

o 1 2~TT~? Ausqang

t

= = = =

0.000 0.000 0.000 0.000 0.000

Bei raijsl lache - 10.000

b

0.2»,-s

Hillt — rü) =



-0.618

.-

\_

Ja/Kein mm t

a.)

b.)

Krazessiaeni HCöt 1 r. nanuell

a LOO-

ä(l) = -0.618 8(2) = 0.000 8(3) = 0.000 ad) = 0.000 a(5) = 0.000

a.nanuell ftut onai

[

Cursor

' —'

Bereich 6 i i 3 4 5 fiusgang

»

8(0) = 1.000

~1

t

Schui ngungsronp. F3 Zei! nicht ung F5 Rptr^n von h ff, BelragsUache = 3.6100

^^

Bereich Treppe Dehnen Cursor ftusganq

0.00

0 00 -

t)

u

1.«

0.312 •

D i l l e ——

«.00 i/s

f\0

-O.S18 F I:Cursor F2 :yoroabf?

' —_ 2aoo i

C.)

d.)

a

Brahk = Bereich Treppe Dehnen Cursor flusgang

e.)

Figure 5: Process I - second-order lag system, Pl-controller - T0 = Is. a) unit step response of the process, b) zero-order pulse response of the process, c) first-order pulse response of the process, d) unit step response of the control circuit to the command signal, and e) unit step response of the control circuit to the disturbance signal.

W.QO t/s

SIMID: a CAE Tool for... Step by step evaluation of a multi-order pulse response model In order to avoid simultaneous evaluations of the coefficients a; we introduce the product form for the input polynomial of a multi-order lag process:

A(z)

=

anz

(l +

(l + rnz-1)

(11)

thus evaluating the coefficients r; step by step the resulting pulse sequence may be found easily. The polynomial coefficients of A(z) are äs follows: first — degree polynomial second — degree polynomial

third — degree polynomial

a\' = a\ r 2

a{ \Jt,T\

= a{ + l*«J

4" = afr 3 . (12)

The superscript of the coefficients ai denotes the polynomial degree. According to the polynomial degree of the input sequence (modelling sequence), we can define the order of the pulse response sequence (modelled sequence). The single-pulse response (weighting sequence) from this will be the zero-order pulse response. The response to a twin-pulse modelling sequence thus will be a first-order pulse response. In increasing the degree of the input polynomial A(z), the degree of the Output polynomial B(z) is decreased, the length of the input sequence always being shorter or equal to the length of the output sequence. It should be emphasised that the values of r; are evaluated for minimum settling time of the Output signal and in general do not compensate for the poles of process. The settling times obtained, therefore, in most cases, are shorter than for the simple compensation of the largest time-constant(s). Compensation may ocoir when the order of the modelling sequence is identical to that of the process.

Single step evaluation of a multi-order pulse response model Besides the possibility of the step by step evaluation of a pulse response model, SIMID pro-

243

vides the direct evaluation of a multi-order pulse response model, where the values of the input sequence are determined interactively for the minimum settling time of the Output sequence by proposing a point of zero approach. For a given polynomial degree, the modelling input sequence is evaluated by applying the method of least squares to the modelled output sequence in Equation 8 behind the proposed point of zero approach. This is of special interest for underdamped processes, with complex zeros of the polynomial A(z) or simply for the design of PIDcontrollers. Controller design and Simulation of control circuits A practical Controller design procedure should exhibit a direct relation between the parameters of the model and the Controller. Typical examples are Controllers which make use of compensation, and Controllers with deadbeat response [2][8]. The method of modelling used in SIMID, which is described in the previous section, outlines a step by step Controller design that directly links modelling and Controller design without restricting the method to simple compensation. The nurnerical values of the model and Controller parameters for the various examples cited in this paper are available on request. PID Controller design for multi-order lag processes

In further considerations, the Controller is regarded äs a cascade of a correcting filier and an integral Controller with an integrating factor qo (Figure 4). Therein the pulse transfer function of the Controller is derived by the equation:

The correcting filter with the pulse transfer function: R(z) =

(14)

is derived from the modelling (input) sequence {a(k}} which is evaluated during identification. It generates a weighting sequence equivalent to {a(fc)}. In series connection with the original process, it therefore forms a resulting process with a minimum time response.

EM. Schaedd

244

The resulting process is described by its weighting sequence which is equivalent to the modelled (output) sequence:

{9(n\k}} = {

Suggest Documents