Controller Design
5.5 SISOTool: An Interactive Controller Design Tool
SISOTool is an interactive controller design tool provided in the Control Systems Toolbox mainly for SISO systems. SISOTool is particularly useful for classroom use due to its nice GUI (graphical user interface). In SISOTool, the root locus and Bode diagram methods are implemented for model-based controller synthesis. We shall demonstrate the use of SISOTool through an example.
Example 5.21. Consider the following open-loop plant model:
G(s)= 1
s(0.1s+ 1)(0.02s + 1)(0.01s + 1)(0.005s + 1).
First, let us enter this model into the workspace of MATLAB and then invoke the SISOTool program using the following MATLAB statements:
>> s=zpk(’s’); G=1/(s*(0.1*s+1)*(0.02*s+1)*(0.01*s+1)*(0.005*s+1));
sisotool(G)
A user interface window appears as shown in Figure 5.29, where the root locus and the Bode diagram for the plant model are displayed.
The gain and phase margins are also displayed in the Bode diagram. The step response obtained is shown in Figure 5.31, which is fairly satisfactory with a small overshoot and a fast response speed.
Within the SISOTool interface, a toolbar is provided for the interactive controller design with several utility icons. The leftmost icon in the toolbar is the “edit” mode. After the edit icon, there are four icons for the user to add: a real pole, a real zero, a pair of
Figure 5.29. The user interface of SISOTool.
Figure 5.30. A designed controller.
complex poles, and a pair of complex zeros for the controller. An “eraser” icon is provided to remove the added zeros or poles. After the eraser icon, two other icons provide different zooming facilities, which are useful to the user in designing a controller.
In what follows, we use SISOTool, to present an interactive method for tuning a phase lead compensator. According to Figure 5.1(b), the phase lead controller should have a zero to the right of the pole. Then, one can use the corresponding icons to add a real zero and a real pole. It can be seen that the shape of the root locus and the Bode diagram will change automatically for the new system with a phase lead controller. Then, clicking theAnalysis
| Response to Step Command menu item displaying the step response of the closed-loop system in another window. For an interactive design, one should check theReal-Time Update box.
For an effective interactive design, one can place the step response window next to the main interface. Furthermore, the zooming facilities can be applied to select an area on the root locus axis to get more information around the imaginary axis. The controller design task is done simply by dragging the pole, zero, and gain into the root locus plot until a satisfactory step response is observed.
A sample design is shown in Figure 5.30. The gain and phase margins are also displayed in the Bode diagram. The step response obtained is shown in Figure 5.31, which is fairly satisfactory with a small overshoot and a fast response speed.
By interactively changing the positions of the zeros, poles, and the gain of the con-troller, one may have a much better understanding of the qualitative relationship between the pole and zero positions and the system step response.
Alternatively, Bode diagrams can also be used to design a cascade compensator. As an example, let us design the phase lead controller again. One can add a real zero and a real pole onto the Bode diagram. Zooming into the Bode diagram to focus on the area of interest, one can interactively tune the pole position, zero position, and the gain of the controller by
Figure 5.31. Step response of the compensated system.
Figure 5.32. Other supported feedback structures in SISOTool.
dragging the magnitude response up and down. Finally, the controller can be designed with
C(s)= 3.7280.053s+ 1 0.096s+ 1.
Apart from the typical feedback structure, other system structures are also supported in SISOTool. Clicking theFS button on the system structure icon, one can pick up one of the feedback system structures, as shown in Figure 5.32. The rest of the controller design is the same as described in the above.
Problems
1. Consider a plant model
G(s)= 210(s+ 1.5)
(s+ 1.75)(s + 16)(s + 1.5 ± j3) and its controller
Gc(s)=52.5(s+ 1.5) s+ 14.86 .
Investigate the closed-loop dynamic behavior. Compare the gain and phase margins of the original plant and the compensated plant. Suggest how to further improve the control performance.
2. Given the following two transfer function models:
(a) G(s)= 16
s(s+ 1)(s + 2)(s + 8),
(b) G(s)= 2(s+ 1)
s(47.5s+ 1)(0.0625s + 1)2,
design lead-lag compensators to ensure that the compensated systems have the ex-pected phase margins and crossover frequencies. Try to change the exex-pected margins to improve the performances of the closed-loop systems. Use both time and frequency domain analysis to characterize your closed-loop systems.
3. Suppose the plant model is given by
G(s)= 1000
s(0.26s+ 1). Design a phase lead and a phase lead-lag controller.
4. Given the state space matrices
A=
for different values of ρ, solve the corresponding ARE. For each ρ, design a state feed-back controller and compare the closed-loop response. Comment on the comparison results with frequency domain justifications.
5. Design a state observer for the plant model given by
˙x =
Perform a simulation analysis of the designed observer. Comment on whether the behavior of the observer is satisfactory. If not, redesign the observer until a satisfactory result is obtained.
6. For the state space model
10.8689 1.2900 19.099 21.896 3
11 18.089799 25 2.356 9
if a state feedback vector k = [0.0004, 0.0004, −0.0035, 0.3946, −1.4433] is used, find the closed-loop state space model for the system. Find all the closed-loop poles under this state feedback gain vector. Compute the controllability and observability Gramians of the open-loop and closed-loop system models.
7. Consider a state space model given by
˙x=
Find the poles and zeros of the system. With the expected poles located at P = [−1, −2,−3,−4, −5], design a state feedback using the pole placement method. Try other expected pole locations to further improve the dynamic behavior of the closed-loop system. Design an observer-based controller for the original plant model and investigate the closed-loop behavior of the new closed-loop system.
8. For a given multivariable system
x(t)=
design a state feedback matrix K which can place the closed-loop poles at−1 ± j1,
−2, −3, −4.
9. For a discrete-time state space model
x(k+ 1) =
0.13 0.154 0.328 −0.046
−0.126 0.085 −0.232 −0.319 0.128 −0.376 0.783 0.134 0.318 −0.081 0.117 0.044
with y(k)= [−0.844, 0.497, 1.488, −0.547]x(k) − 0.8468u(k), design a state feed-back vector K which places the closed-loop poles of the system at−0.5 ± j0.5, ±0.1.
Observe the output signal in the closed-loop system.
10. Given a plant model
find a state feedback gain vector K to place the closed-loop poles at (−2, −2, −1,
−1). Check whether it is possible to place all the poles at −2. If not, explain why.
11. For the plant models in the previous problems, design the observer-based controllers.
Compare the results with the existing direct state feedback approaches and comment on the performance differences.
12. For the two input–two output system given by
2.25 −4.25 −1.25 −0.25 0.25 −0.5 −1.25 −1 1.25 −1.75 −0.25 −0.75
Design an optimal LQR and observe the step response of the closed-loop system. If one wants to further improve the step response of the system, the matrix Q should be changed, for instance, with the trial-and-error method. Find a reasonable weighting matrix Q for the system.
13. Design a dynamic decoupling compensator for the multivariable model
G(s)=
The integral-type decoupling and the pole placement type can be tested. In the latter type, different expected natural frequency can be tested. Find a good choice of the natural frequency.