NivaarExam PrepOfficial exam papers ↗

23-Chem-A6 Process Dynamics and Control · May 2014

Question 3 of 8: Internal Model Control (IMC) Design

Nivaar worked solution (AI-drafted; not reviewed by a licensed engineer)

Notes on this paper

National Exams / EGBC — May 2014 — 04-Chem-A6 Process Dynamics & Control. Three-hour open-book examination; any non-communicating calculator is permitted. Eight problems are printed and any five constitute a complete paper (each worth 20%); all eight are solved below for completeness. The parts are quantitative throughout — tank and reactor modelling, transfer functions, step/impulse responses, IMC design, Nyquist and Bode stability — and every requested plot (IMC response, Nyquist locus, thermocouple response, Bode diagram) is drawn as a real figure.

Reference texts: D. E. Seborg, T. F. Edgar, D. A. Mellichamp & F. J. Doyle III, Process Dynamics and Control (4th ed., Wiley) — Laplace-domain modelling, transfer functions, feedback stability, frequency response and IMC design; G. Stephanopoulos, Chemical Process Control: An Introduction to Theory and Practice (Prentice Hall) — Nyquist criterion, Bode stability and dead-time systems; D. R. Coughanowr & S. E. LeBlanc, Process Systems Analysis and Control (3rd ed., McGraw-Hill) — first- and second-order tank dynamics, step/impulse response and linearisation of non-linear balances. Standard control conventions (deviation variables; unity valve/sensor gains unless stated) are used throughout.

Problem 3: Internal Model Control (IMC) Design (20%)

Question text not reproduced: the examination questions are © Engineers and Geoscientists BC. Open the official past paper (linked at the top of this page) to read the question, then follow the worked solution below.

Given. $G_p(s)=\dfrac{10(1-s)e^{-10s}}{100s+1}$ — a first-order process ($\tau_p=100$) with a right-half-plane (RHP) zero at $s=+1$ and dead time $\theta=10$. IMC filter $f=\dfrac{1}{\tau_f s+1}$ with $\tau_f=10$ (the desired closed-loop time constant).

Find. (a) the IMC controller $q(s)$ and its block diagram; (b) the perfect-model set-point response.

Y_sp + q(s)IMC ctrl u G_pprocess Y G̃_pmodel ỹ − + d̂ = Y − ỹ (model error) −
Problem 3(a): IMC structure. The controller $q(s)$ drives the real process $G_p$; an internal model $\tilde G_p$ predicts the output $\tilde y$, and the model error $\hat d=Y-\tilde y$ is fed back. With a perfect model $\tilde G_p=G_p$, $\hat d=0$ and the set-point response reduces to $Y/Y_{sp}=G_p q$.

Approach. Factor the model into an invertible part and a non-invertible all-pass part (the RHP zero and dead time, which cannot be inverted without instability); invert only the good part and append the filter to get $q$; with a perfect model the set-point response is then $G_p^{+}f$.

  1. Factor the model. Split $G_p=G_p^{+}G_p^{-}$ with $G_p^{+}$ holding the non-invertible dynamics (RHP zero + dead time), normalised to unity gain: $$G_p^{+}=(1-s)\,e^{-10s},\qquad G_p^{-}=\dfrac{10}{100s+1}.$$ (Check: $G_p^{+}G_p^{-}=(1-s)e^{-10s}\cdot\tfrac{10}{100s+1}=\tfrac{10(1-s)e^{-10s}}{100s+1}=G_p$.) $G_p^{+}(0)=1$ guarantees zero offset.
  2. Form the IMC controller. Invert only the good part and add the first-order filter ($\tau_f=10$): $$q(s)=\big(G_p^{-}\big)^{-1}f=\dfrac{100s+1}{10}\cdot\dfrac{1}{10s+1}=\boxed{\dfrac{100s+1}{10\,(10s+1)}}$$ The RHP zero and dead time are deliberately not inverted (that would give an unstable, non-causal controller).
  3. Equivalent classical controller (optional). If a standard feedback form is wanted, $G_c=\dfrac{q}{1-G_p q}$; with a perfect model $G_p q=G_p^{+}f=\dfrac{(1-s)e^{-10s}}{10s+1}$, which is stable and proper — confirming the design is realisable.
  4. (b) Perfect-model set-point response. With no model error the closed loop reduces to $$\dfrac{Y(s)}{Y_{sp}(s)}=G_p q=G_p^{+}f=\dfrac{(1-s)\,e^{-10s}}{10s+1}.$$ The filter sets the closed-loop speed ($\tau_f=10$); the all-pass factor $(1-s)e^{-10s}$ is unavoidable — it imposes the process’s dead time and inverse response.
  5. Qualitative response to a unit step. With $Y_{sp}=1/s$, ignoring the delay the transient is $w(t)=1-1.1\,e^{-0.1t}$, so $w(0)=\boxed{-0.1}$ (an inverse response: the output first moves the "wrong" way because of the RHP zero) and $w(\infty)=1$ (no offset). Including the dead time, the output stays flat until $t=10$, then dips slightly negative and climbs monotonically to the set point with the $\tau_f=10$ time constant.
0 20 40 60 80 -0.1 0 0.5 1 time t y(t) (set-point response) P3(b): perfect-model IMC response to unit set-point step
Problem 3(b): perfect-model closed-loop response to a unit set-point step. Nothing happens until the dead time $\theta=10$ elapses; the output then shows a small inverse response (dips to $-0.1$ from the RHP zero) before rising monotonically to $1$ with the filter time constant $\tau_f=10$ — no offset.
ResultExpression
IMC controller$q(s)=(100s+1)/[10(10s+1)]$
Closed-loop (perfect model)$Y/Y_{sp}=(1-s)e^{-10s}/(10s+1)$
Initial (inverse) response$-0.1$ (after the $\theta=10$ delay)
Steady-state offset$0$ (since $G_p^{+}(0)=1$)