{ "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", "< [Interacting Tanks](http://nbviewer.jupyter.org/github/jckantor/CBE30338/blob/master/notebooks/03.07-Interacting-Tanks.ipynb) | [Contents](toc.ipynb) | [Modeling and Control of a Campus Outbreak of Coronavirus COVID-19](http://nbviewer.jupyter.org/github/jckantor/CBE30338/blob/master/notebooks/03.09-COVID-19.ipynb) >
"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Manometer Models and Dynamics"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Summary\n",
"\n",
"This notebook demonstrates the modeling and interactive simulation of a u-tube manometer. This device demonstrates a variety of behaviors exhibited by a linear second order system. An interesting aspect of the problem is the opportunity for passive design of dynamics for a measurement device."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Learning Goals\n",
"\n",
"* Develop linear differential equations models for mechanical systems from momentum/force balances. \n",
"* Describe role of position and velocity as state variables in a dynamic model.\n",
"* Describe undamped, underdamped, overdamped, and critically damped responses.\n",
"* Represent a second order system in standard form with natural frequency and damping factor.\n",
"* Describe second order response to sinusoidal input, and resonance.\n",
"* Construct a state space representation of a second order linear differential equation."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Initializations"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"%matplotlib inline\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"from scipy.integrate import odeint\n",
"from scipy import linalg as la\n",
"from ipywidgets import interact,interactive\n",
"from control.matlab import *\n",
"\n",
"# scales for all subsequent plots\n",
"tmax = 20\n",
"ymin = -0.02\n",
"ymax = +0.02\n",
"axis = [0.0,tmax,ymin,ymax]\n",
"t = np.linspace(0.0,tmax,1000)\n",
"\n",
"# physical properties\n",
"g = 9.8 # m/s\n",
"rho = 1000.0 # density of water kg/m^3\n",
"nu = 1.0e-6 # kinematic viscosity of water m/s^2\n",
"\n",
"# system dimensions\n",
"L = 7 # meters\n",
"d = 0.08 # meters"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Model 1. Steady State Response to a Pressure Differential\n",
"\n",
"For this first model we will that the ends of the u-tube are exposed to a pressure differential $\\Delta P$. How does the level in the tubes change?\n",
"\n",
"The u-tube manometer of cross-sectional area $A$, filled with a liquid of density $\\rho$, the total length of the liquid column $L$. When the ends are open and exposed to the same environmental pressure $P$ the liquid levels in the two the legs of the device will reach the same level. We'll measure the levels in the tubes as a deviation $y$ from this equilibrium position.\n",
"\n",
"At steady state the difference in the levels of the tubes will be $h$. The static pressure difference \n",
"\n",
"$$\\Delta P = \\rho g h$$\n",
"\n",
"or \n",
"\n",
"$$y = \\frac{\\Delta P}{\\rho g}$$\n",
"\n",
"This is simple statics. Notice that neither the cross-sectional area or the length of the liquid column matter. This is the rationale behind the common water level.\n",
"\n",
"![https://upload.wikimedia.org/wikipedia/commons/thumb/0/08/Schlauchwaage_Schematik.svg/250px-Schlauchwaage_Schematik.svg.png](https://upload.wikimedia.org/wikipedia/commons/thumb/0/08/Schlauchwaage_Schematik.svg/250px-Schlauchwaage_Schematik.svg.png)\n",
"\n",
"(By [Bd](https://de.wikipedia.org/wiki/User:Bd) at the [German language Wikipedia](https://de.wikipedia.org/wiki/), [CC BY-SA 3.0](http://creativecommons.org/licenses/by-sa/3.0/), [Link](https://commons.wikimedia.org/w/index.php?curid=46342405))"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
" "
]
}
],
"metadata": {
"anaconda-cloud": {},
"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"
},
"widgets": {
"state": {
"007355d1980343dbb76bde8d899a5771": {
"views": [
{
"cell_index": 16
}
]
},
"2231f725990d48a299b436b50eb01364": {
"views": [
{
"cell_index": 14
}
]
},
"25ab9be6097f4ea98940130d9c4762e7": {
"views": [
{
"cell_index": 15
}
]
},
"299c003370c8484787fc850b3cf9578b": {
"views": [
{
"cell_index": 3
}
]
},
"59c1a69ca2544c18b9623712889818cd": {
"views": [
{
"cell_index": 12
}
]
},
"694968b4994e47a8b1b386bbf591b9fe": {
"views": [
{
"cell_index": 6
}
]
},
"a89afad69df146a298330b5daf02cbc3": {
"views": [
{
"cell_index": 8
}
]
}
},
"version": "1.2.0"
}
},
"nbformat": 4,
"nbformat_minor": 4
}