{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "*This notebook contains course material from [CBE30338](https://jckantor.github.io/CBE30338)\n", "by Jeffrey Kantor (jeff at nd.edu); the content is available [on Github](https://github.com/jckantor/CBE30338.git).\n", "The text is released under the [CC-BY-NC-ND-4.0 license](https://creativecommons.org/licenses/by-nc-nd/4.0/legalcode),\n", "and code is released under the [MIT license](https://opensource.org/licenses/MIT).*" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "< [Blending Tank Simulation](http://nbviewer.jupyter.org/github/jckantor/CBE30338/blob/master/notebooks/02.03-Blending-Tank-Simulation.ipynb) | [Contents](toc.ipynb) | [Hare and Lynx Population Dynamics](http://nbviewer.jupyter.org/github/jckantor/CBE30338/blob/master/notebooks/02.05-Hare-and-Lynx-Population-Dynamics.ipynb) >

\"Open

\"Download\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Continuous Product Blending\n", "\n", "This case study is modeled after an actual process used to prepare an over-the-counter pediatric medication. The situation has been simplified to the dissolution of a single active ingredient into a suspension, and adapted to continouous rather than batch operation.\n", "\n", "The process objective is to mix an active ingredient $A$ into a suspension $S$, providing enough time to fully mix and dissolve components coming from both streams. The feed concentration of $A$ is 200 grams/liter. Process requirements include:\n", "\n", "* The final product concentration must be in the range 7.8 to 8.2 grams/liter. \n", "* At all timses the mixer residence time, $\\frac{V}{q_{out}}$, must remain between 84 and 108 hours.\n", "* The volume cannot exceed the tank capacity of 15,000 liters, and cannot fall below the 8,000 liters required to fully cover the mixing blades.\n", "\n", "The outlet from the tank is fed directly to a packaging line. The flow demand can vary due to changes in speed of the packaging equipment.\n", "\n", "![](figures/Continuous-Mixed-Tank.png)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Preliminary Control Analysis " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Parameters\n", "\n", "| Quantity | Symbol | Value | Units |\n", "|:-:|:-:|:-:|:-:|\n", "| Feed Concentration |$c_{A,f}$ | 200 | g/liter |\n", "| Maximum Tank Operating Capacity | $V$ | 15,000 | liters |\n", "| Minimum Tank Operating Capacity | $V$ | 8,000 | liters |" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Control Objectives\n", "\n", "* Maintain outlet concentration of $A$ at $8.0 \\pm 0.2$ grams/liter.\n", "* Maintain an average residence time (i.e., ratio $V/q_{out}$) of $96 \\pm 12$ hours.\n", "* Past operation has shown a liquid volume of 12,000 liters generally meets nominal demand. Demand, however, fluctuates and is determined by the downstream packaging line." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Classification of Variables\n", "\n", "What are the disturbances variables (DV), manipulated variables (MV), and controlled variables (CV)?\n", "\n", "| Variable | Symbol | Classification |\n", "|:-:|:-:|:-:|:-:|\n", "| Outlet Flow | $q_{out}$ | DV |\n", "| Feed Flow | $q_A$ | MV |\n", "| Water Makeup Flow | $q_W$ | MV |\n", "| Product Concentration | $c_A$ | CV |\n", "| Volume | $V$ | CV |\n", "\n", "In this case, we can assume the controlled variables are directly measureable." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Degrees of Freedom Analysis\n", "\n", "At steady-state the balance equations become algebraic equations\n", "\n", "\\begin{align}\n", "0 & = \\bar{q}_A + \\bar{q}_S - \\bar{q}_{out} \\\\\n", "& \\\\\n", "0 & = \\bar{q}_A c_{A,f} - \\bar{q}_{out}\\bar{c}_A\n", "\\end{align}\n", "\n", "There are a total of five variables in these two equations. So we need to find at least three more specifciations or constraints to determine values for these variables. \n", "\n", "Additional pieces of information we have are the process specifications\n", "\n", "\\begin{align}\n", "\\frac{\\bar{q}_{out}}{\\bar{V}} & = 96 \\mbox{ hours} \\\\\n", "c_{A,f} & = 200 \\mbox{ g/liter} \\\\\n", "\\bar{q}_{out} & = \\mbox{ set by the downstream demand} \\\\\n", "\\bar{c}_A & = 8 \\mbox{ g/liter}\n", "\\end{align}\n", "\n", "This is a total of four new equations for steady-state. The new equations introduced an additional variable $\\bar{V}$. This provides six variables in six equations provided we know the downstream demand." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Steady State\n", "\n", "Let's assume a constant output demand $\\bar{q}_{out}$ = 125 liters/hr. The equations may then be solved in order:\n", "\n", "\\begin{align}\n", "c_{A,f} & = 200 \\mbox{ g/liter} \\\\\n", "\\bar{c}_A & = 8 \\mbox{ g/liter} \\\\\n", "\\bar{V} & = 96\\ \\bar{q}_{out} = 12,000 \\mbox{ liters}\\\\\n", "\\bar{q}_A & = \\frac{\\bar{q}_{out}\\bar{c}_A}{c_{A,f}} = 5 \\mbox{ liters/hr}\\\\\n", "\\bar{q}_S & = \\bar{q}_{out} - \\bar{q}_A = 120 \\mbox{ liters/hr}\n", "\\end{align}" ] }, { "cell_type": "markdown", "metadata": { "tags": [ "exercise" ] }, "source": [ "### Exercise 1. Determine Operating Range\n", "\n", "Solve the steady-state equations for other values of $\\bar{q}_{out}$. Given a maximum tank operating capacity of 15,000 liters, what is the largest possible value of $\\bar{q}_{out}$ which still meets process specifications? If the minimum tank operating capacity is 8,000 liters, what is the minimum value of $\\bar{q}_{out}$?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Modeling\n", "\n", "The balance equations are\n", "\n", "\\begin{align}\n", "\\frac{dV}{dt} & = q_A + q_S - q_{out} \\\\\n", "\\frac{d(Vc_A)}{dt} & = q_A c_{A,f} - q_{out}c_A\n", "\\end{align}\n", "\n", "where we have made the assumption of constant density among all of the streams, and of complete and uniform mixing in the stirred tank. \n", "\n", "For simulation, it is useful to isolate the derivatives of $V$ and $c_A$ on the left-hand side of these differential equations. Using the chain rule\n", "\n", "\\begin{align}\n", "\\frac{dV}{dt} & = q_A + q_S - q_{out} \\\\\n", "V\\frac{dc_A}{dt} + c_A\\frac{dV}{dt} & = q_A c_{A,f} - q_{out}c_A\n", "\\end{align}\n", "\n", "Substituting the first equation into the second gives\n", "\n", "\\begin{align}\n", "\\frac{dV}{dt} & = q_A + q_S - q_{out} \\\\\n", "V\\frac{dc_A}{dt} + c_A\\left(q_A + q_S - q_{out}\\right) & = q_A c_{A,f} - q_{out}c_A\n", "\\end{align}\n", "\n", "Rearranging terms, and dividing the second equation by $V$, gives us the final version of a dynamical model.\n", "\n", "\\begin{align}\n", "\\frac{dV}{dt} & = q_A + q_S - q_{out} \\\\\n", "\\frac{dc_A}{dt} & = \\frac{q_A}{V} \\left(c_{A,f} - c_A\\right) - \\frac{q_S}{V} c_A\n", "\\end{align}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Simulation" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Step 1. Imports\n", "\n", "We start the simulation by importing necessary Python libraries." ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "from scipy.integrate import odeint\n", "import matplotlib.pyplot as plt\n", "%matplotlib inline" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Step 2. Parameter Values\n", "\n", "It is good coding practice to include all relevant parameter values in single block of code. This makes it easier for users of your code to understand what values are relevant to the problem, and to adjust and maintain your code. No 'magic' numbers should appear later in your code." ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [], "source": [ "# parameters\n", "caf = 200 # g/liter\n", "Vmax = 15000 # liters\n", "Vmin = 8000 # liters\n", "\n", "# process setpoints\n", "ca_SP = 8 # g/liter\n", "rtime_SP = 96 # residence time in hours\n", "\n", "# nominal values of the disturbance variables\n", "qout_bar = 125" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Step 3. Computing Steady State\n", "\n", "A good modeling practice is to begin with the determination of a nominal steady state. By nominal we mean operating conditions representative of typical, desired behavior of the process in question, and should be computed based on the parameter values given above." ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Steady-State\n", " V [liters] = 12000\n", " ca [g/liter] = 8\n", " qa [liters/hr] = 5.0\n", " qs [liters/hr] = 120.0\n" ] } ], "source": [ "# nominal steady state at process setpoint\n", "V_bar = rtime_SP * qout_bar\n", "ca_bar = ca_SP\n", "qa_bar = ca_SP*qout_bar/caf\n", "qs_bar = qout_bar - qa_bar\n", "\n", "print(\"Steady-State\")\n", "print(\" V [liters] = \", V_bar)\n", "print(\" ca [g/liter] = \", ca_bar)\n", "print(\" qa [liters/hr] = \", qa_bar)\n", "print(\" qs [liters/hr] = \", qs_bar)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Step 4. Process Model Equations\n", "\n", "In our case the model consists of a system of two differential equations. For simulation with the Python function `odeint`, the model is encapsulated into a Python function that accepts two arguments.\n", "\n", "* `X` is a list of values for the model state, in this case `V` and `ca`.\n", "* `t` a variable containing value corresponding to the current time." ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [], "source": [ "def deriv(X, t):\n", " V, ca = X\n", " dV = qa + qs - qout\n", " dca = qa*(caf - ca)/V - qs*ca/V\n", " return [dV, dca]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Step 5. Numerical Solution of the Process Model\n", "\n", "This block does the numerically intensive portion of the simulation. Here we establish values for all degrees of freedeom, specify initial conditions, and thne proceed to compute a history of the process behavior. The history is broken into discrete time step which is a bit more work now, but will later provide a means to test implementations of control algorithms.\n", "\n", "For the first simulation, it usually a good idea to pick an initial condition that will yield a known result. In this case we start a simulation at steady state." ] }, { "cell_type": "code", "execution_count": 44, "metadata": { "scrolled": false }, "outputs": [ { "data": { "text/plain": [ "[[0, 12000, 8],\n", " [1, 12000.0, 8.0],\n", " [2, 12000.0, 8.0],\n", " [3, 12000.0, 8.0],\n", " [4, 12000.0, 8.0],\n", " [5, 12000.0, 8.0],\n", " [6, 12000.0, 8.0],\n", " [7, 12000.0, 8.0],\n", " [8, 12000.0, 8.0],\n", " [9, 12000.0, 8.0]]" ] }, "execution_count": 44, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# fix all degrees of freedom \n", "qout = qout_bar # outlet flow -- process disturbance variable.\n", "qa = qa_bar # inlet flow of A -- process manipulated variable\n", "qs = qs_bar # inlet flow of suspension -- process manipulated variable\n", "\n", "# establish initial conditions\n", "t = 0\n", "V = V_bar\n", "ca = ca_bar\n", "\n", "# time step, and variable to store simulation record (or history)\n", "dt = 1\n", "history = [[t,V,ca]]\n", "\n", "while t < 500:\n", " V, ca = odeint(deriv, [V, ca], [t, t+dt])[-1]\n", " t += dt\n", " history.append([t,V,ca])\n", "\n", "history[0:10]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Step 6. Visualization and Analysis\n", "\n", "To simplify future simulations, here we define a function to plot the results stored in the simulation record. The function `plot_history(history, labels)` takes two arguments. The first argument is the data history recorded during the course of the simulation, where the first element is assumed to be time. The second argument is a list of labels corresponding to each of the recorded variables." ] }, { "cell_type": "code", "execution_count": 45, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def plot_history(history, labels):\n", " \"\"\"Plots a simulation history.\"\"\"\n", " history = np.array(history)\n", " t = history[:,0]\n", " n = len(labels) - 1\n", " plt.figure(figsize=(8,1.95*n))\n", " for k in range(0,n):\n", " plt.subplot(n, 1, k+1)\n", " plt.plot(t, history[:,k+1])\n", " plt.title(labels[k+1])\n", " plt.xlabel(labels[0])\n", " plt.grid()\n", " plt.tight_layout()\n", " \n", "plot_history(history, ['t / hours','Volume','Concentration $c_A$'])" ] }, { "cell_type": "markdown", "metadata": { "tags": [ "exercise" ] }, "source": [ "### Exercise 2. Explore Dynamical Behavior\n", "\n", "Let's explore the behavior of this mixing tank under different assumptions. We'll explore the following cases:\n", "\n", "1. The startup concentration of $A$ is $c_A = 0$. How long before the mixer is producing an acceptable product?\n", "2. The outlet flow increases by 10%. How long before the product is out of spec?\n", "3. The outlet flow decreases by 10%. How long before the product is out of spec?\n", "\n", "The following cell shows how you might get started with first question." ] }, { "cell_type": "code", "execution_count": 46, "metadata": { "scrolled": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# fix all degrees of freedom \n", "qout = qout_bar # outlet flow -- process disturbance variable.\n", "qa = qa_bar # inlet flow of A -- process manipulated variable\n", "qs = qs_bar # inlet flow of suspension -- process manipulated variable\n", "\n", "# establish initial conditions\n", "t = 0\n", "V = V_bar\n", "ca = 0 # <========= CHANGED TO AN INITIAL CONDITION OF ZERO\n", "\n", "# time step, and variable to store simulation record (or history)\n", "dt = 1\n", "history = [[t,V,ca]]\n", "\n", "while t < 500:\n", " V, ca = odeint(deriv, [V, ca], [t, t+dt])[-1]\n", " t += dt\n", " history.append([t,V,ca])\n", "\n", "plot_history(history, ['t / hours','Volume','Concentration $c_A$'])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Control Residence Time\n", "\n", "From the exercises above, we know even small changes in the outlet flowrate results in substantial loss due to out-of-spec product. Let's try a control strategy in which we change in the suspension flowrate, $q_S$, to compensate for excursions from the desired value of residence time.\n", "\n", "We'll try proportional control where the change in $q_S$ is proportional to the difference of the residence time from the setpoint.\n", "\n", "\\begin{align}\n", "q_S - \\bar{q}_S = - K \\left(\\frac{V}{q_{out}} - \\frac{\\bar{V}}{\\bar{q}_{out}}\\right)\n", "\\end{align}\n", "\n", "The negative sign is there because we expect a negative deviation in flowrate is needed to compensate for a positive deviation in residence time. This can be written more directly as\n", "\n", "\\begin{align}\n", "q_S = \\bar{q}_S - K \\left(\\frac{V}{q_{out}} - \\frac{\\bar{V}}{\\bar{q}_{out}}\\right)\n", "\\end{align}\n", "\n", "In the following cell we will decrease qout by 10%, and attempt to find a value for $K$ that provides satisfactory control." ] }, { "cell_type": "code", "execution_count": 56, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# fix all degrees of freedom \n", "qout = qout_bar # outlet flow -- process disturbance variable.\n", "qa = qa_bar # inlet flow of A -- process manipulated variable\n", "qs = qs_bar # inlet flow of suspension -- process manipulated variable\n", "\n", "# establish initial conditions\n", "t = 0\n", "V = V_bar\n", "ca = ca_bar\n", "\n", "# time step, and variable to store simulation record (or history)\n", "dt = 1\n", "history = [[t, V, ca, V/qout, qs]]\n", "\n", "qout = 0.9*qout\n", "while t < 500:\n", " qs = qs_bar - 5*(V/qout - V_bar/qout_bar)\n", " V, ca = odeint(deriv, [V, ca], [t, t+dt])[-1]\n", " t += dt\n", " history.append([t, V, ca, V/qout, qs])\n", "\n", "plot_history(history, ['t','V','ca','V/qout','qs'])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Control Concentration\n", "\n", "As shown above, it isn't enough to control only residence time. In fact, controlling residence time in response to a decrease in output causes the outlet concentration to increase beyond the product quality limits. We propose to fix this problem by controlling $q_A$, the inlet flow of $A$. A proportional control rule is given by\n", "\n", "\\begin{align}\n", "q_A & = \\bar{q}_A - K \\left(c_A - \\bar{c}_A \\right)\n", "\\end{align}\n", "\n", "where, again, we predict a decrease in $q_A$ is needed to compensate for a positive excursion in $c_A$." ] }, { "cell_type": "code", "execution_count": 57, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# fix all degrees of freedom \n", "qout = qout_bar # outlet flow -- process disturbance variable.\n", "qa = qa_bar # inlet flow of A -- process manipulated variable\n", "qs = qs_bar # inlet flow of suspension -- process manipulated variable\n", "\n", "# establish initial conditions\n", "t = 0\n", "V = V_bar\n", "ca = ca_bar\n", "\n", "# time step, and variable to store simulation record (or history)\n", "dt = 1\n", "history = [[t, V, ca, V/qout, qs, qa]]\n", "\n", "qout = 0.9*qout\n", "while t < 500:\n", " qs = qs_bar - 5*(V/qout - V_bar/qout_bar)\n", " qa = qa_bar - 3*(ca - ca_bar)\n", " V, ca = odeint(deriv, [V, ca], [t, t+dt])[-1]\n", " t += dt\n", " history.append([t, V, ca, V/qout, qs, qa])\n", "\n", "plot_history(history, ['t / hours','Volume','Concentration $c_A$','V/qout','qs','qa'])" ] }, { "cell_type": "markdown", "metadata": { "tags": [ "exercise" ] }, "source": [ "## Exercise 3.\n", "\n", "The algebraic formulae given above do not include any limits on flowrate. Suppose the flowrate $q_s$ is limited to 0 to 200 liters/hour, and the flowrate $q_a$ is limited to 0 to 20 liters/hour. Modify the code above to incorporate those limits. Now try to find the minimum time necessary to bring the tank from initial concentration of 0 to state where it is producing an acceptable product." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Proportional-Integral Control\n", "\n", "The above control laws do a reasonable job of control, but do not return the system to a desired steady-state operating condition. How can we modify the control laws?\n", "\n", "\\begin{align}\n", "q_A & = \\bar{q}_A - K_p \\left(c_A - \\bar{c}_A \\right) - K_i \\int_0^t \\left(c_A - \\bar{c}_A \\right) dt\n", "\\end{align}\n", "\n", "The second term will integrate any constant offset to produce a constantly changing value. So the only possible steady-state is when $c_A = \\bar{c}_A$." ] }, { "cell_type": "code", "execution_count": 58, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# fix all degrees of freedom \n", "qout = qout_bar # outlet flow -- process disturbance variable.\n", "qa = qa_bar # inlet flow of A -- process manipulated variable\n", "qs = qs_bar # inlet flow of suspension -- process manipulated variable\n", "\n", "# establish initial conditions\n", "t = 0\n", "V = V_bar\n", "ca = ca_bar\n", "error_sum = 0\n", "\n", "# time step, and variable to store simulation record (or history)\n", "dt = 1\n", "history = [[t, V, ca, V/qout, qs, qa]]\n", "\n", "qout = 0.9*qout\n", "while t < 500:\n", " qs = qs_bar - 5*(V/qout - V_bar/qout_bar)\n", " \n", " error = (ca - ca_bar)\n", " error_sum += error * dt\n", " \n", " qa = qa_bar - 3*error - 0.4*error_sum\n", " V, ca = odeint(deriv, [V, ca], [t, t+dt])[-1]\n", " t += dt\n", " history.append([t, V, ca, V/qout, qs, qa])\n", "\n", "plot_history(history, ['t / hours','Volume','Concentration $c_A$','V/qout','qs','qa'])" ] }, { "cell_type": "markdown", "metadata": { "tags": [ "exercise" ] }, "source": [ "## Exercise 4.\n", "\n", "Write an expression for the proportional-integral control of residence time. Implement the control, and 'tune' the control constants until you get satisfactory feedback control for a 10% reduction in demand. By satisfactory we mean:\n", "\n", "* Meet product quality specifications at all times.\n", "* There are no more than three observable peaks in any underdamped response.\n", "* The decay ratio is less than 0.25.\n", "\n", "Is it possible to meet these control specifications?" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "< [Blending Tank Simulation](http://nbviewer.jupyter.org/github/jckantor/CBE30338/blob/master/notebooks/02.03-Blending-Tank-Simulation.ipynb) | [Contents](toc.ipynb) | [Hare and Lynx Population Dynamics](http://nbviewer.jupyter.org/github/jckantor/CBE30338/blob/master/notebooks/02.05-Hare-and-Lynx-Population-Dynamics.ipynb) >

\"Open

\"Download\"" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.4" } }, "nbformat": 4, "nbformat_minor": 2 }