Simulation of a closed loop system with a Controller

  • Posted on: 15 July 2011
  • By: Anand
In the previous post, we have seen the response of the system was unbounded even for bounded input (a step signal). Here we will try to put a controller to stablize the output.
A feedback with controller
We will use a standard technique to stabilize the output known as feedback where output of the plant is fedback to the plant as an input. The Figure 1 illustrates an system and a derived system formed by connecting output to input through a controller. Controller is a small system which takes the difference between original input and the output and generates a controlled input which is fed to main system. This derived system is also known as closed loop system while the original is known as open loop system.
Fig 1 : Open and Closed Loop System
Building an Environment 
First we will make a controller which is just proportional controller with gain 10.
function v = controller1(e)
 Now build an modified environment which contains the closed loop model and its stimulus input. Let us take step signal as input for this example.
function dybydt = env2(t,y)
%Reference Input Signal
%Input to controller: Feedback from sys1
dybydt = sys1(t,y,v) ;

Simulating the system
The above build environment can be simulated using ode45. Create a blank script file and write the following in that.
%define timespan
tspan=[0 10];
%define initial value
[t y]= ode45(@env2,tspan,y0);

 The output is defined as y and can be plotted by

as in Fig 2.
Fig 2: Response of a Closed Loop System
 Now you can see, output is stabilized and bounded for step input. You can explore the effect of controller by changing the value of controller gain k and type of controller.