Assignment 6 - 2014

From Process Control: 3P4
Revision as of 18:14, 9 April 2014 by Kevin Dunn (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Due date(s): 31 March 2014, in class (no late hand-ins)
Nuvola mimetypes pdf.png (PDF) Assignment questions
Nuvola mimetypes pdf.png (PDF) Assignment solutions

<rst> <rst-options: 'toc' = False/> <rst-options: 'reset-figures' = False/> .. rubric:: This assignment gives you practice with cascade control and feedforward control.

.. question:: :grading: 10 = 6 + 4

The outlet temperature from the tank is being controlled in a cascade control system, as shown below.

.. image:: ../figures/process-control/assignments/Smith-Fig-8-9.png :scale: 100 :width: 750px :align: center

#. What is the primary variable in the cascade loop? #. What is the secondary variable in the cascade loop? #. What is the manipulated variable in the inner loop? #. Explain whether a disturbance in the cooling water feed temperature will be removed rapidly with the cascade loop? #. Explain whether a disturbance in the cooling water feed pressure will be removed rapidly with the cascade loop? #. Explain whether a disturbance in the main feed temperature will be removed rapidly with the cascade loop? #. Draw a complete block diagram of the system indicating all the inner and outer level controllers, process blocks and disturbance blocks.


.. answer::

#. The primary variable is ``T1``, the temperature inside the tank. #. The secondary variable is ``T2``, the temperature in the jacket. #. The manipulated variable is the cooling water valve position. #. Yes, the cooling water feed temperature affects the ``T2`` reading, so this disturbance will be removed quickly. #. Yes, the cooling water feed pressure affects the ``T2`` reading (which leads to increased or decreased heat transfer in the jacket due to longer or shorter residence times of the heating ), so this disturbance will be removed quickly, before it impacts ``T1``. #. No, there is no faster response when the feed temperature disturbance enters, because it will affect ``T2`` at the same time, or even after ``T1``. #. As shown below.

.. image:: ../figures/process-control/assignments/cascade-closed-loop.png :width: 750px :align: left


.. question:: :grading: 12 = 3 + 9

Consider the cascade system shown in the figure below:

.. image:: ../figures/process-control/assignments/Marlin-Fig-14-15.png :scale: 40 :width: 750px :align: left

#. Show that the cascade loop, as drawn, is appropriate. (Don't simply write "Y" or "N" next to the criteria; explain your answers). You may assume the first criterion is met, i.e. the performance without cascade control is not suitable.

#. Determine, use clear, logical reasoning, and all your prior engineering knowledge of heat transfer and fluid flow whether the cascade loop would provide performance that is "better", "worse" or "no different" to direct control of ``TC`` using the valve position.

#. the disturbance is change in the composition of the fuel (i.e. the heating value changes)

#. the feed temperature increases

#. the pressure of the fuel decreases

.. answer::

#. There are 5 criteria we check,

1. We assume the first is met, i.e. that the single loop performance is not acceptable. 2. The secondary variable is measured. Yes, in this case the secondary variable is the flow, which is measured with a sensor, as shown. 3. The secondary variable indicates a key disturbance. Yes, a change in fuel oil pressure and a change in density will be indicated by the flow sensor (depending on the technology used to measure flow). 4. The secondary variable is causally affected by the valve. Yes, in this case, the valve opening and closed will vary the flow. 5. Secondary dynamics are faster than the primary dynamics, Yes, flow is very rapidly controlled with the valve position, much faster than the response due to flow changes on the temperature.

#. We take each disturbance in turn:

#. The composition of the fuel will affect the density of the liquid, and depending on the `flow sensor technology <http://www.pc-education.mcmaster.ca/Instrumentation/flow.htm>`_ it might or might not be detected by the sensor. The change could be negligible, in which case the cascade loop performance is no different to direct control.

#. The feed temperature, as before, may affect the liquid density. As shown in the above hyperlink, the equations for an orifice plate are calibrated with a specific density. However, the fuel oil temperature is unlikely to affect the heated feed temperature, indicated by ``TC``, to a great extent, given the large range of temperature during combustion. So the net result is that regular loop or cascade loop performance will be no different.

#. The feed pressure drop will cause a reduced flow of fuel, which will be sensed and corrected by the inner cascade loop almost immediately. The ``TC`` temperature will barely be affected by this disturbance, so cascade control will be successful in this instance.

.. question:: :grading: 10

A block diagram for a cascade loop is shown below.

.. image:: ../figures/process-control/Seborg/Seborg-Fig16-4.png :scale: 70 :width: 750px :align: center

#. Derive a single transfer function from input :math:`Y_\text{sp2}` to output :math:`Y_2`, assuming :math:`D_2=0`.

#. Redraw the block diagram, replacing it now with your single block transfer function at the suitable place, but still incorporate the disturbance effect from :math:`D2`.

#. What is the characteristic equation for the inner loop?

#. If the inner loop has proportional-only controller for :math:`G_{c2}`, and :math:`G_v = 3`, and :math:`G_{p2}(s) = \dfrac{6}{2s + 1}`, derive a constraint (inequality) for the value of :math:`K_c` so that the inner loop still has stable behaviour.

#. Explain whether this answer matches what we have learned earlier in the course?

.. answer::

#. The single transfer function is:

.. math::

\dfrac{Y_2}{Y_\text{sp2}} = \dfrac{G_{p2}G_vG_{c2}}{1+G_{p2}G_vG_{c2} }

#. Using this single transfer function now, we can reduce the entire inner loop to a single block. This reduction helps with analyzing the stability and properties of the outer loop, because now we don't have the complexity of an inner loop any more.

.. image:: ../figures/process-control/assignments/cascade-loop-reduction.png :width: 750px

#. The characteristic equation is: :math:`1+G_{p2}G_vG_{c2}`

#. Stable behaviour requires the characteristic equation has roots in the left half plane:

.. math::

1+G_{p2}G_vG_{c2} &= 0 \\ 1 + \dfrac{6}{2s + 1} \cdot 3 \cdot K_c &= 0 \\ 2s + 1 + 18 K_c &= 0\\ s &= -9K_c - 0.5

For this to be a negative root, we require:

.. math::

-9K_c - 0.5 &< 0 \\ 9K_c + 0.5 &> 0 \\ K_c &> -\dfrac{1}{18}

#. We learned that the sign of controller gain, :math:`K_c` should match the sign of the process gain, :math:`K_p`. This bound sets a minimum on the controller gain, in practice we would almost certainly tune it to be larger, and increase it above zero, in which case it matches our expectation. The number :math:`-\dfrac{1}{18}+\epsilon` however does lead to a stable controller and you should check this in Simulink with the three gains of:

* :math:`K_c = -\dfrac{1}{18} - \epsilon` * :math:`K_c = -\dfrac{1}{18}` * :math:`K_c = -\dfrac{1}{18} + \epsilon`

to verify your answer.

.. question:: :grading: 20 = 2 + 10 + 5 + 2 + 1

*From a previous final exam*

The question considers a tank that is electrically heated. The goal is to maintain the temperature ``T6`` as steady as possible.

.. image:: ../figures/process-control/assignments/feedforward-example.png :scale: 70 :width: 750px :align: left

We know that

* :math:`F` is constant * A 4 to 20 mA change in input to the heater causes a change in power output from 0 to 1600 kW. * The span of the transmitter is 64°C, with corresponding outputs of 4 to 20 mA. * If the energy input is suddenly increased by 320 kW, it results in an eventual rise of 8°C in the tank, stabilizing after 500 seconds. * A step change in the inlet temperature, :math:`T_i` also gives rise to a complete response in about 500 seconds.

#. Which controller is the feedback controller, and which is the feedforward controller? #. Draw a block diagram for the system, adding all elements, variables and their units to the diagram. #. Design the feedforward controller. #. No calculations are required: is the feedback control loop stable? #. What is the purpose of having feedback control, in addition to feedforward control?


.. answer::

#. The feedback controller is ``TC6`` and the feedforward controller is ``TC3``. #. A diagram should include these elements:

.. image:: ../figures/process-control/assignments/feedforward-block-diagram.png :scale: 90 :width: 750px

where

* The gain :math:`K_m = \dfrac{20-4}{64} = 0.25\,\dfrac{\text{mA}}{\text{°C}}` * The gain :math:`G_v = \dfrac{1600-0}{20 - 4} = 100\dfrac{\text{kW}}{\text{mA}}`

The other transfer functions require a derivation:

.. math::

\rho V C_p \dfrac{dT}{dt} &= \rho F C_p(T_i - T) + Q\\ \text{At steady state}\qquad\qquad 0 &= \rho F C_p(T_{i,S} - T_s) + Q_s \\ \text{Subtract} \qquad\qquad \rho V C_p \dfrac{dT'}{dt} &= \rho F C_p(T_i' - T') + Q'\\ \text{Laplace transform} \qquad\qquad V s T'(s) &= FT_i'(s) - F T'(s) + \dfrac{Q'(s)}{\rho C_p}\\ T'(s)\left[ Vs + F\right] &= F T_i(s)+ \dfrac{Q'(s)}{\rho C_p}\\ T'(s) &= \dfrac{F}{Vs + F}T_i(s)+ \dfrac{\frac{1}{\rho C_p}}{Vs + F}Q'(s) \\ \text{Simplify} \qquad\qquad T'(s) &= \dfrac{1}{\frac{V}{F}s + 1}T_i(s)+ \dfrac{\frac{1}{\rho C_pF}}{\frac{V}{F}s + 1}Q'(s) \\

* The process :math:`G_p(s)= \dfrac{T(s)}{Q(s)} = \dfrac{K_p}{\tau s + 1}` can be taken from the above derivation

#. :math:`K_p = \dfrac{1}{\rho C_pF} = \dfrac{8}{320} = 0.025 \dfrac{\text{°C}}{\text{kW}}` #. :math:`\tau = \dfrac{V}{F} = \dfrac{500}{5} = 100` seconds, using the :math:`5\tau` rule for first order systems #. There is no time delay, because electrical heat added will almost certainly show an immediate rise in temperature #. :math:`G_d(s) = \dfrac{T(s)}{T_i(s)} = \dfrac{1}{\frac{V}{F}s + 1} = \dfrac{1}{100s + 1}`, using the same reasoning as for the process transfer function #. :math:`G_{ff}(s)` is derived below

#. The feedforward controller, :math:`G_{ff}(s)` is derived so that :math:`T(s)` shows no change when :math:`T_i` changes. This requires:

.. math::

T(s) = G_d(s)T_i(s) + K_m G_{ff}(s) G_v(s) G_p(s)T_i(s) &= 0\\ T_i(s)\left[G_d(s) + K_m G_{ff}(s) G_v(s) G_p(s)\right] &= 0\\ G_d(s) + K_m G_{ff}(s) G_v(s) G_p(s) &= 0 \\ G_{ff}(s) &= -\dfrac{G_d(s)}{K_m G_v(s) G_p(s)} \\ G_{ff}(s) &= -\dfrac{\dfrac{1}{100s + 1}}{0.25 \cdot 100 \cdot \dfrac{0.025}{100 s + 1}} \\ G_{ff}(s) &= -1.6

which is a simple proportional-only controller.


#. Yes the loop is stable; a feedforward controller does not affect the stability of the feedback loop (we proved this in the tutorial).

#. The feedback control loop maintains the desired set point of ``TC6`` when other disturbances (measured or unmeasured) affect the temperature, such as the inlet flow rate.


</rst>