Some useful math/calculus sites: http://www.math.umn.edu/~garrett/a08/Graph.html good Java graphing site http://www.mathlesstraveled.com/?cat=24 scroll down to article "The Most Beautiful Equation in the World" http://archives.math.utk.edu/visual.calculus/ tutorials, interactive modules (Univ of Tennessee) http://integrals.wolfram.com/index.jsp (online integrator via Wolfram's Mathematica) http://www.math.odu.edu/cbii/calcanim/#quad (calculus animations with Mathcad via Windows Media Player) http://people.hofstra.edu/Stefan_Waner/tutorials5/unit5_5.html rate problems) (Hofstra, a few example http://www.martindalecenter.com/Calculators2_7_Calc.html ONLINE textbooks/courses (as of April 2009) http://calculus7.com/id24.html (animation of Riemann sums) http://ocw.mit.edu/ans7870/resources/Strang/strangtext.htm http://www.ugrad.math.ubc.ca/coursedoc/math100/ http://synechism.org/drupal/de2de/ (MIT open courseware) (University of British Columbia) (many java applets) http://math.hws.edu/javamath/config_applets/index.html (13 Java applets incl Riemann sums, epsilon delta,derivatives, and function composition ) http://www.scribd.com/doc/9156339/Calculus-Tutorial-3-DifferentialEquations#document_metadata (download for real-life examples of diffy q's) http://www.ugrad.math.ubc.ca/coursedoc/math100/labs/lab5/lab5.html Newton's and Euler's methods) http://math.arizona.edu/~calc/m124Worksheets.html worksheets) (demos of (University of Arizona http://d.scribd.com/docs/2ddw80euxysa9q7vf9kh.pdf (Calculus Tutorial 1, 3) Specific References (mine or from problem set) 1. Problem Solving for Engineers and Scientists ISBN 0442004788 pp.62-68 (problem 1) 2. online tutorial #1 (d.scribd.com) 3. online tutorial #3 (d.scribd.com) 4 . Theory and Problems of Feedback Control Systems ISBN 0070170479 5 . personal notes from 1987 Modern Control Systems Dorf ISBN 0131457330 Optimal Control Lewis ISBN 0471033782 Digital Control of Dynamic Systems Franklin&Powell ISBN 0201820544 Techniques of Model-Based Control Brosilow&Joseph ISBN 013028078X Adaptive Filtering, Prediction and Control Goodwin&Sin ISBN 013004069X Theory and Practice of Recursive Identification Ljung&Soderstrom ISBN 0262620588 Advanced Excel for Scientific Data Analysis de Levie ISBN 0195152751 Some available software: Pari/GP pari.math.u-bordeaux.fr - general purpose math computations, well-respected Mathematica www.wolfram.com MATLAB (control sys toolbox) www.mathworks.com Octave (control sys toolbox) www.gnu.org/software/octave/ -open altern. To MATLAB Gnumeric www.gnome.org/gnumeric -open source alternative to Excel SAGE www.sagemath.org - general purpose math computations Ubuntu Linux www.ubuntu.com (well-supported, Debian-based, easy install, recommend Xubuntu, which comes with Gnumeric) NetBeans www.netbeans.org - Java application with some preconfigured applet windows&forms (Sun Micro) PID Control Simulation/slide sites http://www.mstarlabs.com/docs/tn031.html (good basic diagrams) http://www.chem.mtu.edu/~tbco/cm416/pidchoice.html (Java simulation applet) http://www.freevbcode.com/ShowCode.asp?ID=3808 (VB simulation download) http://www.tu-harburg.de/mec/web212/electromechanic/recitation/PIDTutorial.pdf (Univ of Hamburg) https://www.ece.ubc.ca/~leos/pdf/e360/notes/PID.pdf (slideshow from Univ British Columbia) http://en.wikipedia.org/wiki/PID_controller http://en.wikipedia.org/wiki/Optimal_control_theory *THREE ELEMENT BOILER DRUM LEVEL (FEEDWATER) CONTROL* http://www.controlguru.com/wp/p44.html (3-element control) http://www.controlglobal.com/articles/2007/123.html (3-element control) http://cr4.globalspec.com/thread/22139/3-element-boiler-drum-level-control (3-element control) from the last reference (paraphrased slightly) 1.0 *Introduction: * In the boiler the steam flow changes according to the load demand from the turbine or from the process consuming the steam energy. To match the steam take off from the boiler, the feedwater flow has to be increased or decreased as required. The feedwater is automatically controlled by suitably positioning Feedwater Control Valve (FCV) provided in the feedwater line at boiler inlet. 2.0 *Three Element Feedwater Control: * For automatic control of the feedwater flow to the boiler, three (elements) primary inputs are normally being considered. 2.1 Drum level. 2.2 Main Steam flow. 2.3 Feedwater flow. In addition, measurements of Drum Pressure, Main Steam Pressure and Main Steam temperature are also taken for correction/compensation purposes. *Following paragraphs briefly explains how the feedwater flow is regulated to match the steam demand from the boiler* 3.0 *Drum level measurement (in an averaging config) Two numbers of level transmitters (dP transmitters) one on left hand side and the right hand side of the Boiler Steam Drum are provided to measure drum level. 3.1 The two level signals from these transmitters are averaged and connected to a manual three-way selector switch. The other two inputs for the three-way selector switch are directly from the two transmitters. Normally the average signal is selected for the control. In case any problem with any one of the transmitters; the healthy transmitter is selected in the three-way selector switch for the control. 3.2 The functioning of two level transmitters is continuously monitored through a deviation monitor. In case of difference between the two level transmitters higher than the preset value, the control could be automatically transferred to Manual with an annunciation. 3.3 The selected drum level signal may be compensated for density variation in the drum water due to pressure changes (actually due to temperature changes) in the drum, through a function generating with drum pressure signal. 4.0 *Drum Level Control: * The compensated drum level signal fed to a reverse acting P I controller as process variable. This measured drum level is compared with setpoint and a correcting signal (with proportional plus integral action) is generated in the controller according the deviation between the measured process variable (drum level) and the setpoint. 5.0 *Main steam flow measurement: * The dP Transmitter measures the dP across the venturi nozzle, provided in the main steam line (The dP measured is proportional to the square of the flow through the venturi nozzle). The measured dP is square rooted and compensated density variations due to change of Pressure and Temperature. 6.0 *Feedwater flow measurement: * The dP Transmitter measures the dP across the orifice fitting provided in the Feedwater line. The measured dP is square rooted to arrive at the feed water flow. 7.0 *Feedwater flow control:* The compensated steam flow is added with the corrected signal generated in the drum level controller. This sum is taken as the demand of feedwater flow (cascade setpoint) for the boiler and compared with the actual feed water flow to the boiler. The deviation between the demand and the actual feedwater flow is fed to the P & I controller. The processed output from the controller is given to the final control element (feedwater valve). 8.0 *Single Element Control: * During low load operation, three-element control is not required. Drum level measurement with its setpoint is adequate. Hence the output of the Drum Level Controller is directly given to the Feedwater Control Valve through the selector switch provided after Cascade P & I Controller. 9.0 *Auto Manual Operation: * An Auto Manual feature is provided as the last element of control system. Auto or Manual operation can be selected from the Auto Manual Selector Switch locally or in the graphic. If auto selected, the positioning signal from the selected controller (through Hand selector switch) will go to the Final control Element – Feedwater Control Valve. If manual is selected, the controller's outputs are isolated and the Feedwater Control valve can be positioned by the Operator. Raise/Lower push buttons are provided so that the Feedwater Control valve can be opened or closed as desired by the operator. Bumpless transfer must be designed in to avoid sudden jump of control valve position during change over from auto to manual or vice versa. 10.0 *Indications: * Normally Setpoint value indication, Deviation indication, Final Control element (Feedwater Control valve) position indication and Process value indication are usually provided. 11.0 Alarm and Trip signals: Low and high level alarm signals can be generated from the transmitter output through software switches. With multiple transmitters, l ow and very high level trip signals (software switches) from both the transmitters output and also from the averaged/compensated signals would be handled through an 'OR' gate. Typical Trip/Alarm Signals generated. 11.1 Transmitter deviation Alarm. 11.2 Drum level – Low Level Alarm 11.3 Drum level – High Level Alarm 11.4 Drum level – Very Low Level Trip 11.5 Drum level – Very High Level Trip 12 Some Trip/Alarm Signals me be hardwired 12.1 Drum level – Very Low Level Trip 12.2 Drum level – Very High Level Trip **END** Problem Set [ref 1] You have a toxic chemical in a tank which is overpressurizing (someone forgot a pressure relief valve!). Unfortunately the drain valve is also corroded and useless. You can drill a new drain hole of any size in the underside the elevated tank but there is a tradeoff in drilling time vs drain time. Due to toxicity, the draining will be unmonitored into a trough after the (single) hole is drilled. Presume drainage time is inversely proportional to the hole cross-sectional area and that drill time is proportional to this area. You only have a minute or two to decide what size hole to drill (no detailed derivation). What size do you drill? [for solution see ref] [ref 2] A sewage plant discharges it effluent at a known point in a river. Oxygen concentration is critical to fish in the river. At what point will the concentration fall below 4 given the following model: conc=A-B[exp(Cx)-exp(Dx)] where (A,B,C,D)=(10,15,-0.1,0.5) and x is the distance in miles downstream from discharge. Hint: use the Newton-Raphson method, try initial guesses in the range 5-15. [for solution see ref] [ref 2] CCCSD has a workload of files to process by computer and can choose either mainframe or PC. Solve for w= file workload for the breakeven point. The cost equations are c1= 1.2*w and c2 (mainframe) =100+log(w+1). Initial guess w=50. [for solution see ref] [ref 3] There is an infection on the DVC campus. One student was infected with a deadly virus, V. The spread of the virus among the students was given by the sigmoidal curve: Y=5000/ [1+4999exp(-0.8t)] where y is the number of infected students at time t. Find the number of students infected after 5 days. Find when 40% of the students would be infected. Find the time when dy/dt is a maximum. Plot the graph of y versus t. [for solution see ref] [ref 4] Find the transfer function of a system given the describing differential equation y’’+ 3 y’ + 2’ = u + u’ with(u,y) = input, output (use Laplace transform) [for solution see ref] [ref 4] Here is a diagram of a tank filling system. Draw the basic block diagram. [for solution see ref] An alternate control to PID has been proposed. Show how it could be simulated in Excel OR decide if it can control as well as PID. The mechanism details are: Form: subscripts r,d denote ratio,difference SP,PV= setpoint, process value ewa=exponential weighted average Use a datum scaling of 0-1 (field IO to PLCs normally 0-4095 ie 12 bits) Must accommodate a raise/lower (R/L) type output Allow for input ewa filtering (80%old, 20%new weights) Use hi/lo output clamps of 10 and 80%. Allow a MAC (max allowable change) of 0.10 (10%) in any output sent Initially use SP=0.50. Bump (step change) to 0.70 The genl form is Zr = Kt*[ Kq*Xr + Az*Kz*Zd^(Nz) ] (1) Zr = Zact/Zsp Zd=Zact-Zsp Xr = Xprev/X Az=+/-1 Nz=Integer >0 Ki = coefficients (Kt is dynamic) For example, with everything on SP, steady-state, Zr=1, Zd=0 and reduces to: 1 = Kt*Kq* Xr so that Kt=1/Kq for example Compare the response of the proposed ctrl with PID …use at least 20 time steps [for solution see Bill McEachen] You have a dataset from a control test for a 2nd order system. Derive the coefficients for the basic ARMAX model. (Identification/Estimation) from the data. A y(t) = B u(t) + C e(t) where y,u,e = output,input,disturbance/noise The actual model is A=[1.5 –0.7] B= [1.0 0.5 ] C= [ -1.0 0.20] Use a S/N ratio of 10, forgetting factors 0.99, 0.95, filter contraction factor=0. Run #iterations=100 with input merely a PRBS (pseudo-random binary signal, just 0’s and 1’s). Use K=10 for the identity matrix multiplier P0=K*I The difference equation is 1.5 Y(k) -0.7 Y(k-1)= Uk + 0.5 U(k-1) –1.0 Ek +0.2 E(k-1) at time step k My simulation returned [ -1.493,0.692, 0.990,0.507,-0.855,-0.025 ] against actual [ 1.50 -0.70 1.0 0.50 -1.0 0.20 ] [for C++ coding solution see Bill McEachen]