You are on page 1of 16

FOLLOW-UP ROUTES IN MOBILE ROBOTS APPLYING DIFFERENTIAL

FLATNESS SYSTEMS

ELKIN YESID VESLIN DIAZ


M.Sc. Mechanics Engineering
COPPE/Universidade Federal do Rio de Janeiro
elkinveslin@ufrj.br

JULES G. SLAMA
Prof. Ph.D. Acoustics and Vibrations Dynamicss
COPPE/Universidade Federal do Rio de Janeiro
jules@mecanica.ufrj.br

MAX SUELL DUTRA


Prof. Ph.D Mechanic Engineering
COPPE/Universidade Federal do Rio de Janeiro
max@mecanica.ufrj.br

OMAR LENGERKE PÉREZ


Prof. D.Sc. Mechanic Engineering
UNAB/Universidad Autónoma de Bucaramanga
COPPE/Universidade Federal do Rio de Janeiro
olengerke@ufrj.br

ABSTRACT

One solution for follow-up route in a non holonomic vehicle, like a mobile robot, is
made in this paper. Using the boundary values, a desired route is parameterized into
a polynomial using a point to point algorithm. With the properties of the Differential
Flatness, the system is drove in this route, finding the necessary inputs values so
that the system could perform the desired movement. Simulations and results of the
study are presented in this paper.
RESUMEN

Una solución para el seguimiento de trayectorias en un vehículo no holonómico,


descrito como robot móvil, es realizada en este artículo. A partir de los valores de
contorno, la trayectoria deseada es parametrizada en un polinomio a través de un
algoritmo de seguimiento punto a punto. El sistema es conducido a través de esta
trayectoria, utilizando las propiedades de los Sistemas Diferenciales Planos
(Differential Flatness), calculando los valores de las entradas de forma que el
sistema pueda realizar el recorrido deseado. Simulaciones y resultados del estudio
son presentados en este artículo.

1. Introduction

Throughout the time, mobile robots have acquired great importance because of a
wide variety of applications arising from the autonomy potential that it presents;
some examples are autonomous robots and transportation systems (AGV-
Automated Guided Vehicles). The function of an autonomous robot is carrying out
different tasks without any human intervention in unknown settings, in which
transportation systems move objects from place to place without needing for a
driver. In these operations, the main task is to control the displacement of a robot
through a given route. However, the main problem that exists in the control
systems is just the performance of a system from one space to another, and the
mobile robot is not the exception.

Nowadays, this field has developed several inquiries such as the application of
chaotic routes for the exploration of uncertain spaces and the control of AGV
systems in order to be applied in industry; the last it is highlighted the application of
flexible systems of manufacturing theories or FSF for the generation of routes in
vehicles with trailers [1] - [2].

Due to the existence of friction during displacement, this kind of systems presents
some restrictions on their structure in non-holonomic kinematic and therefore it
reduces the mobility [3]. It has also been shown that these systems are
differentially flat; it means that the system has a set of outputs called flat outputs,
which according to the properties of flat systems, the outputs and their derivatives,
allows the description of the whole system [4].

This article highlights this property in the case of follow-up routes, with a follow-up
algorithm from one point to another [5]. The desired route is reformulated through
a function in time and space. The parameterization which is combined with the
differential plane systems concepts, determines a set of inputs that allows robot’s
control movement by means of such routes.

The methodology designed is conceived from a brief description of differential


flatness systems’ concepts; afterwards it introduced the concept of
parameterization of routes with the tracking method from one point to another in
order to be implemented in the system. This analysis provides different graphical
simulations that show the outcomes and finally a discussion is opened about the
advantages of the implementation and future works.

2. Flatness systems

Differential flatness systems’ concepts were introduced by Michel Fliess and his
teamwork through the concepts of differential algebra [4]. They conceive a system
as a differential field which is generated by a set of variables (states and inputs).
Later, Martin et. al [6] redefined this concept in a more geometric context, in which
flatness systems could be described in terms of absolute equivalence.

According to Fliess, [4] a system is defined as differentially flat if there is a set


of outputs (the same number of inputs) called flat outputs, which can determine
each system’s state and inputs and it is not necessary integration; it means that
a states and inputs system x   is plane whether it can be found a set of
n

y  m outputs in the way


y  h x, u , u , , u  r    1

In such the way that:


x  f y , y , , u  q   2
u  g  y , y , , u 
 
 3
q

As we can observe in [2] and [3], in a flatness system as the states as the outputs
are in function of flat outputs and a finite number of derivatives. This association is
useful in which it requires an explicit generation of routes [7]; it means that the
system in order to obtain a desired behavior achieves it through the design of a
route in the space of outputs. Later, based on [2] and [3], adequate inputs are
determined in order to make the route. Different works present the use of
differential flatness systems that include mobile robots [7], mobile robot with trailers
[8]-[9]-[10], simplified crane [11] and robotic manipulators [12].

2.1. Mobile robot

This proposal consists on a mobile robot with four wheels, as it shows the figure
4. In this model the front wheels perform as signal wheels and the back wheels
are steered.

P position of the back wheels in space (x (t), y (t)) is defined by the inclination of
the vehicle θ (t) respecting coordinated axes. The robot moves with a speed v
(t) and the orientation of the front wheels is defined by the variable φ (t). It is
supposing that the system does not present any slide during movement,
kinematic model that it is described is given by:

x  t   v  t  cos   t 
y  t   v  t  sen  t   4
v t
  t   tan   t 
l

In 4 we can observe that it is a non-linear equation system, where l is the distance


between front and back wheels. The system inputs u1 (t) y u2 (t) represents the
vehicle system v (t) and orientation of the front wheels φ (t). It is a flat system and
the flat outputs are the position of back wheels in the space (x (t), y (t)). In this way,
from geometrical considerations [13], it is defined the first input in function of flat
outputs (3), as follows:

u1  t   v  t  = x  t   y  t   5
2 2

In which vehicle speeds in the space x e y are defined by the first derivative of
the flat outputs. The variation of the angle versus time is determined by relating the
components of the vehicle’s speed through the function 6:

 y  t  
  t   arctan    6
 x  t  

This answer achieves definition 2. To find the relation of the second output
respecting to the flat outputs and it is determined the variable φ (t) de (4)
   t  l 
  t   arctan    7
 v t 

To derive 6 over time shows that


y  t  x  t   y  t  x  t 
  t    8
x  t   y  t 
2 2

Finally, replacing (8), (5) in (7) we get that

 
 y  t  x  t   y  t  x  t  
u2  t     t   arctan  l   9
 
3
 x  t   y  t  
2 2 2

 

The performed operations below demonstrate that this is a flat system according to
(2) and (3). System transformation to the flat domain is completely geometric,
which respects the system’s properties and non-holonomic restrictions. His
geometric property is one of the main advantages that flat systems have, whereby
it is not a linear approximation but a characteristic [6]. A system is flat whether it
indicates that the non-linear structure is well characterized and can be used in
order to design control algorithms to generate routes, to plan movements and to
introduce stabilization.

3. Routes parameterization
Considering a flat system, it is possible to write desired routes xd(t), in terms of flat
outputs and their derivatives. Suppose that we want to bring xd(t0) = xo system until
xd(t1) = x1. These values are known, as the derivatives (the desired route is a f(t)
function which is derivative in time). Flat outputs (z) are parameterized as follows:

zi  t    Aij j  t   10
j

In which θj (t) is a set of basis functions, generally a polynomial type. This


conception makes the search problem in a finite set of parameters defined by the
vector aij. Assuming that the initial position x0 at time t0 and the final position xf at
time tf, (they are separated by a time τ) are known the functions that define the flat
output and this is calculated as:

zi  t0    aij j  t0  zi  t f    aij j  t f 
j j

   11
zi  t0    aij j  t0 
q
zi  t f    aij j  t f
q

j j

This procedure is described in (11) is repeated depending of the number of flat


outputs. This model is a set of n equations; the magnitude depends of the number
of derivatives q in the necessary outputs in order to determine the system. If it is
high the number of base functions that this parameterization has, more
approximate will be the route. Bearing in mind that unknown factors are the A
vector of weight, the solution of (11) is given by:

A   t Z  t  12
1
In which Ω is the matrix of all basis function in (11) and Z that they are the outline
conditions for the routes and their derivatives. The solution is a polynomial (13)
representing the plane output; that it is parameterized according to the established
boundary conditions. This procedure is repeated as shown in fig. 2, until it is
completed the whole run, hence this type of monitoring is known as point to point.
One of the most important considerations is precisely the number of points that will
exist in this route; if the point is small the parameterization is more accurate and
the system will perform better.

zi  t   ai1 x n  ai 2 x n 1    ain 1 x  ain  13

The next step of the routes’ monitoring algorithm is the application of these
polynomials and they represent to the flat outputs Z = (xd(t), that characterize the
system and its derivatives.

Figure 2. Route parameterization; each point interprets a period of time in the last
route.

The number of points and the polynomial degree that the function parameterizes,
are a point of optimization that may vary according to the objectives for the system.
Points of convergence are extensions of time τ between each high point (around
0.1 seconds) with a parameterization with high order polynomials (for example, six
or seven grade). Time extensions can be obtained by determining the whole time
and dividing by the number of points, according to the results and the type of
polynomial to parameterize; these values can be modified. This calibration is
important in the case that the desired routes are made over long periods of time;
and it is required the reduction of required processing machine time.
The number of points and the polynomial degree that parameterizes the function
are an optimization point that may vary according to the system objectives. A
convergence point is a τ time extensions among each high point (the order of 0.1
seconds) with a polynomial high order parameterization (for example, six or seven
grade). Time extensions are obtained by determining the whole time and dividing
by the number of points; according to the results and the type of polynomial
parameterization whose results can be modified. In the case it is important this
calibration in order to make desired routes in long periods of time and it is required
the reduction of processing machine time.

4. Follow-up routes

Point to point follow-up technique is implemented in the proposed mobile robot


system. Assuming that a desired route described as xd(t) and yd(t), to the
coordinate axis x and y, which is obtained from a movement planning system. For
instance, you want that the mobile robot moves in a sinusoidal route yd(t) = 5sen(t),
while in the space xd(t) = 4t-5 describes a lineal route. These equations are
parameterized according to the set of equations described in (11) and (12) and get
z(t) flat output functions as a sixth-order polynomials, describing the behavior
defined by the journey during a period of time τ. These equations are implemented
in (5) and (9) in order to get the set of necessary outputs (u1(t), u2(t)) to follow the
journey. The results can be observed in figures 3, 4 and 5, in which the simulation
is performed by the numeric integration over time and through the implementation
input variables obtained due to the route parameterization. Test time is 30
seconds. Figure 3 represents the journey performed by the vehicle along the route.

Figure 3. Sinusoidal route follow-up along the space.


Figure 4. Vehicle u1(t) peed variation according to the described route in figure 3.

Figure 5. Variation of the orientation of u2(t) front wheels according to described


route in figure 3.

Figures 4 and 5 describe the u1 y u2 variation. Values variation is because of the


trend of the route in which speeds increases in zero amplitude regions, while the
variation is null. On the other hand, the speed slows down (without zero reduction),
while the vehicle receives high orientation levels that can be positive or negative
according to movement direction.

in another experience, the desired route is a circular journey along the space x and
y, with a center in (0,0); the robot’s initial position is outside the desired route.
Figures 6, 7, and 8 illustrate the behavior.
Figure 6. Circular route follow-up, in which the system initial position is outside the
route.

Figure 7. u1(t) vehicle speed variation according to the described route in figure 6.

Since periods of time for each portion of the parameterized route are the same in
figure 7, it shows that the system undergoes a high initial value of speed to be
placed at the beginning of the route, then it is reduced until it stays constant over
the circular route. The angle variation is similar (figure 8) and it is observed that
along the journey the control keeps the orientation in the wheels; thus the vehicle
keeps the position respecting to a circumference.
Figure 8. Variation of the orientation of the front wheels u2(t) according to the route
described in figure 6.

In both experiences the initial conditions in the orientation in the θ(t) vehicle was
given by the equation (6), the follow-up routes through flatness systems’ theory
projects enough conditions to seek guidance system according to the initial
position of the vehicle, such as in the simulation shown in figures 4 and 6. Vehicle
journeys as in figure 3 as in figure 6 present a deviation respecting the route;
whereas follow-up parameters approximate the desired route in both functions xd(t)
and yd(t), the persistent deviation conditions movement to increase the error in a
lineal way shown in figures 9 and 10, and therefore increases the error over time.
Whether the route to follow is an exponential or quadratic function (figure 11), the
slope of the error is becoming marked; an it causes a great deviation for the same
period of time.
Figure 9. Route deviation respecting to the horizontal displacement in x(t) along the
time for figure 3’s route

Figure 10. Route deviation respecting the vertical displacement in y(t) along the
time for the figure 3’s route.

Figure 11. Quadratic route described in space.


Figure 12. Quadratic route described in space with variation in lineal function slope
that describes the route in x(t).

In observations carried out in quadratic route, it was concluded that according to


journey’s nature, an increase of equations’ slope allows a meaningful reduction in
route’s deviation as it is described in figure 12, which it is carried out the same
route with a low deviation to the case presented in figure 11. The equations (5), (6),
and (9) explain the reason of this behavior. As in the vehicle speed v(t) as the
orientation angle θ(t) depend of the rate of change of the first derivative of plane
outputs; whether we have a system that grows faster in time and in yd(t), space, the
xd(t) derivative will be a constant (if it is a lineal function), it will not give a
meaningful change in obtaining the parameters and therefore the achieved values
will depend on the change in yd(t) and this will vary over time causing the deviation,
as it is shown in figure 11. Nevertheless, if the xd(t) lineal equation has a slope
which it allows growing quickly or at the same time that the quadratic counterpart;
this will contribute in obtaining the values of the outputs, so that the resulting
deviation will be reduced.

While these polynomials were an example, in routes generated by other methods


in building roads, the influences between the equations will exist in the same way.
In other cases, it was observed in temporal route, it can observe a reduction in the
deviation with an increase in wave amplitude.

5. Conclusions

This document analyzed the application of differential flatness systems theories


(Differential Flatness) to follow-up routes in mobile robots according to Fliess’
studies [4], and parameterizing flat outputs with a point to point follow-up method
[5]. The analysis showed that although the vehicle performs a similar route during
displacement time and this deviation is related with polynomials’ nature that define
the routes, there are “methods” to reduce this deviation, there is an urgent need for
a control that allows the reduction of distances carried out by the system
according to the route. Van Niewustadt [5] suggests a closed loop control to make
sure the actual system output, through this comparison it is modified the output
values obtained by means of flat equations derived from the flat system. This
control is important to obtain different behaviors that approach the desired
objective in order to reduce the existing error.

It is our interest to continue this study to verify the effectiveness of theories’


systems and see them as an application tool to future projects.
6. References

M. Tavera, M. Dutra, E. Veslin, O. Lengerke, “Implementation of chaotic behavior


on a fire fighting robot”. Presentado en 20 th International Congress of
Mechanical Engineering, Gramados, Brasil, 2009.
O. Lengerke, M. Dutra, F. França, M. Tavera, “Automated Guided Vehicles (AGV):
Searching a path in the flexible manufacturing system”, Journal of Konbin, Vol.
8 No. 1, pp. 113-124, 2008.
B. Siciliano, L. Sciavicco, L. Villani, G. Oriolo, Robotics, Modelling, Planing and
Control, Springer-Verlag London Limited, 2009.
M. Fliess, J. Levine, P. Martin, P. Rouchon, “Flatness and defect of non liner
systems: Introductory theory and examples”, CAS internal report A-284,
January 1994.
M. van Nieuwstadt, “Trajectory Generation for Nonlinear Control Systems”,
Technical Report CS 96-011 del Department of Mechanical Engineering,
California Institute of Technology, Pasadena, California, 1997.
P. Martin, R. Murray, P. Rouchon, “Flat Systems”, Mini-course European Control
Conference, Brussels, July 1997.
R. Murray, M. Rathinam, W. Sluis, “Differential flatness of mechanical control
systems: A catalog of prototype systems.”, ASME International Mechanical
Engineering Congress and Expo, San Francisco, California, California, USA.
1995.
V. Deligiannis, G. Davrazos, S. Manesis, T. Arampatzis, “Flatness conservation in
the n-trailer sytem equiped with a sliding kingpin mechanism”, Journal of
Intelligent and Robotic System, Vol. 46 No. 2, pp 151-162, 2006.
F. Lamiraux, J. Laumond, “Flatness and small-time controllability of multibody
mobile robots: application to motion planning”, IEEE transanctions on
Automatic Control, Vol 45 N° 10, pp. 1878-1881, 2000.
P. Rouchon, M. Fliess, J. Lévine, P. Martin, “Flatness and motion planning: the car
with n trailers”, Proceedings European Control Conferece, pp. 1-6, 1993.
M. Fliess, J. Lévine, P. Rouchon. “A simplied approach of crane control via a
generalized state-space model” Proceedings of IEEE Control and Decision
Conference, pp. 736-741, 1991.
R. Murray. “Non linear control of mechanical systems A lagrangian perspective”. In
IFAC Symposium on Nonlinear Control Systems Design (NOLCOS), 1995.
F. Rotella e I. Zambettakis, “Comande des Systèmes par Platitude” Disponible:
http://www.techniques-ingenieur.fr/book/s7450/commande-des-systemes-par-
platitude.html

ACKNOWLEDGEMET

The authors wish to thank CAPES and CNP for the financial support they have
given us during this time working.

7. Curriculum
ELKIN Y. VESLIN he received the Mechatronic Engineering degree from the
Universidad Autónoma de Bucaramanga –UNAB (2005), also he holds a M.A in
Science and Mechanical Engineering from the Universidade Federal de Río de
Janeiro COPRE (2010). Besides, he was worthy of an internship at the Instituto
Tecnológico y de Estudios Superiores de Monterrey Campus Estado de México
ITESM/CEM in Mexico (2003), where he worked in the elaboration of didactic
materials for Industrial Automation university practicum. His research areas are
focused on exoskeletons and determination of routes through differential flatness
systems theories. He is experienced in industrial automation, industrial webs,
chaotic systems, differential flatness systems, biomechanics and robotics.

Jules Ghislain Slama he received the "Electronique Electrotechnique


Automatique" tithe from the Université De Provence- Faculté De St Jerome (1970),
degree from- Ecole Nationale Supérieure de Physique (1971),also he holds a M.A
in acoustics ( DEA d'Acoustique) from Université de Provence (1971) and a Ph.D
in " Acoustique et Dynamique des Vibrations from Université d'Aix Marseille II
(1988). He was president of Sociedade Brasileira de Acústica (1984-1985).
Currently, he is an associated professor at the Universidade Federal do Rio de
Janeiro-COPPE, Brazil. He is experienced in Mechanic Engineering field in
acoustics and vibrations areas, in architecture and town planning, emphasized in
planning and design of urban space especially in the following topics:
environmental acoustics, airport noise, urban acoustics, and architectural
acoustics.

Max Suell Dutra he received the Mechanic Engineering degree from Federal
Fluminense (1987), also he holds a M.A in Mechanic Engineering from
Universidade Federal do Rio de Janeiro (1990) and a Ph.D in Mechanic
Engineering from Gerhard Mercator- en Universität Duisburg, Alemania (1995).
Currently, he is an associated professor at Universidade Federal do Rio de
Janeiro-COPPE, Brazil. He is experienced in Mechanic Engineering field,
emphasized in robotics especially in the following topics: mechatronic design,
robotics, machine design, biomechanics, non-linear dynamics, multi-bodies
systems, home automation and industrial automation.

Omar Lengerke he received the Systems Engineering degree at Universidad


Autónoma de Bucaramanga UNAB- Colombia (1999), , also he holds a M.A in
Control Sciences and Manufacture System Automation from Instituto Tecnológico y
de Estudios Superiores de Monterrey Campus Estado de México ITESM/CEM
(2002) and a Ph.D in Sciences and Mechanic Engineering from the Universidade
Federal do Rio de Janeiro - COPPE, Brazil. He is experienced in Mechanic
Engineering field, emphasizing in the following topics: manipulators, SCADA
systems, industrial implementation, industrial control and automation, manufacture
flexible systems, robotics, mechatronic machines and Automated Guided Vehicles
(AGV).

Magda J.M. Tavera she received the Mechatronics Engineering degree from
Universidad Autónoma de Bucaramanga-UNAB, Colombia, (2005), also she holds
a M.A in Science and Mechanic Engineering from Universidade Federal do Rio de
Janeiro (2008). Currently she is D.Sc in Mechanic Engineering at Universidade
Federal do Rio de Janeiro - COPPE, Brasil. She is experienced in Mechatronic
Engineering field, emphasizing in mobile robotics, chaotic systems, sensor fusion,
stereo vision and industrial automation.

You might also like