Learning Robotics using Python
上QQ阅读APP看书,第一时间看更新

Introduction to the differential drive system and robot kinematics

Robot kinematics is the study of the mathematics of motion without considering the forces that affect the motion. It mainly deals with the geometric relationships that govern the system. Robot dynamics is the study of motion in robots in which all the forces involved in the robots' movement are modeled.

A mobile robot or vehicle has six degrees of freedom (DOFs) expressed by the pose (x, y, z, roll, pitch, and yaw). These DOFs consist of the position (x, y, z) and attitude (roll, pitch, and yaw). Roll refers to sidewise rotation, pitch refers to forward and backward rotation, and yaw (called the heading or orientation) refers to the direction in which the robot moves in the x-y plane. The differential drive robot moves from x to y in the horizontal plane, so the 2D pose contains mainly x, y, and θ, where θ is the heading of the robot that points in the robot's forward direction. This information is sufficient to describe a differential robot pose:

The pose of the robot in x, y, and θ in the global coordinate system

In a differential drive robot, the motion can be controlled by adjusting the velocity of two independently controlled motors on the left-hand and right-hand side, named V-left and V-right, respectively. The following image shows a couple of popular differential drive robots available on the market:

Robot Roomba (https://en.wikipedia.org/wiki/IRobot)

The Roomba series of autonomous vacuum cleaners is a popular differential robot from iRobot.

Pioneer 3-DX (http://robots.ros.org/pioneer-3-dx/)

The Pioneer 3-DX is a popular differential drive research platform from Omron Adept Mobile Robots.