Introduction to Mobile Robot Control
Copyright
Dedication
Preface
List of acknowledged authors and collaborators
Principal symbols and acronyms
Quotations about robotics
1 Mobile Robots: General Concepts
1.1 Introduction
1.2 Definition and History of Robots
1.2.1 What Is a Robot?
1.2.2 Robot History
1.2.2.1 Ancient and Preindustrial Period
1.2.2.2 Industrial and Robosapien Period
1.3 Ground Robot Locomotion
1.3.1 Legged Locomotion
1.3.2 Wheeled Locomotion
1.3.2.1 Wheel Types
1.3.2.2 Drive Types
1.3.2.3 WMR Maneuverability
References
2 Mobile Robot Kinematics
2.1 Introduction
2.2 Background Concepts
2.2.1 Direct and Inverse Robot Kinematics
2.2.2 Homogeneous Transformations
2.2.3 Nonholonomic Constraints
2.3 Nonholonomic Mobile Robots
2.3.1 Unicycle
2.3.2 Differential Drive WMR
2.3.3 Tricycle
2.3.4 Car-Like WMR
2.3.5 Chain and Brockett—Integrator Models
2.3.5.1 Unicycle WMR
2.3.5.2 Rear-Wheel Driving Car
2.3.6 Car-Pulling Trailer WMR
2.4 Omnidirectional WMR Kinematic Modeling
2.4.1 Universal Multiwheel Omnidirectional WMR
2.4.2 Four–Wheel Omnidirectional WMR with Mecanum Wheels
References
3 Mobile Robot Dynamics
3.1 Introduction
3.2 General Robot Dynamic Modeling
3.2.1 Newton–Euler Dynamic Model
3.2.2 Lagrange Dynamic Model
3.2.3 Lagrange Model of a Multilink Robot
3.2.4 Dynamic Modeling of Nonholonomic Robots
3.3 Differential-Drive WMR
3.3.1 Newton–Euler Dynamic Model
3.3.2 Lagrange Dynamic Model
3.3.3 Dynamics of WMR with Slip
3.4 Car-Like WMR Dynamic Model
3.5 Three-Wheel Omnidirectional Mobile Robot
3.6 Four Mecanum-Wheel Omnidirectional Robot
References
4 Mobile Robot Sensors
4.1 Introduction
4.2 Sensor Classification and Characteristics
4.2.1 Sensor Classification
4.2.2 Sensor Characteristics
4.3 Position and Velocity Sensors
4.3.1 Position Sensors
4.3.2 Velocity Sensors
4.4 Distance Sensors
4.4.1 Sonar Sensors
4.4.2 Laser Sensors
4.4.3 Infrared Sensors
4.5 Robot Vision
4.5.1 General Issues
4.5.2 Sensing
4.5.2.1 Camera Calibration
4.5.2.2 Image Acquisition
4.5.2.3 Illumination
4.5.2.4 Imaging Geometry
4.5.3 Preprocessing
4.5.4 Image Segmentation
4.5.5 Image Description
4.5.6 Image Recognition
4.5.7 Image Interpretation
4.5.8 Omnidirectional Vision
4.6 Some Other Robotic Sensors
4.6.1 Gyroscope
4.6.2 Compass
4.6.3 Force and Tactile Sensors
4.6.3.1 Force Sensors
4.6.3.2 Tactile Sensors
4.7 Global Positioning System
4.8 Appendix: Lens and Camera Optics
References
5 Mobile Robot Control I: The Lyapunov-Based Method
5.1 Introduction
5.2 Background Concepts
5.2.1 State-Space Model
5.2.2 Lyapunov Stability
5.2.3 State Feedback Control
5.2.4 Second-Order Systems
5.3 General Robot Controllers
5.3.1 Proportional Plus Derivative Position Control
5.3.2 Lyapunov Stability-Based Control Design
5.3.3 Computed Torque Control
5.3.4 Robot Control in Cartesian Space
5.3.4.1 Resolved Motion Rate Control
5.3.4.2 Resolved Motion Acceleration Control
5.4 Control of Differential Drive Mobile Robot
5.4.1 Nonlinear Kinematic Tracking Control
5.4.2 Dynamic Tracking Control
5.5 Computed Torque Control of Differential Drive Mobile Robot
5.5.1 Kinematic Tracking Control
5.5.2 Dynamic Tracking Control
5.6 Car-Like Mobile Robot Control
5.6.1 Parking Control
5.6.2 Leader–Follower Control
5.6.2.1 Kinematic Controller
5.6.2.2 Dynamic Controller
5.7 Omnidirectional Mobile Robot Control
References
6 Mobile Robot Control II: Affine Systems and Invariant Manifold Methods
6.1 Introduction
6.2 Background Concepts
6.2.1 Affine Dynamic Systems
6.2.2 Manifolds
6.2.3 Lyapunov Stability Using Invariant Sets
6.3 Feedback Linearization of Mobile Robots
6.3.1 General Issues
6.3.2 Differential-Drive Robot Input–Output Feedback Linearization and Trajectory Tracking
6.3.2.1 Kinematic Constraint Revisited
6.3.2.2 Input–Output Linearization
6.3.2.3 Trajectory Tracking Control
6.4 Mobile Robot Feedback Stabilizing Control Using Invariant Manifolds
6.4.1 Stabilizing Control of Unicycle in Chained Model Form
6.4.2 Dynamic Control of Differential-Drive Robots Modeled by the Double Brockett Integrator
6.4.3 Stabilizing Control of Car-Like Robot in Chained Model Form
References
7 Mobile Robot Control III: Adaptive and Robust Methods
7.1 Introduction
7.2 Background Concepts
7.2.1 Model Reference Adaptive Control
7.2.1.1 Steepest Descent Parameter Adaptation Law
7.2.1.2 Lyapunov-Based Adaptation Law
7.2.2 Robust Nonlinear Sliding Mode Control
7.2.3 Robust Control Using the Lyapunov Stabilization Method
7.3 Model Reference Adaptive Control of Mobile Robots
7.3.1 Differential Drive WMR
7.3.2 Adaptive Control Via Input–Output Linearization
7.3.2.1 Tracking Control for Known Parameters
7.3.2.2 Adaptive Tracking Controller
7.3.3 Omnidirectional Robot
7.4 Sliding Mode Control of Mobile Robots
7.5 Sliding Mode Control in Polar Coordinates
7.5.1 Modeling
7.5.2 Sliding Mode Control
7.6 Robust Control of Differential Drive Robot Using the Lyapunov Method
7.6.1 Nominal Controller
7.6.2 Robustifying Controller
References
8 Mobile Robot Control IV: Fuzzy and Neural Methods
8.1 Introduction
8.2 Background Concepts
8.2.1 Fuzzy Systems
8.2.1.1 Fuzzy Sets
Fuzzy Set Operations
Fuzzy Set Image
Fuzzy Inference
Fuzzy Relations
Zadeh’s Max-Min Composition
8.2.1.2 FSs Structure
8.2.2 Neural Networks
8.2.2.1 The Basic Artificial Neuron Model
8.2.2.2 The Multilayer Perceptron
8.2.2.3 The Backpropagation Algorithm
8.2.2.4 The RBF Network
8.2.2.5 The Universal Approximation Property
Neural Network Approximator
Fuzzy Logic Universal Approximator
8.3 Fuzzy and Neural Robot Control: General Issues
8.3.1 Fuzzy Robot Control
8.3.2 Neural Robot Control
8.4 Fuzzy Control of Mobile Robots
8.4.1 Adaptive Fuzzy Tracking Controller
8.4.2 Fuzzy Local Path Tracker for Dubins Car
8.4.2.1 The Problem
8.4.2.2 Tracking Methodology
8.4.3 Fuzzy Sliding Mode Control
8.4.3.1 The Mobile Robot Model
8.4.3.2 Similarity of Fuzzy Logic Controller and Sliding Mode Controller
8.4.3.3 Analytical Representation of a Diagonal-Type FLC
8.4.3.4 Reduced Complexity Sliding Mode Fuzzy Logic Controller
8.4.3.5 Application to the Mobile Robot
8.5 Neural Control of Mobile Robots
8.5.1 Adaptive Tracking Controller Using MLP Network
8.5.2 Adaptive Tracking Controller Using RBF Network
8.5.3 Appendix: Proof of Neurocontroller Stability
References
9 Mobile Robot Control V: Vision-Based Methods
9.1 Introduction
9.2 Background Concepts
9.2.1 Classification of Visual Robot Control
9.2.2 Kinematic Transformations
9.2.3 Camera Visual Transformations
9.2.4 Image Jacobian Matrix
9.3 Position-Based Visual Control: General Issues
9.3.1 Point-to-Point Positioning
9.3.2 Pose-Based Motion Control
9.4 Image-Based Visual Control: General Issues
9.4.1 Use of the Inverse Jacobian
9.4.2 Use of the Transpose-Extended Jacobian
9.4.3 Estimation of the Image Jacobian Matrix
9.5 Mobile Robot Visual Control
9.5.1 Pose Stabilizing Control
9.5.2 Wall Following Control
9.5.3 Leader–Follower Control
9.6 Keeping a Landmark in the Field of View
9.7 Adaptive Linear Path Following Visual Control
9.7.1 Image Jacobian Matrix
9.7.2 The Visual Controller
9.7.2.1 Kinematic Controller
9.7.2.2 Dynamic Controller
9.7.2.3 Adaptive Controller
9.8 Image-Based Mobile Robot Visual Servoing
9.9 Mobile Robot Visual Servoing Using Omnidirectional Vision
9.9.1 General Issues: Hyperbola, Parabola, and Ellipse equations
9.9.2 Catadioptric Projection Geometry
9.9.3 Omnidirectional Vision-Based Mobile Robot Visual Servoing
References
10 Mobile Manipulator Modeling and Control
10.1 Introduction
10.2 Background Concepts
10.2.1 The Denavit–Hartenberg Method
10.2.2 Robot Inverse Kinematics
10.2.3 Manipulability Measure
10.2.4 The Two-Link Planar Robot
10.2.4.1 Kinematics
10.2.4.2 Dynamics
10.2.4.3 Manipulability Measure
10.3 MM Modeling
10.3.1 General Kinematic Model
10.3.2 General Dynamic Model
10.3.3 Modeling a Five Degrees of Freedom Nonholonomic MM
10.3.3.1 Kinematics
10.3.3.2 Dynamics
10.3.4 Modeling an Omnidirectional MM
10.3.4.1 Kinematics
10.3.4.2 Dynamics
10.4 Control of MMs
10.4.1 Computed-Torque Control of Differential-Drive MM
10.4.2 Sliding-Mode Control of Omnidirectional MM
10.5 Vision-Based Control of MMs
10.5.1 General Issues
10.5.2 Full-State MM Visual Control
References
11 Mobile Robot Path, Motion, and Task Planning
11.1 Introduction
11.2 General Concepts
11.3 Path Planning of Mobile Robots
11.3.1 Basic Operations of Robot Navigation
11.3.2 Classification of Path Planning Methods
11.4 Model-Based Robot Path Planning
11.4.1 Configuration Space
11.4.2 Road Map Path Planning Methods
11.4.2.1 Road Maps
11.4.2.2 Cell Decomposition
11.4.2.3 Potential Fields
11.4.2.4 Vector Field Histograms
11.4.3 Integration of Global and Local Path Planning
11.4.4 Complete Coverage Path Planning
11.5 Mobile Robot Motion Planning
11.5.1 General Online Method
11.5.2 Motion Planning Using Vector Fields
11.5.3 Analytic Motion Planning
11.6 Mobile Robot Task Planning
11.6.1 General Issues
11.6.2 Plan Representation and Generation
11.6.2.1 Plan Representation
State-Space Representation
Action-Ordering Representation
11.6.2.2 Plan Generation
11.6.3 World Modeling, Task Specification, and Robot Program Synthesis
11.6.3.1 World Modeling
11.6.3.2 Task Specification
11.6.3.3 Robot Program Synthesis
References
12 Mobile Robot Localization and Mapping
12.1 Introduction
12.2 Background Concepts
12.2.1 Stochastic Processes
12.2.2 Stochastic Dynamic Models
12.2.3 Discrete-Time Kalman Filter and Predictor
12.2.4 Bayesian Learning
12.3 Sensor Imperfections
12.4 Relative Localization
12.5 Kinematic Analysis of Dead Reckoning
12.5.1 Differential Drive WMR
12.5.2 Ackerman Steering
12.5.3 Tricycle Drive
12.5.4 Omnidirection Drive
12.6 Absolute Localization
12.6.1 General Issues
12.6.2 Localization by Trilateration
12.6.3 Localization by Triangulation
12.6.4 Localization by Map Matching
12.7 Kalman Filter-Based Localization and Sensor Calibration and Fusion
12.7.1 Robot Localization
12.7.2 Sensor Calibration
12.7.3 Sensor Fusion
12.8 Simultaneous Localization and Mapping
12.8.1 General Issues
12.8.2 EKF SLAM
12.8.3 Bayesian Estimator SLAM
12.8.4 PF SLAM
12.8.5 Omnidirectional Vision-Based SLAM
References
13 Experimental Studies
13.1 Introduction
13.2 Model Reference Adaptive Control
13.3 Lyapunov-Based Robust Control
13.4 Pose Stabilizing/Parking Control by a Polar-Based Controller
13.5 Stabilization Using Invariant Manifold-Based Controllers
13.6 Sliding Mode Fuzzy Logic Control
13.7 Vision-Based Control
13.7.1 Leader–Follower Control
13.7.2 Coordinated Open/Closed-Loop Control
13.7.3 Omnidirectional Vision-Based Control
13.8 Sliding Mode Control of Omnidirectional Mobile Robot
13.9 Control of Differential Drive Mobile Manipulator
13.9.1 Computed Torque Control
13.9.2 Control with Maximum Manipulability
13.9.2.1 Problem 愀
13.9.2.2 Problem 戀
13.10 Integrated Global and Local Fuzzy Logic-Based Path Planner
13.10.1 Experimental Results
13.11 Hybrid Fuzzy Neural Path Planning in Uncertain Environments
13.11.1 The Path Planning Algorithm
13.11.2 Simulation Results
13.12 Extended Kalman Filter-Based Mobile Robot SLAM
13.13 Particle Filter-Based SLAM for the Cooperation of Two Robots
13.13.1 Phase 1 Prediction
13.13.2 Phase 2 Update
13.13.3 Phase 3 Resampling
13.13.4 Experimental Work
13.14 Neural Network Mobile Robot Control and Navigation
13.14.1 Trajectory Tracking
13.14.2 Navigation for Obstacle Avoidance
13.14.2.1 Local Model Networks
13.14.2.2 The Fuzzy C-Means Algorithm
13.14.2.3 Experimental Results
13.15 Fuzzy Tracking Control of Differential Drive Robot
13.16 Vision-Based Adaptive Robust Tracking Control of Differential Drive Robot
13.17 Mobile Manipulator Spherical Catadioptric Visual Control
References
14 Generic Systemic and Software Architectures for Mobile Robot Intelligent Control
14.1 Introduction
14.2 Generic Intelligent Control Architectures
14.2.1 General Issues
14.2.2 Hierarchical Intelligent Control Architecture
14.2.3 Multiresolutional Intelligent Control Architecture
14.2.4 Reference Model Intelligent Control Architecture
14.2.5 Behavior-Based Intelligent Control Architectures
14.3 Design Characteristics of Mobile Robot Control Software Architectures
14.4 Brief Description of Two Mobile Robot Control Software Architectures
14.4.1 The Jde Component-Oriented Architecture
14.4.2 Layered Mobile Robot Control Software Architecture
14.5 Comparative Evaluation of Two Mobile Robot Control Software Architectures
14.5.1 Preliminary Issues
14.5.2 The Comparative Evaluation
14.5.2.1 Operating System and Language Support
14.5.2.2 Communication Facilities
14.5.2.3 Hardware Abstraction
14.5.2.4 Porting and Application Building
14.5.2.5 Run-Time Consideration
14.5.2.6 Documentation
14.6 Intelligent Human–Robot Interfaces
14.6.1 Structure of an Intelligent Human–Robot Interface
14.6.2 Principal Functions of Robotic HRIs
14.6.3 Natural Language Human–Robot Interfaces
14.6.4 Graphical Human–Robot Interfaces
14.7 Two Intelligent Mobile Robot Research Prototypes
14.7.1 The SENARIO Intelligent Wheelchair
14.7.2 The ROMAN Intelligent Service Mobile Manipulator
14.8 Discussion of Some Further Issues
14.8.1 Design for Heterogeneity
14.8.2 Modular Design
References
15 Mobile Robots at Work
15.1 Introduction
15.2 Mobile Robots in the Factory and Industry
15.3 Mobile Robots in the Society
15.3.1 Mobile Manipulators for Rescue
15.3.2 Robotic Canes, Guiding Assistants, and Hospital Mobile Robots
15.3.3 Mobile Robots for Home Services
15.4 Assistive Mobile Robots
15.5 Mobile Telerobots and Web Robots
15.6 Other Mobile Robot Applications
15.6.1 War Robots
15.6.2 Entertainment Robots
15.6.3 Research Robots
15.7 Mobile Robot Safety
References
Problems
Robotics Web Sites