1 Introduction

Yue Wang

This book on robot modeling, motion planning, and control was written by graduate students taken ME8930: Introduction to Robotics in Fall 2021 at Clemson University taught by myself. Nine graduate students from Mechanical Engineering, Electrical and Computer Engineering, and Automotive Engineering Departments took this course. Unlike the traditional lecture style for teaching and learning fundamental robot knowledge and theory, in this class, we use the open pedagogy approach [1] to allow graduate students to write their robotics textbooks. The open pedagogy approach has recently gained popularity in Engineering education. It is believed to increase student engagement and motivation and improve their understanding. The resulting textbook is made open access through Pressbook. It belongs to an Open Education Resources (OER) [2], which seeks to lower the cost of education materials and make learning more accessible.

The book consists of three parts: modeling, motion planning, and control, and nine chapters inside the three parts. Each student in the class took charge of writing one chapter. Each chapter’s content is covered in classes taught by myself. Meanwhile, the students are encouraged to further consolidate the learned knowledge in a class by reading other textbooks and learning materials. They are then guided to write their assigned chapter using the learned knowledge. Besides theoretical content, each chapter also contains practice questions with answers and robot simulations conducted in CoppeliaSim robot simulator [3] using Python.  All the Python codes and CoppeliaSim are shared publicly at: https://github.com/ClemsonFall2021ME8930IntroRobotics-HRI

In Part II (Modeling) of the book, there are four chapters covering forward kinematics (Chapter 2), inverse kinematics (Chapter 3), differential kinematics (Chapter 4), and dynamics (Chapter 5). Forward kinematics introduces the basic mechanism and formulation to relate the robot joint position in the joint space to the end-effector position in the task space. While inverse kinematics covers the opposite, i.e., given the robot end-effector position in the task space, find the joint position in the joint space. Additionally, instead of simply robot positions, differential kinematics are discussed to relate robot joint velocities with end-effector velocities. Furthermore, robot dynamics are discussed to describe the dynamic change of robot motion states due to external forces and/or toques. In particular, the Euler-Lagrange dynamics are provided to establish robot dynamics from an energy perspective, which are very helpful in deriving complex rigid body dynamics.

In Part III (Motion Planning), there are three chapters covering trajectory generation (Chapter 6), motion planning (Chapter 7), and mobile robot navigation system (Chapter 8). The trajectory generation chapter deals with specifying position, velocity, and acceleration profiles on a path desired for a robot. An overview of different trajectory generation algorithms is provided to satisfy various limitations. The motion planning chapter focuses on introducing the classical robot path planning algorithms, i.e., Dijkstra, Uniform Cost Search (UCS), A*, and sampling algorithms, including probabilistic road map planner (PRM), rapidly exploring random tree (RRT) and rapidly exploring random tree-star (RRT*). The mobile robot navigation chapter covers both sensors used in navigation and different navigation methods.

In Part IV (Control), two main chapters in robot control are provided, i.e., motion and force control (Chapter 9) and impedance control (Chapter 10). Motion control regulates the motion states of a robot. In contrast, force control alters the robot’s behavior to exert the desired force on its environment. Both joint space and task space motion and force control are introduced. Hybrid motion and force control is also discussed for a robot to realize both desired motion and force objectives. Impedance control is a particular type of force control that designs a robot end-effector controller such that the closed-loop system achieve desired impedance. Both task space robot dynamics and basic impedance and admittance control design are discussed. The applications of impedance control are also briefly introduced in the chapter.

References:

[1] Werth, E., & Williams, K. (2021). Learning to be open: instructor growth through open pedagogy. Open Learning: The Journal of Open, Distance and e-Learning, 1-14.

[2] Atkins, D. E., Brown, J. S., & Hammond, A. L. (2007). A review of the open educational resources (OER) movement: Achievements, challenges, and new opportunities (Vol. 164). Mountain View: Creative common.

[3] CoppeliaSim robot simulator: https://www.coppeliarobotics.com/