Beruflich Dokumente
Kultur Dokumente
Oleh :
Figure 1 CSTR
According to MIMO control system assignment, the plant we used is a continuous
stirred tank reactor (CSTR), where there is an exothermic reaction. Cooling process in the
reactor occurs due to the coolant that enters through the jacket around the reactor. The
mixing of the reaction depends on the mass and energy of the reactants inside the reactor.
For the process model 1 We used one of the transfer function (process, H11, or
H22) from that adaptive control system. The process is assumed won’t be affecting on
another process. We choose H11 as a plant transfer function. Then, on this model is added
by gain control valve and transmitter. Transfer function H11, gain control valve and
transmitter arranged in open loop function block. Beside arranged in open loop, transfer
function, gain control and transmitter arranged in third order system simulink to find the
value y and u.
Figure 2 Function Block MIMO System with Gain control valve and transmitter
From simulink above, we may determine the responses from the system, as the graphic
below:
2. Process Model 2
In this process model 2, we determined FOPDT (First Order Plus Dead Time) from
transfer function in Simulink. FOPDT (first order plus dead time) is a one-order system that
has dead time (the time between inputs is given until it produces a response at the output).
FOPDT is widely used as a modeling system in the simplification of high-order systems into
a single-order system that has dead time. This model is considered sufficient to describe the
dynamics of high-order systems.
𝑑𝑦
𝑇𝑝 + 𝑦(𝑡) = 𝐾𝑝 𝑢(𝑡 − 𝜃𝑝)
𝑑𝑡
Figure 5 The Respond of open loop function block with step input
𝐾𝑝 𝑒 −𝜃𝑝𝑠
𝐺𝑃 (𝑠) =
𝑇𝑃 𝑠 + 1
4.78 𝑒 −239𝑠
=
30𝑠 + 1
3. Process Model 3
There are several steps to get the value of A(q-1) and B(q-1). The steps are :
1. First step, we set the value of input and output.
7. In the square of output which show the graphic was click, the “Discrete-time ARX
model” in orde [2 2 1] would show up like :
Name: arx221
Sample time: 1 seconds
Parameterization:
Polynomial orders: na=[2 2;2 2] nb==[2 2;2 2] nk==[1 1;1 1]
Number of free coefficients: 16
Use "polydata", "getpvec", "getcov" for parameters and their uncertainties.
Status:
Estimated using ARX on time domain data "mydata".
Fit to estimation data: [100; 4.9114]% (prediction focus)
FPE: 5.351e-28, MSE: 0.5049
9. In the square of output which show the graphic was click, the “Discrete-time ARX
model” in orde [1 1 1] would show up like :
arx111 =
Discrete-time ARX model:
Model for output “y1”: A(z)y_1(t) = -A_i (z) y_i(t) + B(z) u(t) + e_1(t)
A(z) = 1
A_2(z) = 0.004737 z^-1
B1(z) = 0.1001z^-1
B2(z) = 0.0398 z^-1
Model for output “y2” : A9z) y_2(t) = -A_i(z) y_i(t) + B(z) u(t) +e_2(t)
A(z) = 1 – 0.01428 z^-1
A_1(z) = 0
B1(z) = 0.0007696 z^-1
B2(z) = -0.01639 z^-1
Name: arx111
Sample time: 1 seconds
Parameterization:
Polynomial orders: na=[1 1;1 1] nb=[1 1;1 1] nk=[1 1;1 1]
Number of free coefficients: 8
Use "polydata", "getpvec", "getcov" for parameters and their uncertainties.
Status:
Estimated using ARX on time domain data "mydata".
Fit to estimation data: [99.85;3.893]% (prediction focus)
FPE: 0.002077, MSE: 0.5167
5. Show the effect of variation of ° both for the MIT rule and the modified MIT rule
% file: problem4_2.m
% HR August 2003
clear
% system b/(s+a)
a=1; b=0.5; %initiation first order system (1/2+s)
% simulation
Tstop=100; h=0.01; Nstop=Tstop/h; %initiate value of Tstop, h,
and nstop
a1 =-exp(-h*a); b1=b/a*(1+a1); %is a equation of value “a1”
and “b1” from main system
am1=-exp(-h*am); bm1=bm/am*(1+am1); % is a equation of value
“a1” and “b1” from reference system tested
% adaptation
gamma=5; alpha=0.0001; %Initiation value of Gamma and Alpha,
where Alpa > 0 to avoid the denominator = 0
% initialize
y =zeros(1,Nstop); yr =zeros(1,Nstop); ym =zeros(1,Nstop);
%output variable y,yr,ym declared matrix which have 1 row and
Nstop column which are all zero (0)
u =zeros(1,Nstop); x1 =zeros(1,Nstop); x2 =zeros(1,Nstop);
% output variable u,x1,x2 declared matrix which have 1 row and
Nstop column which are all zero (0)
%(size) from matrix Nstop
theta =zeros(2,Nstop); time=h*(1:Nstop);
% output variable theta declared matrix which have 2 row and
Nstop column which are all zero (0)