Discover millions of ebooks, audiobooks, and so much more with a free trial

Only $11.99/month after trial. Cancel anytime.

Wheeled Mobile Robotics: From Fundamentals Towards Autonomous Systems
Wheeled Mobile Robotics: From Fundamentals Towards Autonomous Systems
Wheeled Mobile Robotics: From Fundamentals Towards Autonomous Systems
Ebook931 pages100 hours

Wheeled Mobile Robotics: From Fundamentals Towards Autonomous Systems

Rating: 0 out of 5 stars

()

Read preview

About this ebook

Wheeled Mobile Robotics: From Fundamentals Towards Autonomous Systemscovers the main topics from the wide area of mobile robotics, explaining all applied theory and application. The book gives the reader a good foundation, enabling them to continue to more advanced topics. Several examples are included for better understanding, many of them accompanied by short MATLAB® script code making it easy to reuse in practical work. The book includes several examples of discussed methods and projects for wheeled mobile robots and some advanced methods for their control and localization.

It is an ideal resource for those seeking an understanding of robotics, mechanics, and control, and for engineers and researchers in industrial and other specialized research institutions in the field of wheeled mobile robotics. Beginners with basic math knowledge will benefit from the examples, and engineers with an understanding of basic system theory and control will find it easy to follow the more demanding fundamental parts and advanced methods explained.

  • Offers comprehensive coverage of the essentials of the field that are suitable for both academics and practitioners
  • Includes several examples of the application of algorithms in simulations and real laboratory projects
  • Presents foundation in mobile robotics theory before continuing with more advanced topics
  • Self-sufficient to beginner readers, covering all important topics in the mobile robotics field
  • Contains specific topics on modeling, control, sensing, path planning, localization, design architectures, and multi-agent systems
LanguageEnglish
Release dateFeb 2, 2017
ISBN9780128042380
Wheeled Mobile Robotics: From Fundamentals Towards Autonomous Systems
Author

Gregor Klancar

Gregor Klancar received B.Sc. and Ph.D. in electrical engineering from the University of Ljubljana, Slovenia in 1999 and 2003 respectively. He is currently employed as an Associate Professor at the Faculty of Electrical Engineering at the University of Ljubljana. He is lecturing the autonomous mobile systems at graduate and advanced control of autonomous systems at postgraduate study. His research work mainly focuses on mobile robotics area, on the area of control and also on supervision of multiagent systems and on modelling and control of dynamical systems. His work on wheeled and satellite mobile robotics area includes motion control, trajectory tracking, localization, agent-based behaviour systems and strategies for enabling cooperative behaviours of agents in some group mission. In 1999 he received the Prešeren award for his diploma thesis and in 2004 he received the Ph.D. award of Prof. Dr. Vratislav Bedjanic for his doctoral dissertation. As a member of the faculty’s robot soccer team he has achieved many successes, cups and awards at the European and World competitions and championships in robot soccer from the area of mobile robotics. He is the author of 30 papers in scientific journals (among those 23 in journals with impact factor), 7 book chapters in the edited books and 85 conference papers. He is also mentor at 7 Msc thesis and 40 diploma works. He is a member of the IFAC technical committees TC 7.5 (Intelligent Autonomous Vehicles) and Slovenian Modelling and Simulation society and Automation Society of Slovenia.

Related to Wheeled Mobile Robotics

Related ebooks

Robotics For You

View More

Related articles

Reviews for Wheeled Mobile Robotics

Rating: 0 out of 5 stars
0 ratings

0 ratings0 reviews

What did you think?

Tap to rate

Review must be at least 10 words

    Book preview

    Wheeled Mobile Robotics - Gregor Klancar

    Wheeled Mobile Robotics

    From Fundamentals Towards Autonomous Systems

    First Edition

    Gregor Klančar

    Andrej Zdešar

    Sašo Blažič

    Igor Škrjanc

    Table of Contents

    Cover image

    Title page

    Copyright

    Preface

    Acknowledgements

    Chapter 1: Introduction to Mobile Robotics

    Abstract

    1.1 Introduction

    1.2 History

    1.3 About the Book

    Chapter 2: Motion Modeling for Mobile Robots

    Abstract

    2.1 Introduction

    2.2 Kinematics of Wheeled Mobile Robots

    2.3 Motion Constraints

    2.4 Dynamic Model of a Mobile System With Constraints

    Chapter 3: Control of Wheeled Mobile Systems

    Abstract

    3.1 Introduction

    3.2 Control to Reference Pose

    3.3 Trajectory Tracking Control

    3.4 Optimal Velocity Profile Estimation for a Known Path

    Chapter 4: Path Planning

    Abstract

    4.1 Introduction

    4.2 Environment Presentation for Path Planning Purposes

    4.3 Simple Path Planning Algorithms: Bug Algorithms

    4.4 Graph-Based Path Planning Methods

    Chapter 5: Sensors Used in Mobile Systems

    Abstract

    5.1 Introduction

    5.2 Coordinate Frame Transformations

    5.3 Pose Measurement Methods

    5.4 Sensors

    Chapter 6: Nondeterministic Events in Mobile Systems

    Abstract

    6.1 Introduction

    6.2 Basics of Probability

    6.3 State Estimation

    6.4 Bayesian Filter

    6.5 Kalman Filter

    6.6 Particle Filter

    Chapter 7: Autonomous Guided Vehicles

    Abstract

    7.1 Introduction

    7.2 Autonomous Transportation Vehicles

    7.3 Wheeled Mobile Robots in Agriculture

    7.4 Wheeled Mobile Robots in Industry

    7.5 Wheeled Mobile Robots in Domestic Environments

    7.6 Assistive Mobile Robots in Walking Rehabilitation Therapy

    Chapter 8: Project Examples for Laboratory Practice

    Abstract

    8.1 Introduction

    8.2 Localization Based on Bayesian Filter Within a Network of Paths and Crossroads

    8.3 Localization Based on Extended Kalman Filter Using Indoor Global Positioning System and Odometry

    8.4 Particle-Filter-Based Localization in a Pattern of Colored Tiles

    8.5 Control of Vehicles in a Linear Formation

    8.6 Motion and Strategy Control of Multiagent Soccer Robots

    8.7 Image-Based Control of a Mobile Robot

    8.8 Particle-Filter-Based Localization Using an Array of Ultrasonic Distance Sensors

    8.9 Path Planning of a Mobile Robot in a Known Environment

    Index

    Copyright

    Butterworth-Heinemann is an imprint of Elsevier

    The Boulevard, Langford Lane, Kidlington, Oxford OX5 1GB, United Kingdom

    50 Hampshire Street, 5th Floor, Cambridge, MA 02139, United States

    © 2017 Elsevier Inc. All rights reserved.

    No part of this publication may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording, or any information storage and retrieval system, without permission in writing from the publisher. Details on how to seek permission, further information about the Publisher’s permissions policies and our arrangements with organizations such as the Copyright Clearance Center and the Copyright Licensing Agency, can be found at our website: www.elsevier.com/permissions.

    This book and the individual contributions contained in it are protected under copyright by the Publisher (other than as may be noted herein).

    Notices

    Knowledge and best practice in this field are constantly changing. As new research and experience broaden our understanding, changes in research methods, professional practices, or medical treatment may become necessary.

    Practitioners and researchers must always rely on their own experience and knowledge in evaluating and using any information, methods, compounds, or experiments described herein. In using such information or methods they should be mindful of their own safety and the safety of others, including parties for whom they have a professional responsibility.

    To the fullest extent of the law, neither the Publisher nor the authors, contributors, or editors, assume any liability for any injury and/or damage to persons or property as a matter of products liability, negligence or otherwise, or from any use or operation of any methods, products, instructions, or ideas contained in the material herein.

    Library of Congress Cataloging-in-Publication Data

    A catalog record for this book is available from the Library of Congress

    British Library Cataloguing-in-Publication Data

    A catalogue record for this book is available from the British Library

    ISBN: 978-0-12-804204-5

    For information on all Butterworth-Heinemann publications visit our website at https://www.elsevier.com/

    Publisher: Joe Hayton

    Acquisition Editor: Sonnini R. Yura

    Editorial Project Manager: Ana Claudia Abad Garcia

    Production Project Manager: Kiruthika Govindaraju

    Cover Designer: Mark Rogers

    Typeset by SPi Global, India

    Preface

    G. Klančar; A. Zdešar; S. Blažič; I. Škrjanc, Ljubljana, Slovenia

    This is an introductory book on the subject of wheeled mobile robotics, covering all the essential knowledge and algorithms that are required in order to achieve autonomous capabilities of mobile robots. The book can serve both as a textbook for engineering students and a reference book for professionals in the field. As a textbook, it is suitable for courses in mobile robotics, especially if the courses’ main emphasis is on mobile robots with wheels. The book covers topics from mathematical modeling of motion, sensors and measurements, control algorithms, path planning, nondeterministic events, and state estimation. The theory is supported with examples that have solutions and excerpts of Matlab code listings in order to make it simple for the reader to try, evaluate, and modify the algorithms. Furthermore, at the end of the book some interesting practical projects are depicted, which can be used for laboratory practice or to consolidate the theory learned.

    The field of autonomous mobile robotics is an extremely popular field of research and development. Within this field the majority of mobile robots use wheels for motion. Wheeled mobile robots leave tracks where no man has ever been (e.g., extraterrestrial explorations), man should not go (e.g., dangerous or contaminated areas), or act alongside humans (e.g., human support and assistance). Wheeled mobile robots have already started to penetrate into our homes in the form of robotic floor cleaners and lawn mowers, automatic guided vehicles can be found inside many industrial facilities, prototype self-driving cars already drive in the normal traffic, and in the nearby future many new applications of autonomous wheeled mobile robots are expected to appear, even in some unforeseen ways. The purpose of this book is to shed some light onto the design and give a deeper insight into the algorithms that are required in order to implement autonomous capabilities of wheeled mobile robots. The book addresses essential problems in wheeled mobile robotics and presents to the reader various approaches that can be used to tackle them. The presented algorithms range from basic and simple solutions to more advanced and state-of-the-art approaches.

    The complete Matlab code listings of the algorithms that are presented in this book are also available for download at the book companion website: http://booksite.elsevier.com/9780128042045/. Therefore it should be simple for the readers to try, evaluate, tweak and tune the algorithms by themselves. The website also contains many animated videos from the examples that give an additional insight into the topics and algorithms covered in the book.

    August 2016

    Acknowledgements

    The authors would like to recognize all the individuals who contributed, both directly and indirectly, to this book. We wish to thank all our colleagues, the current and past members of the Laboratory of Autonomous Mobile Systems, and the Laboratory of Modelling, Simulation and Control, Faculty of Electrical Engineering, University of Ljubljana, Slovenia, who inspired and contributed to this book. We are grateful to our colleague Dr. Matevž Bošnak for providing some insight into the field of assistive mobile robotics in walking rehabilitation therapy. Special acknowledgement goes to our former Head of the Laboratory, Prof. Dr. Drago Matko for introducing our laboratory into the field of mobile robotics. Our gratitude also goes to all graduate students, research associates and technical staff from the Faculty of Electrical Engineering, University of Ljubljana, and researchers from institutions around the world with whom we have been involved in a diverse range of projects that in a way also enabled creation of this book. We would like to thank Asst. Prof. Dr. Fernando A. Auat Cheein, Department of Electronics Engineering, Universidad Técnica Federico Santa María, Chile, for providing us with some material from his field of research, mobile robotics in agriculture. This work would have not been possible without support of the Slovenian Research Agency that backed many of our research and application projects.

    Chapter 1

    Introduction to Mobile Robotics

    Abstract

    This is an introductory chapter that presents the field of wheeled mobile robotics. Initially the words robot, mobile, and wheel that appear in the title of the book are explained. Then a brief classification of autonomous mobile systems is presented and an overview of various levels of autonomy is discussed. A short review of applications is followed by a list of important historical milestones that influenced the development of autonomous wheeled mobile robots.

    Keywords

    Robots; Mobile systems; Wheels; Autonomous systems; History

    1.1 Introduction

    1.1.1 Robots

    The word robot has roots in Slavic languages. The meaning of "robota" in Polish is work or labor, while the word is more archaic in Czech or Slovenian language and means statute labor or corvée. The famous Czech writer Karel Čapek coined the word robot and used it in the science fiction play R.U.R., which stands for Rossum’s Universal Robots. The robots in the play are a sort of artificial human; in modern terminology cyborgs or androids would be more appropriate. The play witnessed huge success and the word robot was adopted by the majority of world languages. While the word robot is not even 100 years old, the idea of mechanic creatures goes very deep into history.

    In Greek mythology we find many creatures that are used for particular tasks. Spartoi are mythical, fierce, and armed men who sprang up from the dragon’s teeth sown by Cadmus. They assisted Cadmus in building the Cadmeia or citadel of Thebes. Talos, created by Hephaestus, was a giant automaton made of bronze to protect Europa in Crete from pirates and invaders. The Greek god of blacksmiths and craftsmen, Hephaestus, is also credited for some other mechanical structures. Automata can be also found in ancient Jewish, Chinese, and Indian legends. The idea of mechanical automata that resembled either humans or animals was then present in literature throughout the history. It really became popular in the 19th century and, especially, the 20th century. In the 20th century robots found a new popular media to depict them and bring them to life: film. Some of the ideas in literature and films were attributed as science fiction at the time of creation, and later this fiction became a reality.

    The robotic designs were not present only in fiction. Very early inventors tried to construct mechanical automata. The Greek mathematician Archytas is believed to have designed and built the first artificial, self-propelled flying device in the 4th century BC. A mechanical bird propelled by steam was said to have actually flown some 200 m. In the comprehensive heritage of Leonardo da Vinci several mechanical designs can be found. Among the rough sketches scattered throughout Leonardo’s notes, Rosheim [1] has reconstructed a programmable cart (Fig. 1.1) used as a base for Leonardo’s inventions, such as a robot lion and a robot knight. The spring of industrial revolution technological advancement resulted in the outburst of automation that gradually led to the mobile robotics we know today.

    Fig. 1.1 Model of a bicycle and a programmable cart built based on Leonardo da Vinci’s notes.

    1.1.2 Mobile

    The word mobile has its roots in the Latin word of the same meaning, "mōbilis." The majority of animal species possess the ability of locomotion. While some animals use passive systems to do so (they can move with water or air motion), others have developed more or less sophisticated mechanisms for active movement. Some animals perform locomotion in the 3D space (swimming in the water, flying in the air, moving through the soil), and others more or less follow the 2D surface of the water or the ground, while some animals are capable of combining different ways of movement. In the context of mobile robots we are concerned with systems that can move using their locomotion apparatus. The latter very often mimics the one of a human or a certain animal. Copying from biological systems also very often successfully solves some technical problems that arise during artificial locomotion system design.

    The other important aspect of a mobile system is that being mobile also means that the distance to the human operator can become large. This implies that the system needs to either possess a certain level of autonomy, meaning that it has to move across the space without the help of the operator, or accept the commands from a distant operator, meaning that the system is able to move tele-operated. Nikola Tesla was the first to design and build a radio-controlled electrical boat (Fig. 1.2) at the end of the 19th century. In the 20th and the 21st century the level of autonomy continuously rose. Yet, all the existing mobile systems are human operated on a certain level.

    Fig. 1.2 A working replica of the radio-controlled electrical boat built by Nikola Tesla.

    1.1.3 Wheels

    Although very primitive animal species are able to move, it is often a nontrivial task to design an artificial system that is able to mimic animal locomotion. While wheels or similar structures cannot be found in the animal world, the vehicles with wheels are known to enable energy-efficient motion over the ground. The surface has to be smooth enough although appropriately constructed wheeled vehicles can also move over rugged terrain, such as steps. It is not known where and when the wheel was invented but the established belief is that the first wheels were used in Mesopotamia approximately 4000 BC. From there, they were spread around the world. Some experts attribute the wheel’s invention to prehistoric Europe. The oldest wooden wheel with an axle, 5200 years old, was discovered in Slovenia in the Ljubljana Marshes (Fig. 1.3).

    Fig. 1.3 The 5200-year-old wooden wheel (A) with the axle (B) found in the Ljubljana Marshes pile dwelling is one of the world’s most significant cultural heritage items in terms of both its age and technological accomplishment. The diameter of the wheel is 70 cm and the axle length is 120 cm. (Museum and Galleries of Ljubljana, photos by M. Paternoster.)

    1.1.4 Autonomous Mobile Systems

    Mobile systems can be defined as systems that are not attached to the environment and can move in a certain space. In terms of the environment they move across they can be classified into some principal groups:

    Ground mobile systems Various types of mobile platforms can be found here such as mobile vehicles with wheels or caterpillars, legged robots (humanoids or animal mimicking), or robots that mimic some other type of animal locomotion, for example, snakes. Ground mobile systems with wheels or caterpillars that do not carry the operator are often referred to as unmanned ground vehicles.

    Aerial mobile systems This group consists of mobile systems that fly in a certain aerial space (airplanes, helicopters, drones, rockets, animal-mimicking flying systems; when used without a pilot they are referred to as unmanned aerial vehicles) or orbit the Earth or some other celestial body (satellites).

    Water and underwater mobile systems In this group we find different types of ships, boats, submarines, autonomous underwater vehicles, etc.

    In this book only the wheeled mobile vehicles will be discussed although a large portion of the presented material can be used for other types of mobile systems with appropriate modifications.

    Mobile systems are regarded as autonomous when they are capable of autonomous motion within their environment. Autonomy has to be guaranteed by the following:

    • from the energy point of view: the robot should carry some source of energy; and

    • from the decision point of view: the robot should be capable of taking certain decisions and performing appropriate actions.

    In reality this means that the mobile system takes the commands from the human operator based on the level of autonomy the system is capable of. The system responds by trying to carry out the commanded task and appropriate subtasks on the lower levels. In case there are no unforeseen circumstances, the task is usually executed in a certain time interval. Based on the level of the robot’s autonomy, the following typical commands can be taken from the operator:

    Desired wheel velocities The robot takes the commands in terms of its wheel velocities and very basic control algorithms with appropriate sensors (typically rotary encoders) to ensure that the wheels rotate as commanded.

    Desired robot longitudinal and angular velocities The computer program running on the robot is aware of the robot’s kinematic model, so that it can compute the appropriate wheel velocities to achieve the desired robot velocities.

    Desired robot path or robot trajectory The robot is capable of determining and controlling its pose within its environment; the pose is usually defined as joint information about position and orientation relative to some coordinate system. On this level we find robot localization that uses different sensors mounted either on the robot or in the environment to obtain the best possible approximation of the robot’s pose. The problems also arise in control due to nonlinear character of the system, erroneous sensor information, wheel slipping, poor models, delays, etc.

    Desired operation inside of the known environment with potential obstacles The robot has to perform an operation in the known environment but with some (static or moving) obstacles. On this level the robot is capable of planning its path and replanning it if some obstacles prevent the fulfillment of the operation.

    Desired operation inside of the unknown environment The robot does not know its environment. It has to simultaneously perform the actions of determining its pose and building its map of environment; the approach is known as SLAM (simultaneous localization and mapping).

    Desired mission The robot starts the mission that it has to accomplish. It operates in the environment where it might cooperate with other robots or agents. It needs to have a certain understanding of its missions. It needs to have certain priorities of its missions, so that it can abort a certain mission and/or take a mission with a higher priority. A lot of decision making has to be built in the robot. A simple example is that the robot needs to inspect the energy level in batteries and has to recharge its batteries if necessary.

    The robots are not understood as autonomous on the first two levels shown above. Also, there exist other classifications. It is important that we understand the tasks and intelligence that the robot possesses on a certain level.

    The main mechanical and electronic parts of an autonomous mobile robot are the following:

    Mechanical parts Rigid and moving parts (body, wheels, tracks, legs, etc.)

    Actuators Electrical motors (DC, stepper, servomotor, etc.)

    Sensors Rotation encoders, proximity and distance sensors, inertial navigation unit, global navigation satellite system, etc.

    Computers Micro-controllers, portable personal computer, embedded systems, etc.

    Power unit Batteries, solar panels, etc.

    Electronics Actuator drive, sensor measurement, power distribution, and telecommunication electronics

    This book is about algorithms that are required to process sensor data and drive the actuators in order to give autonomous capabilities to the mobile robot.

    There are several properties that make use of wheeled mobile robots appealing. Mobile robots allow human-free access to hazardous environments (e.g., minefields, radioactive environments, deep-sea explorations, etc.) and access to remote or inaccessible environments (e.g., exploration of extraterrestrial planets, nanoscale robots in medicine, etc.). Robotic systems can do physically demanding tasks instead of humans. The introduction of automation, robotics, and mobile systems also allows for greater productivity, product or service quality, and can reduce labor costs.

    Nowadays, mobile systems are used in numerous applications in different fields, which are constantly expanding due to rapid technological development. An incomplete list of applications of wheeled mobile robots includes the following:

    • medical services, operation support, laboratory analyses (e.g., in situations with the risk of infections)

    • cleaning applications (floor vacuuming, sweeping and mopping in homes or large buildings, window cleaning, etc.)

    • applications in agriculture, like automated fruit picking, seed planting, grass mowing, etc.

    • forest maintenance and logging

    • consumer goods stores

    • inspection and surveillance of hazardous areas (detection and deactivation of mines in minefields, review of nuclear reactors, cleaning of sewer pipes)

    • space missions (satellites, inspection and servicing of satellites, planetary exploration)

    • depths of the sea (robots for cabling and screening the seabed)

    • robots for loading and unloading goods or materials from airplanes, ships, or trucks

    • military robots (reconnaissance robots, airplanes, and various autonomous projectiles)

    • security robots (security guards to control storage, buildings, etc.)

    • help for the elderly and disabled (autonomous wheelchairs, rehabilitation robots)

    • consumer applications (robotic pets, robot soccer, etc.)

    • systems at research institutions aimed at learning and developing new algorithms

    Predicting the way the future will look like has always been a hard task. Technologies and applications that are available today, were hard to imagine even a decade ago. However, in the near future autonomous wheeled mobile robots are expected to become an even more integral part of our daily lives: they will work alongside us in modern factories of the future, help us with domestic chores, drive us on the road, save lives in rescue missions and much more. How technological development brought us to current point is depicted in a short history review in the next section.

    1.2 History

    This section presents some important milestones in the history of wheeled mobile robotics [2]. Focus is given to the application of wheeled mobile robots; however, some other technological achievements that influenced the field are mentioned.

    1898 At an electrical exhibition at Madison Square Garden in New York City, Nikola Tesla demonstrated a radio-controlled unmanned boat [3]. Nikola Tesla holds a patent [4] for the invention.

    1939–45 During World War II, cruise missiles V-1 [5] and V-2 [6] were developed in Germany. At the same time an American, Norbert Wiener, was working on automatic aiming of antiaircraft guns [7].

    1948–49 W. Grey Walter constructed two autonomous robots, Elmer and Elsie [8], which resembled turtles and were capable of following a light source (photodiode), detecting obstacles (contact switch), and preventing collisions.

    1961–63 Johns Hopkins University developed Beast [9], a self-surviving mobile robot that was able to wander through white halls, seeking black wall outlets to recharge its batteries.

    1966–72 The Stanford Research Institute was developing Shakey the robot [10], which had a camera, sonar range finders, collision detection sensors, and a wireless link. It was the first general-purpose mobile robot capable of sensing and interpreting the environment, and then navigating between the obstacles on its own. Results of the project include development of A⋆ search algorithm, Hough transform, and visibility graph.

    1969 A first robotic lawn mower, MowBot, was introduced and patented [11].

    1970 The Soviet Union successfully landed the first lunar rover Lunokhod 1 on the Moon’s surface, which was remote controlled from the Earth and it carried several cameras and other sensors. In 301 days of operation the rover traveled approximately 10 km, returned more than 25,000 images, and made several soil analyses [12].

    1973 The Soviet Union deployed a second lunar rover Lunokhod 2 on the surface of the Moon. During the 4-month mission the rover covered a distance of 39 km, a record for off-Earth driving distance that lasted until 2014 [13].

    1976 NASA unmanned spacecrafts Viking 1 and Viking 2 (each consisting of an orbiter and a lander) entered Mars’ orbit, and the landers soft-landed on Mars’ surface several days later [14].

    1977 French Laboratory for Analysis and Architecture of Systems started developing mobile robot Hilare 1 [15], which was equipped with ultrasonic and laser range finders and a camera on a robotic arm.

    1979 The Stanford Cart (initial model introduced in 1962) became capable of vision-based navigation through an obstacle course [16].

    1982 A first model from the series of commercial HERO robots became available, which were mainly targeted for home and educational use [17].

    1986 The team of Ernst Dieter Dickmanns [18] developed the robot car VaMoRs that was able to drive by itself on streets without traffic, reaching speeds up to 90 km/h.

    1995 An affordable mobile robot, Pioneer, for education and research appeared on the market [19].

    1996 The First robotic soccer tournament was organized, and the Federation of International Robot-soccer Association (FIRA) was established a year later [20].

    1996–97 On board of Mars Pathfinder, NASA sent a rover, Sojourner, to Mars [21], which was commanded from Earth, but it was able to autonomously drive along the predefined path and avoid hazardous situations on the way.

    2002 A first model of the Roomba floor vacuuming robot for domestic use was launched [22].

    2004 Mars twin rovers Spirit and Opportunity landed on Mars [23]. The Spirit rover became stuck in 2009, but the Opportunity rover is still active, and in 2014 it surpassed the record for the longest off-Earth rover distance set by Lunokhod 2.

    2004 The first competition of the DARPA Grand Challenge was held in the Mojave desert (United States). None of the autonomous vehicles completed the 240 km route [24].

    2005 In the second DARPA Grand Challenge, autonomous vehicle Stanley from Stanford University finished the route first, and four other vehicles of 23 competitors were able to complete the mission [25].

    2007 DARPA Urban Grand Challenge was organized, where six autonomous vehicles completed the course in an urban area. Obeying all traffic regulation was required and the vehicles needed to merge into traffic [26].

    2009 The initial version of the Robot Operating System (ROS 0.4) was released [27].

    2009 Google started testing their self-driving technology with the modified Toyota Prius on highways in California [28].

    2010 In the VisLab Intercontinental Autonomous Challenge [29], four autonomous vehicles completed the almost 16,000 km long journey from Parma, Italy to Shanghai, China, with virtually no human intervention.

    2012 NASA successfully landed the robotic rover Curiosity on Mars [30]; it is still active.

    2014 Google unveiled their new prototype autonomous vehicle that has no steering wheel and no pedals [28].

    2016 As of June, the fleet of Google self-driving vehicles had driven a total of 2,777,585 km in autonomous mode [31].

    1.3 About the Book

    The book can serve as a primary or secondary source in mobile robotics courses for undergraduate and postgraduate study. It covers the main topics from wide area of mobile robotics. After the reader is introduced to a particular topic and the formulation of the problem is given, various approaches that can be used to solve the particular problem are presented, ranging from basic to more advanced and state-of-the-art algorithms. Several examples are included for better understanding, many of them also include a short Matlab script code so that they can be easily reused in practical work.

    The contents of the book are as follows: Chapter 2 is about motion modeling for mobile robots, Chapter 3 covers various control approaches of wheeled mobile systems, Chapter 4 presents path planning approaches, Chapter 5 gives an overview of sensors used in mobile systems, Chapter 6 presents the approaches of dealing with nondeterministic events in mobile systems, and Chapter 7 describes some applications of autonomous guided vehicles. In Chapter 8 at the end of the book some interesting projects are overlayed, which can be used for laboratory practice or to consolidate learned theory.

    References

    [1] Rosheim M. Leonardo’S Lost Robots. Berlin: Springer; 2006.

    [2] Mobile robot. 2016. https://en.wikipedia.org/wiki/Mobile_robot (accessed 18.07.16).

    [3] Nikola Tesla. 2016. https://en.wikipedia.org/wiki/Nikola_Tesla (accessed 18.07.16).

    [4] Tesla N. Method of and apparatus for controlling mechanism of moving vessels or vehicles. 1898 US Patent 613,809.

    [5] V-1 flying bomb. 2016. https://en.wikipedia.org/wiki/V-1_flying_bomb (accessed 18.07.16).

    [6] V-2 rocket. 2016. https://en.wikipedia.org/wiki/V-2_rocket (accessed 18.07.16).

    [7] Jerison D., Stroock D. Norbert Wiener. Notices of the American Mathematical Society. 1995;42(4):430–438.

    [8] William Grey Walter. 2016. https://en.wikipedia.org/wiki/William_Grey_Walter (accessed 18.07.16).

    [9] Watson D.P., Scheidt D.H. Autonomous systems. Johns Hopkins APL Tech. Dig. 2005;26(4):368–376.

    [10] Nilsson N.J. Shakey the robot. SRI International; 1984 Technical report.

    [11] Bellinger S.L. Self-propelled random motion lawnmower. 1972 US Patent 3,698,523.

    [12] Karachevtseva I., Oberst J., Scholten F., Konopikhin A., Shingareva K., Cherepanova E., Gusakova E., Haase I., Peters O., Plescia J., Robinson M. Cartography of the Lunokhod-1 landing site and traverse from LRO image and stereo-topographic data. Planet. Space Sci. 2013;85:175–187.

    [13] Lunokhod 2. 2016. https://en.wikipedia.org/wiki/Lunokhod_2 (accessed 18.07.16).

    [14] Viking project information. 2016. http://nssdc.gsfc.nasa.gov/planetary/viking.html (accessed 18.07.16).

    [15] Giralt G., Chatila R., Vaisset M. An integrated navigation and motion control system for autonomous multisensory mobile robots. In: Springer; 1990:420–443. Autonomous Robot Vehicles.

    [16] Stanford cart. 2012. http://web.stanford.edu/learnest/cart.htm (accessed 18.07.16).

    [17] HERO (robot). 2016. https://en.wikipedia.org/wiki/HERO_(robot) (accessed 18.07.16).

    [18] Dickmanns E.D. Dynamic Vision for Perception and Control of Motion. Heidelberg: Springer Science & Business Media; 2007.

    [19] MobileRobots Inc drives autonomous robots to market. 2016. http://www.mobilerobots.com/AboutMobileRobots.aspx (accessed 2016.03.08).

    [20] FIRA. 2016. http://www.fira.net/contents/sub01/sub01_3.asp (accessed: 2016.03.08).

    [21] NASA—Mars Pathfinder and Sojourner. 2013. http://www.nasa.gov/mission_pages/mars-pathfinder/ (accessed 18.07.16).

    [22] iRobot history. 2016. http://www.irobot.com/About-iRobot/Company-Information/History.aspx (accessed 18.07.16).

    [23] NASA Mars Exploration Rovers—Spirit and Opportunity. 2016. http://www.nasa.gov/mission_pages/mer/index.html (accessed 18.07.16).

    [24] DARPA Grand Challenge 2004. 2014. http://archive.darpa.mil/grandchallenge04 (accessed 18.07.16).

    [25] DARPA Grand Challenge 2005. 2014. http://archive.darpa.mil/grandchallenge05 (accessed 18.07.16).

    [26] DARPA Urban Challenge. 2014. http://archive.darpa.mil/grandchallenge (accessed 18.07.16).

    [27] ROS.org, History. 2016. http://www.ros.org/history/ (accessed 18.07.16).

    [28] On the road—Google Self-Driving Car Project. 2016. https://www.google.com/selfdrivingcar/where (accessed 18.07.16).

    [29] The VisLab Intercontinental Autonomous Challenge. 2016. http://viac.vislab.it (accessed 18.07.16).

    [30] NASA Mars Science Laboratory—Curiosity. 2016. https://www.nasa.gov/mission_pages/msl/index.html (accessed 18.07.16).

    [31] Google Self-Driving Car Project: Monthly Report. 2016. https://static.googleusercontent.com/media/www.google.com/en//selfdrivingcar/files/reports/report-0616.pdf (accessed 18.07.16).

    Chapter 2

    Motion Modeling for Mobile Robots

    Abstract

    This chapter deals with motion modeling of wheeled mobile robots. It starts by introducing kinematic modeling of well-known mobile platforms such as differential drive, bicycle drive, Ackermann drive, and omnidirectional drives. Forward and inverse kinematics are presented, which can be applied in locomotion strategy design or in the localization process. It then describes kinematic motion constraints that originate from the robot structure and its kinematics. Holonomic and nonholonomic constraints are modeled and vector fields analysis using Lie brackets is performed to analyze the system’s constraints and its controllability. At the end, wheeled mobile robots are modeled as dynamic systems using Lagrange formulation where physical properties such as mass, inertia, and force are used. Clear examples of kinematic and dynamic models, constraints analysis, parallel parking maneuver, and the like are presented.

    Keywords

    Kinematic model; Instantaneous center of rotation; Locomotion; Kinematic constraints; Controllability; Dynamic model; Odometry

    2.1 Introduction

    Humans took advantage of wheel drive for thousands of years, and the underlying structure of a prehistoric two-wheeled cart (Fig. 2.1) can be found in modern cars and wheeled robots. This chapter deals with motion modeling of different wheeled mobile systems. The resulting model can be used for various purposes. In this book it will be mainly used for designing locomotion strategies of the system. Locomotion is the process of moving an autonomous system from one place to another.

    Fig. 2.1 Two-wheeled cart. (Museum and Galleries of Ljubljana, painting by I. Rehar.)

    Motion models can describe robot kinematics, and we are interested in mathematics of robot motion without considering its causes, such as forces or torques. Kinematic model describes geometric relationships that are present in the system. It describes the relationship between input (control) parameters and behavior of a system given by state-space representation. A kinematic model describes system velocities and is presented by a set of differential first-order equations.

    Dynamic models describe a system motion when forces are applied to the system. This models include physics of motion where forces, energies, system mass, inertia, and velocity parameters are used. Descriptions of dynamic models are given by differential equations of the second order.

    In wheeled mobile robotics, usually kinematic models are sufficient to design locomotion strategies, while for the other systems such as robots in space, air, or walking robots, dynamic modeling is also needed.

    2.2 Kinematics of Wheeled Mobile Robots

    Several types of kinematic models exist:

    • Internal kinematics explains the relation between system internal variables (e.g., wheel rotation and robot motion).

    • External kinematics describes robot position and orientation according to some reference coordinate frame.

    • Direct kinematics and inverse kinematics. A direct kinematics describes robot states as a function of its inputs (wheel speeds, joints motion, wheel steering, etc.). From inverse kinematics one can design a motion planning, which means that the robot inputs can be calculated for a desired robot state sequence.

    • Motion constraints appear when a system has less input variables than degrees of freedom (DOFs). Holonomic constraints prohibit certain robot poses while a nonholonomic constraint prohibits certain robot velocities (the robot can drive only in the direction of the wheels’ rotation).

    In the following, some examples of internal kinematics for wheeled mobile robots (WMR) will be given. The robot pose in a plane is defined by its state vector

    in a global coordinate frame (Xg, Yg), as illustrated in Fig. 2.2. A moving frame (Xm, Ym) is attached to the robot. The relation between the global and moving frame (external kinematics) is defined by the translation vector [x, y]T and rotation matrix:

    WMR moves on the ground using wheels that rotate on the ground due to the friction contact between wheels and the ground. At moderate WMR speeds an idealized rolling wheel model is usually used where the wheel can move by rotation only and no slip in the driving and lateral direction is considered. Each wheel in WMR can freely rotate around its own axis; therefore, there exists a common point that lies in the intersection of all wheel axes. This point is called instantaneous center of rotation (ICR) or instantaneous center of curvature and defines a point around which all the wheels follow their circular motion with the same angular velocity ω according to ICR. See Refs. [1–3] for further information.

    Fig. 2.2 Robot in the plane.

    2.2.1 Differential Drive

    Differential drive is a very simple driving mechanism that is quite often used in practice, especially for smaller mobile robots. Robots with this drive usually have one or more castor wheels to support the vehicle and prevent tilting. Both main wheels are placed on a common axis. The velocity of each wheel is controlled by a separate motor. According to Fig. 2.3 the input (control) variables are the velocity of the right wheel vR(t) and the velocity of the left wheel vL(t).

    Fig. 2.3 Differential drive kinematics.

    The meanings of other variables in Fig. 2.3 are as follows: r is the wheel radius; L is the distance between the wheels and R(t) is the instantaneous radius of the vehicle driving trajectory (the distance between the vehicle center (middle point between the wheels) and ICR point). In each instance of time both wheels have the same angular velocity ω(t) around the ICR,

    from where ω(t) and R(t) are expressed as follows:

    Tangential vehicle velocity is then calculated as

    Wheel tangential velocities are vL(t) = L(t) and vR(t) = R(t), where ωL(t) and ωR(t) are left and right angular velocities of the wheels around their axes, respectively. Considering the above relations the internal robot kinematics (in local coordinates) can be expressed as

       (2.1)

    Robot external kinematics (in global coordinates) is given by

       (2.2)

    where v(t) and ω(t) are the control variables. Model (2.2) can be written in discrete form (2.3) using Euler integration and evaluated at discrete time instants t = kTs, k = 0, 1, 2, … where Ts is the following sampling interval:

       (2.3)

    Forward and Inverse Kinematics

    A robot pose at some time t is obtained by integration of the kinematic model, which is known as odometry or dead reckoning. Determination of the robot pose for given control variables is called direct (also forward) kinematics:

       (2.4)

    If constant velocities v and ω are assumed during the sample time the integration of Eq. (2.4) can be done numerically using the Euler method. The direct kinematics is then given by

       (2.5)

    If trapezoidal numerical integration is used a better approximation is obtained as follows:

       (2.6)

    If exact integration is applied the direct kinematics is

       (2.7)

    where integration in Eq. (2.7) is done inside the sampling time interval where constant velocities v and ω are assumed to obtain increments:

    The development of the inverse kinematics is a more challenging task than the above cases of direct kinematics. We use inverse kinematics to determine control variables to drive the robot to the desired robot pose or path trajectory. Robots are usually subjected to nonholonomic constraints (Section 2.3), which means that not all driving directions are possible. There are also many possible solutions to arrive to the desired pose.

    One simple solution to the inverse kinematics problem would be if we allow a differential robot to drive only forward (vR(t) = vL(t) = vR⟹ω(t) = 0, v(t) = vR) or only rotate at the spot (

    , v(t) = 0) at constant speeds. For rotation motion equation (2.4) simplifies to

       (2.8)

    and for straight motion equation (2.4) simplifies to

       (2.9)

    Motion strategy could then be to orient the robot to the target position by rotation and then drive the robot to the target position by a straight motion and finally align (with rotation) the robot orientation with the desired orientation in the desired robot pose. The required control variables for each phase (rotation, straight motion, rotation) can easily be calculated from Eqs. (2.8), (2.9).

    If we consider a discrete time notation where control speeds vR(k), vL(k) are constant during time interval Ts and changes of the control speeds are only possible at time instants t = kTs then we can write equations for the robot motion. For rotation motion (vR(k) = −vL(k)) it follows

       (2.10)

    and the straight motion equation (vR(k) = vL(k)) is

       (2.11)

    So for the desired robot motion inside time interval t ∈ [kTs, (k + 1)Ts) the inverse kinematics can be calculated for each sample time by expressing control variables from Eqs. (2.10), (2.11).

    As already stated, there are many other solutions to drive the robot to the desired pose using smooth changing trajectories. The inverse kinematic problem is easier for the desired smooth target trajectory (x(t), y(t)) that the robot should follow so that its orientation is always tangent to the trajectory. Trajectory is defined in time interval t ∈ [0, T]. Supposing the robot’s initial pose is on trajectory, and there is a perfect kinematic model and no disturbances, we can calculate required control variables v as follows:

       (2.12)

    where the sign depends on the desired driving direction (+ for forward and − for reverse). The tangent angle of each point on the path is defined as

       (2.13)

    where l ∈{0, 1} defines the desired driving direction (0 for forward and 1 for reverse) and the function arctan2 is the four-quadrant inverse tangent function. By calculating the time derivative of Eq. (2.13) the robot’s angular velocity ω(t) is obtained:

       (2.14)

    where κ(t) is the path curvature. Using relations (2.12), (2.14) and the defined desired robot path x(t), y(t), the robot control inputs v(t) and ω(t) are calculated. The necessary condition in the path-design procedure is a twice-differentiable path and a nonzero tangential velocity v(t)≠0. If for some time t the tangential velocity is v(t) = 0, the robot rotates at a fixed point with the angular velocity ω(t). The angle φ(t) cannot be determined from Eq. (2.12), and therefore, φ(t) must be given explicitly. Usually this approach is used to determine the feedforward part of the control supplementary to the feedback part which takes care of the imperfect kinematic model, disturbances, and the initial pose error [4].

    2.2.2 Bicycle Drive

    Bicycle drive is shown in Fig. 2.4. It has a steering

    Enjoying the preview?
    Page 1 of 1