Protein Digestion: A Dynamic Model Process Control: Design Challenge I

Download Report

Transcript Protein Digestion: A Dynamic Model Process Control: Design Challenge I

Protein Digestion: A Dynamic Model
Student Name 1 & Student Name 2
Process Control: Design Challenge I
Our System
F1, Xai
Reaction:
V
x a  x b 
 x c
rate  kxa x b
k
Assumptions:
 mixed
• Well
• Constant: V,
Xbi, density,
flow rates
F2, Xbi
The
Stomach
F3, Xa,
Xb, Xc
ODEs
F3  F1  F2
dx a
 F1 x ai  Vkxa x b  F3 x a
dt
dx b
V
 F2 x bi  Vkxa x b  F3 x b
dt
dx c
V
 Vkxa x b  F3 x c
dt
V
Steady State Solution
Original Conditions
INPUT:
Clear [xa,xb,xc];
eqns = {F1*Xai-V*k*xa*xb-F3*xa == 0, F2*Xbi-V*k*xa*xb-F3*xb == 0,
V*k*xb*xa-F3*xc == 0, F1 == 15, F2 == 7, F3 == F1+F2, k == 5, Xai == 150, Xbi
== 1000, V == 1000};
NSolve[eqns, {xa,xb,xc}]
Given Values
K
5 ml·min/mg
F1
15 ml/min
OUTPUT:
{{xc®102.271,xa®0.00208415,xb®215.911},{xc®318.188,xa®-215.916,xb®0.00648415}}
F2
7 ml/min
V
1000 ml
Exit concentrations:
Xai
150 mg/ml
Xbi
1000 mg/ml
Protein:
0.0021 mg/ml
Enzyme:
216.0 mg/ml
Tryptophan: 102.3 mg/ml
Decrease Initial Enzyme Concentration
INPUT:
Clear [xa,xb,xc];
eqns = {F1*Xai-V*k*xa*xb-F3*xa == 0, F2*Xbi-V*k*xa*xb-F3*xb == 0,
V*k*xb*xa-F3*xc == 0,F1 == 15, F2 == 7, F3 == F1+F2, k == 5, Xai == 150, Xbi
== 500, V == 1000};
NSolve[eqns, {xa,xb,xc}]
OUTPUTl:
{{xc®102.265,xa®0.00791828,xb®56.8261},{xc®159.103,xa®-56.8305,xb®0.0123183}}
Exit concentrations:
Protein:
0.008 mg/ml
Enzyme:
56.8 mg/ml
Tryptophan: 102.3 mg/ml
Steady State Solution
Original Conditions
INPUT:
Clear [xa,xb,xc];
eqns = {F1*Xai-V*k*xa*xb-F3*xa == 0, F2*Xbi-V*k*xa*xb-F3*xb == 0,
V*k*xb*xa-F3*xc == 0,F1 == 15, F2 == 7, F3 == F1+F2, k == 5, Xai == 150, Xbi
== 1000, V == 1000};
NSolve[eqns, {xa,xb,xc}]
OUTPUT:
{{xc®102.271,xa®0.00208415,xb®215.911},{xc®318.188,xa®-215.916,xb®0.00648415}}
Exit concentrations:
Protein:
0.0021 mg/ml
Enzyme:
216.0 mg/ml
Tryptophan: 102.3 mg/ml
Increase Inlet Flow Rate
INPUT
Clear [xa,xb,xc];
eqns = {F1*Xai-V*k*xa*xb-F3*xa == 0, F2*Xbi-V*k*xa*xb-F3*xb == 0,
V*k*xb*xa-F3*xc == 0, F1 == 30, F2 == 7, F3 == F1+F2, k == 5, Xai == 150, Xbi
== 1000, V == 1000};
NSolve[eqns, {xa,xb,xc}]
OUTPUT
{{xc®121.608,xa®0.0133159,xb®67.5809},{xc®189.21,xa®-67.5883,xb®0.0207159}}
Exit concentrations:
Protein:
0.013 mg/ml
Enzyme:
67.6 mg/ml
Tryptophan: 121.6 mg/ml
Mathematical Solution
ODEs
F3  F1  F2
dx a
 F1 x ai  Vkxa x b  F3 x a
dt
dx
V b  F2 x bi  Vkxa x b  F3 x b
dt
dx
V c  Vkxa x b  F3 x c
dt
V
Laplace Procedure
1. Linearize ODE
2. Subtract original steady state
3. Find τ’s and k’s
4. Laplace
5. Rearrange to find transfer functions
6. Substitute to get one equation
7. Inverse Laplace with Maple®
Mathematical Solution
Laplace Transform:
 G4 s G3 s G1 s   G5 s G1 s 
X C s   X ai s 





1

G
s
G
s
2
3


Where
k
G1 s   1
1  1
k
G 2 s   2
1  1
k
G3 s   3
 2 1
k
G 4 s   4
3 1
k
G5 s   5
3 1
1 
V
Vkxb  F3
2 
V
Vkxa  F3
V
3 
F3
k1 
F1
Vkxb  F3
k2 
 Vkxa
Vkxb  F3
k3 
 Vkxb
Vkxa  F3
k4 
Vkxa
F3
k5 
Vkxb
F3
Mathematical Solution Cont.
Fuzzy
Math
Inverse Laplace via Maple®
Impulse Response
Step Response
xc :=
2
æ
ö
k3 k1
k3 k1
aç
+
÷
è (T3 s + 1) (T2 s + 1) (T1 s + 1) (T3 s + 1) (T1 s + 1) ø
k2 k3
æ
ö
sç1÷
(T1 s + 1) (T2 s + 1) ø
è
2
xc :=
æ
ö
k3 k1
k3 k1
aç
+
÷
è (T3 s + 1) (T2 s + 1) (T1 s + 1) (T3 s + 1) (T1 s + 1) ø
1-
æ
ç
ç
1
a k1 ç
ç T1 2 - 2 T1 T2 + T2 2 + 4 T1 T2 k2 k3 (k2 k3 - 1) (T1 T2 - T1 T3 - k2 k3 T3 2 - T2 T3 + T3 2)
è
k2 k3
(T1 s + 1) (T2 s + 1)
æ
æ
ç
ç
1
ç
ç
1
a k1 ç
ç
2
2
ç T1 2 - 2 T1 T2 + T2 2 + 4 T1 T2 k2 k3
T1 T2 - T1 T3 - k2 k3 T3 - T2 T3 + T3 ç
è
è
æ
æ
ç
ç sinhç
ç
ç
è
è
æ- (T1 + T2 ) t ö
2
2
t T1 - 2 T1 T2 + T2 + 4 T1 T2 k2 k3 ö÷
è 2 T1 T2 ø
2
(2 T1 T2 k3 - T1 T3 + T2 T3 - T2
÷ k3 e
2 T1 T2
ø
ö æ æ- t ö
÷ ç è T3 ø
- T1 T3 k3 - T2 T3 k3 - 2 T3 T2 k2 k3 + T1 T2)÷ + ç e
÷ ç
ø è
öö
(T1 + T2 ) t ö ö
æ
ö æ÷÷
2
2
÷
ç t T1 - 2 T1 T2 + T2 + 4 T1 T2 k2 k3 ÷ è 2 T1 T2 ø ÷
÷÷
e
- coshç
(
k3
T3
T2
+
T3
)
k3
÷
÷÷
÷
2
T1
T2
è
ø
÷÷
ø
øø
t
æ
æ
ç
ç sinhç
ç
ç
è
è
æ- (T1 + T2 ) t ö
2
2
T1 - 2 T1 T2 + T2 + 4 T1 T2 k2 k3 ö
è 2 T1 T2 ø
2
÷
(-T2 k2 k3 T3 + T1 T2 T3
÷ k3 e
2 T1 T2
ø
2
2
2
2
2
2
2
- T1 k3 T3 + 2 T2 k2 k3 T1 - T2 k3 T3 + T1 k3 T2 - T1 T3 + T2 k3 T1 - 2 T3 k2 k3 T1 T2
ö
÷
2
2
1
+ T1 T2 - T2 T1 - 3 T2 k2 k3 T1 T3)÷ +
÷
2
(
T1
T2
T1
T3
k2
k3
T3
- T2 T3 + T3 2) (k2 k3 - 1)
ø
æ
æ
ç
t
ç coshç
ç
ç
è
è
æ
ç
ç
ç
è
(T1 + T2 ) t ö
ö æT1 2 - 2 T1 T2 + T2 2 + 4 T1 T2 k2 k3 ÷ è 2 T1 T2 ø
e
(-T3 T2 k2 k3 + T1 T2 - T1 T3
÷
2 T1 T2
ø
+ T1 T2 k3 - T1 T3 k3 - T2 T3 k3) + (-k3 T3 + T2 - T3) e
æ- t ö
è T3 ø
öö
ö
÷÷
÷
÷
+ (k3 + 1) (T1 T3 + T3 (k2 k3 - 1) + (T3 - T1) T2)÷ k3÷
÷÷
÷
ø÷
ø
ø
2
(k2 k3 - 1) T3
Step Response
Matlab® Input
function hdot=stomachstep(t,h)
hdot=zeros(3,1);
F1=15; F2=7; F3=22; V=1000; k=5; Xbi=1000;
if t<100 Xai=100; else Xai=150; end;
hdot(1)=(F1*Xai-V*k*h(1)*h(2)-F3*h(1))/V;
hdot(2)=(F2*Xbi-V*k*h(1)*h(2)-F3*h(2))/V;
hdot(3)=(k*V*h(1)*h(2)-F3*h(3))/V;
t0=0; tf=400; h0=[0.021 216 102.3];
[t,h]=ode23(@stomachstep,[t0 tf],h0);
plot(t,h(:,2),t,h(:,3))
Step Response
Matlab® Output
Step Response
Simulink® Diagram
Step Response
Simulink® Output for Enzyme
Step Response
Simulink® Output for Tryptophan
Impulse Response
Matlab® Input
function hdot=stomachimpulse(t,h)
hdot=zeros(3,1);
F1=15; F2=7; F3=22; V=1000; k=5; Xbi=1000;
if t<100 Xai=200; elseif t>105 Xai=200; else Xai=500; end;
hdot(1)=(F1*Xai-V*k*h(1)*h(2)-F3*h(1))/V;
hdot(2)=(F2*Xbi-V*k*h(1)*h(2)-F3*h(2))/V;
hdot(3)=(k*V*h(1)*h(2)-F3*h(3))/V;
t0=0; tf=400; h0=[0.0021 216 102.3];
[t,h]=ode23(@stomachimpulse,[t0 tf],h0);
plot(t,h(:,2),t,h(:,3))
Impulse Response
Matlab® Output
Impulse Response
Simulink® Diagram
Impulse Response
Simulink® Output for Enzyme
Impulse Response
Simulink® Output for Tryptophan
Final Thoughts
Conclusions
• Linear approximation is valid
• Step response is as expected
• Impulse response as expected
• Matlab® & Simulink® agree
• Model will provide basis for
more complex systems
Recommendations
• Vary k values
• Explore larger/smaller step
and impulse values
• Make model more realistic
• Model multiple food
components
References
• Biglione, N., Yousef, M., & Rodgers, V.G.J.,
(2004). Process Dynamics & Control in Design
52:185: Lab # 1: Programming and Simulation
using Matlab® and Simulink®.
• Seborg, D.E., Edgar, T.F., & Millichamp, D.A.
(2004). Process Dynamics and Control (2nd
ed.). Hoboken, NJ: John Wiley & Sons.
• Vander, A., Sherman, J., Luciano, D. (2001).
Human Physiology: The Mechanisms of Body
Function (8th ed.). Boston: McGraw Hill.