Before the differential kinematics equation, the velocity of a robot in a two dimensional reference frame has to be described mathematically. It starts from the pose of the robot, with its three components. To switch from the position to the velocity, a new variable is needed: the time. The velocity is built from snapshots of the pose at different times. With that, the differential kinematic problem can be written clearly for a robot with two wheels. Each step below has a simulator. All numbers on the page are teaching values.
To describe the velocity of a robot, the start is its pose. The pose has three components. The first two, x and y, indicate the position of the robot in the two dimensional space. The third one, θ, indicates its orientation on the plane.
To switch from the position to the velocity, a new variable is needed: the time. The velocity can be considered as a sequence of positions of the robot over time. A snapshot is taken at time t0, giving the pose P0. At a later time t1 a new snapshot is taken: the robot has moved, rotated and translated, and the new pose is P1.
The velocity comes from comparing the two poses: new minus old, divided by the time. This lesson shows why, one small step at a time, with the numbers of the x position, the y position and the angle. Press Next to move on and Back to return. Touch or hover a coloured number to see where it is in the picture.
By definition, the velocity is the ratio between space and time. So for each component of the pose, the derivative with respect to time can be calculated. This gives the velocity of the robot, which is also made of three variables: ẋ and ẏ are the linear velocity of the robot in the plane, and θ̇ is its angular velocity.
A mobile robot has two wheels with radius r, and the distance between the wheels is L. The wheels are independently controlled, so the right wheel and the left wheel have their own speeds. The velocity of the robot in the world reference frame is Ṗ, made of an angular and a linear velocity. The problem is to find a function f that, from the radius of the wheels, their separation, the orientation θ of the robot and the speed of the wheels, gives the overall velocity of the robot in the two dimensional space.
The formula with two snapshots does give the velocity, but only after the robot has moved. The function f is different: it starts from the wheel speeds, which are the only thing that can be set on the robot. Press Play and watch when each way of getting the velocity becomes available.