Written midterm 2 - 2014

From Process Control: 3P4
Revision as of 16:04, 28 March 2014 by Kevin Dunn (talk | contribs)
Jump to navigation Jump to search
Midterm date: 13 March 2014
Nuvola mimetypes pdf.png (PDF) Midterm questions
  • Date: Thursday, 13 March
  • Starting time: 18:30
  • Duration: 2 hours
  • Locations:
    • T29, room 101: last names A to L
    • T29, room 105: last names M to Z


What will be covered in the midterm?

The midterm will cover all material in the course, up to, and including 10 March 2014. This corresponds to material in Chapters 1 to 9 in Marlin's book. The midterm will focus mainly on the material since the previous midterm, however, all material will be required.

  1. Overview of Process Control
  2. Process Control objectives
  3. Dynamic models, solving them and interpreting them
  4. The PID controller
  5. Determining model parameters from experiments

Highlights from the newer material include:

  • second order systems
  • controller objectives
  • representing real systems in deviation form on a block diagram with transfer functions
  • closed loop response to the CV from either the SP or from disturbance \(d\)
  • the PID controller: understanding what each mode in the controller does
  • using Simulink
  • how to tune the controller using the Ciancone rules, and what the tuning values do to the closed loop response
  • system identification using the Process Reaction Curve method


Answering questions in the midterm

  • You may bring in any printed materials to the midterm; any textbooks, any papers, etc.
  • You may use any calculator during the midterm.
  • You may answer the questions in any order in the answer booklet.
  • Time saving tip: never repeat the question back in your answer.
  • If anything seems unclear, or information appears to be incomplete, please make a reasonable assumption and continue with the question.

How to prepare for the midterm

  • Understand the concepts being learned. My courses are never about finding the right equation, plugging values in and solving. You will obviously need to use equations, but the end goal is demonstrate your understanding of the material, and that you can apply it to new situations.
  • Read the questions carefully: they are usually worded precisely. The biggest point where students lose marks is to answer only one part of the question.
  • Work through many of the practice questions on the website. They have full solutions.
  • Work through all the tutorial problems again, making sure you understand the core concepts. The tutorials are posted on the course home page.


The midterm

<rst> <rst-options: 'toc' = False/> <rst-options: 'reset-figures' = False/> .. Note::

- You may bring in any printed materials to the midterm; any textbooks, any papers, *etc*. - You may use any calculator during the midterm. - **To help us with grading, please start each question on a new page, but use both sides of each page in your booklet**. - You may answer the questions in any order on all pages of the answer booklet. - This exam requires that you apply the material you have learned here in 3P to new, unfamiliar situations, which is the level of thinking we start to require from students that will be graduating or working in co-ops in a year from now. - Any ambiguity or lack of clarity in a question may be resolved by making a suitable and justifiable assumption, and continuing to answer the question with that assumption(s). - **Total marks**: 54 marks, 12.5% of course grade. - Total time: 2 hours. There are 4 pages on the exam, please ensure your copy is complete.


.. question:: :grading: 6 x 2 = 12

The questions below are related to a PID controller, with control law given in the time-domain. This is the form recommended for implementation.

.. math::

\text{MV}(t) = K_c \left(E(t) + \dfrac{1}{T_I}\int_0^t{E(t^\ast)\,dt^\ast}-T_D \frac{d\,\text{CV}}{dt} \right)

#. Clearly describe in one sentence what the purpose of the integral mode is, i.e. the :math:`T_I` term.

#. We learnt in class that the last term is derived in textbooks as

.. math::

+ T_D \dfrac{d\,\text{E}}{dt}

Why is the recommended form, shown at the start of this question, preferred over this form?

#. Under which condition is the derivative mode often set to zero?

#. Should the integral mode ever be turned off? Explain your answer in a single sentence.

#. We learnt about the Ciancone tuning rules (*see last page of this test*) to find initial values of :math:`K_c`, :math:`T_I` and :math:`T_D`. What main criterion is these Ciancone rules optimizing to provide tuning values for a first-order plus time delay (FOPTD) process?

#. If you were setting the tuning for a FOPTD process and did not have a copy of the Ciancone rules with you, what single value of :math:`\dfrac{T_I}{\theta+\tau}` would you remember for the rest of your career that would be a good enough guess for :math:`T_I`? Justify why.

.. answer::

#. The integral mode provides persistent manipulated variable input to the process, until the error is reduced to zero, ensuring offset-free behaviour.

#. The recommended form is derived by eliminating the derivative of the set point signal. That derivative is unbounded for step changes down or up in set point, and would otherwise lead to disruptive and sudden changes in the manipulated variable.

#. It is set to zero for noisy signals (noisy CV measurements), or in situations when it is not necessary, such as when dead time, :math:`\theta \approx 0`, as can be seen in the Ciancone correlation charts.

#. It is not usual to turn of the integral mode, as offset free behaviour is very desirable for almost all feedback control loops.

#. As described in the course textbook, the Ciancone turning rules are derived by optimizing several competing criteria. The main criterion is turning for minimum IAE (integral absolute error).

#. Using a value of :math:`\dfrac{T_I}{\tau + \theta} \approx` 0.6 to 0.7 would be suitable. Most loop tuning, at least for an initial starting guess, would work adequately at these values, for all values of :math:`\tau` and :math:`\theta`. It is not technically correct to say that :math:`T_I = 0.6`, since that is not the value on the :math:`y`-axis of the tuning plots.

.. question:: :grading: 18 = 5 + 4 + 5 + 4

#. Describe what the time-domain response to a step input for the following heat exchanger system would be, given by the transfer function below. Show all calculations. **[5]**

.. math::

\dfrac{T_\text{hot,out}(s)}{F_\text{steam,in}(s)} = \dfrac{2}{15s^2 + 8s + 1}

.. image:: ../figures/process-control/midterm-exams/2014-midterm-2-heat-exchanger.png :scale: 30 :width: 750px :align: center

#. For the above heat-exchanger system, the objective is to control the outlet temperature :math:`T_\text{hot,out}` by manipulating the :math:`F_\text{steam,in}`. Give two complete and specific examples of disturbances that will upset the process if there is no feedback control. **[4]**

#. You are responsible for operating the primary reactor in your plant. It is a CSTR with volume :math:`5.6\,\text{m}^3`. The current flow rate into the tank is :math:`0.4\,\text{m}^3\text{.min}^{-1}`.

You increase the feed concentration by 20% to alter the reaction kinetics and product purity. Approximately how long before the tank stabilizes again? **[5]**

#. The following output is from a process that is controlled by a PI controller.

.. image:: ../figures/process-control/Marlin-slides/Marlin-Fig-9-13.png :width: 750px :scale: 80

#. What two things can you change to reduce the IAE? **[2]** #. What will happen to the manipulated variable when you make those changes? **[2]**

.. answer::

#. The question clearly asks for a description only, so actual inversion to the time-domain, while not incorrect, is unnecessary.

The system will be an overdamped second-order response. We observe that by inspecting the roots of the denominator :math:`\left(-\dfrac{1}{5}\,\text{and}\,-\dfrac{1}{3} \right)`. Since both are real, and negative, we expect a second-order overdamped response.

You may chose to evaluate the final value, which will simply be double the magnitude of the input supplied to the system.

#. Two disturbances expected might be:

* the temperature of the heating steam will fluctuate (e.g. drop), which will change the amount of heat transferred (reduced), and cause the outlet temperature to change (decrease). * the flow of the cold stream entering will vary (e.g. increase), which will change the residence time in the heat exchanger (lower), and cause the outlet temperature change (drop).

#. You might have answered this question purely from an intuitive point of view, having seen the :math:`\tau = \dfrac{V}{F} = \dfrac{5.6\,\text{m}^3}{0.4\,\text{m}^3\text{.min}^{-1}} = 14\,\text{min}` term so many times in the prior course examples.

However, the main assumption you must clearly state, is that you are assuming a first order process, and that it is the time-constant, :math:`\tau`, for that first-order process.

If you were lost, you could do a quick symbolic calculation for tank system, such as

.. math::

V \dfrac{dC_A}{dt} &= F C_{A0} - FC_A - V (r_A) \\ \dfrac{V}{F} s C_A'(s) &= ....

to prove to yourself the :math:`\frac{V}{F}` terms appears in front of the :math:`s`, which is the time-constant :math:`\tau`.

Then to answer the question of "how long", we can state that it typically takes 5 time constants for the system to reach steady state and stabilize again, so :math:`5 \times 14 = 70` minutes would be a good approximation.

#. #. The IAE may be reduced by a *slight* increase in :math:`K_c` and a slight decrease in :math:`T_I`. We cannot make large changes, because at some point the loop will over-compensate, become oscillatory, and increase the IAE again. We showed the quadratic nature of these functions in class.

#. As the loop tuning is tightened, and made more aggressive, the manipulated variable will show greater variability in its trajectory. In other words, it will rise faster and more steeply, perhaps even overshooting its required value, and have to come down again.

.. question:: :grading: 10

The operator made a mistake! He increased the pressure to the gas-phase reactor, which shifted the equilibrium, changed the kinetics, and altered the heat released by the exothermic reaction.

.. image:: ../figures/process-control/midterm-exams/2014-midterm-2-step-response.png :scale: 80

He made the increase of 200 kPa at 10 minutes; at time 60 minutes he realized the mistake and dropped the pressure back down by 200 kPa again. Although this disrupted the production, your company got a free experiment out of this. Use the above data to estimate the parameters of a suitable transfer function model that relates the input (pressure) to the output (temperature). Provide units for all parameters and justify all your work with suitable reasons.

.. t =simout1.time(1:10:end) .. y =simout1.signals.values(1:10:end) .. plot(t,y*4+250,'.-'); axis tight

.. answer::

The aim of this question to is achieve a model of the process. Based on observation of the step response (mistakenly made by the operator), we can see how a first order plus time delay model might work well here. Technically, a more sophisticated model (inverse response) might be more accurate, but we've not learned about those yet in the course.

.. math::

\dfrac{\text{output(s)}}{\text{input(s)}} = \dfrac{K_p e^{-\theta s}}{\tau s + 1}

A process reaction curve only requires data from a single step (up or down), but as you've learned in the course, the results from this process can be noisy: everyone gets a different answer. So you should at least try to use the results from the second step down either to (a) average out the results, or at the very least, double-check your answer. This is what you would do in practice, right?

From the plot, we can see the process starts at 250°C and rises to 265°C, so a change of 15°C for a step input of 200 kPa; this is a gain, :math:`K_p = \dfrac{15}{200}\,\dfrac{\text{°C}}{\text{kPa}} = 0.075\,\text{°C.kPa}^{-1}`. The step down is roughly 15 units also (we can't be 100% sure, because we aren't given enough data), but it is roughly the same gain.

To calculate we time constant and time delay we read off values of :math:`t_{63}` and :math:`t_{28}`. For the step up, this occurs at about :math:`t_{63} = (32 - 10) = 22` minutes and :math:`t_{28} = (26 - 10) = 16` minutes. For the step down, these occur at about :math:`t_{63} = (82 - 60) = 22` minutes and :math:`t_{28} = (76 - 10) = 16` minutes. So there is good agreement between the two.

So :math:`\tau = \dfrac{3}{2}\left( t_{63} - t_{28} \right) = 1.5 (22-16) = 9` minutes.

And :math:`\theta = t_{63} - \tau = 22 - 9 = 13` minutes, using data from both steps.

The final model is then:

.. math::

\dfrac{\text{temperature(s)}}{\text{pressure(s)}} = \dfrac{0.075 e^{-13 s}}{9 s + 1} .. question:: :grading: 14

You are a new employee at a continuous (not batch) chemical plant and the area you are responsible for contains an important feedback control loop that controls product purity.

Customers require your product to have consistent purity throughout the 8 hours that it takes to continuously produce the product. Every 8 hours the company switches production schedules to new settings for the next customer's product, so about 3 switches are made per day.

Purity, :math:`P(t)`, is affected by many factors, but the one factor most easily changed is the current, :math:`I(t)`, that is supplied to the electrical heating coil in the reactor. Your electrical engineering colleague provides you with the following relationship that the previous engineer in your position derived:

.. math::

P(t) = \left[-2.4 + 2.4 e^{-(t-5)/15} \right]\mathcal{S}\left(t-5\right)

This is the time-domain response to a 1.0 amp step increase in :math:`I(t)`; the :math:`t` represents time in minutes.

Your boss wants you retune the control loop; you have one chance to set either the PI or PID controller tuning. Clearly describe your process that you will follow, explaining your thinking.

In your answer draw a transfer function block diagram for the entire system.

.. answer::

A broad range of answers were accepted in this intentionally open-ended question. However, the one thing that definitely was required, was for you to "*clearly describe*" and to "*explain your thinking*". It is not acceptable to just write out equations and without justifying their use, since that does not show whether you understand **why** you use the equations.

*The grading rubric was*:

* Stating the model was FOPTD (important, because tuning rules, later on, require a FOPTD model): **1** * Specifying the model parameters, :math:`K_p, \tau, \theta` and their units: **3** * Discuss that the Ciancone tuning rules are being used, and what the value of the :math:`K_c, T_I, T_D` are: **1** (if you didn't calculate the values, your are barely penalized, but a complete answer would require you to calculate the numbers; not simply state they should be calculated, because the next part of the discussion depends on the numeric values) * Talking about whether the tuning is for disturbances and/or set points: **2** * Transfer function diagram, with a completely specified :math:`G_c(s)` and :math:`G_p(s)` and labelled signals: **3** * Discuss that both set point changes and disturbances are important, so an averaged tuning would be used: **1** * Discuss that the values need to fine tuned, and that you would do it in something like Simulink, and that you would use the IAE criterion to judge this: **2** * Discuss how you would select between a PI or PID controller: **1**

The question was worth 14 out of 54 marks (about 25% of the test), indicating that about 25 to 30 minutes would be required to write up the solution. It was decided to reduce the weight of this question down to 10 marks, making the midterm out of 50.

Important points that should have been mentioned:

* The process rejects disturbances ("consistent purity" is required; and "Purity, :math:`P(t)`, is affected by many factors") indicate that. The process requires regular set point changes, 3 times per day. This indicates tuning should be for both set point changes and disturbance rejection. Disturbances are always present in any real system, so that capability should be present (or at least verified, the disturbance tuning is not too different from the set point tuning). We did this several times in class, and tutorials.

* Pointing out that the existing model is a FOPTD model is really useful, and means we can go ahead with using that model, without doing a step test (Process Reaction Curve experiment).

* Discussion on fine-tuning is important. We would never put a control system in place without testing it thoroughly, especially on a critical variable. How you go about that was shown in class, and I presume in assignments you have tried Simulink simulations with different tuning, and not just stopped once you have a solution from the graphs. Always verify your paper solutions, test them, and play around with the numbers. That's why engineers like simulation: no risks are taken.

</rst>