SFC
SFC
This section shows how to introduce additional parameters into a system so that we can control the location of
all closed-loop poles. An nth-order feedback control system has an nth-order closed-loop characteristic equation
of the form
1.1
Since the coefficient of the highest power of s is unity, there are n coefficients whose values determine the
system’s closed-loop pole locations. Thus, if we can introduce n adjustable parameters into the system and
relate them to the coefficients in Eq. (1.1), all of the poles of the closed-loop system can be set to any desired
location.
and shown pictorially in Figure 1(a), where light lines are scalars and the heavy lines are vectors.
In a typical feedback control system, the output, y, is fed back to the summing junction. It is now that the
topology of the design changes. Instead of feeding back y, what if we feed back all of the state variables? If
each state variable is fed back to the control, u, through a gain, ki, there would be n gains, ki, that could be
1
adjusted to yield the required closed-loop pole values. The feedback through the gains, ki, is represented in
Figure 1(b) by the feedback vector -K.
The state equations for the closed-loop system of Figure 1(b) can be written by inspection as
The system uses the state feedback control u = –Kx. Let us choose the desired closed-loop poles at
(We make such a choice because we know from experience that such a set of closed-loop poles will result in a
reasonable or acceptable transient response.) Determine the state feedback gain matrix K.
Solution:
2
Referring to Equation (1.6), we have
where T=I for this problem because the given state equation is in the controllable canonical form.
Then we have
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%
3
Thus
or
Compute the open-loop poles and check the step response of the open-loop system.
Pol = pole(sys)
Pol = 3×1
-5.0489
-0.3080
4
-0.6431
Step Response
figure
step(sys)
hold on;
Notice that the resultant system is underdamped. Hence, choose real poles in the left half of the complex-plane
to remove oscillations.
p = [-2+4i,-2-4i,-10];
Find the gain matrix K using pole placement and check the closed-loop poles of syscl
%K = acker(A,B,p)
K = place(A,B,p)
K = 1×3
199.0000 55.0000 8.0000
Acl = A-B*K;
Bcl=[0;0;200];
syscl = ss(Acl,Bcl,C,D);
Pcl = pole(syscl)
5
-10.0000 + 0.0000i
figure
step(syscl)
xlim([0 5])
Hence, the closed-loop system obtained using pole placement is stable with good steady-state response.
6
Peak: 1.0000
PeakTime: 37.0932
A = [0 1 0; 0 0 1; -1 -5 -6];
B = [0; 0; 1];
C=[1 0 0];
D=0;
sys1 = ss(A,B,C,D);
c3=step(t,sys1);
figure
plot(t,c3,'.r'), grid
title('Response of original system')
E = eig(A)
7
E = 3×1
-5.0489
-0.3080
-0.6431
K = place(A, B, P);
Acl = A - B*K;
Ecl = eig(Acl)
Kdc = dcgain(syscl1);
Kr = 1/Kdc;
t1 = 0:0.01:4;
c1=step(t1,syscl1);
figure
subplot(2,1,1); plot(t1,c1,'.r'), grid
title('Response without scaling')
8
stepinfo(syscl1)