Welcome to the page of predictive control






PREDICTIVE CONTROL APPLIED TO AN AUTONOMOUS MICROROBOT




In the 90s some new types of controllers have demonstrated good results in diverse applications. They are the called predictive controllers. Their principle is simple, being based on the model of the process, it calculates the control values in order to obtain an appropriate response in accordance to some values of the desired outputs and some constraints and conditions of operation. In spite of this interesting principle, these controllers, and mainly for complex applications, have limitations derived from the number of calculations to carry out. In this case, the predictive control is applied to a microrobot that will carry out trajectories on a 2-D space.



 
 
 
Contents

· Control of speed

· Foundations of predictive control

· Predictive control of the robot

· Results of the experiments

Control of speed.

Our robot has an internal controller of speed that executes the orders of speed (lineal and  angular), that are send by radio. The controller controls the speed of movements of the robot in a precise way. The characteristics of this controller are:

This controller is that of lower level. To a superior level there exists the predictive controller that calculates the setpoints of the lower control: lineal speed and the angular correction.
 

Foundations of predictive control.

The based on models predictive control are based on the following ideas:

In the following drawing these principles for the t instant and t+1could be interpreted.









Predictive control of the robot.

The control program has been developed with Matlab 5.1, the diagram of flow for the predictive controller is the following:
 
 
In general, the controller carries out: 
 
 
  • Beginning: Initialization of parameters, position of the robot, nodes of trajectory.
  • Calculating trajectories: it calculates the trajectory with the main previous nodes.
  • Inverse model simulation: Obtaining the trajectory of reference for the controller.
  • CMPC algorithm: Algorithm predictive control of Matlab that gives the control signals.
  • Transmission of the control signals.
  • If there is an error the process is repeated, otherwise the following control signals previously calculated are sent.

 
Results of the experiments for several trajectories.

Below, four experiments of control are shown where we could see the behavior of the robot. In order to interpret the graphic results is necessary the following:

Trajectory 1.

In this trajectory the robot is on the right with an orientation of 180º and it must go towards the left taking a curve in order to locate guided toward the right. It could be the case of a robot attacker picking up the ball in order to
attack again.

Trajectory 2.

In this case the robot is in the center of the field with an initial orientation of about 45º, completely disoriented with respect to the trajectory to do. We could see the robot rotates from the first moment and it continues a good trajectory. It could be a similar case to the previous where a robot returns from an early position in order to pick up the ball from behind.

Trajectory 3.

Now, an extreme case where it continues a quite complicated trajectory and the robot reacts and corrects the sense.

Trajectory 4.

The last case is a diagonal movement to the field where it goes by some intermediates points that defines a bended trajectory in the two senses.

For this case also come in the following graph the control signals obtained with the predictive controller.

Also, you could see a video with two experiments.
Project (PDF)
 
 

comments and suggestions:gamero AT eia DOT udg DOT es