Video length is 4:34

Control design using open loop shaping

From the series: Using Bode Plots

Learn how to achieve desired closed-loop characteristics by shaping open-loop frequency response in this MATLAB® Tech Talk by Carlos Osorio.

Published: 29 Apr 2013

So given that now we have a general idea of the shapes, we would like for those two main closed-loop transfer functions T and S, the question becomes, how can we make sure that our controller will make the closed-loop system have a response that is anywhere close to having those frequency characteristics? To answer that, let us start by taking a look at the bode plot of a generic open-loop transfer function. Because this is just the product of P times C on a logarithmic scale, the frequency trace PC will be the superposition of the trace of the given plant and the trace of the controller we're trying to design.

The big advantage of dealing with the open-loop transfer function is that we can directly design the shape of C in such a way that, when superimposed with our plan, P, the resulting PC will have somewhat desirable characteristics. So now we might ask, what kind of shape should we give to our open-loop transfer function in order for it to make the closed-loop system have the frequency characteristics we are looking for? 

Let me first highlight the 0 dB line on the magnitude trace and the minus 180 degrees on the phase trace. And remember, the crossover frequency is located where the magnitude trace crosses that 0 dB line. We want to see how the complementary sensitivity transfer function T=PC/(1+PC), relates to the open-loop transfer function.

Note that we cannot use superposition directly because there is a summation in the denominator. So we need to use our asymptotic approximation method to try to infer the shape of T from the given open-loop transfer function. If we look at the region way before the crossover frequency, and the magnitude of the open-loop transfer function is much greater than 1, or 0 dB on the plot, then PC will dominate the denominator, and T will be approximately PC/PC, or 1. So both the magnitude and the phase of T will stay at approximately 0 on the bode plot. 

If we look at the region way after the crossover, and the magnitude of the open loop transfer function is much less than 1, now, the 1 will dominate the denominator, and T will approximate PC/1, which means that the trace for T on this region will follow the trace of PC.

Note that the actual trace of T follows our asymptotic approximation very closely. In a similar fashion, if we look at the sensitivity transfer function, when PC is much greater than 1, it will approximate 1/PC, which, in a logarithmic scale, means the negative of PC. So the trace of S will be symmetric with respect to 0 in the low-frequency region. 

When PC is much less than 1, S will approximate 1/1. So both the magnitude and the phase of S will be approximately 0 on the body plot for the high-frequency region. Once again, the actual trace of S follows our asymptotic approximation quite closely.

So just to summarize, if we want good tracking performance characteristics in T and good disturbance rejection in S, we need to make sure that our open-loop design has a high enough gain at low frequencies-- in other words, PC needs to be well above zero dB, at least a decade below the crossover frequency. Actually, if we want to achieve zero steady-state error, our gain needs to be infinity at DC, which means that our open loop transfer function needs to resemble a pure integrator on low frequencies. 

If we want good noise rejection characteristics, our open loop designs should have a good, sharp roll of rate and provide nice attenuation past the crossover frequency. So as we have just seen, it is quite straightforward to figure out what will be going on at the high and low frequency ends of our open loop design. It is a bit trickier to be able to predict the behavior of our closed-loop system in the region around the crossover frequency. The location of the crossover frequency and the manner in which we cross over will not only have an effect on the performance of our controller, but it is also critical to the stability of our closed-loop system.