13.2. Omnidirectional Wheeled Mobile Robots (Part 2 of 2)
13.2. Omnidirectional Wheeled Mobile Robots (Part 2 of 2)
This video introduces feedback control for an omnidirectional wheeled mobile robot, as well as the constraints on the chassis twist resulting from limits on the wheels’ speeds.
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.