Cover Page

Revised and Updated 2nd Edition

Series Editor

Hisham Abou-Kandil

Mobile Robotics

Luc Jaulin



A mobile robot can be defined as a mechanical system capable of moving in its environment in an autonomous manner. For that purpose, it must be equipped with:

Finally, to this we must add the surroundings of the robot, which correspond to the world in which it evolves, and its mission, which is the task it has to accomplish. Mobile robots are constantly evolving, mainly from the beginning of the 2000s, in military domains (airborne drones [BEA 12], underwater robots [CRE 14], etc.), and even in medical and agricultural fields. They are in particularly high demand for performing tasks considered to be painful or dangerous to humans. This is the case for instance in mine-clearing operations, the search for black boxes of damaged aircraft on the seabed and planetary exploration. Artificial satellites, launchers (such as Ariane V), driverless subways and elevators are examples of mobile robots. Airliners, trains and cars evolve in a continuous fashion towards more and more autonomous systems and will very probably become mobile robots in the following decades.

Mobile robotics is the discipline which looks at the design of mobile robots [LAU 01]. It is based on other disciplines such as automatic control, signal processing, mechanics, computing and electronics. The aim of this book is to give an overview of the tools and methods of robotics which will aid the design of mobile robots. The robots will be modeled by state equations, i.e. first-order (mostly nonlinear) differential equations. These state equations can be obtained by using the laws of mechanics. It is not in our objectives to teach, in detail, the methods of robot modeling (refer to [JAU 05] and [JAU 15] for more information on the subject), but merely to recall its principles. By modeling, we mean obtaining the state equations. This step is essential for simulating robots as well as designing controllers. We will however illustrate the principle of modeling in Chapter 1 on deliberately three-dimensional examples. This choice was made in order to introduce important concepts in robotics such as Euler angles and rotation matrices. For instance, we will be looking at the dynamics of a wheel and the kinematics of an underwater robot. Mobile robots are strongly nonlinear systems and only a nonlinear approach allows the construction of efficient controllers. This construction is the subject of Chapters 2 and 3. Chapter 2 is mainly based on control methods that rely on the utilization of the robot model. This approach will make use of the concept of feedback linearization, which will be introduced and illustrated through numerous examples. Chapter 3 presents more pragmatic methods which do not use the state model of the robot and which will be referred to as without model or mimetic. This approach uses a more intuitive representation of the robot and is adapted to situations in which the robots are relatively simple to control remotely, such as in the case of cars, sailing boats or airplanes. Chapter 4 looks at guidance, which is placed at a higher level than control. In other words, it focuses on guiding and supervising the system which is already under control by the tools presented in Chapters 2 and 3. There will therefore be an emphasis on finding the instruction to give to the controller in order for the robot to accomplish its given task. The guidance will then have to take into account knowledge of the surroundings, the presence of obstacles and the roundness of the Earth. The nonlinear control and guidance methods require good knowledge of the state variables of the system, such as those which define the position of the robot. These position variables are the most difficult to find and Chapter 5 focuses on the problem of positioning. It introduces the classical nonlinear approaches that have been used for a very long time by humans for positioning, such as observing beacons and stars, using a compass or counting steps. Although positioning can be viewed as a particular case of state observation, the specific methods derived from it warrant a separate chapter. Chapter 6 on identification focuses on estimating, with a certain precision, non-measured quantities (parameters, position) from other, measured ones. In order to perform this identification, we will mainly be looking at the so-called least squares approach, which consists of finding the vector of variables that minimizes the sum of the squares of the errors. Chapter 7 presents the Kalman filter. This filter can be seen as a state observer for dynamic linear systems with coefficients that vary in time. A generalization of the Kalman filter to the case where the functions are nonlinear and the noise is non-Gaussian is provided in Chapter 8. The resulting observer, which is called the Bayes filter, computes the probability density function of the state vector at specific times.

The MATLAB® and PYTHON code related to some the exercises of this book, together with explanatory videos, can be found at the following address: