We discuss two ways to improve the steady-state error of a feedback control system using cascade compensation. One objective of this design is to improve the steady-state error without appreciably affecting the transient response.
Improving Transient Response - Compensation
We have seen before that setting the gain at a particular value on the root locus yields the transient response dictated by the poles at that point on the root locus. Thus, we are limited to those responses that exist along the root locus. (See Sketching Root Locus with Matlab – Control Systems)
Unfortunately, most of the time the overshoot specification for designing control systems exceed the posibilities of the current root locus. What can we do then?
Rather than change the existing system, we augment, or compensate, the system with additional poles and zeros, so that the compensated system has a root locus that goes through the desired pole location for some value of gain. One of the advantages of compensating a system in this way is that additional poles and zeros can be added at the low-power end of the system before the plant. We should evaluate the transient response through simulation after the design is complete to be sure the requirements have been met.
There are two configurations of compensation mostly used in control systems design: cascade compensation and feedback compensation. These methods are modeled in Figure 1 and Figure 2:

With cascade compensation, the compensating network, G1(s), is placed at the low-power end of the forward path in cascade with the plant, Figure 1.

With feedback compensation, the compensator, H1(s), is placed in the feedback path, Figure 2.
Both methods change the open-loop poles and zeros, thereby creating a new root locus that goes through the desired closed-loop pole location.
Cascade Compensation - PI Controller
Steady-state error can be improved by placing an open-loop pole at the origin,
because this increases the system type by one. For example, a Type 0 system
responding to a step input with a finite error, will responds with zero error if the system
type is increased by one. But, we want to do this without affecting the transient response.
However, if we add a pole at the origin to increase the system type, the angular contribution of the open-loop poles at hypothetical point A is no longer 180, and the root locus no longer goes through point A, as shown in Figure 3.a and 3.b:
Figure 3.
To solve the problem, we also add a zero close to the pole at the origin, as shown
in Figure 4:
Figure 4.
Now the angular contribution of the compensator zero and compensator pole cancel out, point A is still on the root locus, and the system type has been increased. That is how we can improve the steady-state error without affecting the transient response.
A compensator with a pole at the origin and a zero close to the pole is called an ideal integral compensator, or Proportional-plus-Integral PI compensator, which transfer function Gc(s) is:
Next example allows to find how PI compensation works.
For control system of Figure 5, it is required to reduce steady-state error to zero, through a PI controller, keeping damping at ξ=0.173. The plant transfer function is G(s) and its original controller is represented by the gain k:
Figure 5.
The first step is to evaluate the system before the compensation, then to find the location of the two closed-loop second-order dominant poles in order to get the damping requiered by the design specifications.
Figure 6 shows the Root-Locus of the system before compensation:
>> sgrid(z,0)
>> s=tf(‘s’);
>> G=1/((s+1)*(s+2)*(s+10));
>> rlocus(G);
Figure 6.
Using the damping line in Matlab, we can find the intersection point between the root-locus and the value ξ=0.173, as we can see in Figure 7:
>> z=0.173;
>> sgrid(z,0)
Figure 7.
The intersection of Figure 7 shows us that adjusting the gain to k=165 of the original controller, we obtain the damping requiered: ξ=0.173. We also see in Figure 7 that the closed-loop second-order dominant poles s1 and s2, before compensation are:
Now we look for the third pole in the root locus. In Figure 8 we must set the same gain k=165 at the third pole line, in consequence s3 is located at:
Figure 8.
With k=165 we calculate the steady-state error e1(∞) for a step input, before compensation:
Where kp1 the position constant before compensation:
Where kG(s) is the system forward transfer function multiplied by the adjusted gain, before compensation, as in Figure 5. Therefore:
We add a PI controller in cascade into the system, as in Figure 9:
Figure 9.
Here, we have matched the gain constant of the compensator with the original gain constant, that is to say k=ki. The constant a is determined by the location of compensator zero, wich must be near the compensator pole. That is why we set the compensator zero at s=-0.1 , that is to say a=0.1. The root locus of this compensated system is in Figure 10:
>> G=(s+0.1)/(s*(s+1)*(s+2)*(s+10));
>> rlocus(G);
Figure 10.
In view of the fact that we want to maintain the transient response as unchanged as possible, in Figure 11 we draw the damping line in the root locus and search for the point of intersection between the lines of the root locus and ξ=0.173:
>> z=0.173;
>> sgrid(z,0);
Figure 11.
Adjusting the gain to k=159 in Figure 11, we obtain the damping ξ=0.173. We see that closed-loop second-order dominant poles s1 and s2, after compensation, are:
Looking for the third pole in the root locus, we must set the gain k=159 at the third pole line. After that, s3 is located at:
These results show that approximately the values of the 3 poles before and after the PI compensation have been conserved, indicating a similar transient response after correcting the error in steady state from 0.108 to 0, as shwon later.
The forward transfer function G2(s) of the system after compensation is:
One more time, we calculate steady-state error e2(∞) for a step input, after compensation:
In consequence:
Figure 12 compares the step response of the closed-loop system before and after compensatio PI:
>> G1=165/((s+1)*(s+2)*(s+10));
>> sys_antes=feedback(G1,1);
>> G2=(159*(s+0.1))/(s*(s+1)*(s+2)*(s+10));
>> sys_despues=feedback(G2,1);
>> step(G1,G2)
Figure 12.
Figure 12 shows that through PI compensation we have managed to improve the steady-state error without considerably modifying the transient response of the original system.
Compensación en Cascada - Lag Compensation
In construction…
Source :
- Control Systems Engineering, Nise
Written by Prof. Larry Francis Obando – Technical Specialist – Educational Content Writer
Copywriting, Content Marketing, Tesis, Monografías, Paper Académicos, White Papers (Español – Inglés)
Escuela de Ingeniería Eléctrica de la Universidad Central de Venezuela, UCV CCs
Escuela de Ingeniería Electrónica de la Universidad Simón Bolívar, USB Valle de Sartenejas.
Escuela de Turismo de la Universidad Simón Bolívar, Núcleo Litoral.
Contact: Caracas, Quito, Guayaquil, Cuenca. telf – 0998524011
WhatsApp: +593998524011 +593981478463
FACEBOOK: DademuchConnection
email: dademuchconnection@gmail.com
1 pensamiento sobre “Design via Root Locus – Improving Steady-state error via Cascade Compensation”