Continuous Fermenter Control
Simulates a model of a continuous fermenter. Constant volume reactor where single, rate limiting substrate yields biomass growth and product formation.
Since version 1. ------------------------------------------------------------------------- Reference: Henson, M. A. and D. E. Seborg. (1997.) Nonlinear Process Control, Prentice-Hall. pp. 203-204. ------------------------------------------------------------------------- See also: RHSFermenter, MuFermenter, TimeGUI, Plot2D -------------------------------------------------------------------------
Contents
%-------------------------------------------------------------------------- % Copyright (c) 2013 Princeton Satellite Systems, Inc. % All rights reserved. %--------------------------------------------------------------------------
Model parameters
-----------------
d.yXS = 0.4; % Cell-mass yield parameter (g/g) d.beta = 0.2; % Yeild parameter (1/hr) d.pM = 50; % Constant parameter (g/L) d.kI = 22; % Constant parameter (g/L) d.d = 0.202; % Dilution rate (1/hr) d.alpha = 2.2; % Yield parameter (g/g) d.muM = 0.48; % Maximum specific growth rate (1/hr) d.kM = 1.2; % Constant parameter (g/L) d.sF = 20; % Feed substrate concentration (g/L)
State
[X;S;P] X = biomass concentration S = substrate concentration P = product concentration ---------------------------
x = [6;5;19.14]; t = 0;
The control sampling period and the simulation integration time step
---------------------------------------------------------------------
dT = 1;
Number of sim steps
--------------------
nSim = 100; tEnd = nSim*dT;
Plotting arrays
----------------
tPlot = zeros(1,nSim); xPlot = zeros(3,nSim);
Run the simulation
See RHSFermenter.m which gives a model of a constant volume reactor in which a single, rate limiting substrate promotes biomass growth and product formation. -------------------------------------------------------------------------
for k = 1:nSim x = RK4( 'RHSFermenter', x, dT, t, d ); t = t + dT; tPlot(k) = t; xPlot(:,k) = x; end
Plot Results
Open loop response is given. ----------------------------
Plot2D( tPlot, xPlot,'Time (hr)',['X';'S';'P'],'Fermenter States') %-------------------------------------- % PSS internal file version information %--------------------------------------
