Recall that the configuration of the chassis of a wheeled robot can be written q = (phi,x,y),

the heading direction and position of the chassis.

In the previous video, we derived the relationship u equals H-of-phi times q-dot, where u is

the vector of wheel speeds.

For any properly constructed omnidirectional robot, any q-dot can be achieved by a proper

choice of wheel speeds.

Because of this, motion planning and control of an omnidirectional wheeled robot is relatively

simple.

All the kinematic trajectory generation methods from Chapter 9, and most of the motion planners

from Chapter 10, can be applied directly.

Once a trajectory q-of-t has been planned, we can apply feedforward plus PI feedback

control, as described in Chapter 11.

The commanded chassis velocity q-dot is calculated as the sum of the desired chassis velocity

at the current time instant plus feedback terms that are proportional to the current

configuration error and the time integral of the error.

Even simple proportional control can yield reasonable performance.

For any controller, we need to estimate the chassis configuration q.

The configuration can be estimated using odometry, covered later in this chapter, or using external

sensors, like cameras, GPS, or laser range finders.

Once the commanded chassis velocity q-dot is calculated, we use the kinematic model

to calculate the wheel speeds.

If the wheels have bounded speeds, then the motion planner should take these into account.

We can transform bounds on the wheel speeds to bounds on the chassis twist in the body

frame.

Recalling the kinematic model expressed in terms of twists, bounds on the speed of wheel

i create bounds on h_i-of-zero times the twist V_b.

These two bounds define two parallel planes in the twist space, given by these two equations.

Any twist between these two planes satisfies the wheel speed bound.

Intersecting these feasible twists for each of the m wheels, the robot's feasible twists

lie inside a convex polyhedron with m pairs of parallel faces.

For the omniwheel robot, there are 3 wheels, so the feasible twists live inside a 6-sided

polyhedron, as shown here.

The intersection of this polyhedron with the plane of zero angular velocity is indicated

and also shown in the figure below.

The feasible linear velocities are bounded by a hexagon.

For the robot with 4 mecanum wheels, the twist limits are described as an 8-sided polyhedron.

The intersection of this polyhedron with the plane of zero angular velocity is a square.

In the next video we move on to kinematic modeling of nonholonomic robots.