Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
PracticalInstructions
Instructions Practical
\'-,
Date:15.05.1996
Practical Instructions
lntroduction
1 Introduction
The control of nonlinear systems, particularly multi-variable systems,plays a more and more important part in the scopeof the advancingautomationof technical processes.Due to the ever increasing requirements of processcontrol (e.g. responsetime, precision, transfer behavior) nonlinear controller designs are neccessary. One design method with practical applications was developedamong othersby Prof. Dr.-Ing. E. Freund and successfullyused for trajectory control of robots. In this context it is about the so-called principle of nonlinear control and decoupling. The decoupling refers to the input/output behavior, i.e.: after successful decoupling every input affects only the colrespondingoutput.Thus it is possible,to subdivide the multi-variable system into subsystems which are mutually decoupled. These are linear,i.e. simpleto analyze.Bymeansof subsystems determining freely choosable parameters, the transfer behavior of the subsystemscan be designed subject to somerestrictions. During this laboratory experiment,the application of this principle to a three-tank-system with two inputs and statevariablesis to be examined.To that threemeasurable end, the stepresponseand the disturbancebehaviorof the control systemfollowing the controller designis analyzed and compared with those of a standard Pl-controlled system. Becausethe theroretical foundations are formulated in a general manner, you should be able to apply the "Nonlinear System Decoupling and Control" even to more complicated systems after carrying out the experiment.
{'
PracticalInstructions
1-1
Theoretical Foundations
2 Theoretical Foundations
The nonlinear control and decoupling is applicable to nonlinear, time-variant multi-variable systems. The systemdescriptionmust have the following form: dx(t)/dt=A(x,t)+B (4,t) u(t) y(t)=C(x,t)+D(x,t) u(t)
A fundamentalrequirementis that the numbersof system inputsand outputsmust be identical. Now a statefeedbackin the followine form is introduced:
8q.2.3
8q.2.1 E.q.2.2
G(x,t) w(0
(0
u(t)
statevector with dimension n (xr(t),xr1t;,....,xn(t)) input vector of dimensionm output vector of dimension m (n x l)-matrix (n x m)-matrix (m x l)-matrix (m x m)-matrix
D=0:
Now one hasto determineF and G suchthat the i-th input w, (i=1,...,m)only affectsthe i-th outputy'. Moreover, it is possible to adjust the dynamics of the decoupeled subsystems by placingthe poles. The difference order d referring to the i-th output signal yi is of great importance for the decoupling. The difference order indicateswhich total time derivative of the output y, is directly affected by the input u,. It is a measure of the number of poles that can be placed
v(0
A(x,t) B(x,t) C(x,t)
D(x,0
{
G(x,t)
Plant
F(x,t)
L
PracticalInstructions 2-1
Theoretical Foundations
arbitrarily In order to define the difference order, in the following the i-th componentof the output vector is usedinsteadof all the m components: y1(t)=C1(x,t)+Q(x,t) u(t) where: C,(x,t) : i-th component of the vectore(x,t) 8q.2.4
yi'(t)
=/t C,(X,t)
Eq.2.8
nonlinear,
8q.2.9
I
Q(x,t)
Noo C,{x,t) = Ci(x,t) In this case,as will be shown later, decouplingis possible using direct compensation. In caseD,(x.t)=O. | ' _ . , _ . the result is: Using this operatorin 8q.2.8,the resultis:
dir'
In order to determinethe exact value in this case.the i-th output equation:
('_
Y;"(t)
y1'(t) =dldt[C,(x,OJ =/tC'(x,t)+ /x [CiE,t)] x'(t) 8q.2.6
__ ) _
in this manner, Proceeding the final result of the j-th is: differentiation (No"t c,(x,t))J y,0)= Noj c,{x,ty+ tE/Ex B(x,t)u(t)
where: /x [Cift,t)] = (/x., [C;(x,t)],....,/x, [C,(x,t)]) 8q.2.7 Substitutingqq.2.l into 8q.2.7 results in:
2-2
Practical Instructions
Theoretical Foundations
the input vectoru(t) directly for the first time. This means, affects the j-th differentiation of the output signal y,(t). With this, the difference order of the i-th subsystem resultsin:
8q.2.14 is the initial equationto derive the decoupling dynamicsof matricesand the introductionof assignable the decoupledsubsystems. If the relation:
di = j In summary the difference order can be defined as follows: a) if Q(x,t) * 0 : d.=0 8q.2.12
F,q.Z.17
Eq.2.18
This means,each of the m outputs of the multi-variable Extendingthe aboverelationin the systemis decoupled. following manner: u(t)=pt 1*,t)+GG,t)w(t) where: G(x,t)=B*-l(x,t) L
Eq.2.l9
8q.2.20
y* (t)=g*(x,r)+D*(x,t) u(t)
Eq.2.14
!=diag{11}, (i=1,2,...,m)
where: yields: y*(o=(y I C*(x,t) \ D*(x,t) (ot)(r),....,y,,rtdm)1t;)T y'(t)=L w(t) : m-dimensional column vector This form of feedback additionally allows a free : (m x m)-matrix; adjustment of the input amplification of the i-th In order to make it possibleto influencethe subsystem. In this casethe i-th componentof C*(x,t) canbe statedas follows: c*,(x,t)=Nodi c,{x,t) Eq.2.15 the aboverelation is dynamic of the decoupledsubsystem changedas follows: w(t) u(t)=F1^,1)+G(x,t) where: F(x,t)=F,(x,t)+Fr(x,t)
Eq.2.2l
8q.2.22
Moreover the i-th row vector of the matrix B*1x,t; is defined bv:
8q.2.23 8q.2.24
^* ,
lDi (l't)
PracticalInstructions
2-3
Theoretical Foundations
The vector M*(x,t) has to be determined such that the dynamic of the m subsystems can be changed usingpole shifting and new couplings are avoided as well. A suitablerelation of the i-th componentof the vector M (x,t) can be statedas
rfi
fo l "
fr d,=o
Eq.Z.26
The constantfactors aki are freely assignable with: i = |, 2, . . , m und k = 0 ,1 ,..,(d i -l ) In can be shown (substitutingEq.2.26inEq.2.25) that each componentof 8q.2.25 with di*O, using the above choice for M*,(x,t), can be describedin the following form:
y1(di){t)*u(0,-,),y,(ot-l)1t;*...*u61y1(t)=1, w,(t) F,q.2.27 Accordingly each subsystem results in differential equation of d,-th order. a linear
Thus, the nonlinear,time-variant, multi-variable system is decoupled.The transfer behavior of the subsystems with d,*0 is describedby8q.2.27. In summaryF and G are determinedas follows: F(x,t)=-p*-t (o,t) { c*(x,t)+M*(*,t) } G(x,t)=D*-l(x,t) L Moreover it hasto be consideredthat the differenceorder d, is invariant with respect to a transformation of the system into different coordinate systems. The requirementsof the determination of d, however depend strongly on the choice of the basis system.This is also true with respectto the further steps of determining the algorithmsof decouplingand control.
(
t
2-4
Practical Instructions
The System"Three-Tank-System"
"Three-sectionThe remarkable feature of the used with fixed piston stroke(Pump I and diaphragm-pumps" 2) is the well defined flow per rotation. They are driven by DC motors. For the purpose of simulating clogs or operating errors, the connecting pipes and the nominal outflow are equippedwith manually adjustableball valves, which pipe. allow to closethe corresponding For the purposeof simulating leakseachtank additionally has a circular opening with the cross section St and a manually adjustableball valve in series.The following pipe ends in the reservoir. The pump flow ratesQ1 and Q2 denotethe input signals, the liquid levels of Tl andT2 denotethe output signals, which have to be decoupled,of the controlled plant. The
P u m p1
(
2 Pump
Hr"*
,S,
r)
Sn
\ l
\
I t--
Connection oi
Leakageopening
PracticalInstructions
3-1
necessary level measurements are carried out by piezo-resistivedifference pressuresensors. At each of it a pressureline measures the pressureof the atmosphere.
Each controller adjustmentas well asthe setpointscan be changedon-line. The control signalsand the statevectorcomponents(i.e.
the pump flow rates and the liquid levels) can be stored in the RAM of the microcomputer and can be plotted afterwardson a plotter. The controller staysactive during the graphical output, but inputs cannot be carried out during this time. Operatingthe program will be describedlater in detail.
PC
Data screen
Actuator
Plant
A/D.D/A Converter
3-Tanksystem
Plotter
L3-2
Practical Instructions
qij
flow rates [m3/sec] supplyingflow rates[m3/sec] sectionof cylinder [m2] sectionof leak opening [m2] sectionof connectionpipe [m2]
Using switches, sensorfailures of the level measurement QrQz can be simulated. The corresponding sensor output supplies a voltage which colrespondsto the liquid level 0.
A sl
Alternatively it is possible to scale the measuredliquid level between the real height (L00Vo)and the height 0 ()Eo) using a potentiometer. wherei-7,2,3 and (i j)=[ (1,3);(3,2) ;(2,0)] allow to simulatedefectsof the Two otherpotentiometers pumps. To do this the control signal can be reducedup to }Vo of its original value, which is equivalentto decreasing the pump flow rate. A dh/dt=Sumof all occuringflow rates is used for all of the threetanks, the result is: Eq.3.1 If the balanceequation:
sn
hi
Pump1
(
P u m p2
T3
h 5^
h2
lt'
dzt Q''t
o
dzz
Qsz
PracticalInstructions
':3-3
TheSystem "Three-Tank-System"
The still unknown quantitiesQrg, Q:z and Qro can be determined using the generalizedTorricelli-ruIe. It can be statedas
Eq.3.r4 Eq.3.15
Eq.3.5
With this the plant is describedcompletely. Becausethe physical values h and Q are not accessible directly, convertersand sensorsa"re used. These are parts of the plant and are described using their characteristics (characteristics of pu-ps and sensors). Furthermore the values of the outflow coefficients are required to get a quantitative description of 8q.3.14 and to carry out the nonlinear decoupling in practice. Therefore, the ( neccessarydata are determined interactively using the control program before the actual control starts. The model described by Eq.3.1418q.3.15 is now usedas the initial basis for the nonlinear decoupling of the Three-Tanks-System. The corresponding controller design is carried out within the framework of the preparations. The solutions of these preparations are therefore the fundamental basis to cuurv out the experiment.
: liquid level difference between two tanks connectedto each other : outflow coefficient (correcting factor, dimensionless, real values ranging from 0 to 1)
az
E=*[ il
3,-4
Eq.3.13
Practical Instructions
\
What is the behaviour of each subsystem after the decoupling? b) Determine the vector C*1x,t; and the matrix D*1x,t;. What is therank of D*(x,tX Canthe systembe decoupled? c) Determine the vector Fr(x,t) and the matrix G(x,t). d) Determine the vector M*1x,t) with freely assignable parametersa* using a suitable formulation. Determine the vector F^(x.t). e) Determine the overall transfer behaviour of the Roughly draw the stepresponses. subsystems. decoupled What is the condition eachof the real controller parameter l, and a* has to meet so that the transferbehaviour of the is stablewith an overall amplification of one? subsystems The decoupled subsystems can be Pl-controlled additionally in accordance with the following block diagram: a) Compute the overall transfer function:
Gg(s)=Hi(s)AVEt(s)
PracticalInstructions
.4!1
b) What is the condition the real parametersv,,k, and P, have to fulfill so that each Pl-controlled loop is stable with an overall amplificationof one? c) What is the overall transferbehaviourin casePi=O?
(-
4-2
PracticalInstructions
the 5 Carrying-Out
Here, accordingto an amountof 8 DAC output voltages, the difference of levels which is measured in a time intervall of 20 secis usedto determinethe pump flow rates (supplies).
Experiment
Start the controller program (further details will be found in the chapterinstructions for operatingthe computer).
Please follow exactlv the instructions of the controller program. After the determinationof the plant parametersthe menu item File Save Parameter may be used to store these valuesto the hard disk. "DTS200 Monitor" is locatedin the The window called lower part of the screen.Its first line displays the current system state respectively the selectedcontrol structure. The following lines contain current data of the plant and of the controller like liquid levels and flowrates. The is statusof the plot buffer usedto storethe measurements displayedin addition. A graphical evaluation of any experiment result is possible only if previously the storageof measurements was switchedon. Now open the connectionvalvesand the nominal outflow valve! Start the controller by means of the menu item RUN.
be calibrated. To do this you select the menu item Parameter from the upper menu bar. A pulldown menu will appear offering further items for the system calibration. a) Use the menu item Characteristic Liquid Level Sensor to determine the characteristic:liquid level <=> ADC input voltage by experiment. Control the pumps "Manual"). manuallyin this process(switchesto b) Changeto the determinationof the outflow coefficients by meansof the menu item Outflow Coefficient and use experimentalmeasuring.Approximately 60 sec after the interactive start, the determination is performed by the program which computesthe following equations:
azr- Ah l'l(-Sn (2g (h,-h, ))r/2) azr- A(h,' +hr' +h3')/(-Sn 1Zgttr)r/z) azr- A(h,' +hr' )/(-Sn Qg 6r-hr))r/?) Theseequationscan be derived from the modell equations Eq.3.l4 with qr=qz=O and hr>=hr>=hr. Record the outflow coefficients. c) Use the menu item Characteristic Pump FIow Rate to determinethe characteristic:DAC output voltage <=> pump supply using experimental measuring (Do not use the default values!).
PracticalInstructions
5-1
a) StepResponses
At first adjust the decoupling parameter to 'Decoup'=0.03 and choosethe setpoints wr-32cm (tank l) and w2=20cm (tank 2) (Use the menu item Adjust Setpoint from the menu RUN, enter the corresponding setpoint values with a constantsignal shapeand prompt with 'OK'). Wait until the steadystateis reached. Now switch on the storing of measured data with a measuring time=240 sec (Use the menu item Measuring from the menu RUN, enter appropriatevalues and prompt with
(150 sec): Storemeasurements Create a leak in tank 3 by opening the corresponding valve. Close the valve after 30sec. Now use 'Decoup'=0.lsec and createa leak in tank 2. Wait until the steadystates of the water levels arereached.Close the valve after this.
'oK').
Now generatea step of the setpointw, (tank 1) to 37cm (Use the menu item Adjust Setpoint from the menu RUN, enter the corresponding setpoint value with a constantsignal shapeand prompt with 'OK'). After the steady state is reached(approximately after 5OVo of the measuring time) change the decoupling parameter to 'Decoup'=0.04 and generatea step of the setpoint w, (tank 2) to 25cm (Use the menu item Adjust Setpoint from the menu RUN, enter the correspondingsetpoint valuewith a constantsignalshapeand prompt with 'OK') The measuringis finished when the statusline of the plot buffer displays the message"Buffer filled". Using the menu View and its menu item Plot Measured Data the measured data are displayablein a graphic representation on the screen.The graphic may be sent to a plotter or printer in addition. Furthermorethe data may be savedin a file using the menu item Files - Save Plot Data. Notes for the user: The series of events, storing data and plot output will occur during all of the following experiments. Therefore it will not be mentionedexplicitly in the following.
/':
l
5-2
PracticalInstructions
PracticalInstructions
5-3
ref . 5. 3a) : Will such parameterslead to stable or unstable control loops?Explain the systembehaviour. r ef . 5. 3b) : Is the control of the output variable h, stable if you use Pz=O or Pr=lQsec?Show this by linearization of the plant model of tank 2 around the reference variable and by calculating the transfer function of the control loop. Which is the order of the linearized plant in the nominal state?
I
PracticalInstructions
6-1