Dynamic Response
3.3. Processes with Dead Time
3.5.2. Transfer Functions in Parallel
There are circumstances in which a complex process may involve two competing (i.e., opposing) dynamic effects that have different time constants. One example is the increase in inlet temperature to a tubular catalytic reactor with exothermic kinetics. The initial effect is that the exit temperature will momentarily decrease as increased conversion near the entrance region depletes reactants at the distal, exit end. Given time, however, higher reaction rates lead to higher exit temperatures.
To model this highly complex and nonlinear dynamics properly, we need the heat and the mass balances. In classical control, however, we would replace them with a linearized
model that is the sum of two functions in parallel: Y X = K1 τ1s+ 1+ K2 τ2s+ 1. (3.50)
We can combine the two terms to give the second-order function Y X = K (τzs+ 1) (τ1s+ 1)(τ2s+ 1) , (3.51) where K = K1+ K2, τz = K1τ2+ K2τ1 K1+ K2 .
For circumstances in which the two functions represent opposing effects, one of them has a negative steady-state gain. In the following illustration, we choose to have K2 < 0.
From Eq. (3.51), the time response y(t) should be strictly overdamped. However, this is not necessarily the case if the zero is positive (orτz< 0). We can show with algebra how various ranges of Ki andτi may lead to different zeros (−1/τz) and time responses. However, we will not do that. (We will use MATLAB to take a closer look in the Review Problems, though.) The key, once again, is to appreciate the principle of superposition with linear models. Thus we should get a rough idea of the time response simply based on the form in Eq. (3.50).
The numerical calculation is illustrated in Fig. 3.6. The input is a unit step, X= 1/s, and the two steady-state gains are K1= 3 and K2= −1 such that |K1| > |K2|. We consider the
three cases in whichτ1 is roughly the same asτ2 [Fig. 3.6(a)],τ1 τ2 [Fig. 3.6(b)], and
(c)τ1 τ2[Fig. 3.6(c)]. We should see that the overall response is overdamped in the case
of Fig. 3.6(a), but in the case of Fig. 3.6(b) we can have an overshoot and in the case of Fig. 3.6(c) an initial inverse response. Note that all three cases have the same overall steady gain of K = 2.7 -1 -0.5 0 0.5 1 1.5 2 2.5 3 0 2 4 6 8 10 y t (a) -1 -0.5 0 0.5 1 1.5 2 2.5 3 0 2 4 6 8 10 y t (b) -1 -0.5 0 0.5 1 1.5 2 2.5 3 0 2 4 6 8 10 y t (c)
Figure 3.6. Time-response calculations with different time constants. In all cases, K1= 3, K2= −1,
and the individual terms in Eq. (3.50) are indicated by the dashed curves. Their superimposed responses
y are the solid curves. (a)τ1= τ2= 2; (b) τ1= 0.5, τ2= 2; (c) τ1= 2, τ2= 0.5. 7 When you repeat this exercise with MATLAB in the Review Problems, check thatτ
zis negative in the
case of Fig. 3.6(c). More commonly, we say that this is the case with a positive zero. After we have learned frequency response, we will see that this is an example of what is referred to as a nonminimum phase.
3.5. Effect of Zeros in Time Response Review Problems
(1) With respect to the step response of the first-order model in Eq. (3.9), make a table for y(t)/M Kp, with t/τp = 1, 2, 3, 4, and 5. It is helpful to remember the results for t/τp = 1, 3, and 5.
(2) It is important to understand that the time constantτp of a process, say, a stirred- tank, is not the same as the space timeτ. Review this point with the stirred-tank heater example in Chap. 2. Further, derive the time constant of a continuous-flow
stirred-tank reactor (CSTR) with a first-order chemical reaction.
(3) Write the time-response solutions to the integrating process in Eq. (3.14) when the input is (1) a unit step and (2) an impulse. How are they different from the solutions to a self-regulating process?
(4) Derive the time-constant relationships given in footnote 2.
(5) With respect to the overdamped solution of second-order equation (3.21), derive the step response y(t) in terms of the more familiar exp(−t/τ1) and exp(−t/τ2). This
is much easier than Eq. (3.21) and more useful too!
(6) Show that whenζ = 0 (natural period of oscillation, no damping), the process (or system) oscillates with a constant amplitude at the natural frequencyωn. (The poles are at±ωn and the period is 2πτ.)
(7) Use MATLAB to make plots of OS and DR as functions of the damping ratio. (8) What is the expected time response when the real part of the pole is zero in a
second-order function? The pole can be just zero or have purely imaginary parts. (9) Plot the unit-step response by using just first- and second-order Pad´e approximations
(3.30) and (3.31). Try also the step response of a first-order function with dead time as in Example 3.2. Note that, although the approximation to the exponential function itself is not that good, the approximation to the entire transfer function is not as bad as long as td τ. How do you plot the exact solution in MATLAB?
(10) Use MATLAB to observe the effect of higher-order multicapacity models as in Example 3.3. Try to fit the fifth-order case with a first-order with dead-time function. (11) With respect to Example 3.4, try also a second-order with dead-time approximation. (12) We do not have a rigorous criterion to determine when a pole is absolutely dominant. Plot the exponential decay with different time constants to get an idea when the terms associated with smaller time constants can be omitted.
(13) With MATLAB, try to do a unit-step response of a lead–lag element as in Eq. (3.49). (14) Repeat the time-response simulation of inverse response in Section 3.5.2. Calculate
the value of zero in each case.
Hints:
(1) y(t)/M Kp at t/τp= 1, 2, 3, 4, and 5 are 0.63, 0.86, 0.95, 0.98, and 0.99.
(2) The mass balance of a CSTR with a first-order chemical reaction is very similar to the problem in Subsection 2.8.1. We just need to add the chemical reaction term. The balance written for reactant A will appear as
VdCA
dt = q(C0− CA)− V kCA,
where CAis the molar concentration of A, V is the reactor volume, q is the volumetric flow rate, C0 is the inlet concentration of A, and k is the first-order reaction rate
constant. If we define space timeτ = V/q, the equation can be rewritten as τdCA
dt + (1 + kτ)CA= C0.
This is a linear equation if k and τ are constants. Now if we follow the logic in Subsection 2.8.2, we should find that the time constant of a CSTR with a first-order reaction isτ/(1 + kτ).
(3) Partof the answer is already in Example 3.1.
(5) This is really an algebraic exercise in partial fractions. The answer hides in Table 2.1. (6) This is obvious from Eq. (3.17) or Eq. (3.19).
(7) PlotEq. (3.29) with 0< ζ < 1. You can write a small M-file to do the plotting too. (8) See Review Problem (6).
(9) Follow Example 3.2. For the first order approximation, we can try, for example,
td=3; % Use an M-file to rerun with different
% values P1=tf([-td/2 1],[td/2 1]);
step(P1); % Note how the response starts from
% negative values t=0:0.1:50;
taup=10;
G1=tf(1,[taup 1]);
y1=step(G1*P1,t); % y1 is first order with Padé approx of
% dead time
y2=step(G1,t); % y2 has no time delay
t2=t+td;
plot(t,y1, t2,y2,'-.');
% Note how the Padé approx has a dip at the beginning
(10) The MATLAB statements to do the unit-step response are already in Example 3.4. You may repeat the computation with a different time constant. The statements to attempt fitting the five tanks-in-series responses are
tau=3;
G=tf(1,[tau 1]);
[y5,t]=step(G*G*G*G*G); % The fifth-order calculation
G1=tf(1,[12 1]);
y1=step(G1,t); % Using a time shift to do the
t1=t+3; % first-order with dead-time plot
plot(t,y5, t1,y1)
The choice of the time constant and dead time is meant as an illustration. The fit will not be particularly good in this example because there is no one single dominant pole in the fifth-order function with a pole repeated five times. A first-order with dead-time function will never provide a perfect fit.
(11) Both first- and second-order approximation statements are here:
q=3;
3.5. Effect of Zeros in Time Response p4=conv(conv(p2,[0.5 1]),[0.1 1]); roots(p4) % check G2=tf(q,p2); G4=tf(q,p4); step(G4) hold td=0.1+0.5; P1=tf([-td/2 1],[td/2 1]);
step(P1*G2); % Not bad!
td=1+0.1+0.5;
G1=tf(q,[3 1]); % First-order approximation
step(P1*G1); % is not that good in this case
hold off
(12) Below are the MATLAB statements that we may use for a visual comparison of exponential decay with different time constants. In rough engineering calculations, a pole may already exhibit acceptable dominant behavior if other time constants are 1/3 or less: tau=1; t=0:0.1:5; f=exp(-t/tau); plot(t,f) hold
% Now add curves with smaller time constants frac=0.3; f=exp(-t/(frac*tau)); plot(t,f) frac=0.2; f=exp(-t/(frac*tau)); plot(t,f) frac=0.1; f=exp(-t/(frac*tau)); plot(t,f)
(13) Try to vary the zero as in
tz=3; % Try to vary tz, zero is -1/tz
G=tf([tz 1],[5 1]); step(G);
(14) Try to vary the values ofτ1andτ2. To display the value of zero is trivial: k1=3; k2=-1; tau1=2; tau2=0.5; k=k1+k2; tz=(k1*tau2+k2*tau1)/k; G=tf(k*[tz 1], conv([tau1 1],[tau2 1])); step(G);