SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är...

91
Institutionen för systemteknik Department of Electrical Engineering Examensarbete Simulation Comparison of Auto-Tuning Methods for PID Control Examensarbete utfört i Reglerteknik vid Tekniska högskolan i Linköping av Markus Olsson LiTH-ISY-EX--08/4095--SE Linköping 2008 Department of Electrical Engineering Linköpings tekniska högskola Linköpings universitet Linköpings universitet SE-581 83 Linköping, Sweden 581 83 Linköping

Transcript of SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är...

Page 1: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

Institutionen för systemteknikDepartment of Electrical Engineering

Examensarbete

Simulation Comparison of Auto-Tuning Methodsfor PID Control

Examensarbete utfört i Reglerteknikvid Tekniska högskolan i Linköping

av

Markus Olsson

LiTH-ISY-EX--08/4095--SE

Linköping 2008

Department of Electrical Engineering Linköpings tekniska högskolaLinköpings universitet Linköpings universitetSE-581 83 Linköping, Sweden 581 83 Linköping

Page 2: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma
Page 3: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

Simulation Comparison of Auto-Tuning Methodsfor PID Control

Examensarbete utfört i Reglerteknikvid Tekniska högskolan i Linköping

av

Markus Olsson

LiTH-ISY-EX--08/4095--SE

Handledare: Rikard Falkebornisy, Linköpings universitet

Per Erik ModénABB Corporate Research

Examinator: Alf Isakssonisy, Linköpings universitet

Linköping, 25 February, 2008

Page 4: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma
Page 5: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

Avdelning, InstitutionDivision, Department

Division of Automatic ControlDepartment of Electrical EngineeringLinköpings universitetSE-581 83 Linköping, Sweden

DatumDate

2008-02-25

SpråkLanguage

� Svenska/Swedish� Engelska/English

RapporttypReport category

� Licentiatavhandling� Examensarbete� C-uppsats� D-uppsats� Övrig rapport�

URL för elektronisk versionhttp://www.control.isy.liu.se

http://urn.kb.se/resolve?urn=urn:nbn:se:liu:diva-11106

ISBN—

ISRNLiTH-ISY-EX--08/4095--SE

Serietitel och serienummerTitle of series, numbering

ISSN—

TitelTitle

Jämförelse av olika automatiska trimningsmetoder för PID-regulatorerSimulation Comparison of Auto-Tuning Methods for PID Control

FörfattareAuthor

Markus Olsson

SammanfattningAbstract

Auto-tuning has become an important function in distributed control systems(DCS) and is especially appreciated in large industries that can have hundredsof controllers. In the DCS 800xA manufactured by ABB, there is an auto-tuningmethod implemented based on a relay experiment to determine the ultimate gainand the ultimate period, with which the PID parameters are obtained using themodified Ziegler-Nichols tuning rules. The tuning procedure can then proceedwith a step identification experiment to get additional parameters for kappa-tautuning. In the previous DCS, called Advant, there was another auto-tuning ap-proach implemented. This method was based on dominant pole design, whichincluded an identification of the process. The purpose of this thesis is to comparethese auto-tuning methods, to investigate if the dominant pole placement methodshould be migrated to the 800xA system.

NyckelordKeywords auto tuning, PID, dominant pole design, relay, kappa-tau

Page 6: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma
Page 7: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

AbstractAuto-tuning has become an important function in distributed control systems(DCS) and is especially appreciated in large industries that can have hundreds ofcontrollers. In the DCS 800xA manufactured by ABB, there is an auto-tuningmethod implemented based on a relay experiment to determine the ultimate gainand the ultimate period, with which the PID parameters are obtained using themodified Ziegler-Nichols tuning rules. The tuning procedure can then proceedwith a step identification experiment to get additional parameters for kappa-tautuning. In the previous DCS, called Advant, there was another auto-tuning ap-proach implemented. This method was based on dominant pole design, whichincluded an identification of the process. The purpose of this thesis is to comparethese auto-tuning methods, to investigate if the dominant pole placement methodshould be migrated to the 800xA system.

SammanfattningAutomatisk trimning har blivit en viktig funktion i distribuerade styrsystem (DCS)och är speciellt av intresse för stora industrier som kan ha flera hundra regulatorer.Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xAär baserad på ett reläexperiment för att bestämma den kritiska förstärkningenoch den kritiska periodtiden. Modifierade Ziegler-Nichols trimningsregler användssedan för att bestämma PID-parametrarna. Vidare kan trimningen fortsätta medett stegsvars-experiment för att erhålla ytterliggare parametrar och trimma medkappa-tau metoden. Den automatiska trimningsmetoden som var implementeradi tidigare DCS, Advant, var baserad på dominant polplacering med identifieringav processen. Syftet med detta examensarbete är att jämföra dessa automatiskatrimningsmetoder för att undersöka om den tidigare trimningsmetoden baseradpå dominant polplacering ska implementeras i 800xA systemet.

v

Page 8: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma
Page 9: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

Acknowledgments

First of all I would like to thank my supervisor Per Erik Modén at ABB CorporateResearch who has guided me through my work. I acknowledge my supervisor atLinköpings University, Rikard Falkeborn, at the division of Automatic Control forhis comments and ideas for improvements concerning this report.I would also express my gratitude to my examiner Alf Isaksson who gave me theopportunity to do this thesis and for his comments and ideas for improving thisreport.

Further I would like to thank the master thesis students at ABB for a great timetogether, with fun coffee breaks, lunches and the unforgettable trip to Finland.

I also would like to thank my family for always supporting and believing in meduring my years of studies and I especially thank my mother for her inspirationalwords during the tough times.

Last but not least I acknowledge my friends and fellow students making the yearsas student at Linköpings University the best time ever. Finally I would like tothank my good friend and forever-lab-partner Anders for all the fun and crazytime together.

Markus OlssonLinköping, February, 2008

vii

Page 10: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma
Page 11: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

Contents

1 Introduction 11.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Distributed Control System . . . . . . . . . . . . . . . . . . . . . . 21.3 Thesis Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

2 Process Models 52.1 Step Response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.1.1 Two-Parameter Model . . . . . . . . . . . . . . . . . . . . . 52.1.2 Three-Parameter Model . . . . . . . . . . . . . . . . . . . . 62.1.3 Area Method . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.2 Frequency Response . . . . . . . . . . . . . . . . . . . . . . . . . . 82.2.1 Ziegler-Nichols Frequency Response Method . . . . . . . . . 92.2.2 Relay Feedback . . . . . . . . . . . . . . . . . . . . . . . . . 10

2.3 Parameter Estimation . . . . . . . . . . . . . . . . . . . . . . . . . 10

3 Introduction to the PID Controller 133.1 PID Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.2 Modifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

3.2.1 Modifications of the Derivative Part . . . . . . . . . . . . . 153.2.2 Setpoint Weighting . . . . . . . . . . . . . . . . . . . . . . . 15

3.3 Discrete Time PID Controller . . . . . . . . . . . . . . . . . . . . . 17

4 Automatic Tuning of PID Controllers 194.1 Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.2 Ziegler-Nichols Tuning Methods . . . . . . . . . . . . . . . . . . . . 21

4.2.1 Ziegler-Nichols Step Response Method . . . . . . . . . . . . 214.2.2 Ziegler-Nichols Frequency Method . . . . . . . . . . . . . . 214.2.3 Modified Ziegler-Nichols Method . . . . . . . . . . . . . . . 22

4.3 Relay Auto-Tuning . . . . . . . . . . . . . . . . . . . . . . . . . . . 244.4 The Kappa-Tau Method . . . . . . . . . . . . . . . . . . . . . . . . 264.5 Kappa-Tau Auto-Tuning . . . . . . . . . . . . . . . . . . . . . . . . 274.6 Dominant Pole Design . . . . . . . . . . . . . . . . . . . . . . . . . 294.7 Auto-Tuning using Dominant Pole Design . . . . . . . . . . . . . . 30

ix

Page 12: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

x Contents

5 Simulation Comparison 355.1 The Test Batch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365.2 Simulation in Matlab . . . . . . . . . . . . . . . . . . . . . . . . . 375.3 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385.4 Recommendation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

Bibliography 43

A Results from the Comparison Simulations 45A.1 Comparison Between Dominant Pole Design and Relay Tuning . . 45

A.1.1 Process P1 . . . . . . . . . . . . . . . . . . . . . . . . . . . 45A.1.2 Process P2 . . . . . . . . . . . . . . . . . . . . . . . . . . . 49A.1.3 Process P3 . . . . . . . . . . . . . . . . . . . . . . . . . . . 52A.1.4 Process P4 . . . . . . . . . . . . . . . . . . . . . . . . . . . 55A.1.5 Process P5 . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

A.2 Comparison Between Dominant Pole Design and Kappa-Tau . . . 61A.2.1 Process P1 . . . . . . . . . . . . . . . . . . . . . . . . . . . 61A.2.2 Process P2 . . . . . . . . . . . . . . . . . . . . . . . . . . . 65A.2.3 Process P3 . . . . . . . . . . . . . . . . . . . . . . . . . . . 68A.2.4 Process P4 . . . . . . . . . . . . . . . . . . . . . . . . . . . 71A.2.5 Process P5 . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

B 77B.1 Derivative Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . 77B.2 Determination of the Average Residence Time . . . . . . . . . . . . 77

Page 13: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

Chapter 1

Introduction

1.1 BackgroundThe PID controller remains the work horse of industrial control systems. In a pro-cess industry there may be hundreds if not thousands of PID controllers. Henceit is important to have methods for fast tuning. Therefore most modern controlsystem have some method for auto-tuning built in. Today there is one approachincluded for auto-tuning of PID controllers in ABB’s distributed control system(DCS) 800xA. This approach is based on relay auto-tuning. By temporarily re-placing the current controller with a relay, a self-oscillation is induced. Analyzingthe amplitude of this oscillation the critical gain and period can be computed,with which the PID parameters can be obtain using the (modified) Ziegler-Nicholsrules [2]. The operator can then decide whether to continue the auto-tuning pro-cedure with a step identification experiment to design a PID controller with thekappa-tau method [2].

In the previous generation of ABB’s DCS, called Advant, there was an imple-mentation of another auto-tuning approach built on an identification experimentto obtain a transfer function followed by dominant pole placement PID tuningalgorithm.

The main purpose of this thesis is to compare the auto-tuning approaches de-scribed above, to investigate if the dominant pole placement tuning method givesbetter performance and should then be migrated to the 800xA system.

1

Page 14: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

2 Introduction

1.2 Distributed Control SystemIn manufacturing systems or process industries a distributed control system usuallyrefers to a system that connects sub-systems controlled by one or more controllers.With the controllers distributed throughout the system, the monitoring of theentire system can be made from a central location, by connection all the controllersto a network. This makes it possible to monitor very complex systems by fewoperators. Figure 1.1 shows a chart of a distributed control system, where thebottom level shows the sub-systems that are controlled by the controllers one levelup. The controllers are connected to a network and can be configured from theengineering workplace. The whole system is monitored from the workplaces onthe top level.

Figure 1.1. Overview chart of a distributed control system.

1.3 Thesis OutlineChapter 2: The chapter describes simple process models and how they can be

obtained by performing some experiment.

Chapter 3: Gives an introduction to the basic PID controller and some modi-fications to obtain better performance. Also the discrete PID controller isdescribed.

Chapter 4: Describes the modified Ziegler-Nichols tuning method, the kappa-taumethod and the dominant pole design method and how these are used forauto-tuning.

Chapter 5: This chapter describes how the simulation comparisons were per-formed and the conclusions.

Page 15: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

1.3 Thesis Outline 3

Appendix A: Contains all the plots obtained from the simulations. Nyquistdiagrams of the loop transfer function and the plots of closed loop simulationswith a set-point step and a load disturbance step.

Appendix B: Describes the filtering in the derivative part used in the AC800Mcontroller and how the discrete filter pole is given. A more detailed descrip-tion is given of the average residence time determination, used for furthercalculation of the process time constant and time delay.

Page 16: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma
Page 17: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

Chapter 2

Process Models

There are several ways to determine the parameters of a PID controller. Oneapproach is to manually adjust the parameters until desired behavior is obtained,but this approach has its disadvantages. The process can become unstable if tunedwithout caution and good knowledge about the system. It can also be very timeconsuming if there are many controllers to be tuned. Another approach is to makea mathematical model of the process based on some experiment. The controllerparameters can then be determined by applying some control design method onthe process model. This chapter will give an introduction to some basic processmodels and how they can be determined.

2.1 Step ResponseA very common procedure used in process control is to change the manipulatedvariable from steady state to a new constant value very rapidly. From the processoutput the dynamics of the system can be determined and further on a processmodel can be adjusted to the data. Depending on the model structure and thenumber of parameters the model can be made more or less accurate.

2.1.1 Two-Parameter ModelThis process model corresponds to an integrator with dead time and is also thebasis for the Ziegler-Nichols tuning rules.

G(s) = b

se−sL (2.1)

Using an integrating process model with infinite static gain, the interesting infor-mation is in the slope of the step response and is captured by the parameter b.Parameter L is representing the dead time. A graphical illustration of how theparameters can be determined from a step response is shown in Figure 2.1, whereb = a/L [2, 4].

5

Page 18: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

6 Process Models

0 1 2 3 4 5 6 7 8 9

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

1.2

L T

a

0.63Kp

Kp

Figure 2.1. Determination of model parameters from a step response.

2.1.2 Three-Parameter ModelA better approximation can be given by increasing the number of parameters anda common model for PID controller tuning is the three-parameter model, alsocalled a First-Order system with Time Delay (FOTD). This type of process modelcaptures the most typical characteristics from a step response. Assume

G(s) = Kp

1 + sTe−sL (2.2)

where Kp is the static gain, L the dead time and T the time constant, also calledlag. Figure 2.1 shows a graphical illustration of how the three parameters can bedetermined from a step response [2, 4].

An approximative measure of how difficult the process is to control is the nor-malized dead time τ which is defined by

τ = L

T + L(2.3)

For small τ the process is easy to control, since the process is lag-dominated. For τclose to 1 the process is said to be delay-dominated and can be difficult to control[2].

Page 19: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

2.1 Step Response 7

2.1.3 Area MethodThe method of using a step response to determine the model parameters is notsuitable if the measured process signal is corrupted by measurement noise, whichcan affect the calculation of reliable parameters. A method that is less sensitiveto measurement noise is the area method [4], where the idea is to determine theareas A1 and A2 shown in Figure 2.2. If a process is approximated by a FOTDmodel the areas can be calculated as

A2 =∞∫0

(Kp − y(t))dt = KpL+∞∫L

Kpe−(t−L)/T dt = Kp(L+ T )

A1 =L+T∫0

y(t)dt =L+T∫L

Kp(1− e−(t−L)/T )dt = KpTe−1

where y(t) is the process step response [4]. The parameters are then given by

L+ T = A2

Kp

T = A1

Kpe (2.4)

A drawback with the area method is that the area A1 cannot be computed un-til area A2 is determined. A method to determine the average residence time isdescribed in Appendix B.

0 2 4 6 8 10 12−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

1.2

A2

A1

L + T

Figure 2.2. The areas for determination of model parameters.

Page 20: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

8 Process Models

2.2 Frequency ResponseMaybe a less intuitive way to get information about the process is to look at theprocess response to sinusoidal input signals. For a linear time-invariant and stablesystem the output will also be sinusoidal with the same frequency, but with a differ-ent amplitude and phase. For a process G(iω) and input signal u(t) = u0 sin(ω0t)the output from the system can be described as

y(t) = |G(iω0)|u0 sin(ω0t+ argG(iω0)) (2.5)

where |G(iω0)| is the process gain and argG(iω0) the process phase. A processmodel can now be estimated for the frequency ω0.

H(iω0) = |G(iω0)|ei argG(iω0)

By varying the frequency of the input signal a more complete model can be esti-mated and be graphicaly viewed in a Nyquist or Bode diagram. With this approachother insights will be given about the process, for example stability margins. Fig-ure 2.3 shows a Nyquist diagram where a(ω) = |G(iω)| is the amplitude functionand φ(ω) = argG(iω) the phase function.

−0.5 0 0.5 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

1Ku

−1

G(iω)

Re

Im

φ(ω)

a(ω)

Figure 2.3. Nyquist curve for G(iω).

Page 21: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

2.2 Frequency Response 9

Figure 2.4. Block diagram of a feedback system.

2.2.1 Ziegler-Nichols Frequency Response MethodBy bringing the system to self-oscillation with a proportional controller, a processmodel can be estimated at the ultimate point. To maintain the oscillation in asystem the Nyquist curve has to intersects the negative real axis at the stabilityboundary, which is found where the loop transfer function intersect the point(−1, j0) [3]. This can be shown by assuming that the feedback system in Figure2.4 is injected with the signal uA(t) = sin(ω0t) at point A [3]. The output at pointB is then

uB(t) = − |F (iω0)G(iω0)| sin(ω0t+ argF (iω0) + argG(iω0))

To maintain the oscillation the signals uA(t) and uB(t) have to be identical, whichthey are if

F (iω0)G(iω0) = −1⇒ argF (iω0) + argG(iω0) = π

Let now F (iω0) be a proportional controller, with gain Ku, as described above.

KuG(iωu) = −1argG(iωu) = π

Ku is called the ultimate gain and ωu = 2π/Tu the ultimate frequncy obtained fromthe process output. This gives a model of the process that is valid for frequenciesnear the ultimate frequency ωu.

G(iωu) = − 1Ku

(2.6)

A similar parameter as τ but for the frequency domain is κ, which is defined asthe gain ratio.

κ =∣∣∣∣G(iωu)G(0)

∣∣∣∣ (2.7)

Also the κ value can be used as an indication of how difficult the process is tocontrol, in the same way as τ .

Page 22: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

10 Process Models

2.2.2 Relay FeedbackIn the Ziegler-Nichols frequency response method the gain in a proportional con-troller is increased until the stability limit is reached. This is an approach thatdoes not lend itself very well for an automatic procedure. Furthermore one hasno control over the amplitude of the resulting oscillation. Instead a relay can beused to determine the ultimate point. The relay gives a square wave input signalto the process which will start to oscillate with opposite phase, meaning that thefrequency of the oscillation is the ultimate frequency [2]. The relay in a feedbacksystem can be described by a gain N(a), which depends on the amplitude a ofthe input signal. If the relay output amplitude is d, a Fourier series expansion ofthe relay output gives a first harmonic with amplitude 4d/π [1, 5]. The describingfunction N(a) for a relay is then given by

N(a) = 4dπa

(2.8)

A process model at the ultimate point can now be estimated by

G(iωu) = − 1N(a)

= −πa4d

which gives an approximation of the the ultimate gain

Ku = 4dπa

(2.9)

2.3 Parameter EstimationA model can also be computed by fitting parameters to observed input and out-put data. The parameters can either be fitted to a given model that has beenparametrized or to a more general model when it is not possible to describe thesystem based on physical principles [6, 2]. The input and output data with theparameters can for example, be described by

y(kT ) + a1y(kT − T ) + a2y(kT − 2T ) + ...+ anay(kT − naT ) (2.10)= b1u(kT − T ) + b2u(kT − 2T ) + ...+ bnbu(kT − nbT )

where y is sampled output data and u sampled input data. a1...ana and b1...bnb arethe parameters that have to be determined. The parameters can be estimated off-line, fitting the parameters using e.g. least squars approximation to a data batch ofinput and output signals. In some auto-tuning experiment a process model has tobe estimated on-line and the parameters are then adjusted as new data is obtainedin each sampling, using recursive computations [7] .

With the shift operator q−1 defined by

qy(t) ≡ y(t+ Ts)⇔ q−1y(t) ≡ y(t− Ts) (2.11)

Page 23: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

2.3 Parameter Estimation 11

(2.10) can be written more compactly as

A(q−1)y(kT ) = B(q−1)u(kT ) (2.12)where

A(q−1) = 1 + a1q−1 + ...+ anaq

−na

B(q−1) = b1q−1 + ...+ bnbq

−nb

Using a discrete time model like (2.12) is very convenient, because the calculationsare typically made by a computer with data periodically sampled.

Page 24: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma
Page 25: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

Chapter 3

Introduction to the PIDController

The PID controller is the most common controller in the industry today. About95 percent of the controllers used for process control is of the PID type and it isoften an important part of distributed systems for process control [3]. The reasonis probably that it is easy to understand and implement digitally and it can beused in many different control applications.

3.1 PID ControllerThe ideal PID algorithm is described as

u(t) = K

e(t) + 1Ti

t∫0

e(τ)dτ + Tdd

dte(t)

(3.1)

where e(t) = r(t) − y(t) is the control error [2]. An alternative representation ofthe PID algorithm in (3.1) is by the transfer function [2].

U(s) = K

(1 + 1

sTi+ sTd

)E(s) (3.2)

• Proportional action

P (t) = K(r(t)− y(t)) (3.3)

where K is the proportional controller gain. For a given control error e(t) ahigh proportional gain gives a large and quick change in the control outputresponse, but if the gain is too high the system can become unstable. Too lowproportional gain and the controller can become to slow when respondingto disturbances. Using only a proportional controller has the disadvantagethat the steady state error may not be completely eliminated [2], shown inFigure 3.1.

13

Page 26: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

14 Introduction to the PID Controller

K = 1

K = 2

K = 10

Figure 3.1. Step responses using proportional controller for different values of K.

• Integral action

I(t) = K

Ti

t∫0

(r(τ)− y(τ))dτ (3.4)

Ti is the integral time and by adding an integral term to the proportionalcontroller the process output deviation from the setpoint (steady state error)will be eliminated. Low integral action removes the steady state error slowly,but too much integral action will make the step response oscillatory [2],shown in Figure 3.2. Many of the controllers in the industry today are of PItype and in many cases it can be sufficient [3].

Ti = 3

Ti = 10

Ti = 0.9

Figure 3.2. Step responses using a PI controller for different values of Ti.

Page 27: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

3.2 Modifications 15

• Derivative action

D(t) = KTdd

dt(r(t)− y(t)) (3.5)

Td is the derivative time and by introducing derivative action in a controller,the controller will be more predictive and this will improve the closed-loopstability. Figure 3.3 shows how the derivative part stabilizes the step re-sponse compared to the step responses in Figure 3.2, but too high gain canlead to oscillatory and sometime give unexpected behavior [2].

Td = 0.2

Td = 1

Td = 0.5

Figure 3.3. Step responses using PID controller for different values of Td.

3.2 ModificationsThe algorithm given in (3.1) is not used very often in practical applications. APID controller with better performance is obtained by modifying the ideal PIDalgorithm in (3.1) by introducing setpoint weights and a filtered derivative part[2].

3.2.1 Modifications of the Derivative PartIf the measurement signal y(t) is corrupted with high frequency measurement noisethere will be difficulties with the derivative action, causing high gain [3]. To avoidthis a low-pass filter can be introduced in the derivative part

U(s) = K

(1 + 1

sTi+ sTd

1 + sTf

)E(s) (3.6)

where Tf is the filter time constant.

3.2.2 Setpoint WeightingBy introducing setpoint weights the setpoint signal and the process value canbe treated separately, giving the controller a two-degree-of-freedom structure [3],

Page 28: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

16 Introduction to the PID Controller

shown in Figure 3.5 by a block diagram.

u(t) = K

βr(t)− y(t) + 1Ti

t∫0

(r(τ)− y(τ))dτ + Tdd(γr(t)− y(t))

dt

(3.7)

Usually γ = 0 to avoid large disturbances from discontinuous changes in the set-point and β between 0 and 1, depending on how much effect a change in thesetpoint should be given [2].

β = 0

β = 0.5

β = 1

Figure 3.4. Step responses for different values of β.

The modifications γ = 0 and a filtered derivative part gives the following PIDalgorithm

U(s) = K

(βR(s)− Y (s) + 1

sTi(R(s)− Y (s))− sTd

1 + sTfY (s)

)= K

(β + 1

sTi

)︸ ︷︷ ︸

Fr

R(s)−K(

1 + 1sTi

+ sTd1 + sTf

)︸ ︷︷ ︸

Fy

Y (s) (3.8)

Fr Σ Process

−Fy

r u y

Figure 3.5. Block diagram of a feedback loop with a controller having 2DOF.

Page 29: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

3.3 Discrete Time PID Controller 17

3.3 Discrete Time PID ControllerTo be able to implement the PID controller digitally the algorithm has to be dis-cretized. There are several possible approximation methods, but it is often doneby replacing the derivative with a difference. The difference can be taken betweenthe present sample and one sample ahead, this is called forward difference. If thedifference instead is taken between the present and the previous sample it is calledbackward difference. There are other approximations like the Tustin’s transforma-tion, which give a better stability and agreement with the time continuous transferfunctions [2].

Backward approximation

d

dty(t) ≈ y(k)− y(k − Ts)

Ts

Forward approximation

d

dty(t) ≈ y(k + Ts)− y(k)

Ts

Tustin’s approximation

12

(d

dty(t) + d

dty(t− Ts)

)≈ y(k)− y(k − Ts)

Ts

Introducing the derivative operator p defined by

p ≡ d

dt(3.9)

the different approximations of the derivative operator can be written as [4]

Backward approximation: p = 1− q−1

Ts

Forward approximation: p = q − 1Ts

Tustin’s approximation: p = 2Ts

1− q−1

1 + q−1

Using the backward approximation of the derivative operator, the time discreteversion of the PID control algorithm (3.6) becomes

u(k) = K

(1 + Ts

Ti(1− q−1) + Td(1− q−1)

Ts + (1− q−1)Tf

)e(k)

and it can be rewritten as

u(k) = K

(1 + Ts

Ti(1− q−1) + Td

Ts

1− α1− αq−1 (1− q−1)

)e(k)

where α = TfTf+Ts .

Page 30: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma
Page 31: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

Chapter 4

Automatic Tuning of PIDControllers

As mentioned in the previous chapter the PID controllers are common in theprocess industry and a large industry can have hundreds of these controllers. Thesehave to be tuned individually to give good controller performance. Unfortunatelymany controllers are tuned badly or not tuned at all [8]. A PID controller can betuned manually, and by an experienced engineer the controller can be tuned toprovide very good performance. However, this approach is very time consumingand the knowledge about the process is bound to the engineers [8]. These aresome of the reasons why the automatic tuning techniques have been given moreand more attention. There exist several methods to design a PID controller andsome of them are described in this chapter and how they are applied in automatictuning. First there will be a short introduction to describe the performance of acontroller.

4.1 SpecificationsThere are different ways to express the performance of a controller. Specificationson the setpoint response are often common and expressed in the time domain.Some typical specifications [2] are shown in Figure 4.1(a) and described below.

• Rise time trThe time it takes for a step response to change from 10 percent to 90 percentof its steady state value.

• Overshoot oThe ratio between the maximum process value minus the steady state valueand the steady state value.

• Settling time tsThe time it takes for the step response to settle within p% of its steady statevalue

19

Page 32: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

20 Automatic Tuning of PID Controllers

Specifications can also be given of the frequency response and typical specificationsrelated to the loop transfer function Gl(iω) = Fy(iω)G(iω) [2] are shown in Figure4.1(b).

• Gain margin AmIs defined as the inverse of the process gain at the phase cross-over frequency,1/|G(iωπ)|. It is a sensitivity measure of how much the gain can increasebefore it reaches the stability limit. Notice that ωπ = ωu and Am = Ku.

• Phase margin φmIs defined by φm = π + argG(iωg) and is a measure of how much the phasecan be decreased before it reaches 180 ◦. The frequency ωg is where the looptransfer function |Gl(iω)| = 1.

• Maximum sensitivity Ms

The maximum sensitivity is defined by

Ms = max0≤ω<∞

∣∣∣∣ 11 +Gl(iω)

∣∣∣∣The sensitivity Ms guarantees that the distance from the critical point(−1, j0) to the Nyquist curve is always greater than 1/Ms.

(a) Specifications on setpoint change following, with definitions onovershoot o, rise time tr and settling time ts.

Page 33: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

4.2 Ziegler-Nichols Tuning Methods 21

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

1Ms

1Am

φm

(b) Nyquist curve with definitions on sensitivityMs, amplitude mar-gin Am and the phase margin φm.

Figure 4.1. Specifications on setpoint change following and frequency response.

4.2 Ziegler-Nichols Tuning Methods4.2.1 Ziegler-Nichols Step Response MethodThis design method is based on a step response to determine the two parametersa and L described in Section 2.1. The PID controller parameters are then givendirectly as a function of a and L [2] and are shown in Table 4.1.

Controller K Ti TdP 1/aLPI 0.9/aL 3LPID 1.2/aL 2L L/2

Table 4.1. PID design based on the Ziegler-Nichols step response method.

4.2.2 Ziegler-Nichols Frequency MethodThe design method is based on the knowledge of the intersection point betweenthe Nyquist curve of the process and the negative real axis, known as the ultimatepoint. This point can be determined by using a proportional controller or a relayfeedback discussed in Section 2.2. The PID parameters are then given directly asa function of Ku and Tu [2] and are given by Table 4.2.

Page 34: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

22 Automatic Tuning of PID Controllers

4.2.3 Modified Ziegler-Nichols MethodThe Ziegler-Nichols tuning rules are simple and intuitive and can be applied to awide range of processes with little effort. The tuning rules were developed to givegood load disturbance rejection, but this also gives a closed-loop system that ispoorly damped and has a poor stability margins. The Ziegler-Nichols frequencyresponse method can be interpreted as a method where the identified point of theNyquist curve is moved to a new position. With a PI or PID controller a givenpoint on the Nyquist curve can be moved to an arbitrary position in the complexplane [2]. With this knowledge the identified point can be moved to give desiredamplitude margin and phase. To describe the method, assume a PID controller

−0.6 −0.5 −0.4 −0.3 −0.2 −0.1 0 0.1 0.2

−0.5

−0.4

−0.3

−0.2

−0.1

0

0.1

φaφb

− 1N(a)

Im

Re

A

B

Figure 4.2. Nyquist curve of the process and the identified point A.

F (iω0) and a process G(iω0)

F (iω0) = K

(1 + 1

iω0+ iω0Td

)= K

(1 + i

(ω0Td −

1ω0Ti

))= rce

i(π+φc)

G(iω0) = raei(π+φa)

Controller K Ti TdP 0.5Ku

PI 0.4Ku 0.8TuPID 0.6Ku 0.5Tu 0.125Tu

Table 4.2. PID design based on the Ziegler-Nichols frequency response method.

Page 35: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

4.2 Ziegler-Nichols Tuning Methods 23

To move the identified point A to a specified position B, shown in Figure 4.2, witha PID controller is described by

rcei(π+φc)rae

i(π+φa) = rbei(π+φb)

where rbei(π+φb) describes the specified position B.

K

√1 +

(ω0Td −

1ω0Ti

)2= rbra

(4.1)

(ω0Td −

1ω0Ti

)= tan (φb − φa) (4.2)

Using (4.1) and (4.2) K can be determined

K√

1 + tan 2(φb − φa) = rbra

⇒ K = rbracos(φb − φa)

To be able to solve Ti and Td uniquely, an additional condition has to be introduced

Td = δTi (4.3)

saying that the ratio of the integral time and the derivative time is constant [2].Using (4.2) and (4.3) Ti and Td can be calculated

Ti = 12ω0δ

(tan(φb − φa) +

√4δ + tan2(φb − φa)

)(4.4)

Td = 12ω0

(tan(φb − φa) +

√4δ + tan2(φb − φa)

)

With a relay experiment, to determine Ku and Tu, together with the modifiedZiegler-Nichols method the design rules are then given by

K = rbra

cos(φb − φa)Ti = Tu

4πδ

(tan(φb − φa) +

√4δ + tan2(φb − φa)

)Td = δTi

Page 36: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

24 Automatic Tuning of PID Controllers

Example 4.1: Determine suitable point using a Zieger-Nichols experimentIf a Ziegler-Nichols frequency method is used to determine a point we havera = 1/Ku, φa = 0, δ = 0.25 the PID control parameters are given by

K = Kurb cos(φb)

Ti = Tuπ

(tan(φb) +

√1 + tan2(φb)

)Td = Tu

(tan(φb) +

√1 + tan2(φb)

)If we want to specify a new position with a distance rb = 0.5 to the origin and aphase of −135 ◦ the PID parameters are given by

K = 0.35Ku

Ti = 0.76TuTd = 0.19Tu

4.3 Relay Auto-TuningIn [10] a relay auto-tuning procedure is given and will be described in this section.A relay experiment is a common way to determine the ultimate gain and ultimateperiod and is described in Section 2.2. It is easily automated by replacing thecontroller with a relay during the tuning procedure, shown in Figure 4.3. Therelay experiment identifies the point with a phase lag of 180 ◦ and with the ultimateperiod Tu and ultimate gain Ku a design of a PID controller can be made. Toavoid random relay switching on noisy signals the relay has hysteresis and fromdescribing function analysis the limit cycle can be predicted to a point where theNyquist curve intersects −1/N(a), which is the negative inverse of the describingfunction for a relay with hysteresis:

− 1N(a)

= − π

4d√a2 + ε2 − iπε

4d

where d is the relay amplitude, a the amplitude of the limit cycle and ε is the relayhysteresis. This also implies

|G(iωu)| =1Ku

= πa

4dand φa = arcsin

( εa

)The describing function −1/N(a) can be described as a straight line parallel tothe negative real axis in the complex plane, shown in Figure 4.2. The relay auto-tuning described in [10] is choosing the hysteresis depending on the noise level and

Page 37: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

4.3 Relay Auto-Tuning 25

Figure 4.3. A relay replaces the controller during the auto-tuning procedure.

is constant during the relay experiment, but the relay amplitude is adjusted togive desired amplitude of the oscillation. The desired amplitude is set to twice thehysteresis and gives a nominal angle φanom = 30 ◦. To determine the PID parame-ters the modified Ziegler-Nichols method described in Section 4.2 is used to movethe identified point to a point with a specified length and phase. In this case thelength is set to 0.5 and the phase to −135 ◦. The ratio between the derivative timeand integral time is chosen to 0.16. The following design rules are then given by

K = Kuφa0.5 cos(45 ◦ − 30 ◦) = 0.48Kuφa

Ti = Tuφa4 · 0.16π

(tan(45 ◦ − 30 ◦) +

√4 · 0.16 + tan2(45 ◦ − 30 ◦)

)= 0.55Tuφa

Td = 0.16Ti = 0.088Tuφa

The identified point is not the real ultimate point, but a point at angle φa, indicatedwith Kuφa and Tuφa . A relay with hysteresis identifies a point at a lower frequencycompared to the ultimate point, which leads to a longer period Tuφa .

Page 38: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

26 Automatic Tuning of PID Controllers

4.4 The Kappa-Tau MethodThe kappa-tau method is a PID design method developed by Åström and Häg-glund and is described in [2]. The idea is to characterize the process by threeparameters as done in (2.2). For a frequency domain design it requires the sameparameters as the Ziegler-Nichols frequency method and an additional variable κdefined in (2.7). A time domain design requires a step response and the normal-ized dead time τ defined in (2.3). The method is developed based on dominantpole design with criterion on the rejection of load disturbance and constraints onthe maximum sensitivity Ms. The relations between the normalized controllerparameters and the normalized process parameters are calculated and plotted fora batch of different processes. In Figure 4.4 the normalized controller parametersare plotted as function of κ.

0 0.2 0.4 0.6 0.8 110

−2

10−1

100

K/Ku vs. κ

0 0.2 0.4 0.6 0.8 1

10−0.9

10−0.7

10−0.5

10−0.3

Ti/T

u vs. κ

0 0.2 0.4 0.6 0.8 110

−2

10−1

100

Td/T

u vs. κ

0 0.2 0.4 0.6 0.8 1

100

β vs. κ

Figure 4.4. The normalized controller parameters plotted as a function of κ.

Page 39: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

4.5 Kappa-Tau Auto-Tuning 27

The functions computed by curve fitting are for the frequency domain expressedas

K

Ku= fK(κ) Ti

Tu= fTi(κ)

Td

Tu= fTd(κ) β = fβ(κ)

where the function fK,Ti,Td,β(κ) is described by

f(κ) = a0ea1κ+a2κ

2

The parameters a0, a1, a2 for the different functions are given in Table 4.3 [2].

Ms = 1.4a0 a1 a2

fK(κ) 0.33 −0.31 -1.0fTi(κ) 0.76 -1.6 -0.36fTd(κ) 0.17 -0.46 -2.1fβ(κ) 0.58 -1.3 3.5

Table 4.3. Parameters of the function f(κ) for Ms = 1.4.

In the time domain the functions are expressed in the same way, but for othernormalized controller parameters

aK = fK(τ) TiL

= fTi(τ)TiT

= fTi(τ)

TdL

= fTd(τ)TdT

= fTd(τ) β = fβ(τ)

where the function fK,Ti,Td,β is described by

f(τ) = b0eb1τ+b2τ

2

Notice that Ti and Td can be normalized both with the dead time L and the timeconstant T .

4.5 Kappa-Tau Auto-TuningThe automatic tuning procedure with kappa-tau design described in [10] startswith a relay auto-tuning experiment to determine the process parameters Ku andperiod Tu. To be able to calculate the κ-value an experiment with a setpoint stepis introduced. During the closed loop step the process output and the control

Page 40: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

28 Automatic Tuning of PID Controllers

signal are integrated, A2, A3, to calculate the average residence time Tar = L+T .See Appendix for a more detailed description for calculation of Tar.

Tar = A2uf −A3yfyfuf

When the steady state is reached the final value of the process output and thecontrol signal are noted for calculation of the static gain. Last an open loop stepis introduced by setting the control signal back to the initial value it had beforethe setpoint step and during the open loop step the process output is integrated,A1, until the average residence time Tar. With (2.4) normalized with the size ofthe open loop step, the time constant and the dead time are calculated as

T = eA1

yf

L = Tar − T

The static gain is simply given by

Kp = yfuf

With the additional parameter kappa and the process parameters known, thecontroller parameters can be calculated as described in section 4.4. The estimatesof L and T are used to calculated the normalized dead time τ , and if the processis delay dominated, large value of τ , a PPI (Predictive PI) controller is suggested[10].

Open loopClosed loop

A1

A3

uf

Tar

ts

y(t)

u(t)

yf

A2

Figure 4.5. Area methods, graphical illustration of the areas A1 A2 and A3.

Page 41: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

4.6 Dominant Pole Design 29

4.6 Dominant Pole DesignThe dominant pole design is an approximation of the pole placement method whereall the closed-loop poles are assigned, which will lead to very complex controllersfor high order process models. By using a few dominant poles instead, a sim-ple controller can be designed for complex processes. The dominant pole designmethod is based on the assumption that the transfer function of the process isknown and that the non-specified poles are much faster (or placed close to zeros).This gives good approximation of the shape and speed of the settling transients[9]. In the complex plane the dominant poles are the ones lying closest to theimaginary axis shown in Figure 4.6.

dominant poles

faster poles

lines for constantrelative damping

ω

Figure 4.6. Poles and zeros from a closed loop configuration [9].

Let H(s) be the desired closed loop transfer function

H(s) = ω20

s2 + 2ζω0s+ ω20

(4.5)

H(s) has two complex poles at

p1,2 = ω0

(−ζ0 ± i

√1− ζ2

0

)= ω0e

i(π±γ) = ω0 (− cos(γ)± i sin(γ))

for 0 < ζ < 1 and γ = arccos(ζ0)It is now possible to place these two poles with a PI controller and by extendingthe desired closed loop transfer function with a third pole a PID controller canbe used. This makes the dominant pole design method very suitable for tuningPI/PID controllers. The assigned poles will be dominating if the frequency is cho-sen sufficiently small [2].

Page 42: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

30 Automatic Tuning of PID Controllers

The procedure of how to calculate the parameters of a PI controller using dominantpole design is shown below and described in [2]. The PI controller is parametrizedas

F (s) = K(1 + 1sTi

) = k + kis

(4.6)

and the desired closed loop transfer function specified as in (4.5).

Let the process be described by the transfer function G(s) then the closed loop isgiven by

Gcl(s) = F (s)G(s)1 + F (s)G(s)

(4.7)

The characteristic equation of closed loop Gcl(s) shall satisfy the characteristicequation of the desired closed loop H(s) and with the poles p1, p2, which are theroots to characteristic equation, gives that

1 + F (p1)G(p1) = 1 +(k + ki

ω0ei(π−γ)

)a(ω0)eiΦ(ω0) = 0

With G(p1) = G(ω0ei(π−γ)) = a(ω0)eiΦ(ω0) as described in Section 2.2 the con-

troller parameters can be calculated as

k = − sin(Φ(ω0) + γ)a(ω0) sin(γ)

ki = − sin(Φ(ω0))a(ω0) sin(γ)

In the design procedure above, the relative damping and the natural frequencyare the design parameters. Figure 4.7 and 4.8 shows how different values of therelative damping ζ and natural frequency affect the closed loop step response. Bychanging the natural frequency the step response can be made faster or slower,but the step response characteristic is maintained. With the relative damping asdesign parameter the characteristic of the step response can be changed, and bemade well damped with no overshoot or less damped with overshoot. This makesthe relative damping very suitable as a design parameter.

4.7 Auto-Tuning using Dominant Pole DesignThe auto-tuning procedure described in this section was implemented in ABB’sprevious distributed control system called Advant. The procedure includes auto-matic identification of the process, which is used to determine the PID parameterswith dominant pole placement. The auto-tuning procedure can be divided intofour phases [9].

• Phase 1 ”Listen Phase”During this phase the output is kept constant and values that are needed forthe rest of the tuning process are determined, based on the measured data,like mean value and process variations.

Page 43: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

4.7 Auto-Tuning using Dominant Pole Design 31

......

0.5

1.4

0.3

0.7

1.0!

Figure 4.7. Closed loop step responses for different relative damping ζ and constant ω.

.....

0.5

0.7

1.4

1.0

2.0

"

Figure 4.8. Closed loop step responses for different natural frequency ω and constant ζ.

• Phase 2 ”Relay Phase”During phase 2, a relay feedback with hysteresis is used. The hysteresisdepends on the variations determined in phase 1. The oscillations obtainedfrom the process output gives information about time scale and data for theprocess identification. In the end of phase 2 a preliminary tuned controllerhas been determined.

• Phase 3 ”Excitation”Only a preliminary process model is identified in the relay phase, which onlyprovides excitation at the most important frequency. In the excitation phasethe controller is fine tuned using PRBS (Pseudo Random Binary Sequence)added to the setpoint. When the parameters have converged the next andlast phase of the auto-tuning procedure starts.

• Phase 4 ”Verification”The verification phase is to verify whether the controller gives the specifiedresponse, stated by the relative damping factor ζ.

The design calculations to determine the dominant poles and the controller pa-rameters in discrete time are described below and in [9].

Page 44: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

32 Automatic Tuning of PID Controllers

r, y

u

ListenRelay PhasePhase

Start ofAutotuning

time

g

Figure 4.9. The listen and the relay phase.

r, y

u

Excitation Phase Verification Phase

AutotuningDone

time

RelayPhase

Figure 4.10. The excitation and the verification phase.

Let P be a polynomial describing the specified poles and a factor in the closedloop characteristic.

P (q−1) =np∏i=1

(1− epiTsq−1) (4.8)

where pi is a specified pole in continuous time. To be able to use dominant poledesign a process model must be determined. Assume that the following processmodel is estimated

A(q−1)y(k) = B(q−1)u(k)A(q−1) = 1 + a1q

−1 + ...+ anaqna

B(q−1) = b1q−1 + ...+ bnbq

nb

and the discrete time PID controller is described by

u(k) = K

(βr(k)− y(k) + Ts

Ti(1− q−1)(r(k)− y(k))− Td

Ts(1− q−1)y(k)

)

Page 45: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

4.7 Auto-Tuning using Dominant Pole Design 33

The PID controller can be formulated as polynomials R, S and T

R(q−1)u(k) = T (q−1)r(k)− S(q−1)y(k)R(q−1) = 1− q−1

S(q−1) = s0 + s1q−1 + s2q

−1

= K

(1 + Ts

Ti+ TdTs

)−K

(1 + 2Td

Ts

)q−1 +K

TdTsq−2

T (q−1) = t0 + t1q−1 = K

(β + Ts

Ti

)−Kβq−1

The closed loop transfer function can now be written as

H(q−1) = B(q−1)T (q−1)A(q−1)R(q−1) +B(q−1)S(q−1)

Introducing the polynomial X(q−1) for the non-specified poles, the characteristicequation is written as

A(q−1)R(q−1) +B(q−1)S(q−1) = P (q−1)X(q−1)

where S and X are unknown polynomials to be solved for. The polynomial Sdefines the controller parameters and the roots of X are the closed loop poles thatare insignificant compared with the specified poles. Interpreted in continuous timethese poles are to the left of the imaginary axis with a certain factor Ψ larger thanζω, which is the corresponding distance for the specified poles. In discrete timethe dominance test is to investigate whether the polynomial X has any roots insidea circle with radius ρ = e−ΨζωTs . The quickest dominant design for the specifiedrelative damping is chosen by iterating over the natural frequency ω, increasing itwhen the test is fulfilled and decreasing when it is not.[9]

Page 46: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma
Page 47: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

Chapter 5

Simulation Comparison

The main purpose of this thesis is to compare ABB’s different auto-tuning meth-ods. In the previous generation of ABB’s distributed control system (DCS) calledAdvant there was an implementation of an auto-tuning method using dominantpole design (DPD) to compute the PID parameters. In the new generation DCScalled 800xA there is another auto-tuning approach included, that is built on arelay experiment and applies the modified Ziegler-Nichols rules to obtain the PIDparameters. After a completed relay auto-tuning procedure it is also possible tocontinue with a step identification experiment to get the additional parameters fora kappa-tau design.Unfortunately the auto-tuning methods were not simulated in the same programenvironment. The complete DPD method was simulated in Matlab, but therelay method and kappa-tau method are simulated in Soft Controller of 800xAand configured in Control Builder (CB), which is ABB’s software tool for pro-gramming control systems. The auto-tuning methods were simulated on differentprocess models that are encountered in process control, shown in Section 5.1. Theprocess models were written and discretized in Matlab and transfered to struc-tured text format used by Control Builder. The PID parameters obtained fromthe simulations in Soft Controller were noted and used for simulation comparisonsin Matlab. An overview description is shown in Figure 5.1.

35

Page 48: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

36 Simulation Comparison

Figure 5.1. The Relay auto-tuning method and kappa-tau auto-tuning method simu-lated in Soft Controller. The DPD method is simulated in Matlab.

5.1 The Test Batch

The test batch below is a selection from the test batch used by Åström and Häg-glund [3]. It includes delay-dominated, lag-dominated, and integrating processes.Totally 25 processes.

P1(s) =e−s

1 + sT

T = 0.3, 0.5, 1, 2, 4, 6, 10, 20

P2(s) =1

(s+ 1)n

n = 3, 4, 6, 8

P3(s) =e−sL

s(1 + sT )T = 0.01, 0.5, 0.7, 1.0 T + L = 1

P4(s) =1− αs

(s+ 1)3

α = 0.1, 0.2, 0.5, 0.8, 1.1

P5(s) =1

(s+ 1)((sT )2 + 1.4sT + 1)T = 0.7, 0.8, 0.9, 1.0

Page 49: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

5.2 Simulation in Matlab 37

5.2 Simulation in MatlabTo evaluate and simulate the controllers obtained from the different auto-tuningmethods the following discrete PID algorithm in (5.1) is used

u(k) = K(βr(k)− y(k) + Ts

Ti

e(k)1−q−1 − Td

Ts

(1−α)(1−αq−1) (y(k)− y(k − 1)

)(5.1)

where e(k) = r(k)−y(k). The discrete filter pole α is computed differently depend-ing on the controller. For the controller using dominant pole design the discretefilter pole is given by

α =

2Tf−Ts2Tf+Ts if Tf ≥ 0.5Ts

0 if Tf < 0.5Ts

Tf = Td10

For the controller using relay or kappa-tau tuning the discrete filter pole is givenby

α =

Tf−TsTf

if Tf ≥ Ts

0 if Tf < Ts

Tf = Td8

When comparing the methods they are tuned to the same maximum sensitivitydefined by

Ms = max |S(iω)| = max∣∣∣∣ 11 + Fy(iω)G(iω)

∣∣∣∣where G(iω) is the process and Fy(iω) the feedback controller. This was doneby adjusting the damping factor and the frequency for the DPD method and thespeed (slow, normal or fast) for the relay and kappa-tau method. The closed loopsystems are simulated with a load disturbance step added to the control signaland a set-point step. The responses are plotted and the integrated square error iscalculated as a measure of how much the system diverges from the ideal during aload disturbance or a set-point change. The integrated square error is defined by

ISE =∞∫0

e(t)2dt, e(t) = r(t)− y(t)

Page 50: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

38 Simulation Comparison

5.3 ConclusionsTo be able to give a more fair comparison between the auto-tuning methods, theyare tuned to the same maximum sensitivity, Ms. The relay auto-tuning methodautomatically sets the set-point weight to zero and the kappa-tau sets the weightto zero for a fast PID controller. This gives the dominant pole design an advantagewhen comparing the step responses. This will be taken into consideration and willnot be given as much importance as the rejection of load disturbances. Nyquistdiagrams of the loop transfer function and plots of the closed loop simulationswith a set-point and a load disturbance step are found in Appendix A.

After comparing the simulations between the DPD method and the relay methodthe conclusion is that the DPD gives a faster load disturbance rejection for almostall processes in the test batch, except for first order lag-dominated processes wherethe two methods give almost identical rejection, shown in Figure 5.2(a). Also forintegrating processes both methods give similar load disturbance rejection. Formany processes the relay method tends to give too much phase lead as the Nyquistcurve ”bends” over the imaginary axis at low frequencies, due to low integral ac-tion. This results in a slow rejection of load disturbances.

The difference between the kappa-tau method and the DPD is not that big. TheDPD tuning gives much better performance for integrating processes, where thekappa-tau tuning gives less gain and integral action. In general the kappa-taumethod gives very good load disturbance rejection and in several cases even bet-ter than the DPD method. However, for first order lag-dominated processes thekappa-tau method gives a very slow load disturbance rejection as shown in Figure5.3(a). Figure 5.4 shows plots of the normalized controller parameters vs. kappaas described in [10, 2]. For a decreasing kappa-value the proportional gain andthe integral action decreases and the derivative gain increases which explains whythe kappa-method gives the slower load disturbance rejection for lag-dominatedprocesses. The kappa-function proposed by Åström and Hägglund in [2] is plottedas a reference.

Simulating the auto-tuning methods with measurement noise the relay auto-tuningmethod gives a more conservative controller. The step identification experimentis based on integrals and is then less sensitive to noisy signals and before the stepidentification experiment starts the process signal has to be in steady state and notdeviate too much, which guarantees a more reliable calculation of the parameters.The DPD method is not sensitive to high disturbance levels, as long as there isenough signal-to-noise ratio to identify a model [9].

Page 51: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

5.3 Conclusions 39

0 20 40 60 80 100 120−0.2

0

0.2

0.4

0.6

0.8

1

(a) Lag-dominated process, P (s) = e−s/(1 + 20s).

0 20 40 60 80 100 120−0.5

0

0.5

1

1.5

2Process: exp(−s)/(1+sT) T = 0.3

(b) Delay-dominated process, P (s) = e−s/(1 + 0.3s).

Figure 5.2. Comparison between the DPD auto-tuning method and the relay auto-tuning method. Solid line (—) DPD and dashed line (- - -) Relay.

0 50 100 150−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(a) Lag-dominated process, P (s) = e−s/(1 + 20s)

0 10 20 30 40 50 60−0.5

0

0.5

1

1.5

2

(b) Delay-dominated process, P (s) = e−s/(1 + 0.3s)

Figure 5.3. Comparison between the DPD auto-tuning method and the kappa-tauauto-tuning method. Solid line (—) DPD and dashed line (- - -) kappa-tau.

Page 52: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

40 Simulation Comparison

0 0.2 0.4 0.6 0.8 110

−2

10−1

100

K/Ku vs. κ

0 0.2 0.4 0.6 0.8 1

10−0.8

10−0.6

10−0.4

10−0.2

100

Ti/T

u vs. κ

0 0.2 0.4 0.6 0.8 1

100

101

β vs. κ

(a) Normalized controller parameters vs. kappa for PI controller.

0 0.2 0.4 0.6 0.8 110

−2

10−1

100

K/Ku vs. κ

0 0.2 0.4 0.6 0.8 1

10−0.9

10−0.7

10−0.5

10−0.3

10−0.1

Ti/T

u vs. κ

0 0.2 0.4 0.6 0.8 110

−2

10−1

100

Td/T

u vs. κ

0 0.2 0.4 0.6 0.8 1

100

101

β vs. κ

(b) Normalized controller parameters vs. kappa for PID controller.

Figure 5.4. Dashed line (- - -) modified Z-N(Thesis [10]), solid line (—) kappa-function (Thesis [10]) and dotted line (....) kappa-function (Åström and Hägglund [2])for Ms = 1.4

Page 53: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

5.4 Recommendation 41

5.4 RecommendationIf the comparison only was between the relay auto-tuning and dominant pole de-sign, the recommendation would have been that ABB should consider migratingthe DPD method to 800xA. But after the relay auto-tuning it is possible to con-tinue the tuning procedure with a step identification and kappa-tau design. Whenit comes to the kappa-tau method the simulations show that the method givesgood performance for many processes, but as mentioned in the conclusion themethod has problem with lag-dominated and integrating processes, where actu-ally the relay method gives better performance. If the user choose to continue therelay tuning with a step identification he or she probably expect that it would givebetter performance than just performing a relay auto tuning, but that does nothave to be the case if the process is lag-dominated or integrating. To prevent thisthe user should be informed in some way or implement the DPD method if this isconsidered to be of essential importance.

Apart from the controller performance there is another aspect, the decision ofthe response characteristic. Today the user can choose a controller that is slow,normal or fast. Fast gives a controller with more overshoot, but it is difficult todecide how much. It can also be the opposite if the process is integrating, where aslow controller gives a very oscillative response. The dominant pole placement hasdifferent damping levels, extra damped, damped, fast or extra fast. With theselevels I have found it easier to decide the response shape in advance. It must alsobe mentioned that I have only used the DPD method in Matlab and can notcomment the commercial product.

Page 54: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma
Page 55: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

Bibliography

[1] K. J. Åström and T. Hägglund. Automatic tuning of simple PID regulatorswith specifications on phase and amplitude margins. Automatica 20 (5), 645-651,1984.

[2] K. J. Åström and T. Hägglund. PID Controllers: Theory, Design and Tuning.Instrument Society of America, Research Triangle Park, NC, 2 edition, 1995.ISBN 1-55617-516-7.

[3] K. J. Åström and T. Hägglund. Advanced PID Control. ISA - Instrumenta-tion, Systems and Automation Society, Research Triangle Park, NC, 1 edition,2006. ISBN 1-55617-942-1.

[4] T. Glad, S. Gunnarsson, L. Ljung, T. McKelvy, A. Stenman, and J. Löfberg.Digital Styrning Kurskompendium. Linus och Linnea AB, 2003. (In Swedish).

[5] T. Glad and L. Ljung. Reglerteori. Flervariabla och olinjära metoder. Stu-dentlitteratur, Lund, 2 edition, 2003. ISBN 91-44-03003-7. (In Swedish).

[6] T. Glad and L. Ljung. Modellbygge och Simulering. Studentlitteratur, Lund,2 edition, 2004. ISBN 91-44-02443-6. (In Swedish).

[7] F. Gustafsson, L. Ljung, and M. Millnert. Signalbehandling. Studentlitter-atur, Lund, 2 edition, 2001. ISBN 91-44-01709-X. (In Swedish).

[8] C.C. Hang, K. J. Åström, and Q.G. Wang. Relay feedback auto-tuning ofprocess controllers - a tutorial review. Journal of Process Control 12, pp.143-162, 2002.

[9] P. E. Modén. Advanced PID autotuning, easy to use. European ControlConference ECC 95, Rome, Italy, 1995.

[10] A. Norberg. Kappa-tuning improved relay auto-tuning for PID controllers.Master Thesis, Department of Automatic Control, Lund Institute of Technol-ogy, June 1999.

43

Page 56: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma
Page 57: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

Appendix A

Results from theComparison Simulations

The results from the comparison simulations are given in different plots and ta-bles. In the time domain there are plots showing how the controller rejects a loaddisturbance and follows a set-point change. For the frequency domain the looptransfer function is plotted with the unit circle and the circle with center in −1which radius is the inverse of the maximum sensitivity. The tables contain thePID parameters, ISE for the load disturbances and set-point changes. Also themaximum sensitivity, Ms, sampling period, Ts, damping level ζ and frequency, ω,are given in the tables.

A.1 Comparison Between Dominant Pole Designand Relay Tuning

A.1.1 Process P1

The process P1 is defined as

P1(s) = e−s

1 + sTT = 0.3, 0.5, 1, 2, 4, 6, 10, 20

The load disturbance steps in Figure A.1 and the ISE measures given in Table A.1show that for a process with time constant T ≤ 1 the DPD method results in afaster load disturbance rejections. When the process becomes more lag-dominatedthe load disturbance rejection is almost identical. The Nyquist plots in Figure A.2show that for delay-dominated processes, L ≥ T , the Nyquist curve "bends" overthe imaginary axis, due to low integral action and causing the slow rejection of aload disturbance.

45

Page 58: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

46 Results from the Comparison Simulations

T Method K Ti Td β Tf ζ ω Ts (s) Ms ISE dist. ISE setpoint

0.3 Relay 0.43 3.34 0 0 0 slow - 0.25 1.62 0.82 5.80DPD 0.05 0.12 0 4.55 0 0.70 0.90 0.25 1.58 0.53 1.62

0.5 Relay 0.45 3.34 0 0 0 slow - 0.25 1.52 0.77 5.69DPD 0.04 0.10 0 6.87 0 0.70 0.70 0.25 1.52 0.57 1.81

1 Relay 0.52 4.3 0 0 0 slow - 0.25 1.39 0.78 6.73DPD 0.13 0.45 0 2.37 0 0.70 0.45 0.25 1.40 0.57 2.10

2 Relay 1.07 3.5 0 0 0 normal - 0.25 1.62 0.27 3.92DPD 0.72 1.52 0 0.57 0 0.70 0.55 0.25 1.59 0.26 2.15

4 Relay 1.77 3.82 0 0 0 normal - 0.25 1.62 0.14 3.76DPD 1.45 2.53 0 0.45 0 0.70 0.42 0.25 1.61 0.14 2.38

6 Relay 2.27 4.46 0 0 0 normal - 0.25 1.53 0.10 4.16DPD 1.88 3.26 0 0.41 0 0.70 0.36 0.25 1.50 0.11 2.73

10 Relay 2.88 5.73 0 0 0 normal - 0.25 1.39 0.08 5.16DPD 1.95 3.62 0 0.42 0 0.70 0.31 0.25 1.39 0.11 3.60

20 Relay 3.94 8.28 0 0 0 normal - 0.25 1.26 0.06 7.19DPD 4.51 6.86 0 0.16 0 1.00 0.31 0.25 1.32 0.04 5.05

Table A.1. Parameters of PID/PI controller and the ISE for load disturbance andsetpoint change.

0 20 40 60 80 100 120−0.5

0

0.5

1

1.5

2Process: exp(−s)/(1+sT) T = 0.3

(a) T = 0.3

0 20 40 60 80 100 120−0.5

0

0.5

1

1.5

2Process: exp(−s)/(1+sT) T = 0.5

(b) T = 0.5

0 20 40 60 80 100 120 140−0.5

0

0.5

1

1.5

2

(c) T = 1

0 10 20 30 40 50 60 70 80 90−0.5

0

0.5

1

1.5

2

(d) T = 2

Page 59: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

A.1 Comparison Between Dominant Pole Design and Relay Tuning 47

0 10 20 30 40 50 60 70 80 90−0.5

0

0.5

1

1.5

2

2.5

(e) T = 4

0 10 20 30 40 50 60 70 80 90−0.5

0

0.5

1

1.5

2

2.5

(f) T = 6

0 10 20 30 40 50 60 70 80 90−0.5

0

0.5

1

1.5

2

2.5

3

(g) T = 10

0 10 20 30 40 50 60 70 80 90−0.5

0

0.5

1

1.5

2

2.5

3

(h) T = 20

Figure A.1. Load disturbance step and a setpoint step. Relay auto-tuning methoddashed line (- - -), DPD method solid line (—).

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(a) T = 0.3

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(b) T = 0.5

Page 60: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

48 Results from the Comparison Simulations

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(c) T = 1

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(d) T = 2

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(e) T = 4

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(f) T = 6

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(g) T = 10

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(h) T = 20

Figure A.2. Nyquist diagrams of the loop transfer function. Relay auto-tuning methoddashed line (- - -), DPD method solid line (—).

Page 61: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

A.1 Comparison Between Dominant Pole Design and Relay Tuning 49

A.1.2 Process P2

The process P2 is defined as

P2(s) = 1(s+ 1)n

n = 3, 4, 6, 8

The load disturbance steps in Figure A.3 and the ISE measures given in Table A.2show that the DPD method results in a faster load disturbance rejection. The loaddisturbance rejection for the relay method deteriorates when the process order nincreases. Also the Nyquist plots in Figure A.4 show that the Nyquist curve forthe loop transfer function ”bends” over too much when the process order increasesand causing the slow rejection of a load disturbance.

n Method K Ti Td β Tf ζ ω Ts (s) Ms ISE dist ISE setpoint

3 Relay 1.32 4.3 0.69 0 0.09 normal - 0.25 1.33 0.21 4.39DPD 0.83 2.03 0.42 0.89 0.13 0.70 0.79 0.25 1.34 0.25 1.95

4 Relay 1.08 6.73 1.08 0 0.13 normal - 0.25 1.45 0.44 7.52DPD 0.87 2.66 0.67 1.16 0.13 0.50 0.65 0.25 1.47 0.33 2.62

6 Relay 0.78 11.3 1.81 0 0.23 normal - 0.25 1.59 1.18 14.85DPD 0.63 3.92 0.78 1.12 0.25 0.50 0.46 0.50 1.61 0.83 4.75

8 Relay 0.7 13.93 2.23 0 0.28 normal - 0.25 1.71 1.76 19.77DPD 0.53 4.65 0.75 1.31 0.25 0.50 0.33 0.50 1.67 1.33 6.80

Table A.2. Parameters of PID/PI controller and the ISE for load disturbance andsetpoint change.

Page 62: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

50 Results from the Comparison Simulations

0 10 20 30 40 50 60 70 80−0.5

0

0.5

1

1.5

2

(a) n = 3

0 50 100 150−0.5

0

0.5

1

1.5

2

2.5

(b) n = 4

0 50 100 150 200 250−0.5

0

0.5

1

1.5

2

(c) n = 6

0 50 100 150 200 250 300−0.5

0

0.5

1

1.5

2

(d) n = 8

Figure A.3. Load disturbance step and a setpoint step. Relay auto-tuning methoddashed line (- - -), DPD method solid line (—).

Page 63: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

A.1 Comparison Between Dominant Pole Design and Relay Tuning 51

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(a) n = 3

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(b) n = 4

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(c) n = 6

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(d) n = 8

Figure A.4. Nyquist diagrams of the loop transfer function. Relay auto-tuning methoddashed line (- - -), DPD method solid line (—).

Page 64: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

52 Results from the Comparison Simulations

A.1.3 Process P3

The process P3 is defined as

P3(s) = e−sL

s(1 + sT )T = 0.01, 0.5, 0.7, 1 L = 1− T

The load disturbance steps in Figure A.5 show that the relay method and theDPD method rejects the load disturbance in similar way, except that the relay hasslightly faster rise time with overshoot.

T Method K Ti Td β Tf ζ ω Ts (s) Ms ISE dist. ISE setpoint

0.01 Relay 0.42 5.65 0.9 0 0.11 fast - 0.25 1.84 5.01 4.33DPD 0.49 6.91 0.02 0.06 0.13 1.40 0.60 0.25 1.85 5.03 3.93

0.5 Relay 0.57 5.18 0.83 0 0.1 fast - 0.25 1.59 2.52 3.68DPD 0.58 6.39 0.29 0.17 0.13 1.40 0.66 0.25 1.58 3.16 3.04

0.7 Relay 0.7 4.97 0.79 0 0.1 fast - 0.25 1.44 1.59 3.36DPD 0.76 6.10 0.77 0.20 0.13 1.40 0.58 0.25 1.48 1.58 2.74

1 Relay 0.86 4.67 0.75 0 0.09 fast - 0.25 1.18 0.96 3.02DPD 0.83 8.58 1.21 0.21 0.13 1.40 0.40 0.25 1.22 1.68 3.57

Table A.3. Parameters of PID/PI controller and the ISE for load disturbance andsetpoint change.

Page 65: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

A.1 Comparison Between Dominant Pole Design and Relay Tuning 53

0 20 40 60 80 100 120 140 160 180 200−1.5

−1

−0.5

0

0.5

1

1.5

(a) T = 0.01

0 20 40 60 80 100 120 140 160 180 200−1

−0.5

0

0.5

1

1.5

(b) T = 0.5

0 20 40 60 80 100 120 140 160 180 200−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

1.2

(c) T = 0.7

0 20 40 60 80 100 120 140 160 180 200−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

1.2

(d) T = 1

Figure A.5. Load disturbance step and a setpoint step. Relay auto-tuning methoddashed line (- - -), DPD method solid line (—).

Page 66: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

54 Results from the Comparison Simulations

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(a) T = 0.01

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(b) T = 0.5

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(c) T = 0.7

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(d) T = 1

Figure A.6. Nyquist diagrams of the loop transfer function. Relay auto-tuning methoddashed line (- - -), DPD method solid line (—).

Page 67: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

A.1 Comparison Between Dominant Pole Design and Relay Tuning 55

A.1.4 Process P4

The process P4 is defined as

P4(s) = 1− αs(s+ 1)3

α = 0.1, 0.2, 0.5, 0.8, 1.1

The load disturbance steps in Figure A.7 and the ISE measures in Table A.4 showthat the DPD method eliminates the load disturbance faster. For the relay methodthe load disturbance rejection deteriorates when α increases and it is also shownin the Nyquist plots Figure A.8 as the loop transfer function ”bends” over theimaginary axis for low frequencies.

α Method K Ti Td β Tf ζ ω Ts (s) Ms ISE dist. ISE setpoint

0.1 Relay 1.13 4.93 0.79 0 0.1 normal - 0.25 1.33 0.30 5.35DPD 0.67 1.95 0.33 1.00 0.13 0.70 0.73 0.25 1.37 0.32 2.16

0.2 Relay 1.12 4.94 0.79 0 0.1 normal - 0.25 1.40 0.31 5.42DPD 0.81 2.11 0.51 0.86 0.13 0.70 0.78 0.25 1.39 0.28 2.20

0.5 Relay 0.87 6.08 0.97 0 0.12 normal - 0.25 1.51 0.55 7.49DPD 0.74 2.20 0.55 0.83 0.13 0.70 0.78 0.25 1.49 0.36 2.67

0.8 Relay 0.7 6.52 1.04 0 0.13 normal - 0.25 1.62 0.82 9.08DPD 0.64 2.22 0.57 0.86 0.13 0.70 0.75 0.25 1.56 0.49 3.16

1.1 Relay 0.56 7.54 1.21 0 0.15 normal - 0.25 1.71 1.28 11.93DPD 0.57 2.25 0.55 0.90 0.13 0.70 0.71 0.25 1.65 0.64 3.67

Table A.4. Parameters of PID/PI controller and the ISE for load disturbance andsetpoint change.

Page 68: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

56 Results from the Comparison Simulations

0 10 20 30 40 50 60 70 80 90 100−0.5

0

0.5

1

1.5

2

(a) α = 0.1

0 10 20 30 40 50 60 70 80 90 100−0.5

0

0.5

1

1.5

2

(b) α = 0.2

0 20 40 60 80 100 120 140 160 180−0.5

0

0.5

1

1.5

2

(c) α = 0.5

0 20 40 60 80 100 120−0.5

0

0.5

1

1.5

2

(d) α = 0.8

0 20 40 60 80 100 120 140 160 180−0.5

0

0.5

1

1.5

2

(e) α = 1.1

Figure A.7. Load disturbance step and a setpoint step. Relay auto-tuning methoddashed line (- - -), DPD method solid line (—).

Page 69: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

A.1 Comparison Between Dominant Pole Design and Relay Tuning 57

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(a) α = 0.1

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(b) α = 0.2

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(c) α = 0.5

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(d) α = 0.8

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(e) α = 1.1

Figure A.8. Nyquist diagrams of the loop transfer function. Relay auto-tuning methoddashed line (- - -), DPD method solid line (—).

Page 70: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

58 Results from the Comparison Simulations

A.1.5 Process P5

The process P5 is defined as

P5(s) = 1(s+ 1)((sT )2 + 1.4sT + 1)

T = 0.7, 0.8, 0.9, 1.0

The load disturbance steps in Figure A.9 show that the DPD method results infaster load disturbance rejection. Also for this process the relay method introducestoo much phase lead at low frequencies shown in the Nyquist plots in Figure A.10and causing slower load disturbance rejection.

T Method K Ti Td β Tf ζ ω Ts (s) Ms ISE dist. ISE setpoint

0.7 Relay 0.66 4.78 0 0 0 slow - 0.25 1.37 0.62 6.34DPD 0.29 0.93 0 0.55 0 1.00 0.65 0.25 1.36 0.45 2.37

0.8 Relay 0.74 4.78 0 0 0 slow - 0.25 1.44 0.55 5.97DPD 0.12 0.41 0 2.14 0 0.70 0.54 0.25 1.48 0.58 2.32

0.9 Relay 0.71 5.26 0 0 0 slow - 0.25 1.42 0.63 6.74DPD 0.09 0.35 0 2.72 0 0.70 0.50 0.25 1.47 0.66 2.56

1 Relay 0.69 5.73 0 0 0 slow - 0.25 1.42 0.71 7.47DPD 0.06 0.27 0 4.44 0 0.70 0.40 0.50 1.44 0.84 2.74

Table A.5. Parameters of PID/PI controller and the ISE for load disturbance andsetpoint change.

Page 71: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

A.1 Comparison Between Dominant Pole Design and Relay Tuning 59

0 20 40 60 80 100 120 140 160 180−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

(a) T = 0.7

0 20 40 60 80 100 120 140 160 180−0.5

0

0.5

1

1.5

2

(b) T = 0.8

0 20 40 60 80 100 120 140 160 180−0.5

0

0.5

1

1.5

2

(c) T = 0.9

0 20 40 60 80 100 120 140 160 180−0.5

0

0.5

1

1.5

2

(d) T = 1

Figure A.9. Load disturbance step and a setpoint step. Relay auto-tuning methoddashed line (- - -), DPD method solid line (—).

Page 72: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

60 Results from the Comparison Simulations

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(a) T = 0.7

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(b) T = 0.8

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(c) T = 0.9

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(d) T = 1

Figure A.10. Nyquist diagrams of the loop transfer function. Relay auto-tuning methoddashed line (- - -), DPD method solid line (—).

Page 73: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

A.2 Comparison Between Dominant Pole Design and Kappa-Tau 61

A.2 Comparison Between Dominant Pole Designand Kappa-Tau

A.2.1 Process P1

The process P1 is defined as

P1(s) = e−s

1 + sTT = 0.3, 0.5, 1, 2, 4, 6, 10, 20

The load disturbance steps in Figure A.11 and the ISE measures in Table A.6show that the two methods results in a similar load disturbance rejection. TheDPD method result in a slightly greater ISE measure for T < 1 compared to thekappa-tau method.

T Method K Ti Td β Tf ζ ω Ts (s) Ms ISE dist. ISE setpoint

0.3 κ− τ 0.21 0.71 0 1 0 normal - 0.25 1.36 0.53 1.89DPD 0.07 0.20 0 1.82 0 1.00 0.90 0.25 1.39 0.57 1.92

0.5 κ− τ 0.22 0.71 0 1 0 normal - 0.25 1.37 0.51 1.94DPD 0.14 0.46 0 0.90 0 1.00 0.80 0.25 1.36 0.54 2.11

1 κ− τ 0.43 0.93 0 0.003 0 fast - 0.25 1.63 0.36 2.34DPD 0.40 0.82 0 0.77 0 0.70 0.75 0.25 1.67 0.36 1.87

2 κ− τ 0.55 1.29 0 0.038 0 fast - 0.25 1.52 0.31 2.88DPD 0.63 1.49 0 0.64 0 0.70 0.50 0.25 1.51 0.29 2.21

4 κ− τ 0.75 2.12 0 0.164 0 fast - 0.25 1.38 0.28 3.73DPD 1.01 2.57 0 0.53 0 0.70 0.35 0.25 1.39 0.22 2.79

6 κ− τ 0.87 3.05 0 0.231 0 fast - 0.25 1.28 0.30 4.50DPD 1.06 3.66 0 0.26 0 1.00 0.35 0.25 1.25 0.26 4.35

10 κ− τ 2.12 4.62 1.93 0 0.24 fast - 0.25 1.77 0.10 5.77DPD 5.30 4.70 0.15 0.18 0.13 1.40 0.83 0.25 1.76 0.03 2.85

20 κ− τ 2.75 7.95 3.33 0 0.42 fast - 0.25 1.74 0.10 9.37DPD 10.67 5.50 0.16 0.17 0.13 1.40 0.75 0.25 1.78 0.01 3.00

Table A.6. Parameters of PID/PI controller and the ISE for load disturbance andset-point change.

Page 74: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

62 Results from the Comparison Simulations

0 10 20 30 40 50 60−0.5

0

0.5

1

1.5

2

(a) T = 0.3

0 10 20 30 40 50 60−0.5

0

0.5

1

1.5

2

(b) T = 0.5

0 10 20 30 40 50 60−0.5

0

0.5

1

1.5

2

(c) T = 1

0 10 20 30 40 50 60−0.5

0

0.5

1

1.5

2

(d) T = 2

0 10 20 30 40 50 60−0.5

0

0.5

1

1.5

2

(e) T = 4

0 10 20 30 40 50 60 70 80 90−0.5

0

0.5

1

1.5

2

(f) T = 6

Page 75: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

A.2 Comparison Between Dominant Pole Design and Kappa-Tau 63

0 20 40 60 80 100 120 140 160 180 200−0.5

0

0.5

1

1.5

2

2.5

3

3.5

(g) T = 10

0 20 40 60 80 100 120 140 160 180−1

0

1

2

3

4

5

(h) T = 20

Figure A.11. Load disturbance step and a setpoint step. Kappa-tau method dashedline (- - -), DPD method solid line (—) .

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(a) T = 0.3

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(b) T = 0.5

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(c) T = 1

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(d) T = 2

Page 76: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

64 Results from the Comparison Simulations

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(e) T = 4

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(f) T = 6

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(g) T = 10

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(h) T = 20

Figure A.12. Nyquist diagrams of the loop transfer function. Kappa-tau method dashedline (- - -), DPD method solid line (—) .

Page 77: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

A.2 Comparison Between Dominant Pole Design and Kappa-Tau 65

A.2.2 Process P2

The process P2 is defined as

P2(s) = 1(s+ 1)n

n = 3, 4, 6, 8

The load disturbance steps in FigureA.13 and the ISE measures in Table A.7 showthat the kappa-tau method gives a little advantage in reducing load disturbances.For a set-point step the DPD method results in a little faster response, and theovershoot is about the same for the two methods, except for n = 4 where DPDmethod has a damping factor ζ = 0.5.

n Method K Ti Td β Tf ζ ω Ts (s) Ms ISE dist. ISE setpoint

3 κ− τ 1.27 1.91 0.8 0 0.1 fast - 0.25 1.34 0.13 2.59DPD 0.79 2.03 0.31 0.87 0.13 0.70 0.80 0.25 1.38 0.27 2.01

4 κ− τ 1.14 2.31 0.98 0 0.12 fast - 0.25 1.57 0.22 3.65DPD 1.11 2.77 0.84 0.99 0.13 0.50 0.73 0.25 1.56 0.25 2.50

6 κ− τ 0.55 3.07 1.32 0.456 0.16 normal - 0.25 1.43 0.77 5.99DPD 0.43 3.20 0.57 1.12 0.25 0.70 0.40 0.50 1.47 1.07 5.36

8 κ− τ 0.47 3.95 1.71 0.522 0.21 normal - 0.25 1.44 1.23 8.44DPD 0.40 4.21 0.50 1.14 0.25 0.70 0.30 0.50 1.52 1.58 7.55

Table A.7. Parameters of PID/PI controller and the ISE for load disturbance andset-point change.

Page 78: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

66 Results from the Comparison Simulations

0 5 10 15 20 25 30 35 40 45 50−0.5

0

0.5

1

1.5

2

(a) n = 3

0 5 10 15 20 25 30 35 40 45 50−0.5

0

0.5

1

1.5

2

2.5

(b) n = 4

0 10 20 30 40 50 60 70 80 90 100−0.5

0

0.5

1

1.5

2

(c) n = 6

0 20 40 60 80 100 120−0.5

0

0.5

1

1.5

2

(d) n = 8

Figure A.13. Load disturbance step and a set-point step. Kappa-tau method dashedline (- - -), DPD method solid line (—).

Page 79: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

A.2 Comparison Between Dominant Pole Design and Kappa-Tau 67

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(a) n = 3

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(b) n = 4

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(c) n = 6

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(d) n = 8

Figure A.14. Nyquist diagrams of the loop transfer function. Kappa-tau method dashedline (- - -), DPD method solid line (—).

Page 80: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

68 Results from the Comparison Simulations

A.2.3 Process P3

The process P3 is defined as

P3(s) = e−sL

s(1 + sT )T = 0.01, 0.5, 0.7, 1 L = 1− T

The load disturbance steps in Figure A.15 show that the DPD method results ina faster load disturbance rejection. For time constant 0.01 the DPD gives a PIcontroller for lower frequency than 0.6.

T Method K Ti Td β Tf ζ ω Ts (s) Ms ISE dist. ISE setpoint

0.01 κ− τ 0.37 12.87 0.08 0.695 0.01 fast - 0.25 1.47 13.52 2.27DPD 0.49 6.91 0.02 0.06 0.13 1.40 0.60 0.25 1.85 5.03 3.93

0.5 κ− τ 0.45 11.36 0.11 0.672 0.01 fast - 0.25 1.50 8.21 2.02DPD 0.55 6.93 0.29 0.18 0.13 1.40 0.58 0.25 1.54 3.69 3.22

0.7 κ− τ 0.5 9.92 0.12 0.654 0.02 fast - 0.25 1.49 5.91 1.87DPD 0.78 6.01 0.77 0.20 0.13 1.40 0.59 0.25 1.49 1.51 2.71

1 κ− τ 0.51 9.25 0.16 0.623 0.02 fast - 0.25 1.36 5.22 1.84DPD 0.77 5.94 0.76 0.18 0.25 1.40 0.68 0.50 1.37 1.60 2.42

Table A.8. Parameters of PID/PI controller and the ISE for load disturbance andset-point change.

Page 81: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

A.2 Comparison Between Dominant Pole Design and Kappa-Tau 69

0 20 40 60 80 100 120 140 160 180 200−1.5

−1

−0.5

0

0.5

1

(a) T = 0.01

0 20 40 60 80 100 120 140 160 180 200−1.5

−1

−0.5

0

0.5

1

(b) T = 0.5

0 20 40 60 80 100 120 140 160 180 200−1.5

−1

−0.5

0

0.5

1

1.5

(c) T = 0.7

0 20 40 60 80 100 120 140 160 180 200−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(d) T = 1

Figure A.15. Load disturbance step and a set-point step. Kappa-tau method dashedline (- - -), DPD method solid line (—).

Page 82: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

70 Results from the Comparison Simulations

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(a) T = 0.01

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(b) T = 0.5

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(c) T = 0.7

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(d) T = 1

Figure A.16. Nyquist diagrams of the loop transfer function. Kappa-tau method dashedline (- - -), DPD method solid line (—).

Page 83: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

A.2 Comparison Between Dominant Pole Design and Kappa-Tau 71

A.2.4 Process P4

The process P4 is defined as

P4(s) = 1− αs(s+ 1)3

α = 0.1, 0.2, 0.5, 0.8, 1.1

The load disturbance steps in Figure A.17 show that the step identification methodresults in a little faster rejection, but for an increasing α the difference between thetwo methods decreases. The set-point responses show about the same rise time,but the kappa-tau method gives a little overshoot.

α Method K Ti Td β Tf ζ ω Ts (s) Ms ISE dist. ISE setpoint

0.1 κ− τ 0.71 1.88 0.8 0.353 0.1 normal - 0.25 1.23 0.28 2.81DPD 0.42 1.76 0.38 0.87 0.13 1.00 0.65 0.25 1.25 0.50 2.91

0.2 κ− τ 0.71 1.87 0.79 0.356 0.1 normal - 0.25 1.27 0.29 2.87DPD 0.49 1.96 0.51 0.79 0.13 1.00 0.65 0.25 1.24 0.46 2.92

0.5 κ− τ 0.6 1.8 0.77 0.42 0.1 normal - 0.25 1.37 0.40 3.27DPD 0.45 1.97 0.53 0.79 0.13 1.00 0.65 0.25 1.31 0.56 3.35

0.8 κ− τ 0.47 1.86 0.8 0.523 0.1 normal - 0.25 1.38 0.58 3.85DPD 0.41 2.00 0.52 0.81 0.13 1.00 0.62 0.25 1.37 0.68 3.80

1.1 κ− τ 0.39 1.93 0.84 0.606 0.1 normal - 0.25 1.37 0.77 4.45DPD 0.38 2.02 0.50 0.85 0.13 1.00 0.59 0.25 1.42 0.83 4.27

Table A.9. Parameters of PID/PI controller and the ISE for load disturbance andset-point change.

Page 84: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

72 Results from the Comparison Simulations

0 10 20 30 40 50 60 70−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

(a) α = 0.1

0 10 20 30 40 50 60 70−0.5

0

0.5

1

1.5

2

(b) α = 0.2

0 10 20 30 40 50 60 70−0.5

0

0.5

1

1.5

2

(c) α = 0.5

0 10 20 30 40 50 60 70−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

(d) α = 0.8

0 10 20 30 40 50 60 70−0.5

0

0.5

1

1.5

2

(e) α = 1.1

Figure A.17. Load disturbance step and a set-point step. Kappa-tau method dashedline (- - -), DPD method solid line (—).

Page 85: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

A.2 Comparison Between Dominant Pole Design and Kappa-Tau 73

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(a) α = 0.1

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(b) α = 0.2

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(c) α = 0.5

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(d) α = 0.8

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(e) α = 1.1

Figure A.18. Nyquist diagrams of the loop transfer function. Kappa-tau method dashedline (- - -), DPD method solid line (—).

Page 86: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

74 Results from the Comparison Simulations

A.2.5 Process P5

The process P5 is defined as

P5(s) = 1(s+ 1)((sT )2 + 1.4sT + 1)

T = 0.7, 0.8, 0.9, 1.0

The load disturbance step in Figure A.19 and the ISE measures in Table A.10show that the step identification method results in a little faster rejection. Thestep identification also has a little faster response to a set-point step, but theresponse is reduced when approaching the steady state.

T Method K Ti Td β Tf ζ ω Ts (s) Ms ISE dist. ISE setpoint

0.7 κ− τ 0.52 1.12 0 0.025 0 fast - 0.25 1.62 0.30 2.28DPD 0.27 0.68 0.00 0.94 0 0.70 0.75 0.25 1.54 0.40 1.98

0.8 κ− τ 0.33 1.21 0 1 0 normal - 0.25 1.36 0.48 2.23DPD 0.24 0.89 0 0.63 0 1.00 0.60 0.25 1.35 0.53 2.66

0.9 κ− τ 0.32 1.3 0 1 0 normal - 0.25 1.36 0.54 2.46DPD 0.18 0.79 0 0.77 0 1.00 0.55 0.25 1.35 0.64 3.00

1 κ− τ 0.32 1.39 0 1 0 normal - 0.25 1.35 0.57 2.64DPD 0.14 0.69 0 0.87 0 1.00 0.55 0.50 1.35 0.81 3.28

Table A.10. Parameters of PID/PI controller and the ISE for load disturbance andsetpoint change.

Page 87: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

A.2 Comparison Between Dominant Pole Design and Kappa-Tau 75

0 10 20 30 40 50 60 70−0.5

0

0.5

1

1.5

2

(a) T = 0.7

0 10 20 30 40 50 60 70−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

(b) T = 0.8

0 10 20 30 40 50 60 70−0.5

0

0.5

1

1.5

2

(c) T = 0.9

0 10 20 30 40 50 60 70−0.5

0

0.5

1

1.5

2

(d) T = 1

Figure A.19. Load disturbance step and a set-point step. Kappa-tau method dashedline (- - -), DPD method solid line (—).

Page 88: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

76 Results from the Comparison Simulations

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(a) T = 0.7

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(b) T = 0.8

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(c) T = 0.9

−1.5 −1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

(d) T = 1

Figure A.20. Nyquist diagrams of the loop transfer function. Kappa-tau method dashedline (- - -), DPD method solid line (—).

Page 89: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

Appendix B

B.1 Derivative FilteringIn AC800M the filtering of the derivative part is done by

yf (t) = yf (t− 1) + [y(t)− yf (t− 1)] TsTf

and with the shift operator it can be written as

yf (t) = Ts/Tf1− (1− Ts/Tf )q−1 y(t)⇒ yf (t) = 1− α

1− αq−1 y(t)

where α = (1− Ts/Tf ) and α = 0 if Tf ≤ Ts

AC450 is using Tustin’s method which gives a discrete filter pole

α = 2Tf − Ts2Tf + Ts

where α = 0 if Tf ≤ 0.5Ts

B.2 Determination of the Average Residence TimeShort description of how the average residence time Tar is estimated for calculationof the process time constant and the dead time. See [10] for a more detailed de-scription. By estimating the quantities G(0) and G′(0), where G(s) is the transferfunction of the process the average residence time can be calculated as

G(s) = Kp

1 + sTe−sL ⇒

G(0) = Kp

G′(0) = −Kp(T + L) = −KpTar

Tar = −G′(0)G(0)

(B.1)

77

Page 90: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

78

Open loopClosed loop

A1

A3

uf

Tar

ts

y(t)

u(t)

yf

A2

Figure B.1. Graphical illustration of the areas used to determine the process parame-ters.

To gain G(0) and G′(0) the following is used, where Y (s) and U(s) is the Laplacetransformed process value and control signal. Y (s) = G(s)U(s)

Y ′(s) = G′(s)U(s) +G(s)U ′(s)⇒

Y (0) = G(0)U(0)

Y ′(0) = G′(0)U(0) +G(0)U ′(0)(B.2)

The following holds from the definition of the Laplace transform, where u(t) andy(t) are corresponding time signals.

U (n)(0) = (−1)(n) ∫∞0 tnu(t)dt

Y (n)(0) = (−1)(n) ∫∞0 tny(t)dt

u0 = U(0) =∫∞0 u(t)dt

u1 = U ′(0) = −∫∞0 t · u(t)dt

y0 = Y (0) =∫∞0 y(t)dt

y1 = Y ′(0) = −∫∞0 t · y(t)dt

(B.3)

With (B.1), (B.2) and (B.3) the average residence time is given by

Tar = y1u0 − y0u1

y0u0(B.4)

Tar can now be estimated for arbitrary signals, but for this to be true the integralsin (B.3) must converge, which is not the case for a close-loop step where u and ywill reach stationary values. This problem can be solved by using the derivativesof the time signals u(t) and y(t). With the notation ud and yd (B.3) and (B.4)

Page 91: SimulationComparisonofAuto-TuningMethods forPIDControl · Den automatiska trimningen som idag är implementerad i ABB:s DCS 800xA är baserad på ett reläexperiment för att bestämma

B.2 Determination of the Average Residence Time 79

still holds and gives

Tar = yd1ud0 − yd0ud1yd0ud0

The integrals in (B.3) with the introduced notation for the derivatives give

ud0 =∫∞0 ud(t)dt =

∫∞0 u′(t)dt = u(∞)− u(0) = uf

ud1 =∫∞0 t · ud(t)dt =

∫ ts0 t · ud(t)dt = [t · u(t)]ts0 −

∫ ts0 u(t)dt = A3

yd0 =∫∞0 yd(t)dt =

∫∞0 y′(t)dt = y(∞)− y(0) = yf

yd1 =∫∞0 t · yd(t)dt =

∫ ts0 t · yd(t)dt = [t · y(t)]ts0 −

∫ ts0 y(t)dt = A2

(B.5)

Now the average residence time is given by

Tar = A2uf −A3yfyfuf

(B.6)

Further the process time constant and dead time can be estimated by an openloop step to determine the area A1, shown in Figure B.1.

T = A1

Kpe⇒ L = Tar − T