Vous êtes sur la page 1sur 6

INTEGRAL SQUARE ERROR (ISE)

• Computation of ISE is routinely needed in PID


controller design and model order reduction
problems.
• It is practically infeasible to compute ISE
integral for time t = 0 to t =  even via Matlab.

ISE   e (t)dt
2
0

• Hence, we approximate ISE for PID controller


design as given in the next slide
MATLAB CODE FOR ISE
sys1=tf([2 70 762 3610 7700 6000],[1 41 571 3491 10060 13100
6000]);
s = tf([1 0], 1);
pidi = x(1) + x(2)/s + x(3)*s;
sysnew = series(sys , pidi);
final = feedback(sysnew,1);
[y t] = step(final,0:0.1:100);
for i = 1:1001
error(i) =1 - y(i);
end
error1=error*error';
ise=abs(sum(error1));
In the given matlab code, sys1 is the original system for which
PID controller has to be designed. Pidi denoted the transfer
function of the PID controller. Final denoted the closed loop
transfer function of the system.

In the PID controller design, the aim is to reach the step input in
minimum possible time with least overshoot, thus r(t) =1 and
hence error

e(t) = r(t) – y(t) = 1-y(t).


Almost all of the systems reach the step reference in at most
100 seconds, thus we have computed the error till 100 seconds
only. After that, the error will be negligible or tend to 0. This
code can be extended to computation of IAE, ITAE and other
performance indices.
TO WORKSPACE BLOCK IN SIMULINK
The plots drawn in simulink are difficult to format . Further, time
domain analysis cannot be performed on the simulink plots. To
get settling time, rise time, peak overshoot and other time response
specifications, it thus becomes necessary to write the signal data to
workspace.
To workspace block helps us in achieving the above objective.
In the previous slide, we have 2 ‘To Workspace’ blocks. When we
run the simulink model, we get two variables in workspace : simout11
simout9. simout9 gives the time and simout11 gives output y(t).
Remember to save the “Array” format in the properties of the “To
Workspace” block.
Using

plot(simout9, simout11),

we can plot the step response in the matlab workspace. Then use

stepinfo(simout11,simout9)

to obtain the time response specifications of the system.


SOME OTHER COMMON COMMANDS
1. norm(1-syscl, Inf) : It computes the H-infinity error between the
step input and the response of the closed loop system. Along with
IAE, ISE, ITAE, etc., H-infinity error is a performance index of the
system.
2. tf(5,[1 1],'InputDelay',3.4) : First-order plus dead time models are
commonly used in process control applications. This command is
used to specify a transfer function with delay. The transfer function
3.4 s
obtained is 5e
s 1
3. pzplot(sys) : It computes the poles and (transmission) zeros of the
dynamic system sys and plots them in the complex plane. The poles
are plotted as x's and the zeros are plotted as o's.

Vous aimerez peut-être aussi