Neha Patil (Editor)

Holonomic (robotics)

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Holonomic (robotics)

A robot is holonomic if all the constraints that it is subjected to are integrable into positional constraints of the form

Contents

f ( q 1 , q 2 , . . . , q n ; t ) = 0

The variables q i are the system coordinates. When a system contains constraints that cannot be written in this form, it is to be nonholonomic.

Example

Consider a mobile robot such as the one depicted to the right, moving in the two-dimensional plane. Imagine that three omnidirectional wheels are mounted on the frame of the robot. Each wheel W i is described by its coordinates ( x i , y i ) , so that a configuration of the robot can be given by the six scalars ( x 1 , y 1 , x 2 , y 2 , x 3 , y 3 ) . Also, each wheel W i can impulse a velocity v i = ( v x , i , v y , i ) to the robot. However, because all three wheels are connected by the rigid robot frame, their relative velocities are zero (unless the frame breaks):

W 1 W 2 ( v 1 v 2 ) = 0 W 2 W 3 ( v 2 v 3 ) = 0 W 3 W 1 ( v 3 v 1 ) = 0

These velocity constraints integrate into positional constraints

d ( W 1 , W 2 ) = W 1 W 2 = D 1 d ( W 2 , W 3 ) = W 2 W 3 = D 2 d ( W 3 , W 1 ) = W 3 W 1 = D 3

where D 1 , D 2 , D 3 are scalar constants. The system is thus holonomic.

Let us finally look at the degree of freedom of the robot. We initially used six coordinates ( x 1 , y 1 , x 2 , y 2 , x 3 , y 3 ) to describe a configuration of the robot. Yet, each of the positional constraints "consumes" a degree of freedom. For instance, d ( W 1 , W 2 ) = D 1 implies that ( x 2 x 1 ) 2 + ( y 2 y 1 ) 2 = D 1 , i.e., x 2 2 2 x 1 x 2 + x 1 2 + ( y 2 y 1 ) 2 D 1 = 0 . The coordinate x 2 can then be replaced by the appropriate root of this quadratic polynomial. Repeating the process thrice leaves us with three irreducible coordinates, corresponding to the three degrees of freedom of the system.

Note that the simplest generalized coordinates for this system are ( x , y , θ ) , where x and y denote translation along the plane axes, and θ is the orientation of the robot.

Counterexample

The tricycle may look like a similar robotic system, however it is nonholonomic due to the parallel parking problem.

References

Holonomic (robotics) Wikipedia