Root locus design is a common control system design technique in which you edit the compensator gain, poles, and zeros in the root locus diagram.
As the open-loop gain, k, of a control system varies over a continuous range of values, the root locus diagram shows the trajectories of the closed-loop poles of the feedback system. For example, in the following tracking system:
P(s) is the plant, H(s) is the sensor dynamics, and k is an adjustable scalar gain The closed-loop poles are the roots of
The root locus technique consists of plotting the closed-loop pole trajectories in the complex plane as k varies. You can use this plot to identify the gain value associated with a desired set of closed-loop poles.
This example shows how to design a compensator for an electrohydraulic servomechanism using root locus graphical tuning techniques.
A simple version of an electrohydraulic servomechanism model consists of
A push-pull amplifier (a pair of electromagnets)
A sliding spool in a vessel of high-pressure hydraulic fluid
Valve openings in the vessel to allow for fluid to flow
A central chamber with a piston-driven ram to deliver force to a load
A symmetrical fluid return vessel
The force on the spool is proportional to the current in the electromagnet coil. As the spool moves, the valve opens, allowing the high-pressure hydraulic fluid to flow through the chamber. The moving fluid forces the piston to move in the opposite direction of the spool. For more information on this model, including the derivation of a linearized model, see .
You can use the input voltage to the electromagnet to control the ram position. When measurements of the ram position are available, you can use feedback for the ram position control, as shown in the following, where Gservo represents the servomechanism:
For this example, tune the compensator, C(s) to meet the following closed-loop step response requirements:
The 2% settling time is less than 0.05 seconds.
The maximum overshoot is less than 5%.
Open Control System Designer
At the MATLAB® command line, load a linearized model of the servomechanism, and open Control System Designer in the root locus editor configuration.
load ltiexamples Gservo controlSystemDesigner('rlocus',Gservo);
The app opens and imports
Gservo as the plant model for
the default control architecture, Configuration
In Control System Designer, a Root Locus Editor plot and input-output Step Response open.
To view the open-loop frequency response and closed-loop step response simultaneously, click and drag the plots to the desired location.
The app displays Bode Editor and Step Response plots side-by-side.
In the closed-loop step response plot, the rise time is around two seconds, which does not satisfy the design requirements.
To make the root locus diagram easier to read, zoom in. In the Root Locus Editor, right-click the plot area and select Properties.
In the Property Editor dialog box, on the Limits tab,
specify Real Axis and Imaginary
Axis limits from
Increase Compensator Gain
To create a faster response, increase the compensator gain. In the Root Locus Editor, right-click the plot area and select Edit Compensator.
In the Compensator Editor dialog box, specify a gain of
In the Root Locus Editor plot, the closed-loop pole locations move to reflect the new gain value. Also, the Step Response plot updates.
The closed-loop response does not satisfy the settling time requirement and exhibits unwanted ringing.
Increasing the gain makes the system underdamped and further increases lead to instability. Therefore, to meet the design requirements, you must specify additional compensator dynamics. For more information on adding and editing compensator dynamics, see Edit Compensator Dynamics.
Add Poles to Compensator
To add a complex pole pair to the compensator, in the Root Locus Editor, right-click the plot area and select Add Pole/Zero > Complex Pole. Click the plot area where you want to add one of the complex poles.
The app adds the complex pole pair to the root locus plot as red
X’s, and updates the step response plot.
In the Root Locus Editor, drag the new poles to locations near –140 ± 260i. As you drag one pole, the other pole updates automatically.
As you drag a pole or zero, the app displays the new value in the status bar, on the right side.
Add Zeros to Compensator
To add a complex zero pair to your compensator, in the Compensator Editor dialog box, right-click the Dynamics table, and select Add Pole/Zero > Complex Zero
The app adds a pair of complex zeros at –1 ± i to your compensator
In the Dynamics table, click the Complex
Zero row. Then in the Edit Selected
Dynamics section, specify a Real Part of
-170 and an Imaginary Part of
The compensator and response plots automatically update to reflect the new zero locations.
In the Step Response plot, the settling time is around 0.1 seconds, which does not satisfy the design requirements.
Adjust Pole and Zero Locations
The compensator design process can involve some trial and error. Adjust the compensator gain, pole locations, and zero locations until you meet the design criteria.
One possible compensator design that satisfies the design requirements is:
Compensator gain of
Complex poles at –110 ± 140i
Complex zeros at –70 ± 270i
In the Compensator Editor dialog box, configure your compensator using these values. In the Step Response plot, the settling time is around 0.05 seconds.
To verify the exact settling time, right-click the Step Response plot area and select Characteristics > Settling Time. A settling time indicator appears on the response plot.
To view the settling time, move the cursor over the settling time indicator.
The settling time is about 0.043 seconds, which satisfies the design requirements.
 Clark, R. N. Control System Dynamics, Cambridge University Press, 1996.