34
1. Introduction The cooling tank control problem is shown in Figure 1. The outlet temperature of the tank is controlled by manipulating the cooling water flow rate, F c . Clearly disturbances in the tank inlet flow rate will end up changing the tank outlet temperature. Also any variation in the cooling water inlet temperature will affect the cooling coil temperature which will ultimately affect the tank temperature. The aim of this work is to design control strategies to maintain the tank outlet temperature at desired level while rejecting disturbances due to changes in tank inlet flow and cooling coil inlet temperature. The problem will be considered under the following assumptions: The tank is well insulated, so that negligible heat is transferred to the surroundings. The accumulation of energy in the tank walls and cooling coil is negligible compare with the accumulation in the liquid. The tank is well mixed. Physical properties are constant. The system is initially at steady state.

Assignment Solution

Embed Size (px)

Citation preview

Page 1: Assignment Solution

1. Introduction

The cooling tank control problem is shown in Figure 1. The outlet temperature of the tank is controlled by manipulating the cooling water flow rate, Fc. Clearly disturbances in the tank inlet flow rate will end up changing the tank outlet temperature. Also any variation in the cooling water inlet temperature will affect the cooling coil temperature which will ultimately affect the tank temperature. The aim of this work is to design control strategies to maintain the tank outlet temperature at desired level while rejecting disturbances due to changes in tank inlet flow and cooling coil inlet temperature. The problem will be considered under the following assumptions:

The tank is well insulated, so that negligible heat is transferred to the surroundings.

The accumulation of energy in the tank walls and cooling coil is negligible compare with the accumulation in the liquid.

The tank is well mixed.

Physical properties are constant.

The system is initially at steady state.

Figure 1 Cooling tank

Page 2: Assignment Solution

The following data are also provided for the problem: Tank: Volume: V = 2.1 m3 ; Initial Temperature (steady state) T = 85.4

0C. Tank inlet flow: Flowrate: F = 0.085 m3/min; Temperature: T0 = 150 0C;

Density: = 106 g/m3; Heat capacity: Cp = 1 cal/(g 0C). Cooling coil: Inlet temperature Tcin = 25 0C; Initial flowrate (steady-

state) F c= 0.5 m3/min; Heat capacity: Cp = 1 cal/(g 0C); Density:ρc= 106 g/m3; Coil volume: Vc = 0.2 m3 The cooling flow rate must be

manipulated within the constraints: 0≤ Fc ≤1m3/min .

The tank temperature can be modelled by the following differential equation:

dTdt

= FV

(T0−T )− QVρCp

(1)

Also the coil temperature can be modelled as:

dT coutdt

=FcV c

(T cin−T cout )+Q

V c ρ cC p (2)

where Q is the heat transferred from the liquid in the tank to the cooling water in the coil. It can be approximated as:

Q=UA (T−T cout) (3)

The heat transfer coefficient UA is a constant with a unit of cal/min 0C.

The sensor can be modelled as first order system with a time-constant, τ s, 0.5 min:

τ sd T1dt

=T−T 1 (4)

Laplace transform yields:

s τ sT 1 ( s)=T ( s)−T 1(s)

Hence, the sensor transfer function is:

T1(s)T (s )

= 10.5 s+1

(5)

Page 3: Assignment Solution

where T 1 is the signal from the sensor.

2. Task 1: Heat Transfer Coefficient, UA

The steady state equations are obtained from the dynamic equations by setting the time derivatives to zero. For the tank temperature model (1), the steady state equation is:

FV

(T 0−T )− QVρC p

=0 (6)

Therefore the steady-state heat transferred from the tank to the coil is:

Q=ρC pF (T 0−T ) (7)

Q=106×1×0.085 (150−85.4 )

Q=5491000 cal /min

For the coil temperature model (2), the steady state equation is:

FcV c

(T cin−T cout )+Q

V c ρ cCp

=0 (8)

Therefore,

Q=−ρcC pF c (Tcin−Tcout ) (9)

5491000=−106×1×0.5 (25−Tcout )

Hence the steady-state cooling coil temperature is:

T cout=35.982℃

From (3), the heat transfer coefficient is:

UA= QT−T cout

(10)

Page 4: Assignment Solution

UA= 549100085.4−35.982

=111113.36 cal /min℃

3. Task 2: System Simulink Model

Substituting (3) into (1) and ( 2) gives the following dynamic equation models for the process:

dTdt

= FV

(T0−T )−UA (T−Tcout)

VρCp

(11)

dT coutdt

=FcV c

(T cin−T cout )+UA (T−T cout)V c ρcC p

(12)

The Simulink model for the system built by realising (11) and (12) with standard Simulink blocks is shown in Figure 2. Simulating the model produce the tank and coil temperature responses shown in Figure 3. The tank temperature is noticed to oscillate away from the steady-state value, hence the need for a control strategy to maintained the temperature at the desired value. The matlab code for plotting and formatting the curve is given in appendix 1.

4. Task 3: Model Linearisation

The Simulink model is linearised around the steady state values in order to be able to perform control system analysis and design. F, T 0, F c , and T cin are

set as inputs while T , and T cout are set as outputs. The plots of the tank and coil

temperature responses of the linearised model to step change in F, T 0, F c , and T cin are shown in Figure 4.

The linear deviation models (transfer functions) of the system from the four inputs to the two outputs are:

Transfer function from F to T cout,

Tcout (s )F(s)

= 17.09s2+3.149 s+0.256

(13)

Page 5: Assignment Solution

Transfer function from F to T ,

T (s )F (s)

= 30.76 s+94s2+3.149 s+0.256

(14)

Page 6: Assignment Solution

Figure2: SIMULINK Model

Page 7: Assignment Solution

Figure 3: Tank and coil temperature response of the model

Page 8: Assignment Solution

Figure4:Linearisation plot

Page 9: Assignment Solution

Transfer function from F c to T cout,

Tcout (s )Fc (s)

= −54.91 s−5.128s2+3.149 s+0.256

(15)

Transfer function from F c toT ,

T (s)Fc (s)

= −2.905s2+3.149 s+0.256

(16)

Transfer function from T 0 to T cout,

Tcout (s )T0(s)

= 0.02249s2+3.149 s+0.256

(17)

Transfer function from T 0 toT ,

T (s)T0(s)

=0.04048 s+0.1237s2+3.149 s+0.256

(18)

Transfer function from T cin to T cout,

Tcout (s )T cin(s)

= 2.5 s+0.2335s2+3.149 s+0.256

(19)

Transfer function from T cin toT ,

T (s)Tcin(s)

= 0.1323s2+3.149 s+0.256

(20)

5. Task 4:Feedback Control Design

The feedback control system block diagram is shown in Figure 5. The manipulated variable is the cooling water flow rate, Fc, the controlled variable is the tank outlet temperature, T and R is the temperature set point. The process transfer function Gp(s) is the transfer function from F c toT , that is (16):

Page 10: Assignment Solution

Gc(s) GV(s) Gp(s)

H(s)

Gd(s)

G p (s )= T (s)Fc(s)

= −2.905s2+3.149 s+0.256

Disturbance

+

R(s) + E(s) U(s) Fc(s) + T(s) - Controller Actuator Process +

Sensor

Figure 5 Feedback control system block diagram

From (5) the sensor transfer function is,

H (s )= 10.5 s+1

Assume a control valve (actuator) with a time constant of 1 min, hence

Gv (s )= 1s+1

(21)

Gc (s) is the controller transfer function to be determined and Gd (s) is the

disturbance transfer function. Implementation of the feedback control in Simulink model is shown in Figure 6.

Designing the controller using open loop tuning method:

sys1=G v ( s)G p (s )H ( s )

The process is modelled as a first order lag plus a transportation lag by using the following matlab code:

Page 11: Assignment Solution

[y,t]=step(sys1); [K,tau,td]=ReactionCurve(t,y)

The ‘ReactionCurve’ m-file code is given in appendix1. The process reaction curve is shown in Figure 7.

Page 12: Assignment Solution

Figure 6 Simulink model with feedback control

Page 13: Assignment Solution

Figure7 Process reaction curve

The parameters of the approximated model are:

K=−11.2876τ=15.2648minτ d=1.4409min

The controller parameter obtained by using the open-loop PID tuning table are:

K c=1.2×ττd×K

=−1.1263

τ I=2×τd=2.8818min

τ D=0.5×τ d=0.7204minHence,

Proportional gain constant, P=K c=−1.1263

Integral gain constant, I=K c

τ I=−0.3908

Derivative gain constant, D=K c τ D=−0.8114

Page 14: Assignment Solution

Designing the controller using closed-loop PID tuning:

Closed-loop simulation produce Ku=−1.692 and Pu=14.29min .From the closed-loop PID tuning table,

K c=0.6K u=−1.0152

τ I=Pu2

=7.145mins

τ D=Pu8

=1.78625mins

The proportional, integral and derivative gain constant are -1.0152, - 0.1421 and -1.8134 respectively.

The response to a set point change of T from 85.4 ℃ to 90 ℃ is shown in Figure 8. Notice that the set point change was introduced at 200 minutes. The result of the open loop and closed-loop tuning method were plotted on the same graph for comparison. The closed-loop tuning method gives a better result than the open loop tuning method. It is also noticed that as the set point move away from the steady state value (85.4 ℃) to the new setpoint of 90 ℃ the system tends to oscillate.

Adopting the closed-loop tuning parameters for the controller, the controller transfer function is:

Gc (s )=U (s)E(s)

=−( 1.8134 s2+1.0152 s+0.1421

s) (22)

The closed-loop transfer function from the temperature setpoint to the tank temperature is (consider the block diagram in Figure 5) :

T (s )R (s)

=G c ( s)Gv (s )G p ( s)

1+Gc (s )G v ( s)G p (s )H (s) (23)

From the simulink model this yields:

T (s )R (s)

= 0.2996 s3+0.7159 s2+0.2413 s+0.01543s6+6.321 s5+12.76 s4+9.084 s3+2.329 s2+0.3218 s+0.01543

(24)

Page 15: Assignment Solution

Figure 8 Response to a setpoint change from 85.4 ℃ to 90 ℃

Page 16: Assignment Solution

Gc(s)

Gd1

H(s)

GV(s) Gp(s)

Kf

6. Task 5: Tank Inlet Flowrate, F disturbance Rejection

The disturbance produced by the fluctuation of the inlet flowrate, F can be rejected by implementing a feedforward control strategy as shown in Figure 9. Using linear static feedforward control,

K f=−Gd1(0)G p(0)

(25)

Gd1 is the transfer function from the tank inlet flowrate, F to the tank outlet

temperature, T. From (14),

Gd1 (s )=T (s)F (s )

= 30.76 s+94s2+3.149 s+0.256

(26)

Hence,

K f=−94

−2.905=32.35

Figure 10 shows the implementation of the feedforward plus the feedback control in Simulink.

F

+ +

+

R(s) + E(s) U(s) + + T(s)

- Controller Actuator + Process

Sensor

Page 17: Assignment Solution

Figure 9 Feedforward/feedback control block diagram for the process

Page 18: Assignment Solution

Figure 10 Feedforward plus feedback control Simulink model

Page 19: Assignment Solution

The closed-loop transfer function from F to T without feedforward controller is (consider the block diagram in Figure 9):

T (s )F (s)

=Gd 1(s)

1+Gc ( s)Gv (s )G p ( s)H (s) (27)

From the simulink model this yields:

T (s )F (s)

=s (30.76 s3+463.1 s2+1743 s+1880)

s5+15.15 s4+58.047 s3+66 .05 s2+131 .2 s+92.51 (28)

The closed-loop transfer function from F to T with feedforward controller is:

T (s )F (s)

=Gd 1 ( s)+K fG p ( s)

1+Gc ( s)Gv (s )G p ( s)H (s) (29)

T (s )F (s)

=s (30.76 s3+169.2 .1 s2+292.3 s+153.8)

s5+8.649 s4+19.44 s3+12.77 s2+6.878 s+0.8257 (30)

The response to a step change of inlet flowrate from 0.085 m3/min to 0.09 m3/min with and without feedforward control is shown in Figure 11. The feedforward controller produced improved performance of the process. The new control strategy can improve performance because an increase in the tank inlet flowrate will cause the tank outlet temperature to increase but with feedforward control a corrective action is taken by immediately changing the cooling water flowrate when a change in the tank inlet flowrate is sensed before it could cause any in the tank outlet temperature.

Page 20: Assignment Solution

Figure 11 Response to step change of inlet flowrate from 0.085 m3/min to 0.09 m3/min

Page 21: Assignment Solution

7. Task 6: Cooling Water Inlet Temperature, T cin Disturbance Rejection

The control strategy appropriate for improving the rejection of disturbance produced by fluctuation of the cooling water inlet temperature is a cascade control strategy. If there is a disturbance in the cooling water inlet temperature, it will affect the coil temperature,Tcout, which will affect the tank temperature,T. In the cascade control strategy (Figure 12) the temperature of the tank is measured and compared with the desired tank temperature. The output of this tank temperature controller (primary controller) is a setpoint for the coil temperature controller (secondary controller). The secondary controller manipulates the coil flowrate, Fc. Notice that two measurements (tank temperature and coil temperature) are made but only one manipulated variable (cooling coil flow rate) are ultimately adjusted.

The implementation of the cascade control strategy in Simulink model is shown in Figure 13. The parameter of the controllers are determined using closed-loop auto relay tuning method.

Inner-loop tuning:d= 2, a= 1.55 and Pu = 1 min.

Hence,

Ku=4daπ

=0.8214

A proportional only controller is selected for the secondary controller. Therefore,

P=0.5K u=0.4107 Outer-loop tuning

d= 3, a= 1.05 and Pu = 29 mins

Hence,

Ku=4daπ

=3.6378

K c=0.6K u=2.1827

τ I=Pu2

=14.5mins

Page 22: Assignment Solution

Gc1(s)

Gd2

H(s)

GV(s) Gp1(s) K1 Gp2

T cin

R(s) + R1(s) Fc + Tcout T(s)

+ Primary + Secondary Actuator Secondary + Primary controller controller process process

Sensor

Figure 12 Cascade control block diagram for the process

Page 23: Assignment Solution

Figure 13 Simulink model for cascade control strategy

Page 24: Assignment Solution

τ D=Pu8

=3.625mins

Therefore, the proportional, integral and derivative gain constants of the primary controller (Gc 1¿are 2.1827, 0.1505 and 7.9123 respectively.

The response to a step change of cooling water inlet temperature from 25 0C to 30 0C with and without cascade control is shown in Figure 14. The closed-loop transfer function from Tcin to T is found by linearising the model between Tcin and T . The closed-loop transfer function from Tcin to T without the new controller is:

T (s)Tcin(s)

=s (0.1323 s2+0.3968 s+0.2646)

s5+6.149 s4+11.7 s3+7.066 s2+3.725 s+0.4498

The closed-loop transfer function from Tcin to T with the new controller is:

T (s)Tcin(s)

=s (0.1323 s3+0.4272 s2+0.3556 s+0.6067)

s6+6.378 s5+25.4 s4+38.28 s3+15.52 s2+1.49 s+0.04487

The new control improved the performance as can be seen from the response to step change in cooling water inlet temperature before and after the implementation of the new control. This is possible because the cooling coil temperature dynamics are normally significantly faster than the tank temperature dynamics. An inner-loop disturbance, such as the cooling coil feed temperature will be felt by the coil temperature before it has a significant effect on the tank temperature. This inner-loop (secondary ) controller then adjusts the manipulated variable before a substantial effect on the primary output (tank temperature) has occurred.

Page 25: Assignment Solution

Figure 14 Response to step change of cooling water inlet temperature

Page 26: Assignment Solution

8. Conclusion

Process control is fundamental to the successful operation of process plants. The benefits include more consistent operation, greater safety for the process and reduced operating cost due to improved utilisation and reduction in manpower requirement. The control systems considered in this work was able to maintain the process output (tank temperature) at the desired level in the presence of external disturbances. The feedback control strategy was able to maintain the output at desired level by measuring the output variable, compares that value to the desired output value, and uses the information to adjust the manipulated variable.

The primary disadvantage of feedback only control is that a disturbance must be felt at the output before a control action can be taken. Addition of feefforward and cascade control strategies resulted in improved disturbance rejection performance.

Page 27: Assignment Solution

APPENDIX 1

MATLAB CODE

Graph Plotting and Formatting Code% Matlab code for plotting and formating the graph of T and Tcout responset1=t; T1=T;Tcout1=Tcout;t2=t;T2=T;Tcout2=Tcout;subplot(2,1,1), plot(t1,T1,'-b',t2,T2,'-r')xlabel('Time,t (min)')ylabel('Tank temperature,T ( ^0C )')legend('without feedforward','with feedforward',0)grid ontitle('(a) Tank Temperature Time-Response')subplot(2,1,2), plot(t1,Tcout1,'-b',t2,Tcout2,'-r')xlabel('Time,t (min)')ylabel('Coil temperature,T ( ^0C )')legend('without feedforward','with feedforward',0)grid ontitle('(b) Coil Temperature Time-Response')

Process Reaction Curve m-file Code%This code will determine gain, time constant and time delay by using the step response of the approximate first order lag plus transportation lag model of theprocess.function[K, tau, td]=ReactionCurve(t,y)L=length(t);K=y(L)-y(1);dy=diff(y);dt=diff(t);[mdy,I]=max(abs(dy./dt));tau=abs(K/mdy);td=t(I)-abs(y(I)/mdy);plot(t,y,[td td+tau],[0 K]);